78ca71b2fb005df6885943ad15bda788d2b54567
[gnulib.git] / ChangeLog
1 2009-03-06  Eric Blake  <ebb9@byu.net>
2
3         * lib/execute.c (execute) [WIN32_NATIVE]: Cast arguments of spawnvpe,
4         to avoid compiler warnings.
5         * lib/pipe.c (create_pipe) [WIN32_NATIVE]: Likewise.
6
7 2009-03-05  Bruno Haible  <bruno@clisp.org>
8
9         * tests/test-ftell.c (main): Disable test beyond end of file on
10         FreeMiNT.
11         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
12
13 2009-03-05  Kamil Dudka  <kdudka@redhat.com>
14
15         * lib/filevercmp.c: Move hidden files up in ordering.
16         * tests/test-filevercmp.c: Add tests for hidden files.
17
18 2009-03-04  Bruno Haible  <bruno@clisp.org>
19
20         * modules/visibility (Makefile.am): Augment AM_CFLAGS.
21         * gnulib-tool (func_emit_lib_Makefile_am): Emit initialization of
22         AM_CFLAGS.
23         Reported by Simon Josefsson.
24
25 2009-03-03  Bruno Haible  <bruno@clisp.org>
26
27         * doc/visibility.texi: Recommend to use HAVE_VISIBILITY as a C macro.
28         Reported by Simon Josefsson.
29
30         * doc/ld-version-script.texi: Update node reference.
31
32 2009-03-03  Bruno Haible  <bruno@clisp.org>
33
34         * modules/visibility (License): Change to 'unlimited'.
35         Suggested by Simon Josefsson.
36
37 2009-03-03  Jim Meyering  <meyering@redhat.com>
38
39         unlinkdir: cannot_unlink_dir may modify process state
40         * lib/unlinkdir.c (cannot_unlink_dir): Add a comment warning that
41         it's neither thread-safe nor appropriate for use in a library.
42
43 2009-03-03  Eric Blake  <ebb9@byu.net>
44
45         test-closein: silence test under Darwin
46         * tests/test-closein.sh: Ignore stderr from cat, since we don't
47         care if it dies from EPIPE or EBADF.
48
49 2009-03-03  Bruno Haible  <bruno@clisp.org>
50
51         * doc/gnulib.texi: Include visibility.texi and ld-version-script.texi
52         earlier.
53         * doc/visibility.texi: Fix @node and @section.
54
55 2009-03-03  Simon Josefsson  <simon@josefsson.org>
56
57         * doc/gnulib.texi: Link to sections for ld version script and
58         visibility.
59         * doc/visibility.texi: Add @node and @section.
60         * modules/ld-version-script: New module.
61         * m4/ld-version-script.m4: New file.
62         * doc/ld-version-script.texi: New file.
63
64 2009-03-02  David Lutterkort  <lutter@redhat.com>
65
66         * lib/safe-alloc.h (__GNUC_PREREQ): New macro.
67         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
68
69 2009-03-02  Bruno Haible  <bruno@clisp.org>
70
71         * doc/visibility.texi: Mention libtool's -export-symbols option.
72
73 2009-03-02  Jim Meyering  <meyering@redhat.com>
74
75         announce-gen: new option: --no-print-checksums
76         * build-aux/announce-gen (usage): Describe it.
77         (print_checksums): Print a newline here, not in the [*] footnote.
78         (main): Honor it.
79
80 2009-03-01  Bruno Haible  <bruno@clisp.org>
81
82         Use socklen_t in the native Windows replacements prototypes.
83         * lib/sys_socket.in.h (rpl_getsockopt, rpl_setsockopt): Use socklen_t
84         instead of 'int'.
85         * lib/getsockopt.c (rpl_getsockopt): Likewise.
86         * lib/setsockopt.c (rpl_setsockopt): Likewise.
87         * modules/getsockopt (Depends-on): Add socklen.
88         * modules/setsockopt (Depends-on): Add socklen.
89
90 2009-03-01  Bruno Haible  <bruno@clisp.org>
91
92         * gnulib-tool (sed): Do alias as "sed --posix" if sed's version is at
93         least 4.2.
94
95 2009-03-01  Eric Blake  <ebb9@byu.net>
96             Bruno Haible  <bruno@clisp.org>
97
98         * lib/wait-process.h (wait_subprocess): Describe effect of termsigp on
99         error messages.
100         * lib/wait-process.c (wait_subprocess): Omit error message about
101         deadly signal sent to the child of termsigp != NULL.
102
103 2009-03-01  Eric Blake  <ebb9@byu.net>
104
105         * lib/wait-process.c (wait_subprocess): Remove unnecessary cast.
106
107 2009-03-01  Bruno Haible  <bruno@clisp.org>
108
109         Avoid a gcc warning.
110         * tests/test-sched.c (b): Make global.
111         Reported by Eric Blake.
112
113 2009-01-19  Martin Lambers  <marlam@marlam.de>
114
115         Provide POSIX semantics for socket timeout options on W32.
116         * lib/setsockopt.c: Convert struct timeval to milliseconds on W32.
117         * lib/getsockopt.c: Convert milliseconds to struct timeval on W32.
118         * modules/setsockopt: Depend on sys_time module for struct timeval.
119         * modules/getsockopt: Depend on sys_time module for struct timeval.
120
121 2009-03-01  Simon Josefsson  <simon@josefsson.org>
122
123         * lib/gai_strerror.c (values): Use EAI_INPROGRESS instead of
124         __USE_GNU, for consistency with netdb.in.h.
125         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
126
127 2009-03-01  Bruno Haible  <bruno@clisp.org>
128
129         More support for FreeMiNT.
130         * lib/fseeko.c (rpl_fseeko): Complete last commit.
131         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
132
133 2009-03-01  Bruno Haible  <bruno@clisp.org>
134
135         More support for FreeMiNT.
136         * lib/fpurge.c (fpurge): Correct last commit.
137         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
138
139 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
140
141         Fix unportable awk script in vc-list-files.
142         * build-aux/vc-list-files: In the replacement awk script, use
143         substr with a second argument of 1, not zero.
144         Report by Simon Josefsson.
145
146 2009-02-28  Bruno Haible  <bruno@clisp.org>
147
148         More support for FreeMiNT.
149         * lib/freading.c (freading) [__MINT__]: Use new macros that were added
150         to FreeMiNT today.
151         * lib/fwriting.c (fwriting): Likewise.
152         Based on patch by Alan Hourihane <alanh@fairlite.co.uk>.
153
154 2009-02-28  Bruno Haible  <bruno@clisp.org>
155
156         * tests/test-freadseek.c (main): Disable test beyond end of file on
157         FreeMiNT.
158         * tests/test-ftello.c (main): Likewise.
159         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
160
161 2009-02-28  Bruno Haible  <bruno@clisp.org>
162
163         Add tentative support for FreeMiNT.
164         * lib/fbufmode.c (fbufmode) [__MINT__]: Add conditional code.
165         * lib/fpurge.c (fpurge): Likewise.
166         * lib/freadable.c (freadable): Likewise.
167         * lib/freading.c (freading): Likewise.
168         * lib/freadptr.c (freadptr): Likewise.
169         * lib/freadseek.c (freadptrinc): Likewise.
170         * lib/fseeko.c (rpl_fseeko): Likewise.
171         * lib/fseterr.c (fseterr): Likewise.
172         * lib/fwritable.c (fwritable): Likewise.
173         * lib/fwriting.c (fwriting): Likewise.
174         * lib/freadahead.c (freadahead): Likewise, based on code by Alan
175         Hourihane.
176         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
177
178 2009-02-28  Bruno Haible  <bruno@clisp.org>
179
180         * lib/wait-process.h (wait_subprocess): Clarify restriction regarding
181         SIGCHLD.
182         Reported by Jim Meyering.
183
184 2009-02-28  Bruno Haible  <bruno@clisp.org>
185
186         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Separate the two first tests.
187         Mention the results of these tests on various platforms.
188         * doc/posix-functions/fprintf.texi: Mention platforms in canonical
189         order.
190         * doc/posix-functions/printf.texi: Likewise.
191         * doc/posix-functions/snprintf.texi: Likewise.
192         * doc/posix-functions/sprintf.texi: Likewise.
193         * doc/posix-functions/vfprintf.texi: Likewise.
194         * doc/posix-functions/vprintf.texi: Likewise.
195         * doc/posix-functions/vsnprintf.texi: Likewise.
196         * doc/posix-functions/vsprintf.texi: Likewise.
197         * doc/glibc-functions/obstack_printf.texi: Likewise.
198         * doc/glibc-functions/obstack_vprintf.texi: Likewise.
199
200 2009-02-28  Bruno Haible  <bruno@clisp.org>
201
202         * build-aux/po/Makefile.in.in: Update from GNU gettext 0.17.
203         Reported by Loïc Minier <lool@dooz.org>.
204
205 2009-02-27  Bruno Haible  <bruno@clisp.org>
206
207         * gnulib-tool (func_import): Make the sed expression used to create the
208         sed script for updating the .gitignore file POSIX compliant.
209         Reported by Eric Blake.
210
211 2009-02-27  Bruno Haible  <bruno@clisp.org>
212
213         * gnulib-tool (sed): Don't alias as "sed --posix".
214         Reported by Eric Blake.
215
216 2009-02-27  Bruno Haible  <bruno@clisp.org>
217
218         Avoid test link errors.
219         * modules/uninorm/nfc-tests (test_u32_nfc_big_LDADD): New variable.
220         * modules/uninorm/nfd-tests (test_u32_nfd_big_LDADD): New variable.
221         * modules/uninorm/nfkc-tests (test_u32_nfkc_big_LDADD): New variable.
222         * modules/uninorm/nfkd-tests (test_u32_nfkd_big_LDADD): New variable.
223         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
224
225 2009-02-27  Bruno Haible  <bruno@clisp.org>
226
227         Avoid spurious "(cached)" in configure output.
228         * m4/gnulib-common.m4 (gl_CACHE_VAL_SILENT): New macro.
229         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Use it instead of AC_CACHE_VAL.
230         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
231         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
232         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
233         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Likewise.
234         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
235         * m4/stdarg.m4 (gl_STDARG_H): Likewise.
236         Reported by Eric Blake.
237
238 2009-02-27  Eric Blake  <ebb9@byu.net>
239
240         printf: fix regression in previous patch
241         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Fix compilation error.
242
243 2009-02-27  Bruno Haible  <bruno@clisp.org>
244
245         * lib/inttypes.in.h: Test merely whether _LP64 is defined, not its
246         value.
247         * lib/stdint.in.h: Likewise.
248         Suggested by Eric Blake. Reported by Peter Bray <pdb_ml@yahoo.com.au>.
249
250 2009-02-27  Eric Blake  <ebb9@byu.net>
251
252         doc: mention more functions added in cygwin 1.7.0
253         * doc/posix-functions/mbsnrtowcs.texi: Mention recent cygwin 1.7.0
254         addition.
255         * doc/posix-functions/open_wmemstream.texi: Likewise.
256         * doc/posix-functions/wcsnlen.texi: Likewise.
257         * doc/posix-functions/wcsnrtombs.texi: Likewise.
258         * doc/posix-functions/wcstod.texi: Likewise.
259         * doc/posix-functions/wcstof.texi: Likewise.
260         * doc/posix-functions/wcstoimax.texi: Likewise.
261         * doc/posix-functions/wcstok.texi: Likewise.
262         * doc/posix-functions/wcstoumax.texi: Likewise.
263
264         Detect bug in cygwin 1.5.x *printf on 1-character %ls.
265         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Enhance filter.
266         * doc/posix-functions/fprintf.texi: Update.
267         * doc/posix-functions/printf.texi: Update.
268         * doc/posix-functions/snprintf.texi: Update.
269         * doc/posix-functions/sprintf.texi: Update.
270         * doc/posix-functions/vfprintf.texi: Update.
271         * doc/posix-functions/vprintf.texi: Update.
272         * doc/posix-functions/vsnprintf.texi: Update.
273         * doc/posix-functions/vsprintf.texi: Update.
274         * doc/glibc-functions/obstack_printf.texi: Update.
275         * doc/glibc-functions/obstack_vprintf.texi: Update.
276
277 2009-02-26  Eric Blake  <ebb9@byu.net>
278
279         avoid gcc 3.4.3 bug on long double NaN on Irix 6.5
280         * tests/nan.h (NaNl): Rewrite as function on Irix, to avoid
281         compilation bug by using runtime conversion.
282         * m4/isfinite.m4 (gl_ISFINITE): Likewise.
283         * m4/isnanl.m4 (gl_FUNC_ISNANL): Likewise.
284         * modules/ceill-tests (Files): Use nan.h.
285         * modules/floorl-tests (Files): Likewise.
286         * modules/frexpl-tests (Files): Likewise.
287         * modules/isnanl-tests (Files): Likewise.
288         * modules/ldexpl-tests (Files): Likewise.
289         * modules/roundl-tests (Files): Likewise.
290         * modules/truncl-tests (Files): Likewise.
291         * tests/test-ceill.c (main): Use a working NaN.
292         * tests/test-floorl.c (main): Likewise.
293         * tests/test-frexpl.c (main): Likewise.
294         * tests/test-isnan.c (test_long_double): Likewise.
295         * tests/test-isnanl.h (main): Likewise.
296         * tests/test-ldexpl.h (main): Likewise.
297         * tests/test-roundl.h (main): Likewise.
298         * tests/test-truncl.h (main): Likewise.
299         See http://lists.gnu.org/archive/html/bug-gnulib/2009-02/msg00190.html.
300
301 2009-02-26  Eric Blake  <ebb9@byu.net>
302             Bruno Haible  <bruno@clisp.org>
303
304         Work around a *printf bug with %ls on Solaris.
305         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Also test whether, when a
306         precision is specified, sprintf stops converting the wide string
307         argument when the number of bytes that have been produced by this
308         conversion equals or exceeds the precision.
309         * doc/posix-functions/fprintf.texi: Update.
310         * doc/posix-functions/printf.texi: Update.
311         * doc/posix-functions/snprintf.texi: Update.
312         * doc/posix-functions/sprintf.texi: Update.
313         * doc/posix-functions/vfprintf.texi: Update.
314         * doc/posix-functions/vprintf.texi: Update.
315         * doc/posix-functions/vsnprintf.texi: Update.
316         * doc/posix-functions/vsprintf.texi: Update.
317         * doc/glibc-functions/obstack_printf.texi: Update.
318         * doc/glibc-functions/obstack_vprintf.texi: Update.
319
320 2009-02-26  Eric Blake  <ebb9@byu.net>
321
322         stdlib: favor compiler check of random.h
323         * m4/stdlib_h.m4 (gl_STDLIB_H): Skip preprocessor check.  Needed
324         to avoid an ObjC random.h installed by Swarm.
325
326 2009-02-26  Bruno Haible  <bruno@clisp.org>
327
328         Work around *printf bug with %g directive and 0.0 on HP-UX 10.20.
329         * m4/printf.m4 (gl_PRINTF_INFINITE): Also test for %g output of -0.0.
330         Reported by Gary V. Vaughan <gary@gnu.org>.
331
332 2009-02-26  Bruno Haible  <bruno@clisp.org>
333
334         Fix *printf behaviour regarding the %ls directive.
335         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): New macro.
336         * lib/vasnprintf.c (local_wcslen, VASNPRINTF): Handle
337         NEED_PRINTF_DIRECTIVE_LS.
338         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_LS): New macro.
339         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
340         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
341         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS and test its result. Invoke
342         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS.
343         * m4/dprintf-posix.m4 (gl_FUNC_DPRINTF_POSIX): Likewise.
344         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
345         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
346         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
347         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
348         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
349         * m4/vdprintf-posix.m4 (gl_FUNC_VDPRINTF_POSIX): Likewise.
350         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
351         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
352         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
353         * doc/posix-functions/fprintf.texi: Update.
354         * doc/posix-functions/printf.texi: Update.
355         * doc/posix-functions/snprintf.texi: Update.
356         * doc/posix-functions/sprintf.texi: Update.
357         * doc/posix-functions/vfprintf.texi: Update.
358         * doc/posix-functions/vprintf.texi: Update.
359         * doc/posix-functions/vsnprintf.texi: Update.
360         * doc/posix-functions/vsprintf.texi: Update.
361         * doc/glibc-functions/obstack_printf.texi: Update.
362         * doc/glibc-functions/obstack_vprintf.texi: Update.
363         Reported by Eric Blake.
364
365 2009-02-25  Bruno Haible  <bruno@clisp.org>
366
367         * m4/mbrtowc.m4 (gl_MBRTOWC_NUL_RETVAL): Update guess for Solaris 8
368         with known value.
369         Reported by Gary V. Vaughan <gary@gnu.org>.
370
371 2009-02-25  Bruno Haible  <bruno@clisp.org>
372
373         Work around mbrtowc bug in zh_CN.GB18030 locale on Solaris 8.
374         * m4/mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): New macro.
375         (gl_MBSTATE_T_BROKEN): Invoke it. Replace mbstate_t when it says "no".
376         * doc/posix-functions/mbrtowc.texi: Document the Solaris 8 bug.
377         Reported by Gary V. Vaughan <gary@gnu.org>.
378
379 2009-02-25  Bruno Haible  <bruno@clisp.org>
380
381         Work around broken INT8_MAX, UINT8_MAX etc. values on HP-UX 11.23.
382         * m4/stdint.m4 (gl_STDINT_H): Also check whether the expansions of
383         INT8_MAX, UINT8_MAX etc. contain casts to elementary types.
384         * doc/posix-headers/stdint.texi: Mention the HP-UX bug.
385         Reported by Gary V. Vaughan <gary@gnu.org>.
386
387 2009-02-25  Eric Blake  <ebb9@byu.net>
388
389         tests: skip fseek/ftell tests if ungetc is broken
390         * m4/ungetc.m4: New file.
391         * modules/fseek-tests: Split test, so ungetc dependency is
392         separate from rest of test.
393         * modules/fseeko-tests: Likewise.
394         * modules/ftell-tests: Likewise.
395         * modules/ftello-tests: Likewise.
396         * tests/test-fseek.c (main): Isolate ungetc dependency.
397         * tests/test-fseeko.c (main): Likewise.
398         * tests/test-ftell.c (main): Likewise.
399         * tests/test-ftello.c (main): Likewise.
400         * tests/test-fseek2.sh: New file.
401         * tests/test-fseeko2.sh: Likewise.
402         * tests/test-ftell2.sh: Likewise.
403         * tests/test-ftello2.sh: Likewise.
404
405 2009-02-25  Ondřej Vašík  <ovasik@redhat.com>
406
407         test-getaddrinfo: fix usage of skip return code 77
408         * tests/test-gettaddrinfo.c: Return skip code 77 only
409         for first occurance of skip (4x77 is not 77)
410
411 2009-02-25  Gary V. Vaughan  <gary@gnu.org>
412
413         strtod: avoid C99 decl-after-statement
414         * m4/strtod.m4 (gl_FUNC_STRTOD): Rearrange declaration.
415
416 2009-02-24  Eric Blake  <ebb9@byu.net>
417
418         strtod: detect HP-UX 11.31 bug
419         * m4/strtod.m4 (gl_FUNC_STRTOD): Detect errno handling bug.
420         Reported by Gary V. Vaughan.
421
422 2009-02-23  Bruno Haible  <bruno@clisp.org>
423
424         Fix invalid read past end of memory block.
425         * lib/vasnprintf.c (DCHAR_SET): Define.
426         (local_wcslen): Define only when needed.
427         (local_strnlen, local_wcsnlen): New functions.
428         (VASNPRINTF) [!USE_SNPRINTF && HAVE_WCHAR_T]: Implement the %s and %ls
429         directives that involve a conversion ourselves.
430         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for strnlen,
431         wcsnlen, mbrtowc, wcrtomb.
432         * tests/test-vasnprintf-posix.c (test_function): Add tests for %.*s.
433         * tests/test-vasprintf-posix.c (test_function): Likewise.
434         * tests/test-snprintf-posix.h (test_function): Likewise.
435         * tests/test-sprintf-posix.h (test_function): Likewise.
436         Reported by Ben Pfaff <blp@cs.stanford.edu>.
437
438 2009-02-22  Bruno Haible  <bruno@clisp.org>
439
440         Implement new clarified decomposition of Hangul syllables.
441         * lib/uninorm/decomposition.c (uc_decomposition): For Hangul syllables
442         of type LTV, return only a pairwise decomposition.
443         * lib/uninorm/canonical-decomposition.c (uc_canonical_decomposition):
444         Likewise.
445         * tests/uninorm/test-decomposition.c (main): Updated expected result.
446         * tests/uninorm/test-canonical-decomposition.c (main): Likewise.
447         * tests/uninorm/test-compat-decomposition.c (main): Likewise.
448
449 2009-02-22  Bruno Haible  <bruno@clisp.org>
450
451         * lib/uninorm/u-normalize-internal.h (FUNC): At the end, handle
452         zero-length results and shrink excess allocated memory.
453         * tests/uninorm/test-u8-nfc.c (test_u8_nfc): Check empty string result.
454         * tests/uninorm/test-u8-nfd.c (test_u8_nfd): Likewise.
455         * tests/uninorm/test-u8-nfkc.c (test_u8_nfkc): Likewise.
456         * tests/uninorm/test-u8-nfkd.c (test_u8_nfkd): Likewise.
457         * tests/uninorm/test-u16-nfc.c (test_u16_nfc): Likewise.
458         * tests/uninorm/test-u16-nfd.c (test_u16_nfd): Likewise.
459         * tests/uninorm/test-u16-nfkc.c (test_u16_nfkc): Likewise.
460         * tests/uninorm/test-u16-nfkd.c (test_u16_nfkd): Likewise.
461         * tests/uninorm/test-u32-nfc.c (test_u32_nfc): Likewise.
462         * tests/uninorm/test-u32-nfd.c (test_u32_nfd): Likewise.
463         * tests/uninorm/test-u32-nfkc.c (test_u32_nfkc): Likewise.
464         * tests/uninorm/test-u32-nfkd.c (test_u32_nfkd): Likewise.
465
466 2009-02-21  Bruno Haible  <bruno@clisp.org>
467
468         * doc/gnulib.texi: Include safe-alloc.texi earlier.
469         * doc/safe-alloc.texi: Terminate sentences with a period. Use two
470         spaces after a period. Put a space between a macro name and its
471         argument list. Trivial rewordings.
472         * lib/safe-alloc.c: Include safe-alloc.h right after config.h.
473         * tests/test-safe-alloc.c: Likewise. Include stdlib.h.
474         (main): Return 0 explicitly.
475
476 2009-02-21  Bruno Haible  <bruno@clisp.org>
477
478         Tests for module 'uninorm/filter'.
479         * tests/uninorm/test-uninorm-filter-nfc.c: New file.
480         * modules/uninorm/filter-tests: New file.
481
482         New module 'uninorm/filter'.
483         * lib/uninorm.h (uninorm_filter_create, uninorm_filter_write,
484         uninorm_filter_flush, uninorm_filter_free): New declarations.
485         * lib/uninorm/uninorm-filter.c: New file.
486         * modules/uninorm/filter: New file.
487
488 2009-02-21  Bruno Haible  <bruno@clisp.org>
489
490         Tests for module 'uninorm/nfkc'.
491         * tests/uninorm/test-nfkc.c: New file.
492         * tests/uninorm/test-u8-nfkc.c: New file.
493         * tests/uninorm/test-u16-nfkc.c: New file.
494         * tests/uninorm/test-u32-nfkc.c: New file.
495         * tests/uninorm/test-u32-nfkc-big.sh: New file.
496         * tests/uninorm/test-u32-nfkc-big.c: New file.
497         * modules/uninorm/nfkc-tests: New file.
498
499         New module 'uninorm/nfkc'.
500         * lib/uninorm/nfkc.c: New file.
501         * modules/uninorm/nfkc: New file.
502
503         Tests for module 'uninorm/nfkd'.
504         * tests/uninorm/test-nfkd.c: New file.
505         * tests/uninorm/test-u8-nfkd.c: New file.
506         * tests/uninorm/test-u16-nfkd.c: New file.
507         * tests/uninorm/test-u32-nfkd.c: New file.
508         * tests/uninorm/test-u32-nfkd-big.sh: New file.
509         * tests/uninorm/test-u32-nfkd-big.c: New file.
510         * modules/uninorm/nfkd-tests: New file.
511
512         New module 'uninorm/nfkd'.
513         * lib/uninorm/nfkd.c: New file.
514         * modules/uninorm/nfkd: New file.
515
516         Tests for module 'uninorm/nfc'.
517         * tests/uninorm/test-nfc.c: New file.
518         * tests/uninorm/test-u8-nfc.c: New file.
519         * tests/uninorm/test-u16-nfc.c: New file.
520         * tests/uninorm/test-u32-nfc.c: New file.
521         * tests/uninorm/test-u32-nfc-big.sh: New file.
522         * tests/uninorm/test-u32-nfc-big.c: New file.
523         * modules/uninorm/nfc-tests: New file.
524
525         New module 'uninorm/nfc'.
526         * lib/uninorm/nfc.c: New file.
527         * modules/uninorm/nfc: New file.
528
529         Tests for module 'uninorm/nfd'.
530         * tests/uninorm/test-nfd.c: New file.
531         * tests/uninorm/test-u8-nfd.c: New file.
532         * tests/uninorm/test-u16-nfd.c: New file.
533         * tests/uninorm/test-u32-nfd.c: New file.
534         * tests/uninorm/test-u32-nfd-big.sh: New file.
535         * tests/uninorm/test-u32-nfd-big.c: New file.
536         * tests/uninorm/test-u32-normalize-big.h: New file.
537         * tests/uninorm/test-u32-normalize-big.c: New file.
538         * tests/uninorm/NormalizationTest.txt: New file, created from
539         Unicode 5.1.0 NormalizationTest.txt.
540         * modules/uninorm/nfd-tests: New file.
541
542         New module 'uninorm/nfd'.
543         * lib/uninorm/nfd.c: New file.
544         * modules/uninorm/nfd: New file.
545
546         New module 'uninorm/u32-normalize'.
547         * lib/uninorm/u32-normalize.c: New file.
548         * modules/uninorm/u32-normalize: New file.
549
550         New module 'uninorm/u16-normalize'.
551         * lib/uninorm/u16-normalize.c: New file.
552         * modules/uninorm/u16-normalize: New file.
553
554         New module 'uninorm/u8-normalize'.
555         * lib/uninorm/u8-normalize.c: New file.
556         * lib/uninorm/normalize-internal.h: New file.
557         * lib/uninorm/u-normalize-internal.h: New file.
558         * modules/uninorm/u8-normalize: New file.
559
560         New module 'uninorm/decompose-internal'.
561         * lib/uninorm/decompose-internal.c: New file.
562         * modules/uninorm/decompose-internal: New file.
563
564         Tests for module 'uninorm/composition'.
565         * tests/uninorm/test-composition.c: New file.
566         * modules/uninorm/composition-tests: New file.
567
568         New module 'uninorm/composition'.
569         * lib/uninorm/composition.c: New file.
570         * lib/uninorm/composition-table.gperf: New file, generated by
571         gen-uni-tables.
572         * modules/uninorm/composition: New file.
573
574         Tests for module 'uninorm/compat-decomposition'.
575         * tests/uninorm/test-compat-decomposition.c: New file.
576         * modules/uninorm/compat-decomposition-tests: New file.
577
578         New module 'uninorm/compat-decomposition'.
579         * lib/uninorm/decompose-internal.h: New file.
580         * lib/uninorm/compat-decomposition.c: New file.
581         * modules/uninorm/compat-decomposition: New file.
582
583         Tests for module 'uninorm/canonical-decomposition'.
584         * tests/uninorm/test-canonical-decomposition.c: New file.
585         * modules/uninorm/canonical-decomposition-tests: New file.
586
587         New module 'uninorm/canonical-decomposition'.
588         * lib/uninorm/canonical-decomposition.c: New file.
589         * modules/uninorm/canonical-decomposition: New file.
590
591         Tests for module 'uninorm/decomposition'.
592         * tests/uninorm/test-decomposition.c: New file.
593         * modules/uninorm/decomposition-tests: New file.
594
595         New module 'uninorm/decomposition'.
596         * lib/uninorm/decomposition.c: New file.
597         * modules/uninorm/decomposition: New file.
598
599         New module 'uninorm/decomposition-table'.
600         * lib/uninorm/decomposition-table.h: New file.
601         * lib/uninorm/decomposition-table.c: New file.
602         * lib/uninorm/decomposition-table1.h: New file, generated by
603         gen-uni-tables.
604         * lib/uninorm/decomposition-table2.h: New file, generated by
605         gen-uni-tables.
606         * modules/uninorm/decomposition-table: New file.
607
608         * lib/gen-uni-tables.c (MAX_DECOMP_LENGTH): New macro.
609         (UC_DECOMP_*): New enumeration items.
610         (get_decomposition): New function.
611         (struct decomp_table): New type.
612         (output_decomposition, output_decomposition_tables): New functions.
613         (unicode_composition_exclusions): New variable.
614         (fill_composition_exclusions, debug_output_composition_tables): New
615         functions.
616         (main): Accept one more argument. Invoke fill_composition_exclusions.
617         Output decomposition and composition tables.
618
619         New module 'uninorm/base'.
620         * lib/uninorm.h: New file.
621         * lib/unictype.h: Update comment.
622         * modules/uninorm/base: New file.
623
624 2009-02-21  David Lutterkort  <lutter@redhat.com>
625
626         Tests for module 'safe-alloc'.
627         * tests/test-safe-alloc.c: New file.
628         * modules/safe-alloc-tests: New file.
629
630         New module 'safe-alloc'.
631         * lib/safe-alloc.h: New file.
632         * lib/safe-alloc.c: New file.
633         * m4/safe-alloc.m4: New file.
634         * modules/safe-alloc: New file.
635         * doc/safe-alloc.texi: New file.
636         * doc/gnulib.texi: Include it.
637         * MODULES.html.sh (Memory management functions <stdlib.h>): Add
638         safe-alloc.
639
640 2009-02-18  Bruno Haible  <bruno@clisp.org>
641
642         Fix link error on non-glibc systems.
643         * modules/uniwbrk/ulc-wordbreaks-tests (test_ulc_wordbreaks_LDADD): New
644         variable.
645         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
646
647 2009-02-18  Jim Meyering  <meyering@redhat.com>
648
649         fts: avoid used-uninitialized error due to recent change
650         * lib/fts.c (fts_read): Guard uses of the new member,
651         parent->fts_n_dirs_remaining, since it's not relevant for
652         the parent of a directory specified on the command-line.
653
654 2009-02-17  James Youngman  <jay@gnu.org>
655             Bruno Haible  <bruno@clisp.org>
656
657         * m4/include_next.m4: Reformulate comment.
658
659 2009-02-16  Jim Meyering  <meyering@redhat.com>
660
661         fts: add #if guards so that the fts_lgpl module still builds
662         * lib/fts.c: Guard just-added hash-table-using parts with
663         #if GNULIB_FTS, so as not to break builds of the fts_lgpl module.
664         Reported by Simon Josefsson.
665
666 2009-02-15  Bruno Haible  <bruno@clisp.org>
667
668         * modules/array-mergesort-tests: New file.
669         * tests/test-array-mergesort.c: New file.
670
671         New module 'array-mergesort'.
672         * modules/array-mergesort: New file.
673         * lib/array-mergesort.h: New file.
674
675 2009-02-15  Bruno Haible  <bruno@clisp.org>
676
677         Fix 2009-02-07 commit.
678         * lib/gen-uni-tables.c (output_predicate, output_category,
679         output_combclass, output_bidi_category, output_decimal_digit,
680         output_digit, output_numeric, output_mirror, output_scripts,
681         output_ident_category, output_simple_mapping): Fix format directives.
682         (output_lbp, output_wbp): Don't convert -1 to a size_t implicitly.
683
684 2009-02-15  Albert Chin-A-Young  <china@thewrittenword.com>
685
686         * m4/include_next.m4: Update comment about IBM C 9.0/10.1 bug, now that
687         fixes are available from IBM.
688
689 2009-02-13  Jim Meyering  <meyering@redhat.com>
690
691         fts: arrange not to stat non-directories in more cases
692         This makes GNU find (when it doesn't need to stat each file)
693         *much* more efficient at traversing reiserfs file systems.
694         * lib/fts_.h (struct ftsent) [fts_n_dirs_remaining]: New member.
695         (struct FTS) [fts_leaf_optimization_works_ht]: Add member.
696         * lib/fts.c (fts_close): Free ->fts_leaf_optimization_works_ht.
697         (S_MAGIC_REISERFS, S_MAGIC_PROC): Define.
698         (leaf_optimization_applies): New function.
699         (LCO_hash, LCO_compare): New helper functions.
700         (link_count_optimize_ok): New function.
701         (fts_stat): Initialize new member (if dir).
702         (fts_read): Decrement parent's fts_n_dirs_remaining count if
703         we've just stat'ed a directory.  Skip the stat call when possible.
704         ---
705         Note this AFS-related exchange:
706         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=143111
707         and note find's pioctl call in find/fstype.c.
708         But that is necessary only if you want to enable the
709         optimization for AFS, and for now, I don't.
710
711         fts: move a function definition "up" (no semantic change)
712         * lib/fts.c (dirent_inode_sort_may_be_useful): Move definition
713         "up" to precede upcoming use of a related function.
714
715 2009-02-11  Jim Meyering  <meyering@redhat.com>
716
717         fts: correct internal computation of nlinks (optimization-related)
718         * lib/fts.c (fts_build): ISSET(FTS_NOSTAT) has no bearing on
719         whether the current entry is a directory, so don't test it.
720
721 2009-02-10  Bruno Haible  <bruno@clisp.org>
722
723         Tests for module 'uniwbrk/ulc-wordbreaks'.
724         * modules/uniwbrk/ulc-wordbreaks-tests: New file.
725         * tests/uniwbrk/test-ulc-wordbreaks.sh: New file.
726         * tests/uniwbrk/test-ulc-wordbreaks.c: New file.
727
728         Tests for module 'uniwbrk/u32-wordbreaks'.
729         * modules/uniwbrk/u32-wordbreaks-tests: New file.
730         * tests/uniwbrk/test-u32-wordbreaks.c: New file.
731
732         Tests for module 'uniwbrk/u16-wordbreaks'.
733         * modules/uniwbrk/u16-wordbreaks-tests: New file.
734         * tests/uniwbrk/test-u16-wordbreaks.c: New file.
735
736         Tests for module 'uniwbrk/u8-wordbreaks'.
737         * modules/uniwbrk/u8-wordbreaks-tests: New file.
738         * tests/uniwbrk/test-u8-wordbreaks.c: New file.
739
740 2009-02-10  Bruno Haible  <bruno@clisp.org>
741
742         * modules/uniwbrk/u8-wordbreaks (Depends-on): Add uniwbrk/wordbreak
743         property.
744         * modules/uniwbrk/u16-wordbreaks (Depends-on): Likewise.
745         * modules/uniwbrk/u32-wordbreaks (Depends-on): Likewise.
746         * modules/uniwbrk/ulc-wordbreaks (Depends-on): Add localcharset.
747
748 2009-02-10  Simon Josefsson  <simon@josefsson.org>
749
750         * m4/sockets.m4: Call AC_C_INLINE since sockets.h now can use
751         inline keywords.  Reported by Bruno Haible <bruno@clisp.org>.
752
753 2009-02-10  Bruno Haible  <bruno@clisp.org>
754
755         * lib/unilbrk/lbrktables.h: Renamed from lib/unilbrk/tables.h.
756         * lib/unilbrk/lbrktables.c: Renamed from lib/unilbrk/tables.c.
757         * modules/unilbrk/tables (Files, Makefile.am, Include): Update.
758         * lib/unilbrk/u8-possible-linebreaks.c: Update.
759         * lib/unilbrk/u16-possible-linebreaks.c: Likewise.
760         * lib/unilbrk/u32-possible-linebreaks.c: Likewise.
761
762 2009-02-09  Simon Josefsson  <simon@josefsson.org>
763
764         * lib/sockets.h (gl_fd_to_handle): New function.
765
766         * tests/test-sockets.c: Call gl_fd_to_handle.
767
768 2009-02-09  Bruno Haible  <bruno@clisp.org>
769
770         * doc/havelib.texi: Document the conventions on bi-arch systems.
771
772 2009-02-08  Bruno Haible  <bruno@clisp.org>
773
774         Document the AC_LIB_LINKFLAGS macro.
775         * doc/havelib.texi: New file, mostly written on 2005-05-24.
776         * doc/gnulib.texi: Include it.
777
778 2009-02-08  Bruno Haible  <bruno@clisp.org>
779
780         Fix wrong order of sections, compared to TOC.
781         * doc/gnulib.texi: Include relocatable-maint.texi after the
782         "Regular expressions" node, not before.
783
784 2009-02-08  Bruno Haible  <bruno@clisp.org>
785
786         Tests for module 'unicase/totitle'.
787         * modules/unicase/totitle-tests: New file.
788
789         Tests for module 'unicase/tolower'.
790         * modules/unicase/tolower-tests: New file.
791
792         Tests for module 'unicase/toupper'.
793         * modules/unicase/toupper-tests: New file.
794         * tests/unicase/test-mapping-part1.h: New file.
795         * tests/unicase/test-mapping-part2.h: New file.
796
797         New module 'unicase/totitle'.
798         * modules/unicase/totitle: New file.
799         * lib/unicase/totitle.c: New file.
800
801         New module 'unicase/tolower'.
802         * modules/unicase/tolower: New file.
803         * lib/unicase/tolower.c: New file.
804
805         New module 'unicase/toupper'.
806         * modules/unicase/toupper: New file.
807         * lib/unicase/toupper.c: New file.
808         * lib/unicase/simple-mapping.h: New file.
809
810         * lib/gen-uni-tables.c (output_simple_mapping_test): New function.
811         (mapping_table): New structure.
812         (output_simple_mapping): New function.
813         (main): Invoke output_simple_mapping_test and output_simple_mapping.
814         * modules/gen-uni-tables (Description): Update.
815         * lib/unicase/toupper.h: New file, automatically generated by
816         gen-uni-tables.
817         * lib/unicase/tolower.h: New file, automatically generated by
818         gen-uni-tables.
819         * lib/unicase/totitle.h: New file, automatically generated by
820         gen-uni-tables.
821         * tests/unicase/test-uc_toupper.c: New file, automatically generated by
822         gen-uni-tables.
823         * tests/unicase/test-uc_tolower.c: New file, automatically generated by
824         gen-uni-tables.
825         * tests/unicase/test-uc_totitle.c: New file, automatically generated by
826         gen-uni-tables.
827
828         New module 'unicase/base'.
829         * modules/unicase/base: New file.
830         * lib/unicase.h: New file.
831
832 2009-02-08  Bruno Haible  <bruno@clisp.org>
833
834         New module 'uniwbrk/ulc-wordbreaks'.
835         * modules/uniwbrk/ulc-wordbreaks: New file.
836         * lib/uniwbrk/ulc-wordbreaks.c: New file.
837
838         New module 'uniwbrk/u32-wordbreaks'.
839         * modules/uniwbrk/u32-wordbreaks: New file.
840         * lib/uniwbrk/u32-wordbreaks.c: New file.
841
842         New module 'uniwbrk/u16-wordbreaks'.
843         * modules/uniwbrk/u16-wordbreaks: New file.
844         * lib/uniwbrk/u16-wordbreaks.c: New file.
845
846         New module 'uniwbrk/u8-wordbreaks'.
847         * modules/uniwbrk/u8-wordbreaks: New file.
848         * lib/uniwbrk/u8-wordbreaks.c: New file.
849         * lib/uniwbrk/u-wordbreaks.h: New file.
850
851         New module 'uniwbrk/table'.
852         * modules/uniwbrk/table: New file.
853         * lib/uniwbrk/wbrktable.h: New file.
854         * lib/uniwbrk/wbrktable.c: New file.
855
856         New module 'uniwbrk/wordbreak-property'.
857         * modules/uniwbrk/wordbreak-property: New file.
858         * lib/uniwbrk/wordbreak-property.c: New file.
859
860         * lib/gen-uni-tables.c (WBP_*): New enum items.
861         (get_wbp, debug_output_wbp, debug_output_wbrk_tables): New functions.
862         (unicode_org_wbp): New variable.
863         (fill_org_wbp, debug_output_org_wbp, debug_output_org_wbrk_tables):
864         New functions.
865         (wbp_table): New structure.
866         (output_wbp, output_wbrk_tables): New functions.
867         (main): Accept additional argument. Invoke fill_org_wbp,
868         debug_output_wbrk_tables, debug_output_org_wbrk_tables,
869         output_wbrk_tables.
870         * modules/gen-uni-tables (Description): Update.
871         * lib/uniwbrk/wbrkprop.h: New file, automatically generated by
872         gen-uni-tables.
873
874         New module 'uniwbrk/base'.
875         * modules/uniwbrk/base: New file.
876         * lib/uniwbrk.h: New file.
877
878 2009-02-08  Bruno Haible  <bruno@clisp.org>
879
880         Update to Unicode 5.1.0.
881         * lib/gen-uni-tables.c (is_property_alphabetic): Include
882         U+2185..U+2188.
883         (is_property_default_ignorable_code_point): Don't include characters
884         of category Cc or Cs and not-a-characters.
885         (get_lbp): Assume REVISION_22. Special handling of U+0609, U+060A,
886         U+0D79, U+109E, U+109F, U+A60C.
887         * lib/unictype/bidi_of.h: Regenerated.
888         * lib/unictype/blocks.h: Regenerated.
889         * lib/unictype/categ_C.h: Regenerated.
890         * lib/unictype/categ_Cf.h: Regenerated.
891         * lib/unictype/categ_Cn.h: Regenerated.
892         * lib/unictype/categ_L.h: Regenerated.
893         * lib/unictype/categ_Ll.h: Regenerated.
894         * lib/unictype/categ_Lm.h: Regenerated.
895         * lib/unictype/categ_Lo.h: Regenerated.
896         * lib/unictype/categ_Lu.h: Regenerated.
897         * lib/unictype/categ_M.h: Regenerated.
898         * lib/unictype/categ_Mc.h: Regenerated.
899         * lib/unictype/categ_Me.h: Regenerated.
900         * lib/unictype/categ_Mn.h: Regenerated.
901         * lib/unictype/categ_N.h: Regenerated.
902         * lib/unictype/categ_Nd.h: Regenerated.
903         * lib/unictype/categ_Nl.h: Regenerated.
904         * lib/unictype/categ_No.h: Regenerated.
905         * lib/unictype/categ_P.h: Regenerated.
906         * lib/unictype/categ_Pd.h: Regenerated.
907         * lib/unictype/categ_Pe.h: Regenerated.
908         * lib/unictype/categ_Pf.h: Regenerated.
909         * lib/unictype/categ_Pi.h: Regenerated.
910         * lib/unictype/categ_Po.h: Regenerated.
911         * lib/unictype/categ_Ps.h: Regenerated.
912         * lib/unictype/categ_S.h: Regenerated.
913         * lib/unictype/categ_Sk.h: Regenerated.
914         * lib/unictype/categ_Sm.h: Regenerated.
915         * lib/unictype/categ_So.h: Regenerated.
916         * lib/unictype/categ_of.h: Regenerated.
917         * lib/unictype/combining.h: Regenerated.
918         * lib/unictype/ctype_alnum.h: Regenerated.
919         * lib/unictype/ctype_alpha.h: Regenerated.
920         * lib/unictype/ctype_graph.h: Regenerated.
921         * lib/unictype/ctype_lower.h: Regenerated.
922         * lib/unictype/ctype_print.h: Regenerated.
923         * lib/unictype/ctype_punct.h: Regenerated.
924         * lib/unictype/ctype_upper.h: Regenerated.
925         * lib/unictype/decdigit.h: Regenerated.
926         * lib/unictype/digit.h: Regenerated.
927         * lib/unictype/mirror.h: Regenerated.
928         * lib/unictype/numeric.h: Regenerated.
929         * lib/unictype/pr_alphabetic.h: Regenerated.
930         * lib/unictype/pr_bidi_arabic_digit.h: Regenerated.
931         * lib/unictype/pr_bidi_arabic_right_to_left.h: Regenerated.
932         * lib/unictype/pr_bidi_boundary_neutral.h: Regenerated.
933         * lib/unictype/pr_bidi_eur_num_terminator.h: Regenerated.
934         * lib/unictype/pr_bidi_left_to_right.h: Regenerated.
935         * lib/unictype/pr_bidi_non_spacing_mark.h: Regenerated.
936         * lib/unictype/pr_bidi_other_neutral.h: Regenerated.
937         * lib/unictype/pr_combining.h: Regenerated.
938         * lib/unictype/pr_dash.h: Regenerated.
939         * lib/unictype/pr_decimal_digit.h: Regenerated.
940         * lib/unictype/pr_default_ignorable_code_point.h: Regenerated.
941         * lib/unictype/pr_deprecated.h: Regenerated.
942         * lib/unictype/pr_diacritic.h: Regenerated.
943         * lib/unictype/pr_extender.h: Regenerated.
944         * lib/unictype/pr_format_control.h: Regenerated.
945         * lib/unictype/pr_grapheme_base.h: Regenerated.
946         * lib/unictype/pr_grapheme_extend.h: Regenerated.
947         * lib/unictype/pr_grapheme_link.h: Regenerated.
948         * lib/unictype/pr_id_continue.h: Regenerated.
949         * lib/unictype/pr_id_start.h: Regenerated.
950         * lib/unictype/pr_ideographic.h: Regenerated.
951         * lib/unictype/pr_ignorable_control.h: Regenerated.
952         * lib/unictype/pr_lowercase.h: Regenerated.
953         * lib/unictype/pr_math.h: Regenerated.
954         * lib/unictype/pr_numeric.h: Regenerated.
955         * lib/unictype/pr_other_alphabetic.h: Regenerated.
956         * lib/unictype/pr_other_default_ignorable_code_point.h: Regenerated.
957         * lib/unictype/pr_other_grapheme_extend.h: Regenerated.
958         * lib/unictype/pr_other_id_continue.h: Regenerated.
959         * lib/unictype/pr_other_lowercase.h: Regenerated.
960         * lib/unictype/pr_other_math.h: Regenerated.
961         * lib/unictype/pr_punctuation.h: Regenerated.
962         * lib/unictype/pr_sentence_terminal.h: Regenerated.
963         * lib/unictype/pr_soft_dotted.h: Regenerated.
964         * lib/unictype/pr_terminal_punctuation.h: Regenerated.
965         * lib/unictype/pr_unassigned_code_value.h: Regenerated.
966         * lib/unictype/pr_unified_ideograph.h: Regenerated.
967         * lib/unictype/pr_uppercase.h: Regenerated.
968         * lib/unictype/pr_xid_continue.h: Regenerated.
969         * lib/unictype/pr_xid_start.h: Regenerated.
970         * lib/unictype/pr_zero_width.h: Regenerated.
971         * lib/unictype/scripts.h: Regenerated.
972         * lib/unictype/scripts_byname.gperf: Regenerated.
973         * lib/unictype/sy_java_ident.h: Regenerated.
974         * lib/unilbrk/lbrkprop1.h: Regenerated.
975         * lib/unilbrk/lbrkprop2.h: Regenerated.
976         * tests/unictype/test-categ_C.c: Regenerated.
977         * tests/unictype/test-categ_Cf.c: Regenerated.
978         * tests/unictype/test-categ_Cn.c: Regenerated.
979         * tests/unictype/test-categ_L.c: Regenerated.
980         * tests/unictype/test-categ_Ll.c: Regenerated.
981         * tests/unictype/test-categ_Lm.c: Regenerated.
982         * tests/unictype/test-categ_Lo.c: Regenerated.
983         * tests/unictype/test-categ_Lu.c: Regenerated.
984         * tests/unictype/test-categ_M.c: Regenerated.
985         * tests/unictype/test-categ_Mc.c: Regenerated.
986         * tests/unictype/test-categ_Me.c: Regenerated.
987         * tests/unictype/test-categ_Mn.c: Regenerated.
988         * tests/unictype/test-categ_N.c: Regenerated.
989         * tests/unictype/test-categ_Nd.c: Regenerated.
990         * tests/unictype/test-categ_Nl.c: Regenerated.
991         * tests/unictype/test-categ_No.c: Regenerated.
992         * tests/unictype/test-categ_P.c: Regenerated.
993         * tests/unictype/test-categ_Pd.c: Regenerated.
994         * tests/unictype/test-categ_Pe.c: Regenerated.
995         * tests/unictype/test-categ_Pf.c: Regenerated.
996         * tests/unictype/test-categ_Pi.c: Regenerated.
997         * tests/unictype/test-categ_Po.c: Regenerated.
998         * tests/unictype/test-categ_Ps.c: Regenerated.
999         * tests/unictype/test-categ_S.c: Regenerated.
1000         * tests/unictype/test-categ_Sk.c: Regenerated.
1001         * tests/unictype/test-categ_Sm.c: Regenerated.
1002         * tests/unictype/test-categ_So.c: Regenerated.
1003         * tests/unictype/test-ctype_alnum.c: Regenerated.
1004         * tests/unictype/test-ctype_alpha.c: Regenerated.
1005         * tests/unictype/test-ctype_graph.c: Regenerated.
1006         * tests/unictype/test-ctype_lower.c: Regenerated.
1007         * tests/unictype/test-ctype_print.c: Regenerated.
1008         * tests/unictype/test-ctype_punct.c: Regenerated.
1009         * tests/unictype/test-ctype_upper.c: Regenerated.
1010         * tests/unictype/test-decdigit.h: Regenerated.
1011         * tests/unictype/test-digit.h: Regenerated.
1012         * tests/unictype/test-numeric.h: Regenerated.
1013         * tests/unictype/test-pr_alphabetic.c: Regenerated.
1014         * tests/unictype/test-pr_bidi_arabic_digit.c: Regenerated.
1015         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Regenerated.
1016         * tests/unictype/test-pr_bidi_boundary_neutral.c: Regenerated.
1017         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Regenerated.
1018         * tests/unictype/test-pr_bidi_left_to_right.c: Regenerated.
1019         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Regenerated.
1020         * tests/unictype/test-pr_bidi_other_neutral.c: Regenerated.
1021         * tests/unictype/test-pr_combining.c: Regenerated.
1022         * tests/unictype/test-pr_dash.c: Regenerated.
1023         * tests/unictype/test-pr_decimal_digit.c: Regenerated.
1024         * tests/unictype/test-pr_default_ignorable_code_point.c: Regenerated.
1025         * tests/unictype/test-pr_deprecated.c: Regenerated.
1026         * tests/unictype/test-pr_diacritic.c: Regenerated.
1027         * tests/unictype/test-pr_extender.c: Regenerated.
1028         * tests/unictype/test-pr_format_control.c: Regenerated.
1029         * tests/unictype/test-pr_grapheme_base.c: Regenerated.
1030         * tests/unictype/test-pr_grapheme_extend.c: Regenerated.
1031         * tests/unictype/test-pr_grapheme_link.c: Regenerated.
1032         * tests/unictype/test-pr_id_continue.c: Regenerated.
1033         * tests/unictype/test-pr_id_start.c: Regenerated.
1034         * tests/unictype/test-pr_ideographic.c: Regenerated.
1035         * tests/unictype/test-pr_ignorable_control.c: Regenerated.
1036         * tests/unictype/test-pr_lowercase.c: Regenerated.
1037         * tests/unictype/test-pr_math.c: Regenerated.
1038         * tests/unictype/test-pr_numeric.c: Regenerated.
1039         * tests/unictype/test-pr_other_alphabetic.c: Regenerated.
1040         * tests/unictype/test-pr_other_default_ignorable_code_point.c:
1041         Regenerated.
1042         * tests/unictype/test-pr_other_grapheme_extend.c: Regenerated.
1043         * tests/unictype/test-pr_other_id_continue.c: Regenerated.
1044         * tests/unictype/test-pr_other_lowercase.c: Regenerated.
1045         * tests/unictype/test-pr_other_math.c: Regenerated.
1046         * tests/unictype/test-pr_punctuation.c: Regenerated.
1047         * tests/unictype/test-pr_sentence_terminal.c: Regenerated.
1048         * tests/unictype/test-pr_soft_dotted.c: Regenerated.
1049         * tests/unictype/test-pr_terminal_punctuation.c: Regenerated.
1050         * tests/unictype/test-pr_unassigned_code_value.c: Regenerated.
1051         * tests/unictype/test-pr_unified_ideograph.c: Regenerated.
1052         * tests/unictype/test-pr_uppercase.c: Regenerated.
1053         * tests/unictype/test-pr_xid_continue.c: Regenerated.
1054         * tests/unictype/test-pr_xid_start.c: Regenerated.
1055         * tests/unictype/test-pr_zero_width.c: Regenerated.
1056
1057         Update to Unicode 5.1.0.
1058         * lib/uniwidth/width.c (nonspacing_table_data): Add U+0487,
1059         U+0616..U+061A, U+0A51, U+0A75, U+0B44, U+0B62..U+0B63, U+0C62..U+0C63,
1060         U+0D44, U+0D62..U+0D63, U+1033..U+1035, U+103A, U+103D..U+103E,
1061         U+105E..U+1060, U+1071..U+1074, U+1082, U+1085..U+1086, U+108D,
1062         U+1B80..U+1B81, U+1BA2..U+1BA5, U+1BA8..U+1BA9, U+1C2C..U+1C33,
1063         U+1C36..U+1C37, U+1DCB..U+1DE6, U+2064, U+20F0, U+2DE0..U+2DFF,
1064         U+A66F..U+A672, U+A67C..U+A67D, U+A8C4, U+A926..U+A92D, U+A947..U+A951,
1065         U+AA29..U+AA2E, U+AA31..U+AA32, U+AA35..U+AA36, U+AA43, U+AA4C,
1066         U+FE24..U+FE26, U+101FD. Remove U+1929..U+192B.
1067         (nonspacing_table_ind): Update.
1068         * tests/uniwidth/test-uc_width2.sh: Update expected result.
1069
1070         Update to Unicode 5.1.0.
1071         * lib/uniname/gen-uninames.lisp (main): Add the range 0x1Fxxx to the
1072         code transform.
1073         * lib/uniname/uniname.c (unicode_character_name,
1074         unicode_name_character): Add the range 0x1Fxxx to the code transform.
1075         * lib/uniname/uninames.h: Regenerated.
1076         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.1.0.
1077
1078 2009-02-07  Bruno Haible  <bruno@clisp.org>
1079
1080         Merge gen-ctype and gen-lbrk into a single program.
1081         * lib/gen-uni-tables.c: New file, incorporating
1082         lib/unictype/gen-ctype.c and lib/unilbrk/gen-lbrk.c.
1083         Add directory prefixes to the names of the generated files.
1084         * lib/unictype/gen-ctype.c: Remove file.
1085         * lib/unilbrk/gen-lbrk.c: Remove file.
1086         * modules/gen-uni-tables: New file.
1087         * modules/unictype/gen-ctype: Remove file.
1088         * modules/unilbrk/gen-lbrk: Remove file.
1089
1090 2009-02-07  Bruno Haible  <bruno@clisp.org>
1091
1092         * lib/unistr.h (u8_strcoll, u16_strcoll, u32_strcoll): New declations.
1093
1094         New module 'unistr/u32-strcoll'.
1095         * modules/unistr/u32-strcoll: New file.
1096         * lib/unistr/u32-strcoll.c: New file.
1097
1098         New module 'unistr/u16-strcoll'.
1099         * modules/unistr/u16-strcoll: New file.
1100         * lib/unistr/u16-strcoll.c: New file.
1101
1102         New module 'unistr/u8-strcoll'.
1103         * modules/unistr/u8-strcoll: New file.
1104         * lib/unistr/u8-strcoll.c: New file.
1105         * lib/unistr/u-strcoll.h: New file.
1106
1107 2009-02-07  Bruno Haible  <bruno@clisp.org>
1108
1109         * test-mbrtowc4.sh (LOCALE_ZH_CN): Fix default value.
1110         * test-mbsnrtowcs4.sh (LOCALE_ZH_CN): Likewise.
1111         * test-mbsrtowcs4.sh (LOCALE_ZH_CN): Likewise.
1112         * test-wcrtomb.sh (LOCALE_ZH_CN): Likewise.
1113         * test-wcsnrtombs4.sh (LOCALE_ZH_CN): Likewise.
1114         * test-wcsrtombs4.sh (LOCALE_ZH_CN): Likewise.
1115
1116 2009-02-07  Bruno Haible  <bruno@clisp.org>
1117
1118         Make 64-bit clean.
1119         * lib/unictype/gen-ctype.c (output_predicate, output_category,
1120         output_combclass, output_bidi_category, output_decimal_digit,
1121         output_digit, output_numeric, output_mirror, output_scripts,
1122         output_ident_category): Use proper width specifier in format strings.
1123
1124 2009-02-07  Bruno Haible  <bruno@clisp.org>
1125
1126         * doc/posix-functions/dirfd.texi: Clarify situation on mingw. Document
1127         failure behaviour.
1128
1129 2009-02-07  Jim Meyering  <meyering@redhat.com>
1130
1131         regex: avoid compilation failure with upcoming gcc-4.4
1132         * lib/regex_internal.h: Revert e48d8b47fb3eee81d341b71c3e006efe9e3433a7
1133         [workaround for PGC prior to 6.1-2].  Otherwise, we'd get this:
1134         "... error: integer overflow in preprocessor expression".
1135
1136 2009-02-05  Ben Pfaff  <blp@gnu.org>
1137
1138         Fix link errors on Windows when close module is used.
1139         * modules/close: Add $(LIB_CLOSE) to Link section.
1140         * m4/close.m4 (gl_REPLACE_CLOSE): Substitute -lws2_32 into
1141         $(LIB_CLOSE) on Windows.
1142
1143 2009-02-05  Jim Meyering  <meyering@redhat.com>
1144
1145         still avoid unused-parameter warnings, but do it cleanly
1146         * lib/fsusage.c (UNUSED_PARAM): Remove definition.
1147         (get_fs_usage): Cast to void instead.
1148         * lib/mountlist.c (UNUSED_PARAM): Remove definition.
1149         (dev_from_mount_options, read_file_system_list): Cast to void.
1150         Prompted by Bruno Haible.
1151
1152 2009-02-04  Jim Meyering  <meyering@redhat.com>
1153
1154         fsusage.c: correct copyright year
1155         * lib/fsusage.c: Reflect year in which the change is pushed into
1156
1157         avoid misc. warnings
1158         * lib/fsusage.c (UNUSED_PARAM): Define.
1159         (get_fs_usage): Mark parameter "disk" as unused.
1160         * lib/getugroups.c (getgrent): Use "void" in prototype.
1161         * lib/mountlist.c: Mark unused parameters.
1162         (read_file_system_list): Declare a local with "const".
1163         * lib/nanosleep.c (getnow): Declare static.
1164         * lib/strftime.c: Include strftime.h, for declaration of nstrftime.
1165
1166         dirfd: set errno upon failure
1167         * lib/dirfd.c: Include <errno.h>.
1168         Set errno to ENOTSUP when returning -1.
1169         * modules/dirfd (Depends-on): Add errno.
1170         Suggested by John Kodis <kodis@comcast.net>.
1171
1172 2009-02-01  Bruno Haible  <bruno@clisp.org>
1173
1174         Don't assume sizeof (long) >= sizeof (void *).
1175         * lib/memcmp.c: Include stdint.h.
1176         (memcmp_bytes): Change argument types to op_t. Change type of srcp1,
1177         srcp2 to 'const byte *'.
1178         (memcmp_common_alignment, memcmp_not_common_alignment): Change argument
1179         types to uintptr_t.
1180         (rpl_memcmp): Change type of srcp1, srcp2 to 'uintptr_t'.
1181         * modules/memcmp (Depends-on): Add stdint.
1182         Reported by Ozkan Sezer <sezeroz@gmail.com>.
1183
1184 2009-01-30  Eric Blake  <ebb9@byu.net>
1185
1186         fix more require-before-expand issues
1187         * m4/pmccabe2html.m4 (gl_PMCCABE2HTML): Require, rather than
1188         expand, AC_PROG_AWK.
1189         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): Use AC_DEFUN_ONCE.
1190
1191 2009-01-28  Eric Blake  <ebb9@byu.net>
1192
1193         version-etc: use consistent URL formatting
1194         * lib/version-etc.c (emit_bug_reporting_address, version_etc_va):
1195         Improve formatting.  Use fputs for string without %.
1196
1197 2009-01-28  Jim Meyering  <meyering@redhat.com>
1198
1199         00gnulib.m4: add m4 quotes in shell comment to avoid autoconf warning
1200         * m4/00gnulib.m4 (AC_DEFUN_ONCE): Add quotes to avoid an
1201         "underquoted definition of NAME" from autoconf-2.59.
1202
1203 2009-01-28  Bruno Haible  <bruno@clisp.org>
1204
1205         * doc/gnulib.texi: Add "Obsolete modules" to index.
1206
1207 2009-01-28  Jim Meyering  <meyering@redhat.com>
1208
1209         useless-if-before-free: recognize more variants
1210         * build-aux/useless-if-before-free: Also recognize e.g.,
1211         if (NULL != p) free (p);
1212
1213 2009-01-27  Mark McLoughlin  <markmc@redhat.com>
1214
1215         test-getaddrinfo: skip (don't fail) this test when there's no network
1216         * tests/test-getaddrinfo.c: Skip test upon failure with EAI_AGAIN,
1217         on the presumption that it means you lack network access.
1218
1219 2009-01-26  Jim Meyering  <meyering@redhat.com>
1220
1221         fflush: avoid warnings on modern systems
1222         * lib/fflush.c (rpl_fflush): Move declarations of locals,
1223         pos and result, into scopes where they're used.
1224
1225 2009-01-26  Eric Blake  <ebb9@byu.net>
1226
1227         Silence warning reintroduced by recent extensions patch.
1228         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS)
1229         (gl_USE_SYSTEM_EXTENSIONS): Use AC_DEFUN_ONCE to silence newer
1230         autoconf.
1231
1232         Backport improved autoconf semantics of AC_DEFUN_ONCE.
1233         * m4/00gnulib.m4: New file.
1234         * gnulib-tool (func_get_filelist): Always use it.
1235         * m4/gnulib-common.m4 (gl_COMMON): Force the file to be used.
1236         Reported by Bruno Haible, with suggestions from Paolo Bonzini.
1237
1238 2009-01-25  Bruno Haible  <bruno@clisp.org>
1239
1240         Make test-quotearg work on MacOS X and AIX.
1241         * tests/test-quotearg.sh: New file.
1242         * tests/locale/fr/LC_MESSAGES/test-quotearg.po: New file.
1243         * tests/locale/fr/LC_MESSAGES/test-quotearg.mo: New file.
1244         * tests/test-quotearg.c: Include <locale.h> and gettext.h. Don't
1245         include <libintl.h>.
1246         (fake_locale): Remove variable.
1247         (gettext, dgettext, dcgettext): Remove functions.
1248         (main): Instead of setting a fake locale, set a real locale. Call
1249         textdomain and bindtextdomain.
1250         * modules/quotearg-tests (Files): Add the new files.
1251         (Depends-on): Add gettext, setenv, unsetenv.
1252         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
1253         (Makefile.am): Add test-quotearg.sh to TESTS, remove test-quotearg.
1254         Augment TESTS_ENVIRONMENT.
1255
1256 2009-01-25  Bruno Haible  <bruno@clisp.org>
1257
1258         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove special code that hid the
1259         fr_FR.ISO8859-1 locale on MacOS X.
1260         * m4/locale-ja.m4 (gt_LOCALE_JA): Remove special code that hid the
1261         ja_JP.eucJP locale on MacOS X.
1262         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Remove special code that hid the
1263         zh_CN.GB18030 locale on MacOS X.
1264
1265 2009-01-25  Bruno Haible  <bruno@clisp.org>
1266
1267         Avoid link errors on MacOS X 10.3.
1268         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Add initializer.
1269         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
1270
1271 2009-01-25  Bruno Haible  <bruno@clisp.org>
1272
1273         * lib/pipe.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
1274         * m4/pipe.m4 (gl_PIPE): Remove tests for vfork() based code.
1275         * modules/pipe (Files): Remove m4/posix_spawn.m4.
1276         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
1277         posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2,
1278         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
1279         posix_spawnattr_init, posix_spawnattr_setsigmask,
1280         posix_spawnattr_setflags, posix_spawnattr_destroy.
1281
1282         * lib/execute.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
1283         * m4/execute.m4 (gl_EXECUTE): Remove tests for vfork() based code.
1284         * modules/execute (Files): Remove m4/posix_spawn.m4.
1285         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
1286         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
1287         posix_spawnattr_init, posix_spawnattr_setsigmask,
1288         posix_spawnattr_setflags, posix_spawnattr_destroy.
1289
1290 2009-01-25  Bruno Haible  <bruno@clisp.org>
1291
1292         * lib/glthread/threadlib.c: Include <stdlib.h>.
1293
1294 2009-01-25  Bruno Haible  <bruno@clisp.org>
1295
1296         * lib/glthread/threadlib.c (dummy): New declaration.
1297
1298 2009-01-25  Bruno Haible  <bruno@clisp.org>
1299
1300         * lib/mbrtowc.c (mbrtowc): Distinguish invalid and incomplete
1301         multibyte characters also for the GB18030 encoding. Don't crash when
1302         the encoding is unknown and nstate = 0. Needed on OSF/1 5.1.
1303
1304 2009-01-25  Bruno Haible  <bruno@clisp.org>
1305
1306         Avoid redefining 'struct random_data' on OSF/1 5.1.
1307         * lib/stdlib.in.h: Include <random.h> if it exists.
1308         * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether <random.h> exists. Set
1309         HAVE_RANDOM_H. Include <random.h> when testing whether
1310         'struct random_data' exists.
1311         * modules/stdlib (Makefile.am): Substitute HAVE_RANDOM_H.
1312
1313 2009-01-25  Bruno Haible  <bruno@clisp.org>
1314
1315         Don't install charset.alias on MacOS X >= 10.3.
1316         * lib/localcharset.c (DARWIN7): New macro.
1317         (get_charset_aliases): Hardcode the result for Darwin7.
1318         * modules/localcharset (install-exec-local): Don't install
1319         charset.alias on MacOS X >= 10.3, if the file does not yet exist.
1320
1321 2009-01-25  Bruno Haible  <bruno@clisp.org>
1322
1323         Don't install charset.alias on mingw and Cygwin.
1324         * modules/localcharset (install-exec-local): Don't install
1325         charset.alias on mingw and Cygwin, if the file does not yet exist.
1326         The result for these platforms is hardcoded in localcharset.c.
1327
1328 2009-01-25  Bruno Haible  <bruno@clisp.org>
1329
1330         Make it possible again to use AC_GNU_SOURCE together with gnulib.
1331         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_GNU_SOURCE
1332         before requiring AC_USE_SYSTEM_EXTENSIONS.
1333
1334 2009-01-25  Jim Meyering  <meyering@redhat.com>
1335
1336         c-strtod: avoid warnings
1337         * lib/c-strtod.c (C_STRTOD): Cast nptr to (char *) to avoid
1338         "assignment discards qualifiers from pointer target type" warnings.
1339
1340 2009-01-24  Bruno Haible  <bruno@clisp.org>
1341
1342         Add support for non-UTF-8 locales on MacOS X.
1343         * lib/config.charset: Add CP1131, ARMSCII-8, PT154 to the list of
1344         canonical encodings. For Darwin 7 and newer, don't map traditional
1345         encodings to UTF-8.
1346         Reported by Vincent Lefevre <vincent@vinc17.org>
1347         at <http://savannah.gnu.org/bugs/?25235>.
1348
1349 2009-01-24  Bruno Haible  <bruno@clisp.org>
1350
1351         * doc/gnulib.texi (Obsolete modules): New section.
1352         Reported by Mike Frysinger <vapier@gentoo.org>.
1353
1354 2009-01-24  Bruno Haible  <bruno@clisp.org>
1355
1356         * doc/Makefile (%.pdf): Clarify where to find texmf.cnf.
1357         (%.dvi): New rule.
1358
1359 2009-01-24  Bruno Haible  <bruno@clisp.org>
1360
1361         * lib/c-strtod.h (c_strtod, c_strtold): Adjust specification.
1362         Reported by Eric Blake.
1363
1364 2009-01-24  Bruno Haible  <bruno@clisp.org>
1365
1366         * lib/c-stack.c (segv_handler): If !HAVE_XSI_STACK_OVERFLOW_HEURISTIC,
1367         set signo = 0 also if info->si_code <= 0. Needed on HP-UX 11.11.
1368         Reported by Gary V. Vaughan <gary@gnu.org>.
1369
1370 2009-01-24  Bruno Haible  <bruno@clisp.org>
1371
1372         * lib/c-strtod.h (c_strtod, c_strtold): Add specification.
1373
1374 2009-01-23  Bruno Haible  <bruno@clisp.org>
1375
1376         Make c-strtod, c-strtold usable in libraries.
1377         * lib/c-strtod.c: Include string.h instead of xalloc.h.
1378         (C_STRTOD): Call strdup instead of xstrdup.
1379         * modules/c-strtod (Depends-on): Add strdup-posix, remove xalloc.
1380         * modules/c-strtold (Depends-on): Likewise.
1381         * doc/c-strtod.texi: Remove the sentence mentioning xalloc_die.
1382         * NEWS: Mention the change.
1383         Reported by Michael Gold <mgold@ncf.ca>.
1384
1385 2009-01-23  Jim Meyering  <meyering@redhat.com>
1386
1387         c-strtod: when ENDPTR is non-NULL, set *ENDPTR in new failure path
1388         * lib/c-strtod.c (C_STRTOD) [LC_ALL_MASKC]: Ensure that when
1389         ENDPTR is non-NULL, *ENDPTR is set to NPTR upon failure.
1390
1391 2009-01-23  Simon Josefsson  <simon@josefsson.org>
1392
1393         * lib/version-etc.c: Add emit_bug_reporting_address, inspired by
1394         GNU CoreUtils.
1395         * lib/version-etc.h: Add prototype for emit_bug_reporting_address.
1396         * modules/version-etc (Description): Update.
1397
1398 2009-01-22  Bruno Haible  <bruno@clisp.org>
1399
1400         Cache the C locale object.
1401         * lib/c-strtod.c (c_locale_cache): New variable.
1402         (c_locale): New function.
1403         (C_STRTOD): Use it, and don't call freelocale.
1404         * m4/c-strtod.m4 (gl_C_STRTOD, gl_C_STRTOLD): Require AC_C_INLINE.
1405         Suggested by Paolo Bonzini.
1406
1407 2009-01-21  Bruno Haible  <bruno@clisp.org>
1408
1409         * lib/getloadavg.c (getloadavg): Check c_strtod result against error
1410         conditions other than overflow.
1411
1412 2009-01-21  Bruno Haible  <bruno@clisp.org>
1413
1414         * lib/c-strtod.c: Include errno.h.
1415         (C_STRTOD): Check against NULL return from newlocale. Preserve errno
1416         value from STRTOD_L and STRTOD.
1417
1418 2009-01-21  Bruno Haible  <bruno@clisp.org>
1419         and Jim Meyering  <meyering@redhat.com>
1420
1421         nanosleep: skip configure test (fail it) for apple universal builds
1422         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_MULTIARCH. In Apple
1423         universal builds, assume that nanosleep does not work.
1424         * modules/nanosleep (Depends-on): Add multiarch.
1425
1426         mktime: skip configure test (fail it) for apple universal builds
1427         * m4/mktime.m4 (AC_FUNC_MKTIME): Require gl_MULTIARCH. In Apple
1428         universal builds, assume that mktime does not work.
1429         * modules/mktime (Depends-on): Add multiarch.
1430
1431 2009-01-21  Eric Blake  <ebb9@byu.net>
1432
1433         multiarch: avoid expand-before-require warning
1434         * modules/multiarch (configure.ac): Require, rather than expand,
1435         gl_MULTIARCH.
1436         * m4/multiarch.m4 (gl_MULTIARCH_BODY): Merge...
1437         (gl_MULTIARCH): ...into this macro, and use AC_DEFUN_ONCE to
1438         enforce that all clients require it.  Partial reversion of
1439         2008-12-29 patch.
1440
1441         error: avoid expand-before-require warning
1442         * modules/errno (configure.ac): Require, rather than expand,
1443         gl_HEADER_ERRNO_H.
1444         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Merge...
1445         (gl_HEADER_ERRNO_H): ...into this macro, and use AC_DEFUN_ONCE to
1446         enforce that all clients require it.
1447
1448         gnulib-tool: avoid warnings from using obsolete AC_GNU_SOURCE
1449         * gnulib-tool (func_dest_tmpfilename, func_create_testdir): Using
1450         obsolete AC_GNU_SOURCE causes out-of-order expansion; avoid it,
1451         and rely solely on gl_USE_SYSTEM_EXTENSIONS.
1452
1453 2009-01-21  Paolo Bonzini  <bonzini@gnu.org>
1454
1455         Revert:
1456         2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
1457
1458         regex: do not depend on obsolete modules.
1459         * modules/regex: Remove memcmp and memmove.
1460
1461 2009-01-20  Bruno Haible  <bruno@clisp.org>
1462
1463         Make the 'link' module link on Windows NT 4.
1464         * lib/link.c (_WIN32_WINNT): Don't define.
1465         (CreateHardLinkFuncType): New type.
1466         (CreateHardLinkFunc, initialized): New variables.
1467         (initialize): New function.
1468         (link): Invoke CreateHardLink indirectly through the function pointer.
1469
1470 2009-01-20  Bruno Haible  <bruno@clisp.org>
1471
1472         Fix compilation failure on mingw.
1473         * tests/test-link.c (main): Don't assume that EOPNOTSUPP exists.
1474
1475 2009-01-20  Michael Gold  <mgold@ncf.ca>  (tiny change)
1476
1477         * doc/c-strtod.texi: Mention a couple of restrictions.
1478
1479 2009-01-20  Jim Meyering  <meyering@redhat.com>
1480
1481         gettimeofday: move more declarations out of functions
1482         * lib/gettimeofday.c: Move extern declarations of tzset and
1483         gmtime out of containing functions.  Prompted by Bruno Haible.
1484
1485 2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
1486
1487         regex: do not depend on obsolete modules.
1488         * modules/regex: Remove memcmp and memmove.
1489
1490 2009-01-19  Bruno Haible  <bruno@clisp.org>
1491
1492         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
1493         * modules/uniconv/u16-conv-from-enc (configure.ac): Require
1494         gl_BIGENDIAN, not AC_C_BIGENDIAN.
1495         * modules/uniconv/u16-conv-to-enc (configure.ac): Likewise.
1496         * modules/uniconv/u16-strconv-to-enc (configure.ac): Likewise.
1497
1498 2009-01-19  Bruno Haible  <bruno@clisp.org>
1499
1500         * tests/test-link.c: Include <errno.h>.
1501         (main): Exit with code 77 when a hard link cannot be created due to
1502         the file system.
1503         * tests/test-link.sh: Skip test when a hard link cannot be created due
1504         to the file system.
1505         Suggested by Eric Blake.
1506
1507 2009-01-19  Martin Lambers  <marlam@marlam.de>
1508
1509         * modules/link-tests: New file.
1510         * tests/test-link.sh: New file.
1511         * tests/test-link.c: New file.
1512
1513 2009-01-19  Eric Blake  <ebb9@byu.net>
1514
1515         doc: mention another function added in cygwin 1.7.0
1516         * doc/glibc-functions/glob_pattern_p.texi (glob_pattern_p):
1517         Another new function in cygwin 1.7.
1518
1519 2009-01-19  Bruno Haible  <bruno@clisp.org>
1520
1521         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
1522         * m4/gnulib-common.m4 (gl_BIGENDIAN): New macro.
1523         * m4/exponentl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require
1524         gl_BIGENDIAN, not AC_C_BIGENDIAN.
1525         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise.
1526         * m4/isinf.m4 (gl_ISINFL_WORKS): Likewise.
1527         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise.
1528         * m4/md4.m4 (gl_MD4): Likewise.
1529         * m4/md5.m4 (gl_MD5): Likewise.
1530         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Likewise.
1531         * m4/sha1.m4 (gl_SHA1): Likewise.
1532         * m4/sha256.m4 (gl_SHA256): Likewise.
1533         * m4/sha512.m4 (gl_SHA512): Likewise.
1534
1535 2009-01-19  Bruno Haible  <bruno@clisp.org>
1536
1537         * modules/uniname/uniname-tests (Depends-on): Add progname.
1538         * tests/uniname/test-uninames.c: Include progname.h.
1539         (main): Call set_program_name.
1540
1541         * modules/unistdio/u8-vsprintf-tests (Depends-on): Add progname.
1542         * tests/unistdio/test-u8-vsprintf1.c: Include progname.h.
1543         (main): Call set_program_name.
1544
1545         * modules/unistdio/u8-vsnprintf-tests (Depends-on): Add progname.
1546         * tests/unistdio/test-u8-vsnprintf1.c: Include progname.h.
1547         (main): Call set_program_name.
1548
1549         * modules/unistdio/u16-vsprintf-tests (Depends-on): Add progname.
1550         * tests/unistdio/test-u16-vsprintf1.c: Include progname.h.
1551         (main): Call set_program_name.
1552
1553         * modules/unistdio/u16-vsnprintf-tests (Depends-on): Add progname.
1554         * tests/unistdio/test-u16-vsnprintf1.c: Include progname.h.
1555         (main): Call set_program_name.
1556
1557         * modules/unistdio/u32-vsprintf-tests (Depends-on): Add progname.
1558         * tests/unistdio/test-u32-vsprintf1.c: Include progname.h.
1559         (main): Call set_program_name.
1560
1561         * modules/unistdio/u32-vsnprintf-tests (Depends-on): Add progname.
1562         * tests/unistdio/test-u32-vsnprintf1.c: Include progname.h.
1563         (main): Call set_program_name.
1564
1565         * modules/unistdio/ulc-vsprintf-tests (Depends-on): Add progname.
1566         * tests/unistdio/test-ulc-vsprintf1.c: Include progname.h.
1567         (main): Call set_program_name.
1568
1569         * modules/unistdio/ulc-vsnprintf-tests (Depends-on): Add progname.
1570         * tests/unistdio/test-ulc-vsnprintf1.c: Include progname.h.
1571         (main): Call set_program_name.
1572
1573 2009-01-19  Eric Blake  <ebb9@byu.net>
1574
1575         test-unistd: test previous patch
1576         * tests/test-unistd.c: Test *_FILENO macros.
1577
1578         unistd: guarantee STDIN_FILENO here, for OS/2 EMX
1579         * lib/unistd.in.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
1580         Guarantee a definition.
1581         * doc/posix-headers/unistd.texi (unistd.h): Document the bug.
1582         * modules/unistd-safer (Depends-on): Add dependency on unistd.
1583         * lib/c-stack.c (STDERR_FILENO): Rely on <unistd.h>.
1584         * lib/dup-safer.c (STDERR_FILENO): Likewise.
1585         * lib/execute.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
1586         Likewise.
1587         * lib/fd-safer.c (STDIN_FILENO, STDERR_FILENO): Likewise.
1588         * lib/fopen-safer.c (STDERR_FILENO): Likewise.
1589         * lib/pipe.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
1590         Likewise.
1591         * lib/tmpfile-safer.c (STDERR_FILENO): Likewise.
1592         * tests/test-posix_spawn1.c (STDIN_FILENO, STDOUT_FILENO)
1593         (STDERR_FILENO): Likewise.
1594         * tests/test-posix_spawn2.c (STDIN_FILENO, STDOUT_FILENO)
1595         (STDERR_FILENO): Likewise.
1596         * tests/test-posix_spawn3.c (STDIN_FILENO, STDOUT_FILENO)
1597         (STDERR_FILENO): Likewise.
1598         Reported by Elbert Pol.
1599
1600 2009-01-19  Eric Blake  <ebb9@byu.net>
1601
1602         doc: mention more functions added in cygwin 1.7.0
1603         * doc/posix-functions/abort.texi (abort): Update wording related
1604         to cygwin.
1605         * doc/posix-functions/daylight.texi (daylight): Likewise.
1606         * doc/posix-functions/optarg.texi (optarg): Likewise.
1607         * doc/posix-functions/optarg.texi (opterr): Likewise.
1608         * doc/posix-functions/optarg.texi (optind): Likewise.
1609         * doc/posix-functions/optarg.texi (optopt): Likewise.
1610         * doc/posix-functions/wprintf.texi (wprintf): Cygwin wprintf never
1611         worked in 1.5.x, and was withdrawn in 1.7.
1612         * doc/posix-functions/vwprintf.texi (vwprintf): Likewise.
1613         * doc/posix-functions/fprintf.texi (fprintf): Tighten mention of
1614         cygwin versions.
1615         * doc/posix-functions/perror.texi (perror): Likewise.
1616         * doc/posix-functions/printf.texi (printf): Likewise.
1617         * doc/posix-functions/snprintf.texi (snprintf): Likewise.
1618         * doc/posix-functions/sprintf.texi (sprintf): Likewise.
1619         * doc/posix-functions/vfprintf.texi (vfprintf): Likewise.
1620         * doc/posix-functions/vprintf.texi (vprintf): Likewise.
1621         * doc/posix-functions/vsnprintf.texi (vsnprintf): Likewise.
1622         * doc/posix-functions/vsprintf.texi (vsprintf): Likewise.
1623         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
1624         Likewise.
1625         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
1626         Likewise.
1627         * doc/glibc-functions/cfmakeraw.texi (cfmakeraw): Cygwin 1.7 adds
1628         this function.
1629         * doc/glibc-functions/in6addr_any.texi (in6addr_any): Likewise.
1630         * doc/glibc-functions/in6addr_loopback.texi (in6addr_loopback):
1631         Likewise.
1632         * doc/glibc-functions/updwtmpx.texi (updwtmpx): Likewise.
1633         * doc/posix-functions/_Exit_C99.texi (_Exit): Likewise.
1634         * doc/posix-functions/confstr.texi (confstr): Likewise.
1635         * doc/posix-functions/dprintf.texi (dprintf): Likewise.
1636         * doc/posix-functions/fgetwc.texi (fgetwc): Likewise.
1637         * doc/posix-functions/fgetws.texi (fgetws): Likewise.
1638         * doc/posix-functions/fputwc.texi (fputwc): Likewise.
1639         * doc/posix-functions/fputws.texi (fputws): Likewise.
1640         * doc/posix-functions/fwide.texi (fwide): Likewise.
1641         * doc/posix-functions/getwc.texi (getwc): Likewise.
1642         * doc/posix-functions/getwchar.texi (getwchar): Likewise.
1643         * doc/posix-functions/putwc.texi (putwc): Likewise.
1644         * doc/posix-functions/putwchar.texi (putwchar): Likewise.
1645         * doc/posix-functions/sigignore.texi (sigignore): Likewise.
1646         * doc/posix-functions/ungetwc.texi (ungetwc): Likewise.
1647         * doc/posix-functions/vdprintf.texi (vdprintf): Likewise.
1648         * doc/posix-functions/wcpcpy.texi (wcpcpy): Likewise.
1649         * doc/posix-functions/wcpncpy.texi (wcpncpy): Likewise.
1650         * doc/posix-functions/wcstol.texi (wcstol): Likewise.
1651         * doc/posix-functions/wcstoll.texi (wcstoll): Likewise.
1652         * doc/posix-functions/wcstoul.texi (wcstoul): Likewise.
1653         * doc/posix-functions/wcstoull.texi (wcstoull): Likewise.
1654         * doc/posix-functions/wcsxfrm.texi (wcsxfrm): Likewise.
1655
1656 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
1657
1658         ioctl: avoid warning: no previous prototype for 'rpl_ioctl'
1659         * lib/ioctl.c: Include <sys/ioctl.h>.
1660
1661 2009-01-19  Simon Josefsson  <simon@josefsson.org>
1662
1663         * modules/getdate-tests (Depends-on): Add progname.
1664         * tests/test-getdate.c: Use progname module, to avoid link errors
1665         on non-glibc systems.
1666
1667 2009-01-18  Simon Josefsson  <simon@josefsson.org>
1668
1669         * modules/filenamecat-tests (Depends-on): Add progname.
1670         * modules/fstrcmp-tests (Depends-on): Likewise.
1671
1672         * tests/test-filenamecat.c: Use progname module, to avoid link
1673         errors on non-glibc systems.
1674         * tests/test-fstrcmp.c: Likewise.
1675
1676 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
1677
1678         gettimeofday: avoid warning: nested extern declaration of 'localtime'
1679         * lib/gettimeofday.c: Move extern declaration out of function.
1680
1681 2009-01-18  Bruno Haible  <bruno@clisp.org>
1682
1683         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mblen and mbrlen.
1684         * lib/strftime.c (HAVE_MBLEN, HAVE_MBRLEN): Remove macros.
1685         (MULTIBYTE_IS_FORMAT_SAFE): Define to 1 on all platforms except OSF/1.
1686
1687 2009-01-18  Bruno Haible  <bruno@clisp.org>
1688
1689         * lib/strftime.c (MEMPCPY): Remove unused macro.
1690         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mempcpy.
1691
1692 2009-01-18  Martin Lambers  <marlam@marlam.de>
1693
1694         New module 'link'.
1695         * lib/unistd.in.h (link): New declaration.
1696         * lib/link.c: New file.
1697         * m4/link.m4: New file.
1698         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_LINK,
1699         HAVE_LINK.
1700         * modules/unistd (Makefile.am): Substitute GNULIB_LINK, HAVE_LINK.
1701         * modules/link: New file.
1702         * doc/posix-functions/link.texi: Mention the new module.
1703
1704 2009-01-18  Bruno Haible  <bruno@clisp.org>
1705
1706         * tests/test-avltree_list.c (main): Call set_program_name.
1707         * tests/test-avltree_oset.c (main): Likewise.
1708         * tests/test-obstack-printf.c: Include progname.h.
1709         (main): Call set_program_name.
1710         * tests/test-quotearg.c: Include progname.h.
1711         (main): Call set_program_name.
1712         * tests/test-xmemdup0.c: Include progname.h.
1713         (main): Call set_program_name.
1714
1715 2009-01-18  Bruno Haible  <bruno@clisp.org>
1716
1717         New module 'alphasort'.
1718         * lib/dirent.in.h (alphasort): New declaration.
1719         * lib/alphasort.c: New file, from glibc with modifications.
1720         * m4/alphasort.m4: New file.
1721         * modules/alphasort: New file.
1722         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_ALPHASORT,
1723         HAVE_ALPHASORT.
1724         * modules/dirent (Makefile.am): Substitute GNULIB_ALPHASORT,
1725         HAVE_ALPHASORT.
1726         * doc/posix-functions/alphasort.texi: Mention the new module and the
1727         portability problems.
1728
1729 2009-01-18  Bruno Haible  <bruno@clisp.org>
1730
1731         New module 'scandir'.
1732         * lib/dirent.in.h (scandir): New declaration.
1733         * lib/scandir.c: New file, from glibc with modifications.
1734         * m4/scandir.m4: New file.
1735         * modules/scandir: New file.
1736         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_SCANDIR,
1737         HAVE_SCANDIR.
1738         * modules/dirent (Makefile.am): Substitute GNULIB_SCANDIR,
1739         HAVE_SCANDIR.
1740         * doc/posix-functions/scandir.texi: Mention the new module and the
1741         portability problems.
1742
1743 2009-01-17  Bruno Haible  <bruno@clisp.org>
1744
1745         * gnulib-tool (func_remove_prefix): Escape all dots in the prefix.
1746         Update documentation.
1747         (func_remove_suffix): Escape all dots in the suffix. Update
1748         documentation.
1749         (func_filter_filelist): Update documentation.
1750         Reported by Ralf Wildenhues.
1751
1752 2009-01-17  Bruno Haible  <bruno@clisp.org>
1753
1754         * modules/dprintf-posix-tests: New file.
1755         * tests/test-dprintf-posix.sh: New file.
1756         * tests/test-dprintf-posix.c: New file.
1757
1758         New modules 'dprintf', 'dprintf-posix'.
1759         * lib/stdio.in.h (dprintf): New declaration.
1760         * lib/dprintf.c: New file.
1761         * m4/dprintf.m4: New file.
1762         * m4/dprintf-posix.m4: New file.
1763         * modules/dprintf: New file.
1764         * modules/dprintf-posix: New file.
1765         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_DPRINTF,
1766         HAVE_DPRINTF, REPLACE_DPRINTF.
1767         * modules/stdio (Makefile.am): Substitute also GNULIB_DPRINTF,
1768         HAVE_DPRINTF, REPLACE_DPRINTF.
1769         * doc/posix-functions/dprintf.texi: Mention the new modules.
1770
1771 2009-01-17  Bruno Haible  <bruno@clisp.org>
1772
1773         * modules/vdprintf-posix-tests: New file.
1774         * tests/test-vdprintf-posix.sh: New file.
1775         * tests/test-vdprintf-posix.c: New file.
1776
1777         New modules 'vdprintf', 'vdprintf-posix'.
1778         * lib/stdio.in.h (vdprintf): New declaration.
1779         * lib/vdprintf.c: New file.
1780         * m4/vdprintf.m4: New file.
1781         * m4/vdprintf-posix.m4: New file.
1782         * modules/vdprintf: New file.
1783         * modules/vdprintf-posix: New file.
1784         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_VDPRINTF,
1785         HAVE_VDPRINTF, REPLACE_VDPRINTF.
1786         * modules/stdio (Makefile.am): Substitute also GNULIB_VDPRINTF,
1787         HAVE_VDPRINTF, REPLACE_VDPRINTF.
1788         * doc/posix-functions/vdprintf.texi: Mention the new modules.
1789
1790 2009-01-17  Bruno Haible  <bruno@clisp.org>
1791
1792         Fix replacement of fopen on mingw.
1793         * m4/fopen.m4 (gl_FUNC_FOPEN): Define FOPEN_TRAILING_SLASH_BUG also on
1794         mingw.
1795
1796 2009-01-17  Bruno Haible  <bruno@clisp.org>
1797
1798         Fix compilation error on HP-UX 11.00, present since 2008-09-24.
1799         * lib/fopen.c: Include <sys/types.h> and <sys/types.h>.
1800
1801 2009-01-17  Bruno Haible  <bruno@clisp.org>
1802
1803         Avoid test-fflush2.sh failure on mingw.
1804         * tests/test-fflush2.c: Include binary-io.h.
1805         (main): Put standard input into binary mode.
1806         * modules/fflush-tests (Depends-on): Add binary-io.
1807
1808 2009-01-17  Bruno Haible  <bruno@clisp.org>
1809
1810         * lib/wchar.in.h: In another particular situation, include only the
1811         system's <wchar.h> file.
1812         (_GL_ALREADY_INCLUDING_WCHAR_H): New macro.
1813         Reported by Albert Chin-A-Young <china@thewrittenword.com>
1814         and Thomas Guyot-Sionnest <dermoth@aei.ca>.
1815
1816 2009-01-17  Bruno Haible  <bruno@clisp.org>
1817
1818         Support for stripping executables in --enable-relocatable.
1819         * build-aux/install-reloc: Expect one more argument, or an environment
1820         variable RELOC_STRIP_PROG. If set, strip the destination program and
1821         its wrapper.
1822         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV, set
1823         RELOC_STRIP_PROG.
1824         * doc/relocatable-maint.texi (Supporting Relocation): Mention the need
1825         to set RELOCATABLE_STRIP.
1826         * NEWS: Mention the new Makefile requirement.
1827
1828 2009-01-17  Bruno Haible  <bruno@clisp.org>
1829
1830         * build-aux/install-reloc: Remove debugging information left over by
1831         C compiler on MacOS X.
1832
1833 2009-01-17  Bruno Haible  <bruno@clisp.org>
1834
1835         Update use of _NSGetExecutablePath after API change in MacOS X 10.4.
1836         * lib/progreloc.c (find_executable): Fix type of pointer passed to
1837         _NSGetExecutablePath.
1838
1839 2009-01-16  Jim Meyering  <meyering@redhat.com>
1840
1841         strerror: avoid warnings about discarding "const"
1842         * lib/strerror.c (rpl_strerror): Instead of returning a const
1843         string from each and every "case", use a variable, and add a single
1844         cast after the switch.
1845
1846 2009-01-16  Albert Chin-A-Young <china@thewrittenword.com>
1847
1848         * lib/arpa_inet.in.h: Add extern "C" block for C++.
1849
1850 2009-01-16  Bruno Haible  <bruno@clisp.org>
1851
1852         * m4/printf.m4 (gl_SNPRINTF_SIZE1, gl_VSNPRINTF_ZEROSIZE_C99): Use an
1853         array initializer syntax that also works in C++ mode.
1854         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
1855
1856 2009-01-16  Jim Meyering  <meyering@redhat.com>
1857
1858         poll: suppress a warning
1859         * lib/poll.c: Use #pragma GCC diagnostic ignored "-Wtype-limits"
1860         to ignore "...unsigned expression < 0 is always false" warnings.
1861
1862 2009-01-16  Daniel P. Berrange  <berrange@redhat.com>
1863
1864         poll: remove declarations of unused variables
1865         * lib/poll.c (poll) [WIN32_NATIVE]: Remove declarations of unused
1866         sockbuf and optlen.
1867
1868 2009-01-15  Bruno Haible  <bruno@clisp.org>
1869
1870         Make fflush-after-ungetc POSIX compliant on BSD systems.
1871         * lib/fflush.c (clear_ungetc_buffer_preserving_position): New function.
1872         (clear_ungetc_buffer): Implement also for other systems.
1873         (rpl_fflush): On glibc systems, invoke
1874         clear_ungetc_buffer_preserving_position. Otherwise, invoke
1875         clear_ungetc_buffer after fetching the stream's position, not before.
1876
1877 2009-01-15  Bruno Haible  <bruno@clisp.org>
1878
1879         Make fflush-after-ungetc POSIX compliant on glibc systems.
1880         * m4/fflush.m4 (gl_FUNC_FFLUSH): Test also the behaviour of fflush
1881         after ungetc.
1882         * lib/fflush.c (clear_ungetc_buffer): Implement for glibc systems.
1883         (rpl_fflush): On glibc systems, simply call the system's fflush
1884         function after clearing the ungetc buffer.
1885         * lib/fseeko.c (rpl_fseeko): Don't try to lseek past the end of file.
1886         Instead, lseek only to the end of file, then use the system's fseeko
1887         for the rest. On glibc systems, reset the EOF indicator bit.
1888
1889 2009-01-15  Jim Meyering  <meyering@redhat.com>
1890
1891         openmp.m4: revert quote-adding change, for portability to older autoconf
1892         * m4/openmp.m4: Remove the quotes added on 2009-01-14.
1893         This reverts part of 42d1eda5dcce2d68deab7a642e7f29bcd7144a0d.
1894         Simon Josefsson noticed the problem when using autoconf-2.61.
1895
1896 2009-01-15  Bruno Haible  <bruno@clisp.org>
1897
1898         * tests/test-fflush2.sh: Invoke test-fflush2 twice.
1899         * tests/test-fflush2.c (ASSERT): Always fail.
1900         (main): Add two tests for fflush() after ungetc(), taking into account
1901         the Austin Group's clarification.
1902         Suggested by Eric Blake.
1903
1904 2009-01-15  Albert Chin-A-Young  <china@thewrittenword.com>
1905
1906         mktime.m4: remove K&R-style function prototypes
1907         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes
1908         for the Sun C++ compiler.
1909
1910 2009-01-14  Bruno Haible  <bruno@clisp.org>
1911
1912         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_WCHAR_H): New macro, defined
1913         while including <wchar.h>.
1914         * lib/wchar.in.h: In two particular situations on HP-UX, include only
1915         the system's <wchar.h> file.
1916         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
1917
1918 2009-01-14  Bruno Haible  <bruno@clisp.org>
1919
1920         * m4/csharp.m4: Don't mention gettext on the serial number line.
1921         * m4/csharpexec.m4: Likewise.
1922         * m4/eaccess.m4: Likewise.
1923         * m4/javaexec.m4: Likewise.
1924         * m4/sig_atomic_t.m4: Likewise.
1925         * m4/tmpdir.m4: Likewise.
1926         * m4/intldir.m4: Bump gettext version.
1927         * m4/lib-ld.m4: Likewise.
1928
1929 2009-01-14  Bruno Haible  <bruno@clisp.org>
1930
1931         * lib/progname.c (set_program_name): Add more comments.
1932         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
1933
1934 2009-01-14  Simon Josefsson  <simon@josefsson.org>
1935
1936         * lib/sys_stat.in.h: Include sys/types.h for nlink_t on systems
1937         were sys/stat.h does not define it.
1938
1939 2009-01-14  Jim Meyering  <meyering@redhat.com>
1940
1941         many *.m4 files: improve m4 quoting
1942         99% of this change was performed by running the following commands:
1943         git ls-files | grep '\.m4$' | xargs perl -pi \
1944           -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \
1945           -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
1946           -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
1947           -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g'
1948         perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4
1949         The remainder were to add Copyright dates, increment serial numbers,
1950         undo some changes in comments, exclude m4/intl.m4, and add quotes
1951         around the "1" in ",1" where the unusual spacing prohibited the
1952         above regexps from doing the job.  For more details, see
1953         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
1954         * m4/acl.m4: Modified.
1955         * m4/afs.m4: Likewise.
1956         * m4/alloca.m4: Likewise.
1957         * m4/argp.m4: Likewise.
1958         * m4/argz.m4: Likewise.
1959         * m4/atexit.m4: Likewise.
1960         * m4/bison-i18n.m4: Likewise.
1961         * m4/bison.m4: Likewise.
1962         * m4/byteswap.m4: Likewise.
1963         * m4/c-stack.m4: Likewise.
1964         * m4/c-strtod.m4: Likewise.
1965         * m4/calloc.m4: Likewise.
1966         * m4/canonicalize-lgpl.m4: Likewise.
1967         * m4/chown.m4: Likewise.
1968         * m4/clock_time.m4: Likewise.
1969         * m4/codeset.m4: Likewise.
1970         * m4/copy-file.m4: Likewise.
1971         * m4/csharp.m4: Likewise.
1972         * m4/csharpcomp.m4: Likewise.
1973         * m4/csharpexec.m4: Likewise.
1974         * m4/d-ino.m4: Likewise.
1975         * m4/d-type.m4: Likewise.
1976         * m4/dirfd.m4: Likewise.
1977         * m4/double-slash-root.m4: Likewise.
1978         * m4/eaccess.m4: Likewise.
1979         * m4/eealloc.m4: Likewise.
1980         * m4/environ.m4: Likewise.
1981         * m4/errno_h.m4: Likewise.
1982         * m4/euidaccess.m4: Likewise.
1983         * m4/execute.m4: Likewise.
1984         * m4/fatal-signal.m4: Likewise.
1985         * m4/fchdir.m4: Likewise.
1986         * m4/fcntl_h.m4: Likewise.
1987         * m4/fileblocks.m4: Likewise.
1988         * m4/filenamecat.m4: Likewise.
1989         * m4/findprog.m4: Likewise.
1990         * m4/flexmember.m4: Likewise.
1991         * m4/fnmatch.m4: Likewise.
1992         * m4/fopen.m4: Likewise.
1993         * m4/fpending.m4: Likewise.
1994         * m4/fprintf-posix.m4: Likewise.
1995         * m4/free.m4: Likewise.
1996         * m4/frexp.m4: Likewise.
1997         * m4/frexpl.m4: Likewise.
1998         * m4/fsusage.m4: Likewise.
1999         * m4/ftruncate.m4: Likewise.
2000         * m4/gc-camellia.m4: Likewise.
2001         * m4/gc-random.m4: Likewise.
2002         * m4/gc.m4: Likewise.
2003         * m4/getaddrinfo.m4: Likewise.
2004         * m4/getcwd-abort-bug.m4: Likewise.
2005         * m4/getcwd-path-max.m4: Likewise.
2006         * m4/getdate.m4: Likewise.
2007         * m4/getdomainname.m4: Likewise.
2008         * m4/getgroups.m4: Likewise.
2009         * m4/gethostname.m4: Likewise.
2010         * m4/gethrxtime.m4: Likewise.
2011         * m4/getline.m4: Likewise.
2012         * m4/getloadavg.m4: Likewise.
2013         * m4/getndelim2.m4: Likewise.
2014         * m4/getpass.m4: Likewise.
2015         * m4/gettext.m4: Likewise.
2016         * m4/gettime.m4: Likewise.
2017         * m4/gettimeofday.m4: Likewise.
2018         * m4/gnulib-common.m4: Likewise.
2019         * m4/group-member.m4: Likewise.
2020         * m4/host-os.m4: Likewise.
2021         * m4/iconv.m4: Likewise.
2022         * m4/iconv_open.m4: Likewise.
2023         * m4/inet_ntop.m4: Likewise.
2024         * m4/inet_pton.m4: Likewise.
2025         * m4/inline.m4: Likewise.
2026         * m4/intldir.m4: Likewise.
2027         * m4/intlmacosx.m4: Likewise.
2028         * m4/intmax.m4: Likewise.
2029         * m4/intmax_t.m4: Likewise.
2030         * m4/inttypes.m4: Likewise.
2031         * m4/inttypes_h.m4: Likewise.
2032         * m4/inttypes-pri.m4: Likewise.
2033         * m4/isapipe.m4: Likewise.
2034         * m4/isnand.m4: Likewise.
2035         * m4/isnanf.m4: Likewise.
2036         * m4/isnanl.m4: Likewise.
2037         * m4/javacomp.m4: Likewise.
2038         * m4/javaexec.m4: Likewise.
2039         * m4/jm-winsz1.m4: Likewise.
2040         * m4/jm-winsz2.m4: Likewise.
2041         * m4/lchown.m4: Likewise.
2042         * m4/lcmessage.m4: Likewise.
2043         * m4/ldexpl.m4: Likewise.
2044         * m4/lib-ld.m4: Likewise.
2045         * m4/lib-link.m4: Likewise.
2046         * m4/libsigsegv.m4: Likewise.
2047         * m4/link-follow.m4: Likewise.
2048         * m4/localcharset.m4: Likewise.
2049         * m4/locale-fr.m4: Likewise.
2050         * m4/locale-ja.m4: Likewise.
2051         * m4/locale-tr.m4: Likewise.
2052         * m4/locale-zh.m4: Likewise.
2053         * m4/lock.m4: Likewise.
2054         * m4/longlong.m4: Likewise.
2055         * m4/ls-mntd-fs.m4: Likewise.
2056         * m4/lstat.m4: Likewise.
2057         * m4/malloc.m4: Likewise.
2058         * m4/mathl.m4: Likewise.
2059         * m4/mbrtowc.m4: Likewise.
2060         * m4/mbstate_t.m4: Likewise.
2061         * m4/mbswidth.m4: Likewise.
2062         * m4/memchr.m4: Likewise.
2063         * m4/memcmp.m4: Likewise.
2064         * m4/memcpy.m4: Likewise.
2065         * m4/memmem.m4: Likewise.
2066         * m4/memmove.m4: Likewise.
2067         * m4/mempcpy.m4: Likewise.
2068         * m4/memrchr.m4: Likewise.
2069         * m4/memset.m4: Likewise.
2070         * m4/minmax.m4: Likewise.
2071         * m4/mkdir-slash.m4: Likewise.
2072         * m4/mkdtemp.m4: Likewise.
2073         * m4/mktime.m4: Likewise.
2074         * m4/mmap-anon.m4: Likewise.
2075         * m4/mountlist.m4: Likewise.
2076         * m4/nanosleep.m4: Likewise.
2077         * m4/nls.m4: Likewise.
2078         * m4/nocrash.m4: Likewise.
2079         * m4/open.m4: Likewise.
2080         * m4/openat.m4: Likewise.
2081         * m4/openmp.m4: Likewise.
2082         * m4/pathmax.m4: Likewise.
2083         * m4/perl.m4: Likewise.
2084         * m4/physmem.m4: Likewise.
2085         * m4/pipe.m4: Likewise.
2086         * m4/po.m4: Likewise.
2087         * m4/poll.m4: Likewise.
2088         * m4/posixtm.m4: Likewise.
2089         * m4/posixver.m4: Likewise.
2090         * m4/printf-frexp.m4: Likewise.
2091         * m4/printf-frexpl.m4: Likewise.
2092         * m4/printf-posix.m4: Likewise.
2093         * m4/printf-posix-rpl.m4: Likewise.
2094         * m4/printf.m4: Likewise.
2095         * m4/progtest.m4: Likewise.
2096         * m4/putenv.m4: Likewise.
2097         * m4/readline.m4: Likewise.
2098         * m4/readlink.m4: Likewise.
2099         * m4/readutmp.m4: Likewise.
2100         * m4/realloc.m4: Likewise.
2101         * m4/regex.m4: Likewise.
2102         * m4/relocatable.m4: Likewise.
2103         * m4/relocatable-lib.m4: Likewise.
2104         * m4/rename-dest-slash.m4: Likewise.
2105         * m4/rename.m4: Likewise.
2106         * m4/rmdir-errno.m4: Likewise.
2107         * m4/rmdir.m4: Likewise.
2108         * m4/roundf.m4: Likewise.
2109         * m4/roundl.m4: Likewise.
2110         * m4/rpmatch.m4: Likewise.
2111         * m4/save-cwd.m4: Likewise.
2112         * m4/selinux-selinux-h.m4: Likewise.
2113         * m4/setenv.m4: Likewise.
2114         * m4/settime.m4: Likewise.
2115         * m4/sig2str.m4: Likewise.
2116         * m4/sig_atomic_t.m4: Likewise.
2117         * m4/signalblocking.m4: Likewise.
2118         * m4/signbit.m4: Likewise.
2119         * m4/sigpipe.m4: Likewise.
2120         * m4/sockets.m4: Likewise.
2121         * m4/sockpfaf.m4: Likewise.
2122         * m4/st_dm_mode.m4: Likewise.
2123         * m4/stat-time.m4: Likewise.
2124         * m4/stdbool.m4: Likewise.
2125         * m4/stdint.m4: Likewise.
2126         * m4/stdint_h.m4: Likewise.
2127         * m4/stpcpy.m4: Likewise.
2128         * m4/stpncpy.m4: Likewise.
2129         * m4/strcase.m4: Likewise.
2130         * m4/strchrnul.m4: Likewise.
2131         * m4/strcspn.m4: Likewise.
2132         * m4/strdup.m4: Likewise.
2133         * m4/strftime.m4: Likewise.
2134         * m4/strndup.m4: Likewise.
2135         * m4/strnlen.m4: Likewise.
2136         * m4/strpbrk.m4: Likewise.
2137         * m4/strptime.m4: Likewise.
2138         * m4/strsep.m4: Likewise.
2139         * m4/strtod.m4: Likewise.
2140         * m4/strtoimax.m4: Likewise.
2141         * m4/strtok_r.m4: Likewise.
2142         * m4/strtol.m4: Likewise.
2143         * m4/strtoll.m4: Likewise.
2144         * m4/strtoul.m4: Likewise.
2145         * m4/strtoull.m4: Likewise.
2146         * m4/strtoumax.m4: Likewise.
2147         * m4/strverscmp.m4: Likewise.
2148         * m4/threadlib.m4: Likewise.
2149         * m4/timegm.m4: Likewise.
2150         * m4/tm_gmtoff.m4: Likewise.
2151         * m4/tmpdir.m4: Likewise.
2152         * m4/tmpfile.m4: Likewise.
2153         * m4/tzset.m4: Likewise.
2154         * m4/uintmax_t.m4: Likewise.
2155         * m4/unlinkdir.m4: Likewise.
2156         * m4/unlocked-io.m4: Likewise.
2157         * m4/uptime.m4: Likewise.
2158         * m4/userspec.m4: Likewise.
2159         * m4/utimbuf.m4: Likewise.
2160         * m4/utime.m4: Likewise.
2161         * m4/utimes-null.m4: Likewise.
2162         * m4/utimes.m4: Likewise.
2163         * m4/vararrays.m4: Likewise.
2164         * m4/vasnprintf.m4: Likewise.
2165         * m4/vfprintf-posix.m4: Likewise.
2166         * m4/vprintf-posix.m4: Likewise.
2167         * m4/wait-process.m4: Likewise.
2168         * m4/wchar_t.m4: Likewise.
2169         * m4/wint_t.m4: Likewise.
2170         * m4/write-any-file.m4: Likewise.
2171         * m4/yield.m4: Likewise.
2172
2173 2009-01-13  Bruno Haible  <bruno@clisp.org>
2174
2175         Avoid test-copy-file.sh failures when ACL support insufficient.
2176         * modules/copy-file-tests (Makefile.am): Pass USE_ACL in
2177         TESTS_ENVIRONMENT.
2178         * tests/test-copy-file.sh: Skip the ACL comparisons if USE_ACL is 0.
2179         Reported by Jim Meyering.
2180
2181 2009-01-13  Bruno Haible  <bruno@clisp.org>
2182
2183         * modules/unistdio/u-printf-args (Files): Add m4/stdint_h.m4 and
2184         m4/inttypes_h.m4, needed by m4/intmax_t.m4.
2185         * modules/unistdio/u8-printf-parse (Files): Likewise.
2186         * modules/unistdio/u32-printf-parse (Files): Likewise.
2187         * modules/unistdio/ulc-printf-parse (Files): Likewise.
2188
2189 2009-01-13  Simon Josefsson  <simon@josefsson.org>
2190
2191         * modules/unistdio/u16-printf-parse (Files): Add m4/stdint_h.m4
2192         and m4/inttypes_h.m4 too.
2193
2194 2009-01-12  Eric Blake  <ebb9@byu.net>
2195
2196         tests: IRIX 6.2 cc can't compile -0.0 into .data
2197         * tests/test-ceill.c (minus_zero): Compute -0.0L at runtime,
2198         rather than at compile-time.
2199         * tests/test-floorl.c (minus_zero): Likewise.
2200         * tests/test-frexpl.c (minus_zero): Likewise.
2201         * tests/test-isnan.c (minus_zerol): Likewise.
2202         * tests/test-isnanl.h (minus_zero): Likewise.
2203         * tests/test-ldexpl.c (minus_zero): Likewise.
2204         * tests/test-roundl.c (minus_zero): Likewise.
2205         * tests/test-signbit.c (minus_zerol): Likewise.
2206         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
2207         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
2208         * tests/test-truncl.c (minus_zero): Likewise.
2209         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
2210         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
2211         Reported by Tom G. Christensen and Nelson H. F. Beebe.
2212
2213 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
2214
2215         regex: fix glibc bug 9697
2216         * lib/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
2217         handling.
2218
2219 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
2220
2221         regex: fix glibc bug 697
2222         * lib/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
2223         being NULL also if there are no backreferences.
2224
2225 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
2226
2227         regex: merge glibc changes
2228         * lib/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
2229         * lib/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
2230         re_string_skip_chars, re_string_reconstruct): Likewise.
2231         * lib/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
2232
2233 2009-01-07  Jim Meyering  <meyering@redhat.com>
2234
2235         poll: filter through cppi
2236         * lib/poll.c: Indent cpp directives to reflect nesting.
2237
2238 2009-01-07  Daniel P. Berrange  <berrange@redhat.com>
2239
2240         poll: don't return uninitialized
2241         * lib/poll.c (poll) [WIN32_NATIVE]: Initialize "rc".
2242
2243 2009-01-06  Jeremy Olexa <darkside@gentoo.org>  (tiny change)
2244
2245         avoid compile failure on AIX 6.1
2246         * lib/getloadavg.c [HAVE_LIBPERFSTAT]: Include <sys/protosw.h>.
2247         Details in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/15465
2248
2249 2009-01-04  Jim Meyering  <meyering@redhat.com>
2250
2251         remove duplicate inclusion of <stdio.h>
2252         * tests/test-fprintf-posix.c: Likewise.
2253         * tests/test-printf-posix.c: Likewise.
2254         * tests/test-snprintf-posix.c: Likewise.
2255         * tests/test-sprintf-posix.c: Likewise.
2256         * tests/test-vasprintf-posix.c: Likewise.
2257         * tests/test-vfprintf-posix.c: Likewise.
2258         * tests/test-vprintf-posix.c: Likewise.
2259         * tests/test-vsnprintf-posix.c: Likewise.
2260         * tests/test-vsprintf-posix.c: Likewise.
2261
2262 2009-01-03  Jim Meyering  <meyering@redhat.com>
2263
2264         gnulib-tool: fix sed-based filtering
2265         * gnulib-tool (func_filter_filelist): Remove extra backslash
2266         in sed_fff_filter definition.
2267
2268 2009-01-02  Jim Meyering  <meyering@redhat.com>
2269
2270         strftime: avoid compilation failure on Solaris 2.6
2271         * modules/strftime (Depends-on): Add mbrlen and mbsinit.
2272         * lib/strftime.c [DO_MULTIBYTE]: Include <wchar.h> unconditionally.
2273         Don't #define mbrlen or mbsinit, since now they're guaranteed to
2274         be available.  Reported by Tom G. Christensen.  Details in
2275         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16180>.
2276
2277 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2278             Bruno Haible  <bruno@clisp.org>
2279
2280         Speed up gnulib-tool by doing more string processing through shell
2281         built-ins.
2282         * gnulib-tool (fast_func_append): New variable.
2283         (func_remove_prefix, func_remove_suffix): New functions.
2284         (fast_func_remove_prefix, fast_func_remove_suffix): New variables.
2285         (func_filter_filelist): New function.
2286         (func_get_dependencies): Use func_remove_suffix instead of sed.
2287         (func_get_automake_snippet): Use func_filter_filelist instead of a
2288         subshell and sed invocation.
2289
2290 2009-01-01  Bruno Haible  <bruno@clisp.org>
2291
2292         Fix a security bug.
2293         * gnulib-tool (func_import, import, update): Don't allow the characters
2294         '"', '$', '`', '\' in macro arguments that become part of commands that
2295         are evaluated.
2296
2297 2009-01-01  Bruno Haible  <bruno@clisp.org>
2298
2299         * gnulib-tool (func_reset_sigpipe): Add more comments.
2300
2301 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2302
2303         * gnulib-tool (func_modules_add_dummy, func_emit_lib_Makefile_am,
2304         func_emit_tests_Makefile_am, func_import): Abort loops early if we
2305         already know the answer.
2306
2307 2009-01-01  Jim Meyering  <meyering@redhat.com>
2308
2309         * lib/version-etc.c (version_etc_va): Update copyright year.
2310
2311 2008-12-30  Bruno Haible  <bruno@clisp.org>
2312
2313         * m4/lib-prefix.m4 (AC_LIB_LINKFLAGS_BODY): Don't overwrite
2314         LIB${NAME}_PREFIX when considering the dependencies of lib${name}.
2315         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
2316
2317 2008-12-29  Eric Blake  <ebb9@byu.net>
2318
2319         multiarch: avoid autoconf AC_REQUIRE bug
2320         * m4/multiarch.m4 (gl_MULTIARCH): Split body...
2321         (gl_MULTIARCH_BODY): ...into new macro, to work around bug in Autoconf
2322         2.63 and older.
2323         Reported by Bruno Haible, and analyzed in
2324         http://lists.gnu.org/archive/html/bug-autoconf/2008-12/msg00039.html
2325
2326 2008-12-29  Bruno Haible  <bruno@clisp.org>
2327
2328         * gnulib-tool (func_import): When generating sed-ignore-removed, handle
2329         files in subdirectories correctly.
2330         Reported by Ralf Wildenhues.
2331
2332 2008-12-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2333
2334         * gnulib-tool (func_update_ignorelist): Use 'join - FILE'
2335         rather than 'join FILE -', for Solaris join.
2336
2337 2008-12-29  Bruno Haible  <bruno@clisp.org>
2338
2339         * m4/codeset.m4 (AM_LANGINFO_CODESET): More systematic m4 argument
2340         quoting.
2341         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
2342         * m4/glibc2.m4 (gt_GLIBC2): Likewise.
2343         * m4/glibc21.m4 (gl_GLIBC21): Likewise.
2344         * m4/iconv.m4 (AM_ICONV_LINK, AM_ICONV): Likewise.
2345         * m4/intdiv0.m4 (gt_INTDIV0): Likewise.
2346         * m4/intlmacosx.m4 (gt_INTL_MACOSX): Likewise.
2347         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Likewise.
2348         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Likewise.
2349         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
2350         * m4/lcmessage.m4 (gt_LC_MESSAGES): Likewise.
2351         * m4/nls.m4 (AM_NLS): Likewise.
2352         * m4/po.m4 (AM_PO_SUBDIRS): Likewise.
2353         * m4/printf-posix.m4 (gt_PRINTF_POSIX): Likewise.
2354         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
2355         * m4/size_max.m4 (gl_SIZE_MAX): Likewise.
2356         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Likewise.
2357         * m4/threadlib.m4 (gl_THREADLIB_BODY): Likewise.
2358         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Likewise.
2359         * m4/visibility.m4 (gl_VISIBILITY): Likewise.
2360         * m4/wchar_t.m4 (gt_TYPE_WCHAR_T): Likewise.
2361         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
2362         * m4/xsize.m4 (gl_XSIZE): Likewise.
2363         Suggested by Jim Meyering.
2364
2365 2008-11-17  Bruce Korb  <bkorb@gnu.org>
2366
2367         * lib/parse-duration.h: non-iso form accepts years, months weeks, too
2368         * lib/parse-duration.c: use a switch instead of cascading if's.
2369
2370 2008-12-29  Eric Blake  <ebb9@byu.net>
2371
2372         wchar.h: supply WEOF on Irix 5.3
2373         * lib/wchar.in.h (wint_t): Also supply WEOF.
2374         * lib/wctype.in.h (wint_t): Likewise.
2375         * doc/posix-headers/wchar.texi (wchar.h): Document the bug.
2376         * doc/posix-headers/wctype.texi (wctype.h): Likewise.
2377         Reported by Tom G. Christensen.
2378
2379 2008-12-26  Bruno Haible  <bruno@clisp.org>
2380
2381         * m4/multiarch.m4 (gl_MULTIARCH): Recognize also the architecture names
2382         i486, i586, i686.
2383
2384 2008-12-26  Bruno Haible  <bruno@clisp.org>
2385
2386         * lib/stdlib.in.h (struct random_data): Fix indentation of comments.
2387
2388 2008-12-26  Bruno Haible  <bruno@clisp.org>
2389
2390         * lib/stdint.in.h: Move the include of <wchar.h> down until after all
2391         the types are defined. Also conditionalize it on __STDC_LIMIT_MACROS,
2392         not __STDC_CONSTANT_MACROS.
2393         Reported by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
2394
2395 2008-12-25  Bruno Haible  <bruno@clisp.org>
2396
2397         Add support for universal builds to vasnprintf.
2398         * m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
2399         universal builds, guess no.
2400         * modules/vasnprintf-posix (Depends-on): Add multiarch.
2401         * modules/vasprintf-posix (Depends-on): Likewise.
2402         * modules/fprintf-posix (Depends-on): Likewise.
2403         * modules/vfprintf-posix (Depends-on): Likewise.
2404         * modules/snprintf-posix (Depends-on): Likewise.
2405         * modules/vsnprintf-posix (Depends-on): Likewise.
2406         * modules/sprintf-posix (Depends-on): Likewise.
2407         * modules/vsprintf-posix (Depends-on): Likewise.
2408         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
2409         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
2410         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
2411         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
2412         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
2413         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
2414         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
2415
2416         Add support for universal builds to <inttypes.h>.
2417         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
2418         _SCNu64_PREFIX): In Apple
2419         universal builds, define directly, using _LP64.
2420         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
2421         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
2422         * modules/inttypes (Depends-on): Add multiarch.
2423         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
2424
2425         Add support for universal builds to <stdint.h>.
2426         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
2427         universal builds, define directly, using _LP64.
2428         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
2429         Apple universal builds, don't test for the size and suffix of ptrdiff_t
2430         and size_t.
2431         * modules/stdint (Depends-on): Add multiarch.
2432         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
2433
2434         New module 'multiarch'.
2435         * modules/multiarch: New file.
2436         * m4/multiarch.m4: New file.
2437
2438 2008-12-25  Bruno Haible  <bruno@clisp.org>
2439
2440         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
2441
2442 2008-12-25  Bruno Haible  <bruno@clisp.org>
2443
2444         * modules/btowc (License): Relicense under LGPLv2+.
2445         * modules/mbsinit (License): Likewise.
2446         * modules/mbrtowc (License): Likewise.
2447         * modules/wcrtomb (License): Likewise.
2448         * modules/streq (License): Likewise.
2449         Reported by David Lutterkort <lutter@redhat.com>.
2450
2451 2008-12-23  Bruno Haible  <bruno@clisp.org>
2452
2453         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
2454
2455 2008-12-23  Bruno Haible  <bruno@clisp.org>
2456
2457         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
2458         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
2459         GETADDRINFO_LIB, not in LIBS.
2460         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
2461         * modules/canon-host (Link): Likewise.
2462         * NEWS: Mention the change.
2463         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
2464         GETADDRINFO_LIB.
2465
2466 2008-12-22  Bruno Haible  <bruno@clisp.org>
2467
2468         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
2469         * doc/posix-functions/iswalpha_l.texi: Likewise.
2470         * doc/posix-functions/iswblank_l.texi: Likewise.
2471         * doc/posix-functions/iswcntrl_l.texi: Likewise.
2472         * doc/posix-functions/iswctype_l.texi: Likewise.
2473         * doc/posix-functions/iswdigit_l.texi: Likewise.
2474         * doc/posix-functions/iswgraph_l.texi: Likewise.
2475         * doc/posix-functions/iswlower_l.texi: Likewise.
2476         * doc/posix-functions/iswprint_l.texi: Likewise.
2477         * doc/posix-functions/iswpunct_l.texi: Likewise.
2478         * doc/posix-functions/iswspace_l.texi: Likewise.
2479         * doc/posix-functions/iswupper_l.texi: Likewise.
2480         * doc/posix-functions/iswxdigit_l.texi: Likewise.
2481         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
2482         * doc/posix-functions/open_wmemstream.texi: Likewise.
2483         * doc/posix-functions/swscanf.texi: Likewise.
2484         * doc/posix-functions/towctrans_l.texi: Likewise.
2485         * doc/posix-functions/towlower.texi: Likewise.
2486         * doc/posix-functions/towlower_l.texi: Likewise.
2487         * doc/posix-functions/towupper.texi: Likewise.
2488         * doc/posix-functions/towupper_l.texi: Likewise.
2489         * doc/posix-functions/vfwprintf.texi: Likewise.
2490         * doc/posix-functions/vfwscanf.texi: Likewise.
2491         * doc/posix-functions/vswscanf.texi: Likewise.
2492         * doc/posix-functions/vwprintf.texi: Likewise.
2493         * doc/posix-functions/vwscanf.texi: Likewise.
2494         * doc/posix-functions/wcpcpy.texi: Likewise.
2495         * doc/posix-functions/wcpncpy.texi: Likewise.
2496         * doc/posix-functions/wcscasecmp.texi: Likewise.
2497         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
2498         * doc/posix-functions/wcscoll_l.texi: Likewise.
2499         * doc/posix-functions/wcsdup.texi: Likewise.
2500         * doc/posix-functions/wcsncasecmp.texi: Likewise.
2501         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
2502         * doc/posix-functions/wcsnlen.texi: Likewise.
2503         * doc/posix-functions/wcsnrtombs.texi: Likewise.
2504         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
2505         * doc/posix-functions/wctrans_l.texi: Likewise.
2506         * doc/posix-functions/wctype_l.texi: Likewise.
2507         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
2508         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
2509         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
2510         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
2511         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
2512         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
2513         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
2514         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
2515         * doc/glibc-functions/wcschrnul.texi: Likewise.
2516         * doc/glibc-functions/wcsftime_l.texi: Likewise.
2517         * doc/glibc-functions/wcstod_l.texi: Likewise.
2518         * doc/glibc-functions/wcstof_l.texi: Likewise.
2519         * doc/glibc-functions/wcstol_l.texi: Likewise.
2520         * doc/glibc-functions/wcstold_l.texi: Likewise.
2521         * doc/glibc-functions/wcstoll_l.texi: Likewise.
2522         * doc/glibc-functions/wcstoq.texi: Likewise.
2523         * doc/glibc-functions/wcstoul_l.texi: Likewise.
2524         * doc/glibc-functions/wcstoull_l.texi: Likewise.
2525         * doc/glibc-functions/wcstouq.texi: Likewise.
2526         * doc/glibc-functions/wmempcpy.texi: Likewise.
2527
2528 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
2529             Eric Blake  <ebb9@byu.net>
2530             Paolo Bonzini  <bonzini@gnu.org>
2531             Bruno Haible  <bruno@clisp.org>
2532
2533         Make c-stack work on Haiku.
2534         * lib/c-stack.c (SA_ONSTACK): Define fallback.
2535         (c_stack_action): Use SA_ONSTACK flag.
2536
2537 2008-12-22  Bruno Haible  <bruno@clisp.org>
2538
2539         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
2540
2541 2008-12-22  Bruno Haible  <bruno@clisp.org>
2542
2543         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
2544         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
2545         being overridden.
2546         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
2547         New macros.
2548         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
2549         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
2550         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
2551         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
2552
2553 2008-12-22  Bruno Haible  <bruno@clisp.org>
2554
2555         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
2556         from test code.
2557
2558 2008-12-22  Eric Blake  <ebb9@byu.net>
2559
2560         Avoid gcc warnings on cygwin.
2561         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
2562         Avoid unused variable.
2563         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
2564         Likewise.
2565
2566 2008-12-22  Bruno Haible  <bruno@clisp.org>
2567
2568         Remove HAVE_MBRTOWC conditionals.
2569         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
2570         (mbscasecmp): Assume mbrtowc function.
2571         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
2572         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
2573         * lib/mbschr.c: Include mbuiter.h unconditionally.
2574         (mbschr): Assume mbrtowc function.
2575         * lib/mbscspn.c: Include mbuiter.h unconditionally.
2576         (mbscspn): Assume mbrtowc function.
2577         * lib/mbslen.c: Include mbuiter.h unconditionally.
2578         (mbslen): Assume mbrtowc function.
2579         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
2580         (mbsncasecmp): Assume mbrtowc function.
2581         * lib/mbsnlen.c: Include mbiter.h unconditionally.
2582         (mbsnlen): Assume mbrtowc function.
2583         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
2584         (mbspbrk): Assume mbrtowc function.
2585         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
2586         (mbspcasecmp): Assume mbrtowc function.
2587         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
2588         (mbsrchr): Assume mbrtowc function.
2589         * lib/mbssep.c: Include mbuiter.h unconditionally.
2590         (mbssep): Assume mbrtowc function.
2591         * lib/mbsspn.c: Include mbuiter.h unconditionally.
2592         (mbsspn): Assume mbrtowc function.
2593         * lib/mbsstr.c: Include mbuiter.h unconditionally.
2594         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
2595         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
2596         (mbstok_r): Assume mbrtowc function.
2597         * lib/propername.c: Include mbuiter.h unconditionally.
2598         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
2599         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
2600         (trim2): Assume mbrtowc function.
2601         * lib/mbswidth.c (mbsinit): Remove fallback definition.
2602         (mbsnwidth): Assume mbrtowc function.
2603         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
2604         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
2605         fallback definitions.
2606         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
2607
2608 2008-12-22  Bruno Haible  <bruno@clisp.org>
2609
2610         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
2611
2612 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
2613
2614         * modules/regex: Request emulations for the mb*/wc* functions we need.
2615         * m4/regex.m4: Don't look for those functions here.
2616         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
2617
2618 2008-12-22  Bruno Haible  <bruno@clisp.org>
2619
2620         * modules/fnmatch (Depends-on): Remove duplicated dependency.
2621
2622 2008-12-21  Bruno Haible  <bruno@clisp.org>
2623
2624         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
2625         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
2626         (Include): Remove conditionalization.
2627         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
2628         (Include): Remove conditionalization.
2629         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
2630         (Include): Remove conditionalization.
2631         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
2632         * m4/mbfile.m4 (gl_MBFILE): Likewise.
2633         * NEWS: Mention the change.
2634         Reported by Alan Hourihane <alanh@fairlite.co.uk>
2635         via Sergey Poznyakoff <gray@gnu.org.ua>.
2636
2637 2008-12-21  Bruno Haible  <bruno@clisp.org>
2638
2639         * MODULES.html.sh (Extended multibyte and wide character utilities
2640         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
2641         wcrtomb, wcsrtombs.
2642         (Support for systems lacking POSIX:2008): Add accept, bind, close,
2643         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
2644         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
2645         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
2646
2647 2008-12-21  Bruno Haible  <bruno@clisp.org>
2648
2649         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
2650
2651 2008-12-21  Bruno Haible  <bruno@clisp.org>
2652
2653         * modules/wcsnrtombs-tests: New file.
2654         * tests/test-wcsnrtombs1.sh: New file.
2655         * tests/test-wcsnrtombs2.sh: New file.
2656         * tests/test-wcsnrtombs3.sh: New file.
2657         * tests/test-wcsnrtombs4.sh: New file.
2658         * tests/test-wcsnrtombs.c: New file.
2659
2660         New module 'wcsnrtombs'.
2661         * lib/wchar.in.h (wcsnrtombs): New declaration.
2662         * lib/wcsnrtombs.c: New file.
2663         * lib/wcsrtombs-state.c: New file.
2664         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
2665         (internal_state): Remove variable.
2666         * m4/wcsnrtombs.m4: New file.
2667         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
2668         compilation units.
2669         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
2670         HAVE_WCSNRTOMBS.
2671         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
2672         HAVE_WCSNRTOMBS.
2673         * modules/wcsnrtombs: New file.
2674         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
2675         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
2676
2677 2008-12-21  Bruno Haible  <bruno@clisp.org>
2678
2679         * modules/wcsrtombs-tests: New file.
2680         * tests/test-wcsrtombs1.sh: New file.
2681         * tests/test-wcsrtombs2.sh: New file.
2682         * tests/test-wcsrtombs3.sh: New file.
2683         * tests/test-wcsrtombs4.sh: New file.
2684         * tests/test-wcsrtombs.c: New file.
2685
2686         New module 'wcsrtombs'.
2687         * lib/wchar.in.h (wcsrtombs): New declaration.
2688         * lib/wcsrtombs.c: New file.
2689         * m4/wcsrtombs.m4: New file.
2690         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
2691         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
2692         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
2693         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
2694         * modules/wcsrtombs: New file.
2695         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
2696         bugs.
2697
2698 2008-12-21  Bruno Haible  <bruno@clisp.org>
2699
2700         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
2701         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
2702         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
2703         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
2704         if not correct.
2705         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
2706         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
2707         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
2708         m4/locale-zh.m4, m4/codeset.m4.
2709         * doc/posix-functions/wcrtomb.texi: Document the bug.
2710
2711 2008-12-21  Bruno Haible  <bruno@clisp.org>
2712
2713         Work around a btowc() bug on IRIX 6.5.
2714         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
2715         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
2716         REPLACE_WTOBC if not.
2717         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
2718         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
2719         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
2720
2721 2008-12-21  Bruno Haible  <bruno@clisp.org>
2722
2723         * modules/wcrtomb-tests: New file.
2724         * tests/test-wcrtomb.sh: New file.
2725         * tests/test-wcrtomb.c: New file.
2726
2727         New module 'wcrtomb'.
2728         * lib/wchar.in.h (wcrtomb): New declaration.
2729         * lib/wcrtomb.c: New file.
2730         * m4/wcrtomb.m4: New file.
2731         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
2732         HAVE_WCRTOMB.
2733         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
2734         HAVE_WCRTOMB.
2735         * modules/wcrtomb: New file.
2736         * doc/posix-functions/wcrtomb.texi: Mention the new module.
2737
2738 2008-12-21  Bruno Haible  <bruno@clisp.org>
2739
2740         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
2741         * modules/mbsrtowcs (Files): Likewise.
2742         * modules/wctob (Files): Likewise.
2743         * modules/c-strcase-tests (Files): Likewise.
2744         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
2745         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
2746         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
2747         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
2748         * modules/vasnprintf-posix-tests (Files): Likewise.
2749
2750 2008-12-21  William Pursell  <bill.pursell@gmail.com>
2751
2752         gitlog-to-changelog: pass all command-line arguments to git-log
2753         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
2754         it is sometimes convenient to filter the commits in various ways.
2755         gitlog-to-changelog only allows --since to specify a start date,
2756         but git-log itself supports many other filtering mechanisms.
2757         At the moment, I want to filter by branch name.  Rather than
2758         adding a --branch option to gitlog-to-changelog, it seems more
2759         flexible to simply pass all options directly to git-log and let
2760         git do the work.  Notice that this effectively makes --since a
2761         redundant option for gitlog-to-changelog, but removing it would
2762         require current usage to change since calls would then require
2763         an additional '--'.
2764
2765 2008-12-21  Bruno Haible  <bruno@clisp.org>
2766
2767         * modules/mbsnrtowcs-tests: New file.
2768         * tests/test-mbsnrtowcs1.sh: New file.
2769         * tests/test-mbsnrtowcs2.sh: New file.
2770         * tests/test-mbsnrtowcs3.sh: New file.
2771         * tests/test-mbsnrtowcs4.sh: New file.
2772         * tests/test-mbsnrtowcs.c: New file.
2773
2774         New module 'mbsnrtowcs'.
2775         * lib/wchar.in.h (mbsnrtowcs): New declaration.
2776         * lib/mbsnrtowcs.c: New file.
2777         * lib/mbsrtowcs-state.c: New file.
2778         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
2779         (internal_state): Remove variable.
2780         * m4/mbsnrtowcs.m4: New file.
2781         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
2782         compilation units.
2783         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
2784         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
2785         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
2786         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
2787         * modules/mbsnrtowcs: New file.
2788         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
2789         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
2790         portability problem.
2791
2792 2008-12-21  Bruno Haible  <bruno@clisp.org>
2793
2794         Work around mbsrtowcs bug.
2795         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
2796         (gl_FUNC_MBSRTOWCS): Invoke it.
2797         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
2798         m4/locale-zh.m4.
2799         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
2800
2801 2008-12-21  Bruno Haible  <bruno@clisp.org>
2802
2803         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
2804
2805 2008-12-21  Bruno Haible  <bruno@clisp.org>
2806
2807         Update doc for AIX.
2808         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
2809         16-bit wchar_t type.
2810         * doc/posix-functions/btowc.texi: Likewise.
2811         * doc/posix-functions/fgetwc.texi: Likewise.
2812         * doc/posix-functions/fgetws.texi: Likewise.
2813         * doc/posix-functions/fputwc.texi: Likewise.
2814         * doc/posix-functions/fputws.texi: Likewise.
2815         * doc/posix-functions/fwide.texi: Likewise.
2816         * doc/posix-functions/fwprintf.texi: Likewise.
2817         * doc/posix-functions/fwscanf.texi: Likewise.
2818         * doc/posix-functions/getwchar.texi: Likewise.
2819         * doc/posix-functions/getwc.texi: Likewise.
2820         * doc/posix-functions/iswalnum.texi: Likewise.
2821         * doc/posix-functions/iswalpha.texi: Likewise.
2822         * doc/posix-functions/iswblank.texi: Likewise.
2823         * doc/posix-functions/iswcntrl.texi: Likewise.
2824         * doc/posix-functions/iswctype.texi: Likewise.
2825         * doc/posix-functions/iswdigit.texi: Likewise.
2826         * doc/posix-functions/iswgraph.texi: Likewise.
2827         * doc/posix-functions/iswlower.texi: Likewise.
2828         * doc/posix-functions/iswprint.texi: Likewise.
2829         * doc/posix-functions/iswpunct.texi: Likewise.
2830         * doc/posix-functions/iswspace.texi: Likewise.
2831         * doc/posix-functions/iswupper.texi: Likewise.
2832         * doc/posix-functions/iswxdigit.texi: Likewise.
2833         * doc/posix-functions/mbrtowc.texi: Likewise.
2834         * doc/posix-functions/mbsrtowcs.texi: Likewise.
2835         * doc/posix-functions/mbstowcs.texi: Likewise.
2836         * doc/posix-functions/mbtowc.texi: Likewise.
2837         * doc/posix-functions/putwchar.texi: Likewise.
2838         * doc/posix-functions/putwc.texi: Likewise.
2839         * doc/posix-functions/swprintf.texi: Likewise.
2840         * doc/posix-functions/tolower.texi: Likewise.
2841         * doc/posix-functions/toupper.texi: Likewise.
2842         * doc/posix-functions/towctrans.texi: Likewise.
2843         * doc/posix-functions/ungetwc.texi: Likewise.
2844         * doc/posix-functions/vswprintf.texi: Likewise.
2845         * doc/posix-functions/wcrtomb.texi: Likewise.
2846         * doc/posix-functions/wcscat.texi: Likewise.
2847         * doc/posix-functions/wcschr.texi: Likewise.
2848         * doc/posix-functions/wcscmp.texi: Likewise.
2849         * doc/posix-functions/wcscoll.texi: Likewise.
2850         * doc/posix-functions/wcscpy.texi: Likewise.
2851         * doc/posix-functions/wcscspn.texi: Likewise.
2852         * doc/posix-functions/wcsftime.texi: Likewise.
2853         * doc/posix-functions/wcslen.texi: Likewise.
2854         * doc/posix-functions/wcsncat.texi: Likewise.
2855         * doc/posix-functions/wcsncmp.texi: Likewise.
2856         * doc/posix-functions/wcsncpy.texi: Likewise.
2857         * doc/posix-functions/wcspbrk.texi: Likewise.
2858         * doc/posix-functions/wcsrchr.texi: Likewise.
2859         * doc/posix-functions/wcsrtombs.texi: Likewise.
2860         * doc/posix-functions/wcsspn.texi: Likewise.
2861         * doc/posix-functions/wcsstr.texi: Likewise.
2862         * doc/posix-functions/wcstod.texi: Likewise.
2863         * doc/posix-functions/wcstof.texi: Likewise.
2864         * doc/posix-functions/wcstoimax.texi: Likewise.
2865         * doc/posix-functions/wcstok.texi: Likewise.
2866         * doc/posix-functions/wcstold.texi: Likewise.
2867         * doc/posix-functions/wcstoll.texi: Likewise.
2868         * doc/posix-functions/wcstol.texi: Likewise.
2869         * doc/posix-functions/wcstombs.texi: Likewise.
2870         * doc/posix-functions/wcstoull.texi: Likewise.
2871         * doc/posix-functions/wcstoul.texi: Likewise.
2872         * doc/posix-functions/wcstoumax.texi: Likewise.
2873         * doc/posix-functions/wcswidth.texi: Likewise.
2874         * doc/posix-functions/wcsxfrm.texi: Likewise.
2875         * doc/posix-functions/wctob.texi: Likewise.
2876         * doc/posix-functions/wctomb.texi: Likewise.
2877         * doc/posix-functions/wctrans.texi: Likewise.
2878         * doc/posix-functions/wctype.texi: Likewise.
2879         * doc/posix-functions/wcwidth.texi: Likewise.
2880         * doc/posix-functions/wmemchr.texi: Likewise.
2881         * doc/posix-functions/wmemcmp.texi: Likewise.
2882         * doc/posix-functions/wmemcpy.texi: Likewise.
2883         * doc/posix-functions/wmemmove.texi: Likewise.
2884         * doc/posix-functions/wmemset.texi: Likewise.
2885         * doc/posix-functions/wprintf.texi: Likewise.
2886         * doc/posix-functions/wscanf.texi: Likewise.
2887
2888 2008-12-21  Bruno Haible  <bruno@clisp.org>
2889
2890         Update doc for HP-UX 11.11.
2891         * doc/posix-functions/btowc.texi: Clarify that the function is missing
2892         in HP-UX version 11.00, not in all versions of HP-UX 11.
2893         * doc/posix-functions/fwide.texi: Likewise.
2894         * doc/posix-functions/fwprintf.texi: Likewise.
2895         * doc/posix-functions/fwscanf.texi: Likewise.
2896         * doc/posix-functions/inet_ntop.texi: Likewise.
2897         * doc/posix-functions/inet_pton.texi: Likewise.
2898         * doc/posix-functions/mbrlen.texi: Likewise.
2899         * doc/posix-functions/mbrtowc.texi: Likewise.
2900         * doc/posix-functions/mbsinit.texi: Likewise.
2901         * doc/posix-functions/mbsrtowcs.texi: Likewise.
2902         * doc/posix-functions/swprintf.texi: Likewise.
2903         * doc/posix-functions/swscanf.texi: Likewise.
2904         * doc/posix-functions/towctrans.texi: Likewise.
2905         * doc/posix-functions/vfwprintf.texi: Likewise.
2906         * doc/posix-functions/vswprintf.texi: Likewise.
2907         * doc/posix-functions/vwprintf.texi: Likewise.
2908         * doc/posix-functions/wcrtomb.texi: Likewise.
2909         * doc/posix-functions/wcsrtombs.texi: Likewise.
2910         * doc/posix-functions/wcsstr.texi: Likewise.
2911         * doc/posix-functions/wctob.texi: Likewise.
2912         * doc/posix-functions/wctrans.texi: Likewise.
2913         * doc/posix-functions/wmemchr.texi: Likewise.
2914         * doc/posix-functions/wmemcmp.texi: Likewise.
2915         * doc/posix-functions/wmemcpy.texi: Likewise.
2916         * doc/posix-functions/wmemmove.texi: Likewise.
2917         * doc/posix-functions/wmemset.texi: Likewise.
2918         * doc/posix-functions/wprintf.texi: Likewise.
2919         * doc/posix-functions/wscanf.texi: Likewise.
2920
2921 2008-12-21  Bruno Haible  <bruno@clisp.org>
2922
2923         Work around a portability problem.
2924         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
2925         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
2926
2927 2008-12-20  Bruno Haible  <bruno@clisp.org>
2928
2929         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
2930         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
2931         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
2932         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
2933         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
2934
2935         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
2936         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
2937         set.
2938         (GNULIB_defined_mbstate_t): New macro.
2939         (mbsinit): Redefine if REPLACE_MBSINIT is set.
2940         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
2941         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
2942         reuses the system's mbrtowc function but works around the bugs.
2943         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
2944         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
2945         macros.
2946         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
2947         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
2948         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
2949         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
2950         REPLACE_MBSINIT if mbsinit needs to be overridden.
2951         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
2952         REPLACE_MBSINIT, REPLACE_MBRTOWC.
2953         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
2954         REPLACE_MBSINIT, REPLACE_MBRTOWC.
2955         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
2956         m4/locale-zh.m4.
2957         (Depends): Add mbsinit.
2958         * modules/mbsinit (Depends): Add mbrtowc.
2959         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
2960
2961 2008-12-20  Bruno Haible  <bruno@clisp.org>
2962
2963         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
2964         so that there are no conversion errors on AIX.
2965         * tests/test-mbsrtowcs.c (main): LIkewise.
2966
2967 2008-12-20  Bruno Haible  <bruno@clisp.org>
2968
2969         Work around wctob bug on Solaris <= 9.
2970         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
2971         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
2972         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
2973         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
2974         * modules/wctob (Files): Add m4/locale-fr.m4.
2975         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
2976
2977 2008-12-20  Bruno Haible  <bruno@clisp.org>
2978
2979         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
2980         /dev/null.
2981         * tests/test-select-in.sh: Likewise.
2982         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
2983
2984 2008-12-20  Bruno Haible  <bruno@clisp.org>
2985
2986         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
2987         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
2988         Cygwin 1.5.x.
2989
2990 2008-12-20  Bruno Haible  <bruno@clisp.org>
2991
2992         Ensure mbstate_t is defined on HP-UX 11.11.
2993         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
2994         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
2995         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
2996         AC_USE_SYSTEM_EXTENSIONS.
2997         * modules/fnmatch (Depends-on): Add extensions.
2998         * modules/mbrlen (Depends-on): Likewise.
2999         * modules/mbrtowc (Depends-on): Likewise.
3000         * modules/mbsinit (Depends-on): Likewise.
3001         * modules/mbsrtowcs (Depends-on): Likewise.
3002         * modules/mbswidth (Depends-on): Likewise.
3003         * modules/quotearg (Depends-on): Likewise.
3004         * modules/strftime (Depends-on): Likewise.
3005
3006 2008-12-20  Bruno Haible  <bruno@clisp.org>
3007
3008         Ensure wctob is declared on IRIX 6.5.
3009         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
3010         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
3011         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
3012         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
3013         of HAVE_WCTOB.
3014         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
3015         HAVE_WCTOB.
3016         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
3017
3018 2008-12-19  Bruno Haible  <bruno@clisp.org>
3019
3020         * modules/mbsrtowcs-tests: New file.
3021         * tests/test-mbsrtowcs1.sh: New file.
3022         * tests/test-mbsrtowcs2.sh: New file.
3023         * tests/test-mbsrtowcs3.sh: New file.
3024         * tests/test-mbsrtowcs4.sh: New file.
3025         * tests/test-mbsrtowcs.c: New file.
3026
3027         New module 'mbsrtowcs'.
3028         * lib/wchar.in.h (mbsrtowcs): New declaration.
3029         * lib/mbsrtowcs.c: New file.
3030         * m4/mbsrtowcs.m4: New file.
3031         * modules/mbsrtowcs: New file.
3032         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
3033         HAVE_MBSRTOWCS.
3034         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
3035         HAVE_MBSRTOWCS.
3036         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
3037
3038 2008-12-19  Bruno Haible  <bruno@clisp.org>
3039
3040         New module 'mbrlen'.
3041         * lib/wchar.in.h (mbrlen): New declaration.
3042         * lib/mbrlen.c: New file.
3043         * m4/mbrlen.m4: New file.
3044         * modules/mbrlen: New file.
3045         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
3046         HAVE_MBRLEN.
3047         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
3048         HAVE_MBRLEN.
3049         * doc/posix-functions/mbrlen.texi: Document the new module.
3050
3051 2008-12-19  Bruno Haible  <bruno@clisp.org>
3052
3053         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
3054         * modules/mbrtowc (Depends-on): Add verify.
3055         Suggested by Paul Eggert.
3056
3057 2008-12-18  Bruno Haible  <bruno@clisp.org>
3058
3059         * modules/mbsinit-tests: New file.
3060         * tests/test-mbsinit.sh: New file.
3061         * tests/test-mbsinit.c: New file.
3062
3063 2008-12-18  Bruno Haible  <bruno@clisp.org>
3064
3065         * modules/mbrtowc-tests: New file.
3066         * tests/test-mbrtowc1.sh: New file.
3067         * tests/test-mbrtowc2.sh: New file.
3068         * tests/test-mbrtowc3.sh: New file.
3069         * tests/test-mbrtowc4.sh: New file.
3070         * tests/test-mbrtowc.c: New file.
3071
3072         New module 'mbrtowc'.
3073         * lib/wchar.in.h (mbstate_t): Override when the system does not have
3074         mbsinit and mbrtowc.
3075         (mbrtowc): New declaration.
3076         * lib/mbrtowc.c: New file.
3077         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
3078         * modules/mbrtowc: New file.
3079         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
3080         HAVE_MBRTOWC.
3081         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
3082         HAVE_MBRTOWC.
3083         * doc/posix-functions/mbrtowc.texi: Document the new module.
3084
3085 2008-12-18  Bruno Haible  <bruno@clisp.org>
3086
3087         New module 'wctob'.
3088         * lib/wchar.in.h (wctob): New declaration.
3089         * lib/wctob.c: New file.
3090         * m4/wctob.m4: New file.
3091         * modules/wctob: New file.
3092         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
3093         HAVE_WCTOB.
3094         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
3095         * doc/posix-functions/wctob.texi: Document the new module.
3096
3097 2008-12-18  Bruno Haible  <bruno@clisp.org>
3098
3099         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
3100         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
3101
3102 2008-12-18  Simon Josefsson  <simon@josefsson.org>
3103
3104         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
3105         G. Christensen" <tgc@jupiterrise.com>.
3106
3107         * lib/flock.c: Need to include errno.h.  Reported by "Tom
3108         G. Christensen" <tgc@jupiterrise.com>.
3109
3110         * lib/flock.c: Need to include string.h.  Reported by "Tom
3111         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
3112         <ebb9@byu.net>.
3113
3114 2008-12-18  Bruno Haible  <bruno@clisp.org>
3115
3116         * m4/locale-ja.m4: New file, from GNU gettext.
3117
3118 2008-12-17  Bruno Haible  <bruno@clisp.org>
3119
3120         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
3121         Suggested by Eric Blake.
3122
3123 2008-12-17  Bruno Haible  <bruno@clisp.org>
3124
3125         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
3126
3127 2008-12-17  Bruno Haible  <bruno@clisp.org>
3128
3129         * lib/mbsinit.c: Include verify.h. Verify an assumption.
3130         * modules/mbsinit (Depends-on): Add verify.
3131         Suggested by Paul Eggert.
3132
3133 2008-12-17  Bruno Haible  <bruno@clisp.org>
3134
3135         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
3136         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
3137         gl_FUNC_MBRTOWC.
3138         * m4/mbiter.m4 (gl_MBITER): LIkewise.
3139         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
3140         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
3141         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
3142         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
3143         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
3144         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
3145         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
3146         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
3147         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
3148         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
3149         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
3150         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
3151         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
3152         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
3153         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
3154         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
3155         * modules/trim (configure.ac): Likewise.
3156
3157 2008-12-17  Bruno Haible  <bruno@clisp.org>
3158
3159         * modules/btowc-tests: New file.
3160         * tests/test-btowc1.sh: New file.
3161         * tests/test-btowc2.sh: New file.
3162         * tests/test-btowc.c: New file.
3163
3164         New module 'btowc'.
3165         * lib/wchar.in.h (btowc): New declaration.
3166         * lib/btowc.c: New file.
3167         * m4/btowc.m4: New file.
3168         * modules/btowc: New file.
3169         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
3170         HAVE_BTOWC.
3171         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
3172         * doc/posix-functions/btowc.texi: Document the new module.
3173
3174 2008-12-17  Bruno Haible  <bruno@clisp.org>
3175
3176         New module 'mbsinit'.
3177         * lib/wchar.in.h (mbsinit): New declaration.
3178         * lib/mbsinit.c: New file.
3179         * m4/mbsinit.m4: New file.
3180         * modules/mbsinit: New file.
3181         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
3182         HAVE_MBSINIT.
3183         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
3184         HAVE_MBSINIT.
3185         * doc/posix-functions/mbsinit.texi: Document the new module.
3186
3187 2008-12-16  Bruno Haible  <bruno@clisp.org>
3188
3189         * lib/unistd.in.h: Add comment.
3190         * tests/test-environ.c: Don't include <stdlib.h>.
3191
3192 2008-12-16  Bruno Haible  <bruno@clisp.org>
3193
3194         * lib/parse-duration.h (parse_duration): Document return value
3195         convention.
3196         * lib/parse-duration.c: Include specification header first. Add
3197         comments.
3198         (_): Remove macro.
3199         (parse_year_month_day, parse_hour_minute_second): Move side effects
3200         outside of strchr call.
3201         (parse_non_iso8601): Move side effects outside of isspace call.
3202         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
3203         call.
3204
3205 2008-12-16  Bruno Haible  <bruno@clisp.org>
3206
3207         * tests/test-parse-duration.sh: Produce no output when the test
3208         succeeds.
3209
3210 2008-12-16  Bruno Haible  <bruno@clisp.org>
3211
3212         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
3213         expressions.
3214
3215 2008-12-15  Bruno Haible  <bruno@clisp.org>
3216
3217         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
3218         * doc/glibc-functions/flistxattr.texi: Likewise.
3219         * doc/glibc-functions/fopencookie.texi: Likewise.
3220         * doc/glibc-functions/fremovexattr.texi: Likewise.
3221         * doc/glibc-functions/fsetxattr.texi: Likewise.
3222         * doc/glibc-functions/getxattr.texi: Likewise.
3223         * doc/glibc-functions/lgetxattr.texi: Likewise.
3224         * doc/glibc-functions/listxattr.texi: Likewise.
3225         * doc/glibc-functions/llistxattr.texi: Likewise.
3226         * doc/glibc-functions/lremovexattr.texi: Likewise.
3227         * doc/glibc-functions/lsetxattr.texi: Likewise.
3228         * doc/glibc-functions/removexattr.texi: Likewise.
3229         * doc/glibc-functions/setxattr.texi: Likewise.
3230         * doc/posix-functions/open_memstream.texi: Likewise.
3231
3232 2008-12-15  Eric Blake  <ebb9@byu.net>
3233
3234         Update doc for cygwin 1.7.
3235         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
3236         functions.
3237         * doc/posix-functions/fchmodat.texi: Likewise.
3238         * doc/posix-functions/fchownat.texi: Likewise.
3239         * doc/posix-functions/fdopendir.texi: Likewise.
3240         * doc/posix-functions/fmemopen.texi: Likewise.
3241         * doc/posix-functions/freeaddrinfo.texi: Likewise.
3242         * doc/posix-functions/fstatat.texi: Likewise.
3243         * doc/posix-functions/futimens.texi: Likewise.
3244         * doc/posix-functions/gai_strerror.texi: Likewise.
3245         * doc/posix-functions/getaddrinfo.texi: Likewise.
3246         * doc/posix-functions/getnameinfo.texi: Likewise.
3247         * doc/posix-functions/if_freenameindex.texi: Likewise.
3248         * doc/posix-functions/if_indextoname.texi: Likewise.
3249         * doc/posix-functions/if_nameindex.texi: Likewise.
3250         * doc/posix-functions/if_nametoindex.texi: Likewise.
3251         * doc/posix-functions/insque.texi: Likewise.
3252         * doc/posix-functions/linkat.texi: Likewise.
3253         * doc/posix-functions/llrint.texi: Likewise.
3254         * doc/posix-functions/llrintf.texi: Likewise.
3255         * doc/posix-functions/llrintl.texi: Likewise.
3256         * doc/posix-functions/lockf.texi: Likewise.
3257         * doc/posix-functions/lrintl.texi: Likewise.
3258         * doc/posix-functions/mkdirat.texi: Likewise.
3259         * doc/posix-functions/mkfifoat.texi: Likewise.
3260         * doc/posix-functions/mknodat.texi: Likewise.
3261         * doc/posix-functions/mq_close.texi: Likewise.
3262         * doc/posix-functions/mq_getattr.texi: Likewise.
3263         * doc/posix-functions/mq_notify.texi: Likewise.
3264         * doc/posix-functions/mq_open.texi: Likewise.
3265         * doc/posix-functions/mq_receive.texi: Likewise.
3266         * doc/posix-functions/mq_send.texi: Likewise.
3267         * doc/posix-functions/mq_setattr.texi: Likewise.
3268         * doc/posix-functions/mq_timedreceive.texi: Likewise.
3269         * doc/posix-functions/mq_timedsend.texi: Likewise.
3270         * doc/posix-functions/mq_unlink.texi: Likewise.
3271         * doc/posix-functions/open_memstream.texi: Likewise.
3272         * doc/posix-functions/openat.texi: Likewise.
3273         * doc/posix-functions/posix_fadvise.texi: Likewise.
3274         * doc/posix-functions/posix_fallocate.texi: Likewise.
3275         * doc/posix-functions/posix_madvise.texi: Likewise.
3276         * doc/posix-functions/posix_memalign.texi: Likewise.
3277         * doc/posix-functions/posix_openpt.texi: Likewise.
3278         * doc/posix-functions/readlinkat.texi: Likewise.
3279         * doc/posix-functions/remque.texi: Likewise.
3280         * doc/posix-functions/renameat.texi: Likewise.
3281         * doc/posix-functions/rintl.texi: Likewise.
3282         * doc/posix-functions/sem_unlink.texi: Likewise.
3283         * doc/posix-functions/shm_open.texi: Likewise.
3284         * doc/posix-functions/shm_unlink.texi: Likewise.
3285         * doc/posix-functions/signgam.texi: Likewise.
3286         * doc/posix-functions/sigset.texi: Likewise.
3287         * doc/posix-functions/stpcpy.texi: Likewise.
3288         * doc/posix-functions/stpncpy.texi: Likewise.
3289         * doc/posix-functions/strerror.texi: Likewise.
3290         * doc/posix-functions/strtod.texi: Likewise.
3291         * doc/posix-functions/symlinkat.texi: Likewise.
3292         * doc/posix-functions/unlinkat.texi: Likewise.
3293         * doc/posix-functions/utimensat.texi: Likewise.
3294         * doc/glibc-functions/bindresvport.texi: Likewise.
3295         * doc/glibc-functions/dn_expand.texi: Likewise.
3296         * doc/glibc-functions/exp10.texi: Likewise.
3297         * doc/glibc-functions/exp10f.texi: Likewise.
3298         * doc/glibc-functions/fgetxattr.texi: Likewise.
3299         * doc/glibc-functions/flistxattr.texi: Likewise.
3300         * doc/glibc-functions/fopencookie.texi: Likewise.
3301         * doc/glibc-functions/freeifaddrs.texi: Likewise.
3302         * doc/glibc-functions/fremovexattr.texi: Likewise.
3303         * doc/glibc-functions/fsetxattr.texi: Likewise.
3304         * doc/glibc-functions/getifaddrs.texi: Likewise.
3305         * doc/glibc-functions/getxattr.texi: Likewise.
3306         * doc/glibc-functions/lgetxattr.texi: Likewise.
3307         * doc/glibc-functions/listxattr.texi: Likewise.
3308         * doc/glibc-functions/llistxattr.texi: Likewise.
3309         * doc/glibc-functions/lremovexattr.texi: Likewise.
3310         * doc/glibc-functions/lsetxattr.texi: Likewise.
3311         * doc/glibc-functions/pow10.texi: Likewise.
3312         * doc/glibc-functions/pow10f.texi: Likewise.
3313         * doc/glibc-functions/rcmd_af.texi: Likewise.
3314         * doc/glibc-functions/removexattr.texi: Likewise.
3315         * doc/glibc-functions/res_init.texi: Likewise.
3316         * doc/glibc-functions/res_mkquery.texi: Likewise.
3317         * doc/glibc-functions/res_query.texi: Likewise.
3318         * doc/glibc-functions/res_querydomain.texi: Likewise.
3319         * doc/glibc-functions/res_send.texi: Likewise.
3320         * doc/glibc-functions/rresvport_af.texi: Likewise.
3321         * doc/glibc-functions/setxattr.texi: Likewise.
3322         * doc/glibc-functions/strcasestr.texi: Likewise.
3323
3324 2008-12-15  Bruno Haible  <bruno@clisp.org>
3325
3326         Fix compilation error on OSF/1 4.0.
3327         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
3328         <sys/time.h>, simply delegate to the system header.
3329         Reported by Daniel Richard G. <oss@teragram.com>.
3330
3331 2008-12-15  Bruno Haible  <bruno@clisp.org>
3332
3333         * doc/posix-functions/openat.texi: Mention the 'openat' module.
3334         * doc/posix-functions/fchmodat.texi: Likewise.
3335         * doc/posix-functions/fchownat.texi: Likewise.
3336         * doc/posix-functions/fdopendir.texi: Likewise.
3337         * doc/posix-functions/fstatat.texi: Likewise.
3338         * doc/posix-functions/mkdirat.texi: Likewise.
3339         * doc/posix-functions/unlinkat.texi: Likewise.
3340
3341 2008-12-14  Bruno Haible  <bruno@clisp.org>
3342
3343         Update doc for POSIX:2008.
3344         * doc/posix-functions/faccessat.texi: New file.
3345         * doc/posix-functions/fchmodat.texi: New file.
3346         * doc/posix-functions/fchownat.texi: New file.
3347         * doc/posix-functions/fdopendir.texi: New file.
3348         * doc/posix-functions/fstatat.texi: New file.
3349         * doc/posix-functions/futimens.texi: New file.
3350         * doc/posix-functions/linkat.texi: New file.
3351         * doc/posix-functions/mkdirat.texi: New file.
3352         * doc/posix-functions/mkfifoat.texi: New file.
3353         * doc/posix-functions/mknodat.texi: New file.
3354         * doc/posix-functions/open_wmemstream.texi: New file.
3355         * doc/posix-functions/openat.texi: New file.
3356         * doc/posix-functions/psiginfo.texi: New file.
3357         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
3358         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
3359         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
3360         * doc/posix-functions/readlinkat.texi: New file.
3361         * doc/posix-functions/renameat.texi: New file.
3362         * doc/posix-functions/strerror_l.texi: New file.
3363         * doc/posix-functions/symlinkat.texi: New file.
3364         * doc/posix-functions/unlinkat.texi: New file.
3365         * doc/posix-functions/utimensat.texi: New file.
3366         * doc/gnulib.texi (Function Substitutes): Add these subsections.
3367
3368 2008-12-14  Bruno Haible  <bruno@clisp.org>
3369
3370         Update doc for POSIX:2008.
3371         * doc/posix-functions/alphasort.texi: Renamed from
3372         doc/glibc-functions/alphasort.texi.
3373         * doc/posix-functions/dirfd.texi: Renamed from
3374         doc/glibc-functions/dirfd.texi.
3375         * doc/posix-functions/dprintf.texi: Renamed from
3376         doc/glibc-functions/dprintf.texi.
3377         * doc/posix-functions/duplocale.texi: Renamed from
3378         doc/glibc-functions/duplocale.texi.
3379         * doc/posix-functions/fexecve.texi: Renamed from
3380         doc/glibc-functions/fexecve.texi.
3381         * doc/posix-functions/fmemopen.texi: Renamed from
3382         doc/glibc-functions/fmemopen.texi.
3383         * doc/posix-functions/freelocale.texi: Renamed from
3384         doc/glibc-functions/freelocale.texi.
3385         * doc/posix-functions/getdate_err.texi: Renamed from
3386         doc/glibc-functions/getdate_err.texi.
3387         * doc/posix-functions/isalnum_l.texi: Renamed from
3388         doc/glibc-functions/isalnum_l.texi.
3389         * doc/posix-functions/isalpha_l.texi: Renamed from
3390         doc/glibc-functions/isalpha_l.texi.
3391         * doc/posix-functions/isblank_l.texi: Renamed from
3392         doc/glibc-functions/isblank_l.texi.
3393         * doc/posix-functions/iscntrl_l.texi: Renamed from
3394         doc/glibc-functions/iscntrl_l.texi.
3395         * doc/posix-functions/isdigit_l.texi: Renamed from
3396         doc/glibc-functions/isdigit_l.texi.
3397         * doc/posix-functions/isgraph_l.texi: Renamed from
3398         doc/glibc-functions/isgraph_l.texi.
3399         * doc/posix-functions/islower_l.texi: Renamed from
3400         doc/glibc-functions/islower_l.texi.
3401         * doc/posix-functions/isprint_l.texi: Renamed from
3402         doc/glibc-functions/isprint_l.texi.
3403         * doc/posix-functions/ispunct_l.texi: Renamed from
3404         doc/glibc-functions/ispunct_l.texi.
3405         * doc/posix-functions/isspace_l.texi: Renamed from
3406         doc/glibc-functions/isspace_l.texi.
3407         * doc/posix-functions/isupper_l.texi: Renamed from
3408         doc/glibc-functions/isupper_l.texi.
3409         * doc/posix-functions/iswalnum_l.texi: Renamed from
3410         doc/glibc-functions/iswalnum_l.texi.
3411         * doc/posix-functions/iswalpha_l.texi: Renamed from
3412         doc/glibc-functions/iswalpha_l.texi.
3413         * doc/posix-functions/iswblank_l.texi: Renamed from
3414         doc/glibc-functions/iswblank_l.texi.
3415         * doc/posix-functions/iswcntrl_l.texi: Renamed from
3416         doc/glibc-functions/iswcntrl_l.texi.
3417         * doc/posix-functions/iswctype_l.texi: Renamed from
3418         doc/glibc-functions/iswctype_l.texi.
3419         * doc/posix-functions/iswdigit_l.texi: Renamed from
3420         doc/glibc-functions/iswdigit_l.texi.
3421         * doc/posix-functions/iswgraph_l.texi: Renamed from
3422         doc/glibc-functions/iswgraph_l.texi.
3423         * doc/posix-functions/iswlower_l.texi: Renamed from
3424         doc/glibc-functions/iswlower_l.texi.
3425         * doc/posix-functions/iswprint_l.texi: Renamed from
3426         doc/glibc-functions/iswprint_l.texi.
3427         * doc/posix-functions/iswpunct_l.texi: Renamed from
3428         doc/glibc-functions/iswpunct_l.texi.
3429         * doc/posix-functions/iswspace_l.texi: Renamed from
3430         doc/glibc-functions/iswspace_l.texi.
3431         * doc/posix-functions/iswupper_l.texi: Renamed from
3432         doc/glibc-functions/iswupper_l.texi.
3433         * doc/posix-functions/iswxdigit_l.texi: Renamed from
3434         doc/glibc-functions/iswxdigit_l.texi.
3435         * doc/posix-functions/isxdigit_l.texi: Renamed from
3436         doc/glibc-functions/isxdigit_l.texi.
3437         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
3438         doc/glibc-functions/mbsnrtowcs.texi.
3439         * doc/posix-functions/mkdtemp.texi: Renamed from
3440         doc/glibc-functions/mkdtemp.texi.
3441         * doc/posix-functions/newlocale.texi: Renamed from
3442         doc/glibc-functions/newlocale.texi.
3443         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
3444         doc/glibc-functions/nl_langinfo_l.texi.
3445         * doc/posix-functions/open_memstream.texi: Renamed from
3446         doc/glibc-functions/open_memstream.texi.
3447         * doc/posix-functions/opterr.texi: Renamed from
3448         doc/glibc-functions/opterr.texi.
3449         * doc/posix-functions/optind.texi: Renamed from
3450         doc/glibc-functions/optind.texi.
3451         * doc/posix-functions/optopt.texi: Renamed from
3452         doc/glibc-functions/optopt.texi.
3453         * doc/posix-functions/psignal.texi: Renamed from
3454         doc/glibc-functions/psignal.texi.
3455         * doc/posix-functions/scandir.texi: Renamed from
3456         doc/glibc-functions/scandir.texi.
3457         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
3458         doc/glibc-functions/sched_get_priority_min.texi.
3459         * doc/posix-functions/signgam.texi: Renamed from
3460         doc/glibc-functions/signgam.texi.
3461         * doc/posix-functions/stpcpy.texi: Renamed from
3462         doc/glibc-functions/stpcpy.texi.
3463         * doc/posix-functions/stpncpy.texi: Renamed from
3464         doc/glibc-functions/stpncpy.texi.
3465         * doc/posix-functions/strcasecmp_l.texi: Renamed from
3466         doc/glibc-functions/strcasecmp_l.texi.
3467         * doc/posix-functions/strcoll_l.texi: Renamed from
3468         doc/glibc-functions/strcoll_l.texi.
3469         * doc/posix-functions/strfmon_l.texi: Renamed from
3470         doc/glibc-functions/strfmon_l.texi.
3471         * doc/posix-functions/strftime_l.texi: Renamed from
3472         doc/glibc-functions/strftime_l.texi.
3473         * doc/posix-functions/strncasecmp_l.texi: Renamed from
3474         doc/glibc-functions/strncasecmp_l.texi.
3475         * doc/posix-functions/strndup.texi: Renamed from
3476         doc/glibc-functions/strndup.texi.
3477         * doc/posix-functions/strnlen.texi: Renamed from
3478         doc/glibc-functions/strnlen.texi.
3479         * doc/posix-functions/strsignal.texi: Renamed from
3480         doc/glibc-functions/strsignal.texi.
3481         * doc/posix-functions/strxfrm_l.texi: Renamed from
3482         doc/glibc-functions/strxfrm_l.texi.
3483         * doc/posix-functions/timer_gettime.texi: Renamed from
3484         doc/glibc-functions/timer_gettime.texi.
3485         * doc/posix-functions/tolower_l.texi: Renamed from
3486         doc/glibc-functions/tolower_l.texi.
3487         * doc/posix-functions/toupper_l.texi: Renamed from
3488         doc/glibc-functions/toupper_l.texi.
3489         * doc/posix-functions/towctrans_l.texi: Renamed from
3490         doc/glibc-functions/towctrans_l.texi.
3491         * doc/posix-functions/towlower_l.texi: Renamed from
3492         doc/glibc-functions/towlower_l.texi.
3493         * doc/posix-functions/towupper_l.texi: Renamed from
3494         doc/glibc-functions/towupper_l.texi.
3495         * doc/posix-functions/uselocale.texi: Renamed from
3496         doc/glibc-functions/uselocale.texi.
3497         * doc/posix-functions/vdprintf.texi: Renamed from
3498         doc/glibc-functions/vdprintf.texi.
3499         * doc/posix-functions/wcpcpy.texi:
3500         Renamed from doc/glibc-functions/wcpcpy.texi.
3501         * doc/posix-functions/wcpncpy.texi: Renamed from
3502         doc/glibc-functions/wcpncpy.texi.
3503         * doc/posix-functions/wcscasecmp.texi: Renamed from
3504         doc/glibc-functions/wcscasecmp.texi.
3505         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
3506         doc/glibc-functions/wcscasecmp_l.texi.
3507         * doc/posix-functions/wcscoll_l.texi: Renamed from
3508         doc/glibc-functions/wcscoll_l.texi.
3509         * doc/posix-functions/wcsdup.texi: Renamed from
3510         doc/glibc-functions/wcsdup.texi.
3511         * doc/posix-functions/wcsncasecmp.texi: Renamed from
3512         doc/glibc-functions/wcsncasecmp.texi.
3513         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
3514         doc/glibc-functions/wcsncasecmp_l.texi.
3515         * doc/posix-functions/wcsnlen.texi: Renamed from
3516         doc/glibc-functions/wcsnlen.texi.
3517         * doc/posix-functions/wcsnrtombs.texi: Renamed from
3518         doc/glibc-functions/wcsnrtombs.texi.
3519         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
3520         doc/glibc-functions/wcsxfrm_l.texi.
3521         * doc/posix-functions/wctrans_l.texi: Renamed from
3522         doc/glibc-functions/wctrans_l.texi.
3523         * doc/posix-functions/wctype_l.texi: Renamed from
3524         doc/glibc-functions/wctype_l.texi.
3525         * doc/gnulib.texi (Function Substitutes): Add these subsections.
3526         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
3527         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
3528         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
3529         these subsections.
3530         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
3531         Remove sections.
3532
3533 2008-12-14  Bruno Haible  <bruno@clisp.org>
3534
3535         Update doc for POSIX:2008.
3536         * doc/posix-functions/*.texi: Update URL of POSIX specification.
3537
3538 2008-12-14  Bruno Haible  <bruno@clisp.org>
3539
3540         Update doc for POSIX:2008.
3541         * doc/pastposix-functions/bcmp.texi: Renamed from
3542         doc/posix-functions/bcmp.texi.
3543         * doc/pastposix-functions/bcopy.texi: Renamed from
3544         doc/posix-functions/bcopy.texi.
3545         * doc/pastposix-functions/bsd_signal.texi: Renamed from
3546         doc/posix-functions/bsd_signal.texi.
3547         * doc/pastposix-functions/bzero.texi: Renamed from
3548         doc/posix-functions/bzero.texi.
3549         * doc/pastposix-functions/ecvt.texi: Renamed from
3550         doc/posix-functions/ecvt.texi.
3551         * doc/pastposix-functions/fcvt.texi: Renamed from
3552         doc/posix-functions/fcvt.texi.
3553         * doc/pastposix-functions/ftime.texi: Renamed from
3554         doc/posix-functions/ftime.texi.
3555         * doc/pastposix-functions/gcvt.texi: Renamed from
3556         doc/posix-functions/gcvt.texi.
3557         * doc/pastposix-functions/getcontext.texi: Renamed from
3558         doc/posix-functions/getcontext.texi.
3559         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
3560         doc/posix-functions/gethostbyaddr.texi.
3561         * doc/pastposix-functions/gethostbyname.texi: Renamed from
3562         doc/posix-functions/gethostbyname.texi.
3563         * doc/pastposix-functions/getwd.texi: Renamed from
3564         doc/posix-functions/getwd.texi.
3565         * doc/pastposix-functions/h_errno.texi: Renamed from
3566         doc/posix-functions/h_errno.texi.
3567         * doc/pastposix-functions/index.texi: Renamed from
3568         doc/posix-functions/index.texi.
3569         * doc/pastposix-functions/makecontext.texi: Renamed from
3570         doc/posix-functions/makecontext.texi.
3571         * doc/pastposix-functions/mktemp.texi: Renamed from
3572         doc/posix-functions/mktemp.texi.
3573         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
3574         doc/posix-functions/pthread_attr_getstackaddr.texi.
3575         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
3576         doc/posix-functions/pthread_attr_setstackaddr.texi.
3577         * doc/pastposix-functions/rindex.texi: Renamed from
3578         doc/posix-functions/rindex.texi.
3579         * doc/pastposix-functions/scalb.texi: Renamed from
3580         doc/posix-functions/scalb.texi.
3581         * doc/pastposix-functions/setcontext.texi: Renamed from
3582         doc/posix-functions/setcontext.texi.
3583         * doc/pastposix-functions/swapcontext.texi: Renamed from
3584         doc/posix-functions/swapcontext.texi.
3585         * doc/pastposix-functions/ualarm.texi: Renamed from
3586         doc/posix-functions/ualarm.texi.
3587         * doc/pastposix-functions/usleep.texi: Renamed from
3588         doc/posix-functions/usleep.texi.
3589         * doc/pastposix-functions/vfork.texi: Renamed from
3590         doc/posix-functions/vfork.texi.
3591         * doc/pastposix-functions/wcswcs.texi: Renamed from
3592         doc/posix-functions/wcswcs.texi.
3593         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
3594         (Function Substitutes): Update.
3595
3596 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3597
3598         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
3599         m4/strerror.m4.
3600
3601 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3602             Bruno Haible  <bruno@clisp.org>
3603
3604         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
3605
3606 2008-12-13  Bruno Haible  <bruno@clisp.org>
3607
3608         * modules/strtoull (Depends-on): Remove unistd.
3609
3610 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3611
3612         * modules/strtoull (Depends-on): Add stdlib.
3613
3614 2008-12-11  Simon Josefsson  <simon@josefsson.org>
3615
3616         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
3617
3618 2008-12-10  Jim Meyering  <meyering@redhat.com>
3619
3620         gl_ASSERT: don't say assertions are disabled when they're not
3621         * m4/assert.m4 (gl_ASSERT): Do not make configure report
3622         "checking whether to enable assertions... no", when they are in
3623         fact enabled.  This is solely a bug in the output of configure.
3624         In spite of saying "no", NDEBUG was not defined in that case.
3625         Also, as noted by Eric Blake, leave assertions enabled upon
3626         --enable-assert=INVALID.
3627
3628 2008-12-10  Bruno Haible  <bruno@clisp.org>
3629
3630         Change MODULES.html to refer to POSIX:2008 where possible.
3631         * MODULES.html.sh (POSIX2008_URL): New variable.
3632         (posix_headers): Remove sys/timeb, ucontext.
3633         (posix2001_headers): New variable.
3634         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
3635         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
3636         index, makecontext, mktemp, pthread_attr_getstackaddr,
3637         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
3638         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
3639         (posix2001_functions): New variable.
3640         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
3641         otherwise.
3642
3643 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3644
3645         add missing include to parse-duration.c
3646         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
3647         * modules/parse-duration (Depends-on): Add xalloc.
3648
3649         fix sed script reading maint.mk
3650         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
3651         (syntax-check-rules): Use it.
3652
3653 2008-12-09  Bruno Haible  <bruno@clisp.org>
3654
3655         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
3656         MacOS X 10.4/PowerPC.
3657         Reported by Simon Josefsson.
3658
3659 2008-12-08  Jim Meyering  <meyering@redhat.com>
3660
3661         work around mingw's lack of some S_IF definitions
3662         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
3663         Reported by Simon Josefsson.
3664
3665 2008-12-08  Bruno Haible  <bruno@clisp.org>
3666
3667         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
3668         applied to variables. Needed on MacOS X 10.4/PowerPC.
3669         Reported by Simon Josefsson.
3670
3671 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
3672         and Eric Blake  <ebb9@byu.net>
3673
3674         assert: honor --enable-assert
3675         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
3676         order to honor --enable-assert, rather than treating it as a
3677         synonym for --disable-assert.
3678
3679 2008-12-08  Jim Meyering  <meyering@redhat.com>
3680
3681         * lib/posixtm.c: Remove now-useless declaration of mktime.
3682
3683         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
3684
3685 2008-12-07  Bruno Haible  <bruno@clisp.org>
3686
3687         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
3688         test_once): Mark functions as static.
3689         * tests/test-tls.c (test_tls): Likewise.
3690
3691 2008-12-07  Bruno Haible  <bruno@clisp.org>
3692
3693         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
3694         iconv_register_autodetect.
3695
3696 2008-12-07  Jim Meyering  <meyering@redhat.com>
3697
3698         posixtm.c: avoid a warning
3699         * lib/posixtm.c (posixtime): Don't initialize tm0.
3700         It's no longer needed to placate gcc4's -Wuninitialized,
3701         and the attempt to placate would elicit a new warning.
3702
3703         unicodeio.c: mark unused parameters
3704         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
3705         (fallback_failure_callback): Likewise.
3706
3707 2008-12-07  Bruno Haible  <bruno@clisp.org>
3708
3709         * gnulib-tool (func_create_testdir): When building the tests
3710         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
3711         Reported by Simon Josefsson.
3712
3713 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3714
3715         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
3716
3717 2008-12-06  Bruno Haible  <bruno@clisp.org>
3718
3719         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
3720         Suggested by Eric Blake.
3721
3722 2008-12-06  Bruno Haible  <bruno@clisp.org>
3723
3724         Fix a c-stack test failure on MacOS X.
3725         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
3726         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
3727         handler for SIGBUS as well.
3728         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
3729         install a signal handler for SIGBUS as well.
3730         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
3731
3732 2008-12-06  Bruno Haible  <bruno@clisp.org>
3733
3734         Advocacy documentation.
3735         * doc/gnulib-intro.texi (Benefits): New section.
3736         * doc/gnulib.texi: Update.
3737
3738 2008-12-06  Bruno Haible  <bruno@clisp.org>
3739
3740         Document the 'manywarnings' module.
3741         * doc/manywarnings.texi: New file.
3742         * doc/gnulib.texi: Include it.
3743
3744 2008-12-05  Eric Blake  <ebb9@byu.net>
3745
3746         tests: silence some gcc warnings
3747         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
3748         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
3749         type mismatches.
3750
3751 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3752             Bruno Haible  <bruno@clisp.org>
3753
3754         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
3755
3756 2008-11-29  Jim Meyering  <meyering@redhat.com>
3757
3758         unicodeio.c: mark unused parameters
3759         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
3760         (fallback_failure_callback): Likewise.
3761
3762         fts: fix a thinko
3763         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
3764         (set_stat_type): Return S_IF*-valued "type" directly.
3765         Prompted by James Youngman's spotting a related bug.
3766         Confirmed by further testing through find.
3767
3768         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
3769         * lib/fts.c (D_TYPE): Define.
3770         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
3771         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
3772         (s_ifmt_shift_bits): New function.
3773         (set_stat_type): New function.
3774         (fts_build): When not calling fts_stat, call set_stat_type
3775         to propagate dirent.d_type info to fts_read caller.
3776         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
3777         fts_statp->st_mode type information may be valid.
3778
3779 2008-11-28  Simon Josefsson  <simon@josefsson.org>
3780
3781         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
3782         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
3783         <sds@gnu.org>.
3784
3785 2008-11-20  Bruno Haible  <bruno@clisp.org>
3786
3787         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
3788         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
3789         INCLUDE_NEXT.
3790         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
3791         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
3792         * modules/math (Makefile.am): Substitute
3793         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
3794         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
3795
3796 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
3797             Bruno Haible  <bruno@clisp.org>
3798
3799         * lib/stdint.in.h: Define all type macros so that their expansion is
3800         a single typedef'ed token. Fixes a compilation failure in Boost which
3801         does "using ::int8_t;".
3802
3803 2008-11-18  Simon Josefsson  <simon@josefsson.org>
3804
3805         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
3806         gl_MANYWARN_ALL_GCC.
3807         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
3808         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
3809         * modules/manywarnings: New file.
3810         * MODULES.html.sh: Mention manywarnings module.
3811
3812 2008-11-18  Bruno Haible  <bruno@clisp.org>
3813
3814         * doc/gnulib-tool.texi (Unit tests): New section.
3815
3816 2008-11-18  Simon Josefsson  <simon@josefsson.org>
3817
3818         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
3819         paths like 'lib/po/foo.po'.
3820
3821 2008-11-17  Simon Josefsson  <simon@josefsson.org>
3822
3823         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
3824         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
3825
3826 2008-11-17  Simon Josefsson  <simon@josefsson.org>
3827
3828         * m4/warnings.m4: Use CPPFLAGS to really check whether the
3829         parameter works.
3830
3831 2008-11-17  Simon Josefsson  <simon@josefsson.org>
3832
3833         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
3834
3835 2008-11-17  Bruce Korb  <bkorb@gnu.org>
3836
3837         * modules/parse-duration-tests: New file.
3838         * tests/test-parse-duration.sh: New file.
3839         * tests/test-parse-duration.c: New file.
3840
3841         New module 'parse-duration'.
3842         * lib/parse-duration.h: New file.
3843         * lib/parse-duration.c: New file.
3844         * modules/parse-duration: New file.
3845
3846 2008-11-17  Bruno Haible  <bruno@clisp.org>
3847
3848         * tests/test-select-out.sh: Comment out the first pipe test.
3849         Reported by Simon Josefsson.
3850
3851 2008-11-17  Bruno Haible  <bruno@clisp.org>
3852
3853         * modules/getaddrinfo (Depends-on): Add servent, hostent.
3854         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
3855         gl_HOSTENT.
3856
3857 2008-11-17  Bruno Haible  <bruno@clisp.org>
3858
3859         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
3860         -lnetwork and -lnet. Needed for Haiku and BeOS.
3861
3862 2008-11-16  Bruno Haible  <bruno@clisp.org>
3863
3864         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
3865
3866 2008-11-16  Bruno Haible  <bruno@clisp.org>
3867
3868         Avoid test failure on Haiku.
3869         * tests/test-fsync.c: Include <errno.h>.
3870         (main): Don't require that fsync (0) fails.
3871
3872 2008-11-15  Bruno Haible  <bruno@clisp.org>
3873
3874         New module 'hostent'.
3875         * modules/hostent: New file.
3876         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
3877
3878 2008-11-15  Bruno Haible  <bruno@clisp.org>
3879
3880         New module 'servent'.
3881         * modules/servent: New file.
3882         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
3883
3884 2008-11-15  Bruno Haible  <bruno@clisp.org>
3885
3886         Avoid generating same test program with two different rules.
3887         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
3888         test-frexp to test-frexp-nolibm.
3889         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
3890         test-frexpl to test-frexpl-nolibm.
3891
3892 2008-11-15  Bruno Haible  <bruno@clisp.org>
3893
3894         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
3895         $(FREXPL_LIBM).
3896
3897 2008-11-15  Bruno Haible  <bruno@clisp.org>
3898
3899         * lib/netdb.in.h: Activate the definitions also when the system's
3900         <netdb.h> has 'struct addrinfo'.
3901         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
3902         EAI_OVERFLOW or AI_NUMERICSERV.
3903         * doc/posix-headers/netdb.texi: Document the problem.
3904
3905 2008-11-15  Bruno Haible  <bruno@clisp.org>
3906
3907         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
3908
3909         Make the 'sched' module work on platforms where <sched.h> exists but
3910         is incomplete (such as Haiku).
3911         * lib/sched.in.h; Include the system's <sched.h> if it exists.
3912         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
3913         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
3914         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
3915         HAVE_STRUCT_SCHED_PARAM.
3916         * modules/sched (Depends-on): Add include_next.
3917         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
3918         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
3919         * doc/posix-headers/sched.texi: Document the issue.
3920
3921 2008-11-13  Jim Meyering  <meyering@redhat.com>
3922
3923         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
3924         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
3925         test would fail due to the difference in the Report bugs to ...
3926         line.  The expected address is empty, "<>", while the actual
3927         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
3928
3929 2008-11-12  Bruno Haible  <bruno@clisp.org>
3930
3931         lstat: don't compile lstat.c on systems lacking lstat
3932         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
3933         which don't have lstat; this is handled by lib/sys_stat.in.h already.
3934         Reported by Daniel P. Berrange via Jim Meyering.
3935
3936 2008-11-12  Jim Meyering  <meyering@redhat.com>
3937
3938         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
3939
3940 2008-11-12  Simon Josefsson  <simon@josefsson.org>
3941
3942         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
3943         instead.
3944
3945 2008-11-12  Bruno Haible  <bruno@clisp.org>
3946
3947         * lib/unicodeio.c: Include unistr.h.
3948         (utf8_wctomb): Remove function.
3949         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
3950
3951 2008-11-12  Simon Josefsson  <simon@josefsson.org>
3952
3953         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
3954         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
3955         <bruno@clisp.org>.
3956         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
3957
3958 2008-11-12  Simon Josefsson  <simon@josefsson.org>
3959
3960         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
3961         * doc/gnulib.texi: Add section for warnings.
3962
3963 2008-11-11  Bruno Haible  <bruno@clisp.org>
3964
3965         * lib/sockets.h: Add a comment.
3966
3967 2008-11-11  Karl Berry  <karl@gnu.org>
3968
3969         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
3970
3971 2008-11-11  Eric Blake  <ebb9@byu.net>
3972
3973         fdl.texi: avoid git symlinks
3974         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
3975
3976 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3977
3978         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
3979
3980 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3981
3982         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
3983         (gl_WARN_ADD): Substitute $2 if literal.
3984
3985 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3986
3987         * m4/warning.m4: Remove.
3988
3989 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3990
3991         * m4/warnings.m4: Almost complete rewrite. :-)
3992
3993 2008-11-10  Simon Josefsson  <simon@josefsson.org>
3994
3995         * modules/warnings: New module.
3996         * m4/warnings.m4: New file.
3997         * MODULES.html.sh: Mention warnings module.
3998         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
3999         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4000
4001 2008-11-10  Eric Blake  <ebb9@byu.net>
4002
4003         fdl.texi: make a symlink to the latest version
4004         * doc/standards.texi: Revert today's earlier change.
4005         * doc/fdl-1.2.texi: Rename from old fdl.texi...
4006         * doc/fdl.texi: ...and replace this with a symlink to the newer
4007         fdl-1.3.texi.
4008
4009 2008-11-10  Bruno Haible  <bruno@clisp.org>
4010
4011         * tests/test-select-fd.c (main): Accept the result file name as fourth
4012         argument.
4013         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
4014         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
4015
4016 2008-11-10  Bruno Haible  <bruno@clisp.org>
4017
4018         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
4019         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
4020         as autoconf-substituted macros.
4021         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
4022         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
4023         gl_NETDB_H_DEFAULTS. Set these variables.
4024         * modules/netdb (Makefile.am): Substitute these variables.
4025
4026 2008-11-10  Eric Blake  <ebb9@byu.net>
4027
4028         standards.texi: include correct file for FDL 1.3
4029         * doc/standards.texi (GNU Free Documentation License): Change
4030         include file to pull in FDL 1.3, not 1.2.
4031
4032         fdl.texi: revert accidental change to license
4033         * doc/fdl.texi: This is FDL 1.2, not 1.3.
4034
4035 2008-11-10  Bruno Haible  <bruno@clisp.org>
4036
4037         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
4038         cross-compiling guesses also when the native compile gives no result.
4039
4040 2008-11-10  Bruno Haible  <bruno@clisp.org>
4041
4042         * lib/spawni.c (__spawni): Force variable into the stack.
4043
4044 2008-11-10  Bruno Haible  <bruno@clisp.org>
4045
4046         Add support for Haiku.
4047         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
4048         glibc and BeOS, but also on Haiku.
4049         * lib/fpurge.c (fpurge): Likewise.
4050         * lib/freadable.c (freadable): Likewise.
4051         * lib/freadahead.c (freadahead): Likewise.
4052         * lib/freading.c (freading): Likewise.
4053         * lib/freadptr.c (freadptr): Likewise.
4054         * lib/freadseek.c (freadptrinc): Likewise.
4055         * lib/fseeko.c (rpl_fseeko): Likewise.
4056         * lib/fseterr.c (fseterr): Likewise.
4057         * lib/fwritable.c (fwritable): Likewise.
4058         * lib/fwriting.c (fwriting): Likewise.
4059         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
4060
4061 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
4062
4063         * lib/config.charset: Treat Haiku like BeOS.
4064
4065 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
4066
4067         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
4068         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
4069
4070 2008-11-08  Bruno Haible  <bruno@clisp.org>
4071
4072         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
4073         AC_CACHE_CHECK.
4074
4075 2008-11-08  Bruno Haible  <bruno@clisp.org>
4076
4077         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
4078
4079 2008-11-08  Bruno Haible  <bruno@clisp.org>
4080
4081         * tests/test-select-fd.c: New file.
4082         * tests/test-select-in.sh: New file.
4083         * tests/test-select-out.sh: New file.
4084         * tests/test-select-stdin.c: New file.
4085         * modules/select-tests (Files): Add the new files.
4086         (Depends-on): Add gettimeofday.
4087         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
4088         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
4089         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
4090
4091 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
4092             Bruno Haible  <bruno@clisp.org>
4093
4094         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
4095
4096 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
4097
4098         * build-aux/pmccabe2html: Added support for C++ source files.
4099
4100 2008-11-05  Ben Pfaff  <blp@gnu.org>
4101
4102         Fix lib/close.c build on Windows.
4103         * modules/close (Files): Add lib/w32sock.h.
4104
4105 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
4106
4107         Accept Bison's NEWS format.
4108         * build-aux/announce-gen (print_news_deltas): Tweak
4109         $re_prefix.
4110
4111 2008-11-04  Bruno Haible  <bruno@clisp.org>
4112
4113         * modules/random_r (Maintainer): Add glibc.
4114
4115 2008-11-04  Simon Josefsson  <simon@josefsson.org>
4116
4117         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
4118         by karl@freefriends.org (Karl Berry).
4119         * doc/alloca.texi: Likewise.
4120         * doc/c-ctype.texi: Likewise.
4121         * doc/c-strcase.texi: Likewise.
4122         * doc/c-strcaseeq.texi: Likewise.
4123         * doc/c-strcasestr.texi: Likewise.
4124         * doc/c-strstr.texi: Likewise.
4125         * doc/c-strtod.texi: Likewise.
4126         * doc/c-strtold.texi: Likewise.
4127         * doc/ctime.texi: Likewise.
4128         * doc/error.texi: Likewise.
4129         * doc/fdl.texi: Likewise.
4130         * doc/gcd.texi: Likewise.
4131         * doc/getdate.texi: Likewise.
4132         * doc/gnulib-intro.texi: Likewise.
4133         * doc/gnulib-tool.texi: Likewise.
4134         * doc/gnulib.texi: Likewise.
4135         * doc/inet_ntoa.texi: Likewise.
4136         * doc/maintain.texi: Likewise.
4137         * doc/make-stds.texi: Likewise.
4138         * doc/quote.texi: Likewise.
4139         * doc/regexprops-generic.texi: Likewise.
4140         * doc/standards.texi: Likewise.
4141         * doc/verify.texi: Likewise.
4142         * doc/visibility.texi: Likewise.
4143         * doc/gnulib.texi (GNU Free Documentation License): Include
4144         fdl-1.3.texi instead of fdl.texi.
4145
4146 2008-11-04  Simon Josefsson  <simon@josefsson.org>
4147
4148         * doc/fdl-1.3.texi: New file, from
4149         <http://www.gnu.org/licenses/fdl-1.3.texi>.
4150         * modules/fdl-1.3: Add.
4151         * MODULES.html.sh: Add fdl-1.3.
4152
4153 2008-11-03  Bruno Haible  <bruno@clisp.org>
4154
4155         Make determination of absolute name of header file work with AIX xlc.
4156         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
4157         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
4158         preprocessing.
4159         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
4160         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
4161
4162 2008-11-03  Simon Josefsson  <simon@josefsson.org>
4163
4164         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
4165         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
4166         <ludo@gnu.org>.
4167
4168 2008-11-02  Bruno Haible  <bruno@clisp.org>
4169
4170         Mark 'strpbrk' obsolete.
4171         * modules/strpbrk (Status, Notice): New sections.
4172         * modules/strtok_r (Depends-on): Add strpbrk.
4173
4174 2008-11-02  Bruno Haible  <bruno@clisp.org>
4175
4176         Mark 'strdup' obsolete.
4177         * modules/strdup (Status, Notice): New sections.
4178         * modules/findprog (Depends-on): Add strdup.
4179         * modules/getaddrinfo (Depends-on): Likewise.
4180         * modules/localename (Depends-on): Likewise.
4181         * modules/relocatable-lib (Depends-on): Likewise.
4182         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
4183         * modules/relocatable-prog (Depends-on): Likewise.
4184         * modules/trim (Depends-on): Likewise.
4185         * modules/unictype/gen-ctype (Depends-on): Likewise.
4186         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
4187
4188 2008-11-02  Bruno Haible  <bruno@clisp.org>
4189
4190         Mark 'strcspn' obsolete.
4191         * modules/strcspn (Status, Notice): New sections.
4192
4193 2008-11-02  Bruno Haible  <bruno@clisp.org>
4194
4195         Mark 'rmdir' obsolete.
4196         * modules/rmdir (Status, Notice): New sections.
4197         * modules/clean-temp (Depends-on): Add rmdir.
4198         * modules/openat (Depends-on): Likewise.
4199
4200 2008-11-02  Bruno Haible  <bruno@clisp.org>
4201
4202         Mark 'raise' obsolete.
4203         * modules/raise (Status, Notice): New sections.
4204         (Include): Specify <signal.h>.
4205         * modules/stdio (Depends-on): Add raise.
4206         * modules/write (Depends-on): Likewise.
4207
4208 2008-11-02  Bruno Haible  <bruno@clisp.org>
4209
4210         Mark 'memset' obsolete.
4211         * modules/memset (Status, Notice): New sections.
4212
4213 2008-11-02  Bruno Haible  <bruno@clisp.org>
4214
4215         Mark 'memmove' obsolete.
4216         * modules/memmove (Status, Notice): New sections.
4217         * modules/argp (Depends-on): Add memmove.
4218         * modules/argz (Depends-on): Likewise.
4219         * modules/canonicalize (Depends-on): Likewise.
4220         * modules/canonicalize-lgpl (Depends-on): Likewise.
4221         * modules/fts (Depends-on): Likewise.
4222         * modules/getcwd (Depends-on): Likewise.
4223         * modules/human (Depends-on): Likewise.
4224         * modules/regex (Depends-on): Likewise.
4225         * modules/striconveh (Depends-on): Likewise.
4226         * modules/trim (Depends-on): Likewise.
4227         * modules/unistr/u8-move (Depends-on): Likewise.
4228         * modules/unistr/u16-move (Depends-on): Likewise.
4229         * modules/unistr/u32-move (Depends-on): Likewise.
4230
4231 2008-11-02  Bruno Haible  <bruno@clisp.org>
4232
4233         Mark 'memcpy' obsolete.
4234         * modules/memcpy (Status, Notice): New sections.
4235
4236 2008-11-02  Bruno Haible  <bruno@clisp.org>
4237
4238         Mark 'memcmp' obsolete.
4239         * modules/memcmp (Status, Notice): New sections.
4240         * modules/argmatch (Depends-on): Add memchr.
4241         * modules/backupfile (Depends-on): Likewise.
4242         * modules/c-strcasestr (Depends-on): Likewise.
4243         * modules/crypto/des (Depends-on): Likewise.
4244         * modules/csharpcomp (Depends-on): Likewise.
4245         * modules/fnmatch (Depends-on): Likewise.
4246         * modules/git-merge-changelog (Depends-on): Likewise.
4247         * modules/isnand (Depends-on): Likewise.
4248         * modules/isnand-nolibm (Depends-on): Likewise.
4249         * modules/isnanf (Depends-on): Likewise.
4250         * modules/isnanf-nolibm (Depends-on): Likewise.
4251         * modules/isnanl (Depends-on): Likewise.
4252         * modules/isnanl-nolibm (Depends-on): Likewise.
4253         * modules/mbchar (Depends-on): Likewise.
4254         * modules/memcoll (Depends-on): Likewise.
4255         * modules/quotearg (Depends-on): Likewise.
4256         * modules/regex (Depends-on): Likewise.
4257         * modules/relocatable-prog (Depends-on): Likewise.
4258         * modules/same (Depends-on): Likewise.
4259         * modules/signbit (Depends-on): Likewise.
4260         * modules/strcasestr-simple (Depends-on): Likewise.
4261         * modules/unictype/gen-ctype (Depends-on): Likewise.
4262         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
4263         * modules/uniname/uniname (Depends-on): Likewise.
4264         * modules/unistr/u8-cmp (Depends-on): Likewise.
4265
4266 2008-11-02  Bruno Haible  <bruno@clisp.org>
4267
4268         Mark 'memchr' obsolete.
4269         * modules/memchr (Status, Notice): New sections.
4270         * modules/argp (Depends-on): Add memchr.
4271         * modules/base64 (Depends-on): Likewise.
4272         * modules/c-strcasestr (Depends-on): Likewise.
4273         * modules/chdir-long (Depends-on): Likewise.
4274         * modules/fnmatch (Depends-on): Likewise.
4275         * modules/getsubopt (Depends-on): Likewise.
4276         * modules/git-merge-changelog (Depends-on): Likewise.
4277         * modules/glob (Depends-on): Likewise.
4278         * modules/strcasestr-simple (Depends-on): Likewise.
4279         * modules/strnlen (Depends-on): Likewise.
4280
4281 2008-11-02  Bruno Haible  <bruno@clisp.org>
4282
4283         Mark 'atexit' obsolete.
4284         * modules/atexit (Status, Notice): New sections.
4285         * modules/chdir-long (Depends-on): Add atexit.
4286         * modules/wait-process (Depends-on): Likewise.
4287
4288 2008-11-02  Bruno Haible  <bruno@clisp.org>
4289
4290         * gnulib-tool: New option --with-obsolete.
4291         (func_usage): Document it.
4292         (func_modules_transitive_closure): Drop obsolete dependencies if
4293         incobsolete is not true.
4294         (func_import): Read and save the incobsolete variable to the cache.
4295
4296 2008-11-02  Bruno Haible  <bruno@clisp.org>
4297
4298         * modules/TEMPLATE-EXTENDED: New field 'Status'.
4299         * gnulib-tool: New option --extract-status.
4300         (func_usage): Document it.
4301         (sed_extract_prog): Recognize it.
4302         (func_get_status): New function.
4303
4304 2008-10-30  Simon Josefsson  <simon@josefsson.org>
4305
4306         * modules/sockets (License): Change from LGPL to LGPLv2+.
4307
4308 2008-10-28  Simon Josefsson  <simon@josefsson.org>
4309
4310         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
4311
4312 2008-10-28  Simon Josefsson  <simon@josefsson.org>
4313
4314         * MODULES.html.sh (Support for systems lacking POSIX:2001):
4315         Mention times and sys_times.
4316         * modules/sys_times, modules/sys_times-tests: New modules.
4317         * modules/times, modules/times-tests: Likewise
4318         * m4/sys_times_h.m4: New file.
4319         * lib/sys_times.in.h: Likewise
4320         * lib/times.c: Likewise.
4321         * tests/test-sys_times.c: Likewise.
4322         * tests/test-times.c: Likewise.
4323         * doc/posix-headers/sys_times.texi: Update.
4324         * doc/posix-functions/times.texi: Update.
4325
4326 2008-10-28  Jim Meyering  <meyering@redhat.com>
4327
4328         * modules/tempname (Depends-on): Add lstat.
4329
4330         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
4331
4332 2008-10-28  Simon Josefsson  <simon@josefsson.org>
4333
4334         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
4335         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
4336         using idiom used elsewhere in gnulib.
4337
4338 2008-10-27  Jim Meyering  <meyering@redhat.com>
4339
4340         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
4341
4342 2008-10-27  Simon Josefsson  <simon@josefsson.org>
4343
4344         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
4345         TESTS_ENVIRONMENT, for shell scripts that needs to call built
4346         programs.
4347         * tests/test-argp-2.sh: Use $EXEEXT when needed.
4348
4349 2008-10-27  Simon Josefsson  <simon@josefsson.org>
4350
4351         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
4352
4353 2008-10-27  Bruno Haible  <bruno@clisp.org>
4354
4355         * tests/test-lstat.c: Include <stdio.h>.
4356
4357 2008-10-27  Simon Josefsson  <simon@josefsson.org>
4358
4359         * modules/lstat-tests: New module.
4360         * tests/test-lstat.c: New file.
4361
4362 2008-10-26  Jim Meyering  <meyering@redhat.com>
4363
4364         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
4365
4366 2008-10-26  Simon Josefsson  <simon@josefsson.org>
4367             Bruno Haible  <bruno@clisp.org>
4368
4369         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
4370         * modules/configmake (Include): Add a note that the include must come
4371         after all system headers.
4372         * lib/javaversion.c: Include configmake.h after all other includes.
4373
4374 2008-10-26  Bruno Haible  <bruno@clisp.org>
4375
4376         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
4377         HAVE_STRUCT_RANDOM_DATA to 1.
4378         (gl_STDLIB_H): Simplify.
4379
4380 2008-10-26  Simon Josefsson  <simon@josefsson.org>
4381
4382         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
4383         substitute HAVE_STRUCT_RANDOM_DATA.
4384         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
4385         random_data.
4386         * modules/stdlib (Makefile.am): Substitute
4387         HAVE_STRUCT_RANDOM_DATA.
4388
4389 2008-10-26  Simon Josefsson  <simon@josefsson.org>
4390
4391         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
4392         * doc/gnulib-intro.texi (Copyright): Likewise.
4393
4394 2008-10-26  Simon Josefsson  <simon@josefsson.org>
4395
4396         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
4397         findings.
4398
4399 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
4400             Bruno Haible  <bruno@clisp.org>
4401
4402         * lib/unistd.in.h: Include <winsock2.h>.
4403         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
4404         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
4405         Provide dummy declarations.
4406         (gethostname): Override.
4407         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
4408         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
4409         gl_PREREQ_SYS_H_WINSOCK2.
4410         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
4411         * doc/posix-functions/gethostname.texi: More details.
4412
4413 2008-10-25  Bruno Haible  <bruno@clisp.org>
4414
4415         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
4416         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
4417         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
4418
4419         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
4420         here ...
4421         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
4422         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
4423         gl_UNISTD_H_DEFAULTS.
4424
4425 2008-10-25  Eric Blake  <ebb9@byu.net>
4426
4427         signbit: avoid spurious compiler failure
4428         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
4429         declarations inside function.
4430
4431 2008-10-24  Simon Josefsson  <simon@josefsson.org>
4432             Bruno Haible  <bruno@clisp.org>
4433
4434         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
4435         * modules/random_r (Depends-on): Add stdint.
4436
4437 2008-10-24  Bruno Haible  <bruno@clisp.org>
4438
4439         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
4440         Eggert.
4441         * modules/strerror (License): Likewise.
4442
4443 2008-10-24  Jim Meyering  <meyering@redhat.com>
4444
4445         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
4446         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
4447
4448 2008-10-24  Eric Blake  <ebb9@byu.net>
4449
4450         getgroups: fix compilation when getgroups is available
4451         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
4452         but with <config.h> override of getgroups disabled.
4453
4454 2008-10-24  Simon Josefsson  <simon@josefsson.org>
4455
4456         * doc/gnulib.texi (Header files): Add note about C++ problems.
4457         Explained by Bruno Haible <bruno@clisp.org>.
4458
4459 2008-10-23  Bruno Haible  <bruno@clisp.org>
4460
4461         Define a dummy SA_NODEFER macro on Interix.
4462         * lib/signal.in.h (SA_NODEFER): Define fallback.
4463         Reported by Aleksey Cheusov <cheusov@tut.by> via
4464         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
4465
4466 2008-10-23  Bruno Haible  <bruno@clisp.org>
4467
4468         * modules/freadahead (License): Change to LGPLv2+.
4469         Suggested by Simon Josefsson.
4470
4471 2008-10-23  Jim Meyering  <meyering@redhat.com>
4472
4473         random_r: new module
4474         * modules/random_r: New file.
4475         * m4/random_r.m4: New file.
4476         * lib/random_r.c: New file, from glibc.
4477         * modules/random_r-tests: New file.
4478         * tests/test-random_r.c: New file.
4479         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
4480          Declare.
4481         (RAND_MAX): Define.
4482         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
4483         * modules/stdlib: Substitute them, too.
4484         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
4485         * doc/glibc-functions/initstate_r.texi: Mention the new module.
4486         * doc/glibc-functions/random_r.texi: Likewise.
4487         * doc/glibc-functions/setstate_r.texi: Likewise.
4488         * doc/glibc-functions/srandom_r.texi: Likewise.
4489         * config/srclist.txt: Mention it.
4490
4491 2008-10-23  David Lutterkort  <lutter@redhat.com>
4492
4493         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
4494         link requirement
4495
4496 2008-10-23  Jim Meyering  <meyering@redhat.com>
4497
4498         selinux-h: mark parameters of stub functions as intentionally unused
4499         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
4500         * lib/se-context.in.h: Likewise.
4501
4502 2008-10-22  Simon Josefsson  <simon@josefsson.org>
4503
4504         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
4505
4506 2008-10-22  Simon Josefsson  <simon@josefsson.org>
4507
4508         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
4509
4510 2008-10-22  Eric Blake  <ebb9@byu.net>
4511
4512         glthread/thread: avoid compiler warning
4513         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
4514         Add unreachable abort to silence compiler.
4515
4516 2008-10-22  Eric Blake  <ebb9@byu.net>
4517
4518         netdb: also supply struct addrinfo for cygwin 1.5.x
4519         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
4520         older cygwin.
4521         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
4522         cygwin.
4523         * doc/posix-headers/netdb.texi (netdb.h): Document this.
4524
4525 2008-10-22  Bruno Haible  <bruno@clisp.org>
4526
4527         * users.txt: Update entry about pspp.
4528
4529 2008-10-21  Bruno Haible  <bruno@clisp.org>
4530
4531         Simplification.
4532         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
4533         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
4534
4535         Simplification.
4536         * lib/ioctl.c (ioctl): Don't undefine.
4537         * lib/socket.c (socket): Don't undefine.
4538
4539         Remove unused module indicator macros.
4540         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
4541         GNULIB_$1 as a C macro.
4542
4543         * doc/posix-functions/close.texi: Undo last change.
4544         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
4545         Windows platforms.
4546
4547 2008-10-21  Bruno Haible  <bruno@clisp.org>
4548
4549         Add gethostname() declaration to <unistd.h>.
4550         * lib/unistd.in.h (gethostname): New declaration.
4551         * lib/gethostname.c: Include <unistd.h>.
4552         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
4553         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
4554         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
4555         and HAVE_GETHOSTNAME.
4556         * modules/gethostname (Depends-on): Add unistd.
4557         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4558         (Include): Specify <unistd.h>.
4559         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
4560         HAVE_GETHOSTNAME.
4561         * tests/test-gethostname.c: Include <unistd.h> first.
4562
4563 2008-10-21  Bruno Haible  <bruno@clisp.org>
4564
4565         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
4566         * modules/select-tests (Depends-on): Likewise.
4567         Reported by Simon Josefsson.
4568
4569 2008-10-21  Simon Josefsson  <simon@josefsson.org>
4570
4571         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
4572         * lib/accept.c: New file, based on winsock.c.
4573         * lib/bind.c: New file, based on winsock.c.
4574         * lib/connect.c: New file, based on winsock.c.
4575         * lib/getpeername.c: New file, based on winsock.c.
4576         * lib/getsockname.c: New file, based on winsock.c.
4577         * lib/getsockopt.c: New file, based on winsock.c.
4578         * lib/ioctl.c: New file, based on winsock.c.
4579         * lib/listen.c: New file, based on winsock.c.
4580         * lib/recv.c: New file, based on winsock.c.
4581         * lib/recvfrom.c: New file, based on winsock.c.
4582         * lib/send.c: New file, based on winsock.c.
4583         * lib/sendto.c: New file, based on winsock.c.
4584         * lib/setsockopt.c: New file, based on winsock.c.
4585         * lib/shutdown.c: New file, based on winsock.c.
4586         * lib/socket.c: New file, based on winsock.c.
4587         * lib/w32sock.h: New file, based on winsock.c.
4588         * lib/winsock.c: Remove file.
4589         * modules/accept: Likewise.
4590         * modules/bind: Likewise.
4591         * modules/connect: Likewise.
4592         * modules/getpeername: Likewise.
4593         * modules/getsockname: Likewise.
4594         * modules/getsockopt: Likewise.
4595         * modules/ioctl: Likewise.
4596         * modules/listen: Likewise.
4597         * modules/recv: Likewise.
4598         * modules/recvfrom: Likewise.
4599         * modules/send: Likewise.
4600         * modules/sendto: Likewise.
4601         * modules/setsockopt: Likewise.
4602         * modules/shutdown: Likewise.
4603         * modules/socket: Use socket.c instead of winsock.c.
4604         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
4605         * doc/posix-functions/accept.texi: Doc fix.
4606         * doc/posix-functions/bind.texi: Doc fix.
4607         * doc/posix-functions/close.texi: Doc fix.
4608         * doc/posix-functions/connect.texi: Doc fix.
4609         * doc/posix-functions/getpeername.texi: Doc fix.
4610         * doc/posix-functions/getsockname.texi: Doc fix.
4611         * doc/posix-functions/getsockopt.texi: Doc fix.
4612         * doc/posix-functions/ioctl.texi: Doc fix.
4613         * doc/posix-functions/listen.texi: Doc fix.
4614         * doc/posix-functions/recv.texi: Doc fix.
4615         * doc/posix-functions/recvfrom.texi: Doc fix.
4616         * doc/posix-functions/send.texi: Doc fix.
4617         * doc/posix-functions/sendto.texi: Doc fix.
4618         * doc/posix-functions/setsockopt.texi: Doc fix.
4619         * doc/posix-functions/shutdown.texi: Doc fix.
4620         * doc/posix-functions/socket.texi: Doc fix.
4621
4622 2008-10-20  Bruno Haible  <bruno@clisp.org>
4623
4624         Take into account the role of SIGABRT_COMPAT on Windows 2008.
4625         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
4626         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
4627         as an alias for SIGABRT.
4628         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
4629         (sigaction): Map it to SIGABRT.
4630         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
4631
4632 2008-10-20  Bruno Haible  <bruno@clisp.org>
4633
4634         * lib/fts.c: Don't include lstat.h.
4635         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
4636
4637         Move the lstat() declaration to <sys/stat.h>.
4638         * lib/lstat.h: Remove file.
4639         * lib/sys_stat.in.h: Add special invocation convention.
4640         (lstat): New declaration.
4641         * lib/lstat.c (orig_lstat): New function.
4642         (rpl_lstat): Use orig_lstat instead of lstat.
4643         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
4644         AC_C_INLINE. Set REPLACE_LSTAT.
4645         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
4646         and REPLACE_LSTAT.
4647         * modules/lstat (Files): Remove lib/lstat.h.
4648         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
4649         (Include): Specify <sys/stat.h> instead of lstat.h.
4650         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
4651         REPLACE_LSTAT.
4652         * NEWS: Mention the change.
4653
4654 2008-10-20  Bruno Haible  <bruno@clisp.org>
4655
4656         * modules/posix_spawn-tests: New file.
4657         * tests/test-posix_spawn3.c: New file.
4658
4659 2008-10-20  Bruno Haible  <bruno@clisp.org>
4660
4661         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
4662         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
4663         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
4664         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
4665         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
4666
4667 2008-10-20  Bruno Haible  <bruno@clisp.org>
4668
4669         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
4670         of posix_spawn on AIX 5.3.
4671
4672 2008-10-20  Bruno Haible  <bruno@clisp.org>
4673
4674         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
4675
4676 2008-10-20  Bruno Haible  <bruno@clisp.org>
4677
4678         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
4679         of AC_LANG_PROGRAM.
4680
4681 2008-10-20  Simon Josefsson  <simon@josefsson.org>
4682
4683         * lib/netdb.in.h: Don't define GNU specific constants until they
4684         are supported or needed.  Reported by Bruno Haible
4685         <bruno@clisp.org>.
4686
4687 2008-10-20  Simon Josefsson  <simon@josefsson.org>
4688
4689         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
4690
4691 2008-10-20  Simon Josefsson  <simon@josefsson.org>
4692
4693         * lib/getaddrinfo.h: Remove file.
4694         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
4695         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
4696         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
4697         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
4698         * modules/netdb: Substitute GNULIB_GETADDRINFO.
4699         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
4700         * tests/test-getaddrinfo.c: Likewise.
4701         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
4702         * NEWS: Mention change.
4703
4704 2008-10-19  Bruno Haible  <bruno@clisp.org>
4705
4706         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
4707
4708 2008-10-19  Bruno Haible  <bruno@clisp.org>
4709
4710         * lib/wait-process.c: Include simply <sys/wait.h>.
4711         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
4712         WIFSTOPPED): Remove fallback definitions.
4713         * modules/wait-process (Depends-on): Add sys_wait.
4714
4715         New module 'sys_wait'.
4716         * modules/sys_wait: New file.
4717         * lib/sys_wait.in.h: New file, partially copied from
4718         lib/wait-process.c.
4719         * m4/sys_wait_h.m4: New file.
4720         * doc/posix-headers/sys_wait.texi: Mention the new module.
4721
4722 2008-10-19  Bruno Haible  <bruno@clisp.org>
4723
4724         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
4725
4726 2008-10-19  Bruno Haible  <bruno@clisp.org>
4727
4728         Assume that waitpid() fills an 'int' status, not a 'union wait'.
4729         * lib/wait-process.c (WAIT_T): Remove type.
4730         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
4731         (wait_subprocess): Update.
4732
4733 2008-10-19  Bruno Haible  <bruno@clisp.org>
4734
4735         New module 'atoll'.
4736         * modules/atoll: New file.
4737         * lib/stdlib.in.h (atoll): New declaration.
4738         * lib/atoll.c: New file, from glibc with modifications.
4739         * m4/atoll.m4: New file.
4740         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
4741         HAVE_ATOLL.
4742         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
4743         * doc/posix-functions/atoll.texi: Mention the new module.
4744
4745 2008-10-19  Bruno Haible  <bruno@clisp.org>
4746
4747         Add strtoull() declaration to <stdlib.h>.
4748         * lib/stdlib.in.h (strtoull): New declaration.
4749         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
4750         Set HAVE_STRTOULL.
4751         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
4752         HAVE_STRTOULL.
4753         * modules/strtoull (Depends-on): Add stdlib.
4754         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
4755         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
4756         HAVE_STRTOULL.
4757
4758 2008-10-19  Bruno Haible  <bruno@clisp.org>
4759
4760         Add strtoll() declaration to <stdlib.h>.
4761         * lib/stdlib.in.h (strtoll): New declaration.
4762         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
4763         Set HAVE_STRTOLL.
4764         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
4765         HAVE_STRTOLL.
4766         * modules/strtoll (Depends-on): Add stdlib.
4767         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
4768         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
4769
4770 2008-10-19  Bruno Haible  <bruno@clisp.org>
4771
4772         * modules/bcopy (Depends-on): Add strings.
4773         (Include): Specify <strings.h>.
4774
4775 2008-10-19  Bruno Haible  <bruno@clisp.org>
4776
4777         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
4778
4779 2008-10-19  Bruno Haible  <bruno@clisp.org>
4780
4781         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
4782         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
4783         mingw.
4784
4785 2008-10-19  Bruno Haible  <bruno@clisp.org>
4786
4787         * lib/atanl.c: Don't include isnanl.h.
4788         * lib/cosl.c: Likewise.
4789         * lib/ldexpl.c: Likewise.
4790         * lib/logl.c: Likewise.
4791         * lib/sinl.c: Likewise.
4792         * lib/sqrtl.c: Likewise.
4793         * lib/tanl.c: Likewise.
4794
4795         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
4796         * lib/isnanf.h: Remove file.
4797         * lib/isnand.h: Remove file.
4798         * lib/isnanl.h: Remove file.
4799         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
4800         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
4801         macros.
4802         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
4803         HAVE_ISNANF, don't define it as a C macro.
4804         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
4805         HAVE_ISNAND, don't define it as a C macro.
4806         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
4807         HAVE_ISNANL, don't define it as a C macro.
4808         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
4809         HAVE_ISNAN[FDL].
4810         * modules/isnanf (Files): Remove lib/isnanf.h.
4811         (Depends-on): Add math.
4812         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
4813         (Include): Specify <math.h> instead of isnanf.h.
4814         * modules/isnand (Files): Remove lib/isnand.h.
4815         (Depends-on): Add math.
4816         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
4817         (Include): Specify <math.h> instead of isnand.h.
4818         * modules/isnanl (Files): Remove lib/isnanl.h.
4819         (Depends-on): Add math.
4820         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
4821         (Include): Specify <math.h> instead of isnanl.h.
4822         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
4823         HAVE_ISNAN[FDL].
4824         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
4825         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
4826         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
4827         * NEWS: Mention the change.
4828
4829 2008-10-18  Bruno Haible  <bruno@clisp.org>
4830
4831         Add getusershell(), setusershell(), endusershell() declarations to
4832         <unistd.h>.
4833         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
4834         declarations.
4835         * lib/getusershell.c: Include unistd.h.
4836         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
4837         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
4838         HAVE_GETUSERSHELL.
4839         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
4840         and HAVE_GETUSERSHELL.
4841         * modules/getusershell (Depends-on): Add unistd, extensions.
4842         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4843         (Include): Specify <unistd.h>.
4844         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
4845         HAVE_GETUSERSHELL.
4846
4847 2008-10-18  Bruno Haible  <bruno@clisp.org>
4848
4849         Add a getloadavg() declaration to <stdlib.h>.
4850         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
4851         getloadavg declaration.
4852         (getloadavg): New declaration.
4853         * lib/getloadavg.c: Include <stdlib.h> first.
4854         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
4855         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
4856         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
4857         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
4858         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
4859         * modules/getloadavg (Depends-on): Add stdlib, extensions.
4860         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
4861         (Include): Specify <stdlib.h>.
4862         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
4863         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
4864
4865 2008-10-18  Bruno Haible  <bruno@clisp.org>
4866
4867         * lib/dirchownmod.c: Don't include lchmod.h.
4868
4869         Move the lchmod() declaration to <sys/stat.h>.
4870         * lib/lchmod.h: Remove file.
4871         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
4872         (lchmod): New declaration, moved here from lib/lchown.h.
4873         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
4874         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
4875         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
4876         and HAVE_LCHMOD.
4877         * modules/lchmod (Files): Remove lib/lchmod.h.
4878         (Depends-on): Add sys_stat, extensions.
4879         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
4880         (Include): Specify <sys/stat.h> instead of lchmod.h.
4881         * modules/sys_stat (Depends-on): Add link-warning.
4882         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
4883         definition of GL_LINK_WARNING.
4884         * NEWS: Mention the change.
4885
4886 2008-10-18  Bruno Haible  <bruno@clisp.org>
4887
4888         * lib/fchdir.c: Don't include dirfd.h.
4889         * lib/fts.c: Likewise.
4890         * lib/getcwd.c: Likewise.
4891         * lib/glob.c: Likewise.
4892
4893         Move the dirfd() declaration to <dirent.h>.
4894         * lib/dirfd.h: Remove file.
4895         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
4896         (dirfd): New declaration.
4897         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
4898         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
4899         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
4900         HAVE_DECL_DIRFD.
4901         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
4902         HAVE_DECL_DIRFD.
4903         * modules/dirfd (Files): Remove lib/dirfd.h.
4904         (Depends-on): Add dirent, extensions.
4905         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
4906         (Include): Specify <dirent.h> instead of dirfd.h.
4907         * modules/dirent (Depends-on): Add link-warning.
4908         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
4909         definition of GL_LINK_WARNING.
4910         * NEWS: Mention the change.
4911
4912 2008-10-18  Bruno Haible  <bruno@clisp.org>
4913
4914         Move the euidaccess() declaration to <unistd.h>.
4915         * lib/euidaccess.h: Remove file.
4916         * lib/unistd.in.h (euidaccess): New declaration.
4917         * lib/euidaccess.c: Don't include euidaccess.h.
4918         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
4919         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
4920         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
4921         and HAVE_EUIDACCESS.
4922         * modules/euidaccess (Files): Remove lib/euidaccess.h.
4923         (Depends-on): Add unistd.
4924         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4925         (Include): Specify <unistd.h> instead of euidaccess.h.
4926         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
4927         HAVE_EUIDACCESS.
4928         * NEWS: Mention the change.
4929
4930 2008-10-18  Bruno Haible  <bruno@clisp.org>
4931
4932         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
4933
4934         Move the getdomainname() declaration to <unistd.h>.
4935         * lib/getdomainname.h: Remove file.
4936         * lib/unistd.in.h (getdomainname): New declaration.
4937         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
4938         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
4939         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
4940         HAVE_GETDOMAINNAME.
4941         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
4942         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
4943         * modules/getdomainname (Files): Remove lib/getdomainname.h.
4944         (Depends-on): Add unistd, extensions.
4945         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4946         (Includes): Specify <unistd.h> instead of getdomainname.h.
4947         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
4948         HAVE_GETDOMAINNAME.
4949         * NEWS: Mention the change.
4950
4951 2008-10-18  Bruno Haible  <bruno@clisp.org>
4952
4953         * modules/dirent: New file.
4954         * m4/dirent_h.m4: New file.
4955         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
4956         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
4957         * modules/fchdir (Files): Remove lib/dirent.in.h.
4958         (Depends-on): Add dirent.
4959         (Makefile.am): Move rules to modules/dirent.
4960         * doc/posix-headers/dirent.texi: Mention the new module.
4961
4962 2008-10-18  Bruno Haible  <bruno@clisp.org>
4963
4964         Avoid -Wunused-parameter warnings in public gnulib header files.
4965         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
4966         macro.
4967         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
4968
4969 2008-10-18  Bruno Haible  <bruno@clisp.org>
4970
4971         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
4972         * doc/glibc-functions/error.texi: Mention the module 'error'.
4973         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
4974         * doc/glibc-functions/getdomainname.texi: Mention the module
4975         'getdomainname'.
4976         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
4977         * doc/glibc-functions/getpagesize.texi: Mention the module
4978         'getpagesize'.
4979         * doc/glibc-functions/getusershell.texi: Mention the module
4980         'getusershell'.
4981         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
4982         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
4983         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
4984         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
4985         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
4986         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
4987         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
4988         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
4989         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
4990         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
4991         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
4992         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
4993         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
4994         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
4995
4996 2008-10-17  Bruno Haible  <bruno@clisp.org>
4997
4998         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
4999         HP-UX and IRIX, use -0.0L.
5000         * tests/test-ceill.c (minus_zero): Likewise.
5001         * tests/test-floorl.c (minus_zero): Likewise.
5002         * tests/test-frexpl.c (minus_zero): Likewise.
5003         * tests/test-isnan.c (minus_zerol): Likewise.
5004         * tests/test-isnanl.h (minus_zero): Likewise.
5005         * tests/test-ldexpl.c (minus_zero): Likewise.
5006         * tests/test-roundl.c (minus_zero): Likewise.
5007         * tests/test-signbit.c (minus_zerol): Likewise.
5008         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
5009         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
5010         * tests/test-truncl.c (minus_zero): Likewise.
5011         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
5012         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
5013         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
5014         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
5015
5016 2008-10-17  Bruno Haible  <bruno@clisp.org>
5017
5018         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
5019         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
5020         that it gets activated only for gcc >= 3.0.
5021         * lib/dirent.in.h: Likewise.
5022         * lib/errno.in.h: Likewise.
5023         * lib/fcntl.in.h: Likewise.
5024         * lib/float.in.h: Likewise.
5025         * lib/iconv.in.h: Likewise.
5026         * lib/inttypes.in.h: Likewise.
5027         * lib/locale.in.h: Likewise.
5028         * lib/math.in.h: Likewise.
5029         * lib/netdb.in.h: Likewise.
5030         * lib/netinet_in.in.h: Likewise.
5031         * lib/search.in.h: Likewise.
5032         * lib/signal.in.h: Likewise.
5033         * lib/spawn.in.h: Likewise.
5034         * lib/stdarg.in.h: Likewise.
5035         * lib/stdint.in.h: Likewise.
5036         * lib/stdio.in.h: Likewise.
5037         * lib/stdlib.in.h: Likewise.
5038         * lib/string.in.h: Likewise.
5039         * lib/strings.in.h: Likewise.
5040         * lib/sys_file.in.h: Likewise.
5041         * lib/sys_ioctl.in.h: Likewise.
5042         * lib/sys_select.in.h: Likewise.
5043         * lib/sys_socket.in.h: Likewise.
5044         * lib/sys_stat.in.h: Likewise.
5045         * lib/sys_time.in.h: Likewise.
5046         * lib/sysexits.in.h: Likewise.
5047         * lib/time.in.h: Likewise.
5048         * lib/unistd.in.h: Likewise.
5049         * lib/wchar.in.h: Likewise.
5050         * lib/wctype.in.h: Likewise.
5051         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
5052
5053 2008-10-17  Jim Meyering  <meyering@redhat.com>
5054
5055         ignore-value: don't depend on inline module
5056         * modules/ignore-value (Depends-on): Remove 'inline'.
5057         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
5058         Suggestion from Bruno Haible.
5059
5060 2008-10-17  Bruno Haible  <bruno@clisp.org>
5061
5062         New implementation of condition variables for Win32.
5063         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
5064         (gl_linked_waitqueue_t): New type.
5065         (gl_cond_t): Use it.
5066         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
5067         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
5068         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
5069         (glthread_cond_init_func, glthread_cond_wait_func,
5070         glthread_cond_timedwait_func, glthread_cond_signal_func,
5071         glthread_cond_broadcast_func, glthread_cond_destroy_func):
5072         Reimplemented on the basis of gl_linked_waitqueue_t.
5073         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
5074         gl_waitqueue_t.
5075         (gl_rwlock_t): Update.
5076         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
5077
5078 2008-10-17  Simon Josefsson  <simon@josefsson.org>
5079
5080         * modules/recvfrom (Depends-on): Add dependency on getpeername.
5081         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
5082
5083 2008-10-17  Jim Meyering  <meyering@redhat.com>
5084
5085         ignore-value: new module
5086         * modules/ignore-value: New file.
5087         * lib/ignore-value.h: New file.
5088         * MODULES.html.sh (Compiler warning management): New section,
5089         just for this module.  More to come.
5090
5091 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
5092
5093         open-safer.c: avoid 'signed and unsigned in conditional...' warning
5094         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
5095         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
5096
5097 2008-10-16  Jim Meyering  <meyering@redhat.com>
5098
5099         openat-die.c: avoid 'no previous prototype' warning
5100         * lib/openat-die.c: Include "openat.h".
5101         Reported by Reuben Thomas <rrt@sc3d.org>.
5102
5103 2008-10-16  Simon Josefsson  <simon@josefsson.org>
5104
5105         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
5106         * lib/netdb.in.h: Fix typo.
5107         Reported by Bruno Haible  <bruno@clisp.org>
5108
5109         * lib/netdb.in.h: Include sys/socket.h for platforms without
5110         netdb.h, to get structures like hostent on MinGW.
5111         * modules/netdb (Depends-on): Add sys_socket.
5112
5113 2008-10-15  Simon Josefsson  <simon@josefsson.org>
5114
5115         * modules/netdb, modules/netdb-tests: New file.
5116         * m4/netdb_h.m4: New file.
5117         * lib/netdb.in.h: Add, currently just an empty file pending
5118         definitions.
5119         * tests/test-netdb.c: New file.
5120         * doc/posix-headers/netdb.texi: Mention that we replace it if
5121         needed.
5122         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
5123         netdb.
5124
5125 2008-10-15  Simon Josefsson  <simon@josefsson.org>
5126
5127         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
5128         with code.
5129
5130 2008-10-13  Bruno Haible  <bruno@clisp.org>
5131
5132         * lib/glthread/cond.c (glthread_cond_wait_func,
5133         glthread_cond_timedwait_func): Add a comment.
5134
5135 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
5136
5137         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
5138         * tests/test-select.c: Likewise,
5139
5140 2008-10-13  Bruno Haible  <bruno@clisp.org>
5141
5142         * lib/glthread/cond.c (glthread_cond_wait_func,
5143         glthread_cond_timedwait_func): Fix variable name.
5144         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
5145
5146 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
5147
5148         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
5149         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
5150         struct sockaddr.sa_len.
5151         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
5152
5153 2008-10-13  Simon Josefsson  <simon@josefsson.org>
5154
5155         * build-aux/pmccabe2html: Add css and css_url parameters.
5156
5157 2008-10-12  Bruno Haible  <bruno@clisp.org>
5158
5159         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
5160         calling aclx_get.
5161         Reported by Rainer Tammer <tammer@tammer.net>.
5162
5163 2008-10-12  Bruno Haible  <bruno@clisp.org>
5164
5165         Use msvcrt aware primitives for creation/termination of Win32 threads.
5166         * lib/glthread/thread.c: Include <process.h>.
5167         (glthread_create_func): Use _beginthreadex instead of CreateThread.
5168         (wrapper_func): Update signature.
5169         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
5170
5171 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
5172             Bruno Haible  <bruno@clisp.org>
5173
5174         Provide a Win32 implementation of the 'cond' module.
5175         * lib/glthread/cond.h [USE_WIN32]: New implementation.
5176         * lib/glthread/cond.c (glthread_cond_init_func,
5177         glthread_cond_wait_func, glthread_cond_timedwait_func,
5178         glthread_cond_signal_func, glthread_cond_broadcast_func,
5179         glthread_cond_destroy_func) [USE_WIN32]: New functions.
5180         * modules/cond (Dependencies): Add gettimeofday.
5181
5182 2008-10-11  Bruno Haible  <bruno@clisp.org>
5183
5184         Make sleep work on older versions of mingw.
5185         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
5186         only whether it exists.
5187         * doc/posix-functions/sleep.texi: Mention the problem with older
5188         versions of mingw.
5189
5190 2008-10-11  Bruno Haible  <bruno@clisp.org>
5191
5192         New module 'shutdown'.
5193         * modules/shutdown: New file.
5194         * lib/sys_socket.in.h (shutdown): New declaration.
5195         * lib/winsock.c (shutdown): New function.
5196         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
5197         GNULIB_SHUTDOWN.
5198         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
5199         * doc/posix-functions/shutdown.texi: Document the new module.
5200
5201 2008-10-11  Jim Meyering  <meyering@redhat.com>
5202
5203         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
5204
5205 2008-10-11  Bruno Haible  <bruno@clisp.org>
5206
5207         New module 'fclose'.
5208         * modules/fclose: New file.
5209         * lib/stdio.in.h (fclose): New declaration.
5210         * lib/fclose.c: New file.
5211         * m4/fclose.m4: New file.
5212         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
5213         REPLACE_FCLOSE.
5214         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
5215         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
5216         REPLACE_FCLOSE.
5217         * modules/close (Depends-on): fclose.
5218         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
5219
5220 2008-10-11  Bruno Haible  <bruno@clisp.org>
5221
5222         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
5223         set errno and don't call _close.
5224
5225 2008-10-10  Bruno Haible  <bruno@clisp.org>
5226
5227         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
5228         ACL, not afterwards. Fixes test failure on Cygwin.
5229
5230 2008-10-09  Ben Pfaff  <blp@gnu.org>
5231
5232         * build-aux/announce-gen: Fix gnulib version related part of usage
5233         message.  Die with a useful error message if no tarballs are
5234         found.
5235
5236 2008-10-10  Jim Meyering  <meyering@redhat.com>
5237
5238         bootstrap: use git's --depth=N option only if it's supported
5239         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
5240         recognize the --depth option.  Reported by Pádraig Brady.
5241
5242 2008-10-09  Bruno Haible  <bruno@clisp.org>
5243
5244         New module 'ioctl'.
5245         * modules/ioctl: New file.
5246         * lib/sys_socket.in.h (ioctl): Remove declaration.
5247         * lib/winsock.c: Include <sys/ioctl.h>.
5248         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
5249         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
5250         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
5251         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
5252         * doc/posix-functions/ioctl.texi: Mention the new module.
5253
5254 2008-10-09  Bruno Haible  <bruno@clisp.org>
5255
5256         New module 'sys_ioctl'.
5257         * lib/sys_ioctl.in.h: New file.
5258         * m4/sys_ioctl_h.m4: New file.
5259         * modules/sys_ioctl: New file.
5260         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
5261
5262 2008-10-09  Bruno Haible  <bruno@clisp.org>
5263
5264         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
5265         * lib/winsock.c: Include <stdarg.h>.
5266         (rpl_ioctl): Change to second argument 'int' and then varargs.
5267
5268 2008-10-09  Bruno Haible  <bruno@clisp.org>
5269
5270         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
5271         when the sys_socket module is present and the system has <winsock2.h>.
5272
5273 2008-10-09  Bruno Haible  <bruno@clisp.org>
5274
5275         * doc/posix-functions/close.texi: Mention module 'close' instead of
5276         module 'sys_socket'.
5277
5278 2008-10-09  Bruno Haible  <bruno@clisp.org>
5279
5280         * doc/glibc-headers/sys_ioctl.texi: New file.
5281         * doc/gnulib.texi: Include it.
5282
5283 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
5284             Bruno Haible  <bruno@clisp.org>
5285
5286         Combine the two replacements of 'close'.
5287         * lib/sys_socket.in.h (close): Define to a reminder to include
5288         <unistd.h>.
5289         (_gl_close_fd_maybe_socket): New declaration.
5290         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
5291         * lib/winsock.c (close): Remove undefinition.
5292         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
5293         needed for the gnulib module 'close'.
5294         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
5295         define to an error symbol or to a warning, if suitable.
5296         * lib/close.c: Include <sys/socket.h>.
5297         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
5298         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
5299         UNISTD_H_HAVE_WINSOCK2_H.
5300         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
5301         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
5302         UNISTD_H_HAVE_WINSOCK2_H.
5303         * modules/sys_socket (Files): Add m4/unistd_h.m4.
5304         (configure.ac): Set a module indicator.
5305         (Makefile.am): Substitute GNULIB_CLOSE.
5306         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
5307         * modules/poll-tests (Depends-on): Add close.
5308         * modules/select-tests (Depends-on): Likewise.
5309
5310 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
5311             Bruno Haible  <bruno@clisp.org>
5312
5313         New module 'close'.
5314         * modules/close: New file.
5315         * lib/unistd.in.h (close): Move declaration out of the
5316         FCHDIR_REPLACEMENT scope.
5317         (_gl_unregister_fd): New declaration.
5318         * lib/close.c: New file.
5319         * lib/fchdir.c (rpl_close): Remove function.
5320         * m4/close.m4: New file.
5321         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
5322         close.
5323         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
5324         REPLACE_CLOSE.
5325         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
5326         REPLACE_CLOSE.
5327         * modules/fchdir (Depends-on): Add close.
5328
5329 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
5330             Bruno Haible  <bruno@clisp.org>
5331
5332         * lib/fcntl.in.h (open): Simplify conditionals.
5333         (_gl_register_fd): New declaration.
5334         * lib/fchdir.c (rpl_open): Remove function.
5335         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
5336         also.
5337         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
5338         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
5339         open.
5340
5341 2008-10-09  Jim Meyering  <meyering@redhat.com>
5342
5343         GNUmakefile: use the more name-space-friendly "_version"
5344         * top/GNUmakefile (_dummy): Update.
5345         (_version): Rename from "version".
5346
5347 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
5348             Bruno Haible  <bruno@clisp.org>
5349
5350         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
5351         rpl_close.
5352         (_gl_register_fd): New function, extracted from rpl_open.
5353         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
5354         (rpl_open, rpl_opendir): Use _gl_register_fd.
5355
5356 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
5357
5358         Fix organization of 'open' replacement.
5359         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
5360         (gl_FUNC_OPEN): Use it.
5361         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
5362
5363 2008-10-08  Bruno Haible  <bruno@clisp.org>
5364
5365         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
5366
5367 2008-10-08  Simon Josefsson  <simon@josefsson.org>
5368
5369         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
5370         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
5371         listen).
5372
5373 2008-10-08  Eric Blake  <ebb9@byu.net>
5374
5375         GNUmakefile: add 'make version' target
5376         * top/GNUmakefile (_curr-ver): Split version update rules...
5377         (version): ...into a target.
5378
5379 2008-10-07  Bruno Haible  <bruno@clisp.org>
5380
5381         Use a more portable replacement expression for -0.0L.
5382         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
5383         instead of -0.0L. Fix m4 quotation.
5384
5385         * tests/test-signbit.c: Include <float.h>.
5386         (minus_zero): New variable.
5387         (test_signbitl): Use minus_zero instead of -zero.
5388         * modules/signbit-tests (Depends-on): Add float.
5389
5390         * tests/test-ceill.c: Include <float.h>.
5391         (zero): Remove variable.
5392         (minus_zero): New variable.
5393         (main): Use minus_zero instead of -zero.
5394         * modules/ceill-tests (Depends-on): Add float.
5395
5396         * tests/test-floorl.c: Include <float.h>.
5397         (zero): Remove variable.
5398         (minus_zero): New variable.
5399         (main): Use minus_zero instead of -zero.
5400         * modules/floorl-tests (Depends-on): Add float.
5401
5402         * tests/test-roundl.c: Include <float.h>.
5403         (zero): Remove variable.
5404         (minus_zero): New variable.
5405         (main): Use minus_zero instead of -zero.
5406         * modules/roundl-tests (Depends-on): Add float.
5407
5408         * tests/test-truncl.c: Include <float.h>.
5409         (zero): Remove variable.
5410         (minus_zero): New variable.
5411         (main): Use minus_zero instead of -zero.
5412         * modules/truncl-tests (Depends-on): Add float.
5413
5414         * tests/test-frexpl.c (zero): Remove variable.
5415         (minus_zero): New variable.
5416         (main): Use minus_zero instead of -zero.
5417         * modules/frexpl-tests (Depends-on): Add float.
5418
5419         * tests/test-isnan.c (zerol): Remove variable.
5420         (minus_zerol): New variable.
5421         (test_long_double): Use minus_zerol instead of -zerol.
5422         * modules/isnan-tests (Depends-on): Add float.
5423
5424         * tests/test-isnanl.h (zero): Remove variable.
5425         (minus_zero): New variable.
5426         (main): Use minus_zero instead of -zero.
5427         * modules/isnanl-nolibm-tests (Depends-on): Add float.
5428         * modules/isnanl-tests (Depends-on): Add float.
5429
5430         * tests/test-ldexpl.c (zero): Remove variable.
5431         (minus_zero): New variable.
5432         (main): Use minus_zero instead of -zero.
5433         * modules/ldexpl-tests (Depends-on): Add float.
5434
5435         * tests/test-snprintf-posix.h (zerol): Remove variable.
5436         (minus_zerol): New variable.
5437         (test_function): Use minus_zerol instead of -zerol.
5438         * modules/snprintf-posix-tests (Depends-on): Add float.
5439         * modules/vsnprintf-posix-tests (Depends-on): Add float.
5440
5441         * tests/test-sprintf-posix.h (zerol): Remove variable.
5442         (minus_zerol): New variable.
5443         (test_function): Use minus_zerol instead of -zerol.
5444         * modules/sprintf-posix-tests (Depends-on): Add float.
5445         * modules/vsprintf-posix-tests (Depends-on): Add float.
5446
5447         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
5448         (minus_zerol): New variable.
5449         (test_function): Use minus_zerol instead of -zerol.
5450         * modules/vasnprintf-posix-tests (Depends-on): Add float.
5451
5452         * tests/test-vasprintf-posix.c (zerol): Remove variable.
5453         (minus_zerol): New variable.
5454         (test_function): Use minus_zerol instead of -zerol.
5455         * modules/vasprintf-posix-tests (Depends-on): Add float.
5456
5457 2008-10-07  Simon Josefsson  <simon@josefsson.org>
5458
5459         * MODULES.html.sh (Support for building documentation): Mention
5460         pmccabe2html.  Sort entries.
5461
5462         Add pmccabe2html module, from gnupdf.
5463         * build-aux/pmccabe.css: New file.
5464         * build-aux/pmccabe2html: New file.
5465         * m4/pmccabe2html.m4: New file.
5466         * modules/pmccabe2html: New file.
5467
5468 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
5469
5470         flock: new module
5471         * MODULES.html.sh: Add to list of modules.
5472         * lib/flock.c: flock implementation for Windows and Unix systems
5473         which have fcntl.
5474         * doc/glibc-functions/flock.texi: Update documentation.
5475         * lib/sys_file.in.h: <sys/file.h> header file.
5476         * m4/flock.m4: M4 macros.
5477         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
5478         * modules/flock: flock module.
5479         * modules/flock-tests: flock tests module.
5480         * modules/sys_file: sys/file.h module.
5481         * tests/test-flock.c: test suite for flock.
5482
5483 2008-10-06  Jim Meyering  <meyering@redhat.com>
5484
5485         bootstrap: check for LT_INIT more portably still ;-)
5486         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
5487         Spotted by Bruno Haible.
5488
5489 2008-10-06  Eric Blake  <ebb9@byu.net>
5490
5491         test-signbit: avoid tripping Irix cc bug on -0.0L
5492         * tests/test-signbit.c (minus_zerol): Delete, and replace with
5493         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
5494         entire testsuite consistent and avoids an Irix 6.2 bug.
5495
5496 2008-10-05  Bruno Haible  <bruno@clisp.org>
5497             Jim Meyering  <jim@meyering.net>
5498
5499         Add an option for ignoring EPIPE during close_stdout.
5500         * lib/closeout.h: Include <stdbool.h>.
5501         (close_stdout_set_ignore_EPIPE): New declaration.
5502         * lib/closeout.c: Include <stdbool.h>.
5503         (ignore_EPIPE): New variable.
5504         (close_stdout_set_ignore_EPIPE): New function.
5505         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
5506         * lib/close-stream.c (close_stream): Mention the possible EPIPE
5507         failure.
5508         * modules/closeout (Depends-on): Add stdbool.
5509
5510 2008-10-05  Bruno Haible  <bruno@clisp.org>
5511
5512         * modules/accept: New file.
5513         * modules/bind: New file.
5514         * modules/connect: New file.
5515         * modules/getpeername: New file.
5516         * modules/getsockname: New file.
5517         * modules/getsockopt: New file.
5518         * modules/listen: New file.
5519         * modules/recv: New file.
5520         * modules/recvfrom: New file.
5521         * modules/send: New file.
5522         * modules/sendto: New file.
5523         * modules/setsockopt: New file.
5524         * modules/socket: New file.
5525         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
5526         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
5527         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
5528         the particular module is requested. Add a link warning when the
5529         particular module is not requested.
5530         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
5531         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
5532         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
5533         the particular module is requested.
5534         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
5535         gl_SYS_SOCKET_H_DEFAULTS): New macros.
5536         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
5537         * modules/sys_socket (Depends-on): Add link-warning.
5538         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
5539         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
5540         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
5541         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
5542         GL_LINK_WARNING.
5543         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
5544         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
5545         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
5546         * doc/posix-functions/getpeername.texi: Mention the new module
5547         'getpeername'.
5548         * doc/posix-functions/getsockname.texi: Mention the new module
5549         'getsockname'.
5550         * doc/posix-functions/getsockopt.texi: Mention the new module
5551         'getsockopt'.
5552         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
5553         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
5554         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
5555         * doc/posix-functions/send.texi: Mention the new module 'send'.
5556         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
5557         * doc/posix-functions/setsockopt.texi: Mention the new module
5558         'setsockopt'.
5559         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
5560         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
5561         listen, connect, accept.
5562         * modules/select-tests (Depends-on): Likewise.
5563
5564 2008-10-05  Bruno Haible  <bruno@clisp.org>
5565
5566         * lib/winsock.c (strerror): Remove unused #undef.
5567         (rpl_close): Remove unused local variable.
5568
5569         * modules/sys_socket (Depends-on); Add errno.
5570
5571 2008-10-05  Bruno Haible  <bruno@clisp.org>
5572
5573         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
5574         (select): Add a link warning when the 'select' module is not used.
5575         * modules/sys_select (Depends-on): Add link-warning.
5576         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
5577         Suggested by Paolo Bonzini.
5578
5579 2008-10-05  Jim Meyering  <meyering@redhat.com>
5580
5581         bootstrap: check for LT_INIT more portably
5582         * build-aux/bootstrap: Avoid using grep -E, since it's not
5583         portable enough.  Suggestion from Bruno Haible.
5584
5585 2008-10-05  Bruno Haible  <bruno@clisp.org>
5586
5587         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
5588         as being fixed by gnulib.
5589
5590 2008-10-05  Bruno Haible  <bruno@clisp.org>
5591
5592         * modules/select-tests: New file, mostly copied from
5593         modules/sys_select-tests.
5594         * tests/test-select.c: New file, mostly copied from
5595         tests/test-sys_select.c.
5596         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
5597         * modules/sys_select-tests (Depends-on): Remove all dependencies.
5598         (Makefile.am): Remove test_sys_select_LDADD.
5599
5600         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
5601         to an undefined symbol, for an error message.
5602         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
5603         (gl_SYS_SELECT_H_DEFAULTS): New macro.
5604         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
5605         winsock-select.c here.
5606         * modules/sys_select (Files): Remove lib/winsock-select.c.
5607         (Depends-on): Remove alloca.
5608         (Makefile.am): Substitute GNULIB_SELECT.
5609         * modules/select: New file.
5610         * doc/posix-functions/select.texi: Update.
5611
5612 2008-10-05  Bruno Haible  <bruno@clisp.org>
5613
5614         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
5615         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
5616         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
5617         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
5618         getdtablesize.
5619         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
5620         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
5621
5622 2008-10-05  Bruno Haible  <bruno@clisp.org>
5623
5624         * modules/getdtablesize-tests: New file.
5625         * tests/test-getdtablesize.c: New file.
5626
5627         New module 'getdtablesize'.
5628         * lib/unistd.in.h (getdtablesize): New declaration.
5629         * lib/getdtablesize.c: New file.
5630         * m4/getdtablesize.m4: New file.
5631         * modules/getdtablesize: New file.
5632         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
5633         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
5634         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
5635         HAVE_GETDTABLESIZE.
5636         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
5637
5638 2008-10-05  Bruno Haible  <bruno@clisp.org>
5639
5640         * modules/sched (Makefile.am): Fix typo.
5641         Reported by Simon Josefsson.
5642
5643 2008-10-05  Jim Meyering  <meyering@redhat.com>
5644
5645         bootstrap: check for LT_INIT, too
5646         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
5647         are deprecated.  Suggestion from Ralf Wildenhues.
5648
5649 2008-10-05  Bruno Haible  <bruno@clisp.org>
5650
5651         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
5652         overriding them by ours.
5653         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
5654
5655 2008-10-05  Jim Meyering  <meyering@redhat.com>
5656
5657         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
5658         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
5659         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
5660
5661 2008-10-04  Bruno Haible  <bruno@clisp.org>
5662
5663         * modules/dup2 (License): Change to LGPLv2+.
5664         * modules/sleep (License): Likewise.
5665         * modules/perror (License): Likewise.
5666         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
5667         Blake.
5668         * modules/signal (License): Likewise.
5669         * modules/sigprocmask (License): Likewise.
5670         * modules/raise (License): Change to LGPLv2+, with approval by Jim
5671         Meyering.
5672
5673 2008-10-04  Bruno Haible  <bruno@clisp.org>
5674
5675         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
5676         Reported by Rainer Tammer <tammer@tammer.net>.
5677
5678 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
5679             Bruno Haible  <bruno@clisp.org>
5680
5681         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
5682         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
5683         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
5684
5685 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
5686
5687         filevercmp: new module
5688         * lib/filevercmp.h: New function filevercmp comparing version strings.
5689         * lib/filevercmp.c: Implementation of filevercmp function.
5690         * modules/filevercmp: Module metadata.
5691         * tests/test-filevercmp.c: Unit test for new module.
5692         * modules/filevercmp-tests: Unit test metadata.
5693         * MODULES.html.sh: Add filevercmp module.
5694
5695 2008-10-03  Bruno Haible  <bruno@clisp.org>
5696
5697         * lib/c-ctype.h: Add comment.
5698         Reported by Jim Meyering.
5699
5700 2008-10-02  Bruno Haible  <bruno@clisp.org>
5701
5702         * modules/posix_spawn-internal (Depends-on): Add 'open'.
5703
5704 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
5705
5706         * build-aux/bootstrap: Allow renaming bootstrap, and change the
5707         name of bootstrap.conf accordingly.
5708
5709 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
5710
5711         * build-aux/bootstrap: Install git-merge-changelog configuration
5712         items into .gitconfig if needed.
5713
5714 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
5715
5716         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
5717         git repository, and initialize/update it accordingly.
5718
5719 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
5720
5721         * modules/fsync-tests: New file.
5722         * tests/test-fsync.c: New file.
5723
5724         New module 'fsync'.
5725         * lib/fsync.c: New file.
5726         * m4/fsync.m4: New file.
5727         * modules/fsync: New file.
5728         * lib/unistd.in.h (fsync): New declaration.
5729         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
5730         GNULIB_FSYNC and HAVE_FSYNC.
5731         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
5732         * MODULES.html.sh (posix_functions): Add fsync.
5733         * doc/posix-functions/fsync.texi: Mention the new module.
5734
5735 2008-10-02  Jim Meyering  <meyering@redhat.com>
5736
5737         fts.c: sync with similar code from coreutils' remove.c
5738         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
5739         Guard also with "#if defined __linux__", since for now at least,
5740         this code is Linux-kernel-specific.
5741
5742 2008-10-02  Jim Meyering  <meyering@redhat.com>
5743
5744         fts: bug fixes
5745         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
5746         Include <sys/vfs.h>, not <sys/statfs.h>.
5747
5748         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
5749         Include <sys/vfs.h>, not <sys/statfs.h>.
5750
5751 2008-10-01  Bruno Haible  <bruno@clisp.org>
5752
5753         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
5754         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
5755         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
5756         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
5757         * doc/posix-functions/posix_spawnp.texi: Likewise.
5758         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
5759         whether posix_spawn actually works.
5760         * m4/pipe.m4 (gl_PIPE): Likewise.
5761         * modules/execute (Files): Add m4/posix_spawn.m4.
5762         * modules/pipe (Files): Add m4/posix_spawn.m4.
5763         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
5764
5765 2008-10-01  Jim Meyering  <meyering@redhat.com>
5766
5767         remove trailing spaces
5768         * NEWS: Likewise.
5769         * lib/poll.c (poll): Likewise.
5770         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
5771         * lib/winsock.c (rpl_close): Likewise.
5772         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
5773         * modules/yield: Likewise.
5774         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
5775         * tests/test-sys_select.c (connect_to_socket): Likewise.
5776
5777         fts.c: adjust a new interface to be more generally useful
5778         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
5779         (fts_build): Adjust caller.
5780
5781 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5782
5783         * modules/cond-tests: New file.
5784         * tests/test-cond.c: New file.
5785
5786 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5787             Bruno Haible  <bruno@clisp.org>
5788
5789         * modules/cond (Dependencies): Add errno, time.
5790         * lib/glthread/cond.h: Include <time.h>.
5791         (gl_cond_define, gl_cond_define_initialized): Use the same definition
5792         across platforms.
5793
5794 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5795             Bruno Haible  <bruno@clisp.org>
5796
5797         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
5798
5799 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5800             Bruno Haible  <bruno@clisp.org>
5801
5802         * modules/tls-tests (Depends-on): Add thread, yield.
5803         (configure.ac): Remove all checks.
5804         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
5805         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
5806         gl_thread_self): Remove definitions. Include glthread/thread.h and
5807         glthread/yield.h instead.
5808         (test_tls): Pass an additional NULL argument to gl_thread_join.
5809
5810 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5811             Bruno Haible  <bruno@clisp.org>
5812
5813         * modules/lock-tests (Depends-on): Add thread, yield.
5814         (configure.ac): Remove all checks.
5815         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
5816         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
5817         gl_thread_self): Remove definitions. Include glthread/thread.h and
5818         glthread/yield.h instead.
5819         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
5820         additional NULL argument to gl_thread_join.
5821
5822 2008-09-30  Bruno Haible  <bruno@clisp.org>
5823
5824         Fix the Win32 implementation of the 'thread' module.
5825         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
5826         pointer type.
5827         (gl_thread_self): Invoke gl_thread_self_func.
5828         (gl_thread_self_func): New declaration.
5829         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
5830         (do_init_self_key, init_self_key): New functions.
5831         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
5832         Remove some fields.
5833         (running_threads, running_lock): Remove variables.
5834         (get_current_thread_handle): New function.
5835         (gl_thread_self_func, wrapper_func, glthread_create_func,
5836         glthread_join_func, gl_thread_exit_func): Largely rewritten and
5837         simplified.
5838
5839 2008-09-30  Bruno Haible  <bruno@clisp.org>
5840
5841         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
5842         files.
5843
5844 2008-09-30  Jim Meyering  <meyering@redhat.com>
5845
5846         fts.m4: correct the test for statfs.f_type
5847         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
5848         when checking for statfs.f_type.
5849
5850 2008-09-15  Simon Josefsson  <simon@josefsson.org>
5851
5852         tests: avoid some compiler warnings
5853         * tests/test-memchr.c (main): Pass NULL indirectly.
5854         * tests/test-getdate.c (main): Remove unused variable 'ret'.
5855
5856 2008-09-29  Ondřej Vašík  <ovasik@redhat.com>
5857
5858         getdate.y: disallow countable dayshifts like "4 yesterday ago"
5859         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
5860         exactly specified dayshifts.
5861         (dayshift): New rule.
5862         (rel): Add dayshift.
5863         (relative_time_table) [tomorrow, yesterday, today, now]:
5864         Use tDAY_SHIFT in place of tDAY_UNIT.
5865         * tests/test-getdate.c: Add tests for now-disallowed countable
5866         dayshifts, e.g., "4 yesterday ago".
5867
5868 2008-09-29  Bruno Haible  <bruno@clisp.org>
5869
5870         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
5871         * tests/test-posix_spawn1.in.sh: Renamed from
5872         tests/test-posix_spawn.in.sh.
5873         * tests/test-posix_spawn2.c: New file.
5874         * tests/test-posix_spawn2.in.sh: New file.
5875         * modules/posix_spawnp-tests (Files): Update.
5876         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
5877
5878 2008-09-29  Bruno Haible  <bruno@clisp.org>
5879
5880         Propagate effects of putenv/setenv/unsetenv to child processes.
5881         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
5882         * lib/pipe.c (create_pipe): Likewise.
5883
5884 2008-09-29  Bruno Haible  <bruno@clisp.org>
5885
5886         Enable use of shell scripts as executables in mingw.
5887         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
5888         run the program as a shell script.
5889         * lib/pipe.c (create_pipe): Likewise.
5890         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
5891         resulting array.
5892
5893 2008-09-29  Eric Blake  <ebb9@byu.net>
5894
5895         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
5896
5897 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
5898
5899         * doc/posix-functions/accept.texi: Update mingw problems.
5900         * doc/posix-functions/bind.texi: Update mingw problems.
5901         * doc/posix-functions/close.texi: Update mingw problems.
5902         * doc/posix-functions/connect.texi: Update mingw problems.
5903         * doc/posix-functions/getpeername.texi: Update mingw problems.
5904         * doc/posix-functions/getsockname.texi: Update mingw problems.
5905         * doc/posix-functions/getsockopt.texi: Update mingw problems.
5906         * doc/posix-functions/ioctl.texi: Update mingw problems.
5907         * doc/posix-functions/listen.texi: Update mingw problems.
5908         * doc/posix-functions/recv.texi: Update mingw problems.
5909         * doc/posix-functions/recvfrom.texi: Update mingw problems.
5910         * doc/posix-functions/select.texi: Update mingw problems.
5911         * doc/posix-functions/send.texi: Update mingw problems.
5912         * doc/posix-functions/sendto.texi: Update mingw problems.
5913         * doc/posix-functions/setsockopt.texi: Update mingw problems.
5914         * doc/posix-functions/socket.texi: Update mingw problems.
5915
5916 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
5917             Bruno Haible  <bruno@clisp.org>
5918
5919         * lib/sys_select.in.h: Include sys/time.h.
5920         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
5921         * modules/sys_select: Depend on sys_time.
5922         * tests/test-sys_select.c: Test that sys/select.h defines struct
5923         timeval fully.
5924
5925 2008-09-29  Bruno Haible  <bruno@clisp.org>
5926
5927         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
5928         * lib/sys_select.in.h: Likewise.
5929
5930 2008-09-29  Bruno Haible  <bruno@clisp.org>
5931
5932         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
5933
5934 2008-09-29  Bruno Haible  <bruno@clisp.org>
5935
5936         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
5937         Set LIBSOCKET instead of augmenting LIBS.
5938         * modules/sockets (Link): New section.
5939         * modules/sockets-tests (test_sockets_LDADD): New variable.
5940         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
5941         * modules/poll-tests (test_poll_LDADD): New variable.
5942         * NEWS: Document the change.
5943
5944 2008-09-29  Bruno Haible  <bruno@clisp.org>
5945
5946         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
5947         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
5948         ARPA_INET_H directly.
5949         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
5950
5951 2008-09-28  Bruno Haible  <bruno@clisp.org>
5952
5953         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
5954         from gl_HEADER_SYS_SOCKET.
5955         (gl_HEADER_SYS_SOCKET): Invoke it.
5956         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
5957
5958 2008-09-28  Bruno Haible  <bruno@clisp.org>
5959
5960         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
5961         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
5962         Needed on OSF/1 4.0.
5963
5964 2008-09-28  Bruno Haible  <bruno@clisp.org>
5965
5966         Override open more carefully.
5967         * lib/open.c (orig_open): New function.
5968         (rpl_open): Use orig_open instead of open.
5969         * lib/fcntl.in.h: Add special invocation convention.
5970         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
5971         (gl_FUNC_OPEN): Invoke it.
5972
5973         Override freopen more carefully.
5974         * lib/freopen.c (orig_freopen): New function.
5975         (rpl_freopen): Use orig_freopen instead of freopen.
5976         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
5977         (gl_FUNC_FREOPEN): Invoke it.
5978
5979         Override fopen more carefully.
5980         * lib/fopen.c (orig_fopen): New function.
5981         (rpl_fopen): Use orig_fopen instead of fopen.
5982         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
5983         (gl_FUNC_FOPEN): Invoke it.
5984         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
5985
5986 2008-09-28  Bruno Haible  <bruno@clisp.org>
5987
5988         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
5989         SIGPIPE.
5990
5991 2008-09-28  Bruno Haible  <bruno@clisp.org>
5992
5993         * tests/test-sigaction.c (handler, main): Disable the check whether
5994         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
5995         glibc systems with LinuxThreads.
5996
5997 2008-09-28  Bruno Haible  <bruno@clisp.org>
5998
5999         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
6000
6001         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
6002         with AIX xlc.
6003         * lib/fcntl.in.h (open): Likewise.
6004         Reported by Rainer Tammer <tammer@tammer.net>.
6005
6006 2008-09-28  Bruno Haible  <bruno@clisp.org>
6007
6008         * modules/posix_spawnp-tests: New file.
6009         * tests/test-posix_spawn.c: New file.
6010         * tests/test-posix_spawn.in.sh: New file.
6011
6012         New module 'posix_spawnp'.
6013         * modules/posix_spawnp: New file.
6014         * lib/spawnp.c: New file, from GNU libc with modifications.
6015         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
6016
6017         New module 'posix_spawn'.
6018         * modules/posix_spawn: New file.
6019         * lib/spawn.c: New file, from GNU libc with modifications.
6020         * doc/posix-functions/posix_spawn.texi: Mention the new module.
6021
6022         New module 'posix_spawnattr_destroy'.
6023         * modules/posix_spawnattr_destroy: New file.
6024         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
6025         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
6026         module.
6027
6028         New module 'posix_spawnattr_setsigmask'.
6029         * modules/posix_spawnattr_setsigmask: New file.
6030         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
6031         modifications.
6032         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
6033         new module.
6034
6035         New module 'posix_spawnattr_getsigmask'.
6036         * modules/posix_spawnattr_getsigmask: New file.
6037         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
6038         modifications.
6039         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
6040         new module.
6041
6042         New module 'posix_spawnattr_setsigdefault'.
6043         * modules/posix_spawnattr_setsigdefault: New file.
6044         * lib/spawnattr_setdefault.c: New file, from GNU libc with
6045         modifications.
6046         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
6047         new module.
6048
6049         New module 'posix_spawnattr_getsigdefault'.
6050         * modules/posix_spawnattr_getsigdefault: New file.
6051         * lib/spawnattr_getdefault.c: New file, from GNU libc with
6052         modifications.
6053         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
6054         new module.
6055
6056         New module 'posix_spawnattr_setschedpolicy'.
6057         * modules/posix_spawnattr_setschedpolicy: New file.
6058         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
6059         modifications.
6060         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
6061         new module.
6062
6063         New module 'posix_spawnattr_getschedpolicy'.
6064         * modules/posix_spawnattr_getschedpolicy: New file.
6065         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
6066         modifications.
6067         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
6068         new module.
6069
6070         New module 'posix_spawnattr_setschedparam'.
6071         * modules/posix_spawnattr_setschedparam: New file.
6072         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
6073         modifications.
6074         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
6075         new module.
6076
6077         New module 'posix_spawnattr_getschedparam'.
6078         * modules/posix_spawnattr_getschedparam: New file.
6079         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
6080         modifications.
6081         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
6082         new module.
6083
6084         New module 'posix_spawnattr_setpgroup'.
6085         * modules/posix_spawnattr_setpgroup: New file.
6086         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
6087         modifications.
6088         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
6089         module.
6090
6091         New module 'posix_spawnattr_getpgroup'.
6092         * modules/posix_spawnattr_getpgroup: New file.
6093         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
6094         modifications.
6095         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
6096         module.
6097
6098         New module 'posix_spawnattr_setflags'.
6099         * modules/posix_spawnattr_setflags: New file.
6100         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
6101         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
6102         module.
6103
6104         New module 'posix_spawnattr_getflags'.
6105         * modules/posix_spawnattr_getflags: New file.
6106         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
6107         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
6108         module.
6109
6110         New module 'posix_spawnattr_init'.
6111         * modules/posix_spawnattr_init: New file.
6112         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
6113         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
6114         module.
6115
6116         New module 'posix_spawn_file_actions_destroy'.
6117         * modules/posix_spawn_file_actions_destroy: New file.
6118         * lib/spawn_faction_destroy.c: New file, from GNU libc with
6119         modifications.
6120         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
6121         the new module.
6122
6123         New module 'posix_spawn_file_actions_addopen'.
6124         * modules/posix_spawn_file_actions_addopen: New file.
6125         * lib/spawn_faction_addopen.c: New file, from GNU libc with
6126         modifications.
6127         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
6128         the new module.
6129
6130         New module 'posix_spawn_file_actions_adddup2'.
6131         * modules/posix_spawn_file_actions_adddup2: New file.
6132         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
6133         modifications.
6134         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
6135         the new module.
6136
6137         New module 'posix_spawn_file_actions_addclose'.
6138         * modules/posix_spawn_file_actions_addclose: New file.
6139         * lib/spawn_faction_addclose.c: New file, from GNU libc with
6140         modifications.
6141         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
6142         the new module.
6143
6144         New module 'posix_spawn_file_actions_init'.
6145         * modules/posix_spawn_file_actions_init: New file.
6146         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
6147         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
6148         new module.
6149
6150         New module 'posix_spawn-internal'.
6151         * modules/posix_spawn-internal: New file.
6152         * lib/spawn_int.h: New file, from GNU libc with modifications.
6153         * lib/spawni.c: New file, from GNU libc with modifications.
6154         * m4/posix_spawn.m4: New file.
6155
6156         New module 'spawn'.
6157         * modules/spawn: New file.
6158         * lib/spawn.in.h: New file, from GNU libc with modifications.
6159         * m4/spawn_h.m4: New file.
6160         * doc/posix-headers/spawn.texi: Mention the new module.
6161
6162 2008-09-28  Bruno Haible  <bruno@clisp.org>
6163
6164         * modules/sched-tests: New file.
6165         * tests/test-sched.c: New file.
6166
6167         New module 'sched'.
6168         * modules/sched: New file.
6169         * lib/sched.in.h: New file.
6170         * m4/sched_h.m4: New file.
6171         * doc/posix-headers/sched.texi: Mention the new module.
6172
6173 2008-09-27  Eric Blake  <ebb9@byu.net>
6174
6175         Fix previous patch, and tweak references to $0.
6176         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
6177         (func_version, func_gnulib_dir): Don't call this program
6178         gnulib-tool.
6179         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
6180         with using $0 in function.
6181         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
6182         (func_fatal_error): Reuse the name the user invoked us with.
6183
6184 2008-09-27  Bruno Haible  <bruno@clisp.org>
6185
6186         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
6187         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
6188         (gl_ICONV_H): Not here.
6189         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
6190         instead of assigning ICONV_H directly.
6191
6192         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
6193         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
6194         WCHAR_H directly.
6195
6196 2008-09-27  Bruno Haible  <bruno@clisp.org>
6197
6198         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
6199         * modules/arpa_inet (Depends-on): Add link-warning.
6200         (Makefile.am): Insert the definition of GL_LINK-WARNING.
6201         * modules/unistd (Makefile.am): Likewise.
6202
6203 2008-09-26  Bruno Haible  <bruno@clisp.org>
6204
6205         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
6206         variables.
6207         (func_version): Essentially copied from gnulib-tool.
6208         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
6209         func_readlink): Copied from gnulib-tool.
6210
6211 2008-09-26  Bruno Haible  <bruno@clisp.org>
6212
6213         * gnulib-tool (func_version): Change directory to $gnulib_dir before
6214         invoking git-version-gen.
6215
6216 2008-09-26  Bruno Haible  <bruno@clisp.org>
6217
6218         * posix-modules: Update to directory names changed on 2008-01-19.
6219         Remove commas in output before splitting into words. No more need to
6220         avoid 'ftruncate' since 2007-02-19.
6221
6222 2008-09-26  Bruno Haible  <bruno@clisp.org>
6223
6224         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
6225
6226 2008-09-26  Bruno Haible  <bruno@clisp.org>
6227
6228         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
6229         * modules/fwriteerror (Depends-on): Add errno.
6230
6231 2008-09-26  Bruno Haible  <bruno@clisp.org>
6232
6233         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
6234         * tests/test-vc-list-files-cvs.sh: Likewise.
6235
6236 2008-09-26  Bruno Haible  <bruno@clisp.org>
6237
6238         * doc/posix-headers/sys_resource.texi: Reorder items.
6239
6240 2008-09-26  Jim Meyering  <meyering@redhat.com>
6241
6242         fts: tweak inode comparison function
6243         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
6244         inode numbers, as documented.
6245
6246         fts: sort dirent entries on inode number before traversing
6247         This avoids a quadratic, seek-related performance penalty when
6248         operating on a directory containing many entries (measurable at 10k;
6249         3.5 hours at 2 million entries with a cold cache) on certain types
6250         of file systems, including ext3 and ext4, but not tmpfs.
6251         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
6252         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
6253         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
6254         (fs_handles_readdir_ordered_dirents_efficiently): New function.
6255         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
6256         (fts_build): Set the stat.st_ino member from D_INO.
6257         If it is likely to be useful, sort dirent entries on inode number.
6258
6259         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
6260         and the struct statfs.f_type member.
6261         * modules/fts (Depends-on): Add d-ino.
6262
6263 2008-09-26  Bruno Haible  <bruno@clisp.org>
6264
6265         * modules/sigpipe-die (Depends-on): Add sigpipe.
6266
6267         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
6268         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
6269         and GNULIB_STDIO_H_SIGPIPE are set.
6270         * lib/stdio-write.c: New file.
6271         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
6272         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
6273         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
6274         REPLACE_STDIO_WRITE_FUNCS.
6275         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
6276         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
6277         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
6278         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
6279         * modules/stdio (Files): Add lib/stdio-write.c.
6280         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
6281         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
6282         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
6283         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
6284         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
6285         REPLACE_FPRINTF_POSIX.
6286         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
6287         REPLACE_PRINTF_POSIX.
6288         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
6289         REPLACE_VFPRINTF_POSIX.
6290         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
6291         REPLACE_VPRINTF_POSIX.
6292         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
6293         SIGPIPE issue.
6294         * doc/posix-functions/fputc.texi: Likewise.
6295         * doc/posix-functions/fputs.texi: Likewise.
6296         * doc/posix-functions/fwrite.texi: Likewise.
6297         * doc/posix-functions/printf.texi: Likewise.
6298         * doc/posix-functions/putc.texi: Likewise.
6299         * doc/posix-functions/putchar.texi: Likewise.
6300         * doc/posix-functions/puts.texi: Likewise.
6301         * doc/posix-functions/vfprintf.texi: Likewise.
6302         * doc/posix-functions/vprintf.texi: Likewise.
6303
6304         * modules/safe-write (Depends-on): Add write.
6305
6306         * modules/sigpipe-tests: New file.
6307         * tests/test-sigpipe.c: New file.
6308         * tests/test-sigpipe.sh: New file.
6309
6310         * modules/write: New file.
6311         * lib/unistd.in.h: Include <sys/types.h>.
6312         (write): New declaration.
6313         * lib/write.c: New file.
6314         * m4/write.m4: New file.
6315         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
6316         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
6317         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
6318         GNULIB_WRITE, REPLACE_WRITE.
6319         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
6320         and the SIGPIPE issue.
6321
6322         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
6323         (raise): New declaration.
6324         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
6325         (ext_signal): New function.
6326         (rpl_raise): New function.
6327         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
6328         GNULIB_SIGNAL_H_SIGPIPE.
6329         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
6330         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
6331
6332         * modules/sigpipe: New file.
6333         * m4/sigpipe.m4: New file.
6334
6335 2008-09-25  Derek Price  <derek@ximbiot.com>
6336             Bruno Haible  <bruno@clisp.org>
6337
6338         * gnulib-tool (func_import): Report all license incompatibilities, not
6339         just the first one.
6340
6341 2008-09-25  Bruno Haible  <bruno@clisp.org>
6342
6343         * gnulib-tool (func_import): When computing the edits, consider not
6344         only the Makefile.ams that exist but also those that will be generated.
6345
6346 2008-09-25  Simon Josefsson  <simon@josefsson.org>
6347
6348         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
6349         fixes gnulib-tool --test warning about duplicate dependency.
6350
6351 2008-09-25  Bruno Haible  <bruno@clisp.org>
6352
6353         * gnulib-tool: Don't ask the user to perform edits in the generated
6354         Makefile.ams.
6355         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
6356         apply to the Makefile.am being generated.
6357         (func_emit_tests_Makefile_am): Execute edits that apply to the
6358         Makefile.am being generated.
6359         (func_import): Setup list of Makefile.am edits before emitting the
6360         Makefile.ams, not at the end.
6361         (func_create_testdir): Update.
6362         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
6363
6364 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6365
6366         * gnulib-tool (func_import): Store the --tests-base option in the
6367         comment in gnulib-cache.m4.
6368
6369 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
6370
6371         * NEWS: Document increased portability that sys_select now provides.
6372
6373         * lib/sys_select.in.h: Install select wrapper.
6374         * lib/sys_socket.in.h: Use more descriptive name when there is no
6375         select wrapper.
6376         * lib/winsock-select.c: New.
6377         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
6378         Require gl_HEADER_SYS_SOCKET.
6379         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
6380         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
6381         * tests/test-sys_select.c: Add functional tests.
6382
6383 2008-09-24  Eric Blake  <ebb9@byu.net>
6384
6385         open, fopen: close fd leak in last patch
6386         * lib/open.c (rpl_open): Close fd before returning error.
6387         * lib/fopen.c (rpl_fopen): Close fd before returning error.
6388         * doc/posix-functions/open.texi (open): Document that Irix also
6389         has the bug.
6390         * doc/posix-functions/fopen.texi (fopen): Likewise.
6391         Reported by Paolo Bonzini.
6392
6393 2008-09-24  Bruno Haible  <bruno@clisp.org>
6394
6395         Ensure that a filename ending in a slash cannot be used to access a
6396         non-directory.
6397         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
6398         to check whether it's really a directory.
6399         * lib/fopen.c: Include fcntl.h, unistd.h.
6400         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
6401         and fdopen().
6402         * modules/fopen (Depends-on): Add unistd.
6403         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
6404         * tests/test-fopen.c (main): Likewise.
6405         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
6406         * doc/posix-functions/fopen.texi: Likewise.
6407         Reported by Eric Blake.
6408
6409 2008-09-23  Eric Blake  <ebb9@byu.net>
6410
6411         c-stack: avoid compiler optimizations when provoking overflow
6412         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
6413         recursion harder to optimize, to ensure a stack overflow occurs.
6414         * tests/test-c-stack.c (recurse): Likewise.
6415         Borrowed from libsigsegv.
6416
6417         c-stack: work around Irix sigaltstack bug
6418         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
6419         whether sigaltstack uses wrong end of stack_t (copied in part from
6420         libsigsegv).
6421         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
6422         Irix bug, without requiring an over-allocation.
6423         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
6424         bug.
6425
6426         fopen: document mingw bug on directories
6427         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
6428         not allowing a stream visiting a directory, even though reading
6429         from such a stream is not portable.
6430
6431 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
6432
6433         * lib/poll.c: Rewrite.
6434         * modules/poll: Depend on alloca.
6435
6436 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
6437
6438         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
6439         instead define prototypes for a full set of wrappers.  Ensure
6440         that Cygwin does not use the compatibility code, which is only
6441         for MinGW.
6442         * lib/winsock.c: New.
6443         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
6444         * modules/sys_socket: Add lib/winsock.c.
6445
6446         * modules/poll-tests: Add errno and perror.
6447         * tests/test-poll.c: Use ioctl, not ioctlsocket.
6448
6449 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
6450
6451         * tests/test-poll.c: Downgrade minimum needed Winsock version.
6452
6453 2008-09-23  Bruno Haible  <bruno@clisp.org>
6454
6455         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
6456         * doc/glibc-functions/*: Likewise.
6457
6458 2008-09-23  Simon Josefsson  <simon@josefsson.org>
6459
6460         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
6461         success.
6462
6463 2008-09-22  Eric Blake  <ebb9@byu.net>
6464             Bruno Haible  <bruno@clisp.org>
6465
6466         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
6467         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
6468         supply %A but mishandle pseudo-NaN.
6469         Reported by Simon Josefsson.
6470
6471 2008-09-21  Bruno Haible  <bruno@clisp.org>
6472
6473         * tests/test-lock.c (main): Tweak skip message.
6474         * tests/test-tls.c (main): Likewise.
6475
6476 2008-09-21  Bruno Haible  <bruno@clisp.org>
6477
6478         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
6479         whether 'struct sigaction' has sa_sigaction here...
6480         (gl_PREREQ_SIG_HANDLER_H): ... not here.
6481         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
6482
6483 2008-09-21  Bruno Haible  <bruno@clisp.org>
6484
6485         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
6486         section.
6487         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
6488         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
6489         the new section.
6490         (Support for obsolete systems lacking POSIX:2001): New section.
6491         (String handling <string.h>): Move strdup to the new section.
6492         Suggested by Simon Josefsson and Paolo Bonzini.
6493
6494 2008-09-21  Bruno Haible  <bruno@clisp.org>
6495
6496         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
6497         exponents in %e and %g results on 'long double'. Needed for mingw's
6498         improved *printf functions.
6499         * tests/test-vasprintf-posix.c (test_function): Likewise.
6500         * tests/test-snprintf-posix.h (test_function): Likewise.
6501         * tests/test-sprintf-posix.h (test_function): Likewise.
6502         Reported by Eric Blake.
6503
6504 2008-09-21  Bruno Haible  <bruno@clisp.org>
6505
6506         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
6507         * tests/test-sprintf-posix.h (test_function): Likewise.
6508
6509 2008-09-21  Bruno Haible  <bruno@clisp.org>
6510
6511         * modules/getpass (Depends-on): Add strdup-posix.
6512
6513         New module 'strdup-posix'.
6514         * modules/strdup-posix: New file.
6515         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
6516         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
6517         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
6518         REPLACE_STRDUP.
6519         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
6520         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
6521         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
6522         strdup-posix.
6523
6524         * modules/strdup (Depends-on): Remove malloc-posix.
6525
6526 2008-09-20  Bruno Haible  <bruno@clisp.org>
6527
6528         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
6529         Wildenhues.
6530
6531 2008-09-20  Bruno Haible  <bruno@clisp.org>
6532
6533         Ensure that wint_t gets defined on IRIX 5.3.
6534         * lib/wchar.in.h (wint_t): Define if not defined by the system.
6535         * lib/wctype.in.h (wint_t): Likewise.
6536         (__wctype_wint_t): Remove type.
6537         (isw*): Use wint_t instead of __wctype_wint_t.
6538         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
6539         * modules/wchar (Files): Add m4/wint_t.m4.
6540         (Makefile.am): Substitute HAVE_WINT_T.
6541         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
6542         * tests/test-wctype.c: Check that wint_t is defined.
6543         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
6544         * doc/posix-headers/wctype.texi: Likewise.
6545         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
6546
6547 2008-09-18  Bruno Haible  <bruno@clisp.org>
6548
6549         * gnulib-tool (func_exit): Update comment.
6550
6551 2008-09-18  Simon Josefsson  <simon@josefsson.org>
6552
6553         * modules/getaddrinfo (Depends-on): Remove strdup, this module
6554         assumes strdup exists and does not depend on strdup to return
6555         ENOMEM on out of memory conditions.
6556
6557 2008-09-18  Bruno Haible  <bruno@clisp.org>
6558
6559         * lib/vasnprintf.c (VASNPRINTF): When printing ±0.0L in
6560         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
6561         digits for the exponent.
6562
6563 2008-09-18  Jim Meyering  <meyering@redhat.com>
6564             Bruno Haible  <bruno@clisp.org>
6565
6566         * lib/vasnprintf.c (decimal_point_char): Define also if
6567         NEED_PRINTF_INFINITE_LONG_DOUBLE.
6568
6569 2008-09-16  Bruno Haible  <bruno@clisp.org>
6570         and Eric Blake  <ebb9@byu.net>
6571
6572         vasnprintf: support Irix 5.3
6573         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
6574         that mishandle long double infinity.
6575         Reported by Tom G. Christensen.
6576
6577 2008-09-16  Bruno Haible  <bruno@clisp.org>
6578
6579         * doc/glibc-functions/scandir.texi: Mention the function is missing on
6580         Solaris 9.
6581         * doc/glibc-functions/alphasort.texi: Likewise.
6582         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
6583
6584 2008-09-16  Jim Meyering  <meyering@redhat.com>
6585
6586         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
6587         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
6588         a umask modification leak out of a subshell.  Otherwise, the
6589         opensolaris /bin/sh would be accepted and thus cause unwarranted
6590         failures in the coreutils test suite.
6591
6592 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
6593
6594         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
6595         to succeed.
6596
6597 2008-09-16  Jim Meyering  <meyering@redhat.com>
6598
6599         avoid spurious test failure when library is built without ACL support
6600         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
6601         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
6602         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
6603         * tests/test-copy-acl.sh: Likewise.
6604
6605 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6606
6607         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
6608         based on character occurrence counts.
6609
6610 2008-09-15  Eric Blake  <ebb9@byu.net>
6611
6612         tests: avoid some compiler warnings
6613         * tests/test-memchr.c (main): Pass NULL indirectly.
6614         * tests/test-closein.c (main): Avoid unused variable.
6615
6616 2008-09-15  Bruno Haible  <bruno@clisp.org>
6617
6618         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
6619         are missing on OpenBSD 4.0 individually.
6620         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
6621
6622 2008-09-15  Bruno Haible  <bruno@clisp.org>
6623
6624         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
6625         * doc/posix-functions/strerror.texi: Mention also Cygwin.
6626         * doc/posix-functions/perror.texi: Likewise.
6627         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
6628         is missing.
6629         Reported by Eric Blake.
6630
6631         * lib/errno.in.h: Use replacement values >= 2000.
6632         Reported by Eric Blake.
6633
6634 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6635
6636         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
6637         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
6638         limit.
6639         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
6640         compareseq was aborted.
6641
6642 2008-09-14  Bruno Haible  <bruno@clisp.org>
6643
6644         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
6645         yvec_edit_count.
6646         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
6647         (fstrcmp_bounded): Simplify result computation accordingly.
6648
6649 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6650
6651         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
6652         (fstrcmp): Define in terms of fstrcmp_bounded.
6653         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
6654         lower_bound argument.
6655         Return quickly if the result is certainly < lower_bound.
6656         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
6657
6658 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6659
6660         * lib/diffseq.h (EARLY_ABORT): New macro.
6661         (compareseq): Change return type to bool. Return true when EARLY_ABORT
6662         evaluates to true.
6663
6664 2008-09-14  Bruno Haible  <bruno@clisp.org>
6665
6666         * modules/perror-tests: New file.
6667         * tests/test-perror.sh: New file.
6668         * tests/test-perror.c: New file.
6669
6670         New module 'perror'.
6671         * lib/stdio.in.h (perror): New declaration.
6672         * lib/perror.c: New file.
6673         * m4/perror.m4: New file.
6674         * modules/perror: New file.
6675         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
6676         * doc/posix-functions/perror.texi: Mention the perror module.
6677         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
6678         REPLACE_PERROR.
6679         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
6680         REPLACE_PERROR.
6681
6682 2008-09-14  Bruno Haible  <bruno@clisp.org>
6683
6684         * modules/stdio (Makefile.am): Reorder to match the order in
6685         lib/stdio.in.h.
6686         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
6687
6688 2008-09-13  Bruno Haible  <bruno@clisp.org>
6689
6690         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
6691
6692 2008-09-13  Bruno Haible  <bruno@clisp.org>
6693
6694         Extend strerror to cover the added errno values.
6695         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
6696         (rpl_strerror): Provide error messages for the added errno values and
6697         for the WSA* values.
6698         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
6699         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
6700         strerror.
6701         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
6702         * modules/strerror (Depends-on): Add errno.
6703         * doc/posix-functions/strerror.texi: Document the change.
6704         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
6705         and EOVERFLOW.
6706
6707 2008-09-13  Bruno Haible  <bruno@clisp.org>
6708
6709         * modules/EOVERFLOW: Remove file.
6710         * m4/eoverflow.m4: Remove file.
6711         * modules/EOVERFLOW-tests: Remove file.
6712         * tests/test-EOVERFLOW.c: Remove file.
6713         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
6714         * modules/ftell (Depends-on): Likewise.
6715         * modules/getdelim (Depends-on): Likewise.
6716         * modules/getugroups (Depends-on): Likewise.
6717         * modules/poll (Depends-on): Likewise.
6718         * modules/snprintf (Depends-on): Likewise.
6719         * modules/sprintf-posix (Depends-on): Likewise.
6720         * modules/vasnprintf (Depends-on): Likewise.
6721         * modules/vasprintf (Depends-on): Likewise.
6722         * modules/vfprintf-posix (Depends-on): Likewise.
6723         * modules/vsnprintf (Depends-on): Likewise.
6724         * modules/vsprintf-posix (Depends-on): Likewise.
6725         * modules/xvasprintf (Depends-on): Likewise.
6726         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
6727         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
6728         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
6729         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
6730         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
6731         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
6732         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
6733         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
6734         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
6735         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
6736         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
6737         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
6738         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
6739         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
6740         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
6741         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
6742         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
6743         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
6744         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
6745         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
6746         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
6747         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
6748         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
6749         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
6750         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
6751         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
6752         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
6753         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
6754         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
6755         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
6756         * MODULES.html.sh: Remove EOVERFLOW.
6757         * NEWS: Mention the change.
6758
6759 2008-09-13  Bruno Haible  <bruno@clisp.org>
6760
6761         * modules/errno-tests: New file.
6762         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
6763
6764         * lib/errno.in.h: New file.
6765         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
6766         * modules/errno: New file.
6767         * doc/posix-headers/errno.texi: Update documentation.
6768         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
6769
6770 2008-09-13  Bruno Haible  <bruno@clisp.org>
6771
6772         * tests/test-poll.c: Use #if for native Windows, rather than testing
6773         __MSVCRT__.
6774
6775 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6776             Bruno Haible  <bruno@clisp.org>
6777
6778         * lib/glob.c: Don't include <pwd.h> on native Windows.
6779         (WINDOWS32): New macro.
6780         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
6781
6782 2008-09-13  Bruno Haible  <bruno@clisp.org>
6783
6784         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
6785         (ETIMEDOUT): Remove macro.
6786         (glthread_cond_timedwait_multithreaded): New declaration.
6787         (glthread_cond_timedwait): Use it.
6788         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
6789         (glthread_cond_timedwait_multithreaded): New function.
6790
6791 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
6792
6793         * modules/poll-tests: Do not check for io.h.
6794         * tests/test-poll.c: Check for __MSVCRT__ instead.
6795
6796 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
6797
6798         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
6799         * modules/poll-tests: Add inet_pton, stdbool, sockets.
6800         * tests/test-poll.c: Use them.  Use _pipe on Windows.
6801
6802 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
6803
6804         * modules/poll-tests: New.
6805         * tests/test-poll.c: New.
6806
6807 2008-09-12  Eric Blake  <ebb9@byu.net>
6808
6809         frexp: test for NetBSD failure on -0.0
6810         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
6811         not all, bugs from NetBSD 3.0 have been fixed.
6812         * doc/posix-functions/frexp.texi (frexp): Document bug.
6813         Reported by Thomas Klausner.
6814
6815         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
6816         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
6817         literal -0.0.
6818         Reported by Jonathan C. Patschke <jp@centtech.com>.
6819
6820 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6821
6822         * lib/glthread/cond.h: Use dummy implementation also if
6823         USE_WIN32_THREADS.
6824
6825 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6826
6827         * modules/fnmatch-posix (License): Change to LGPLv2+.
6828         * modules/fnmatch-gnu (License): Likewise.
6829
6830 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6831
6832         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
6833
6834 2008-09-11  Jim Meyering  <meyering@redhat.com>
6835
6836         * users.txt: Add gtk-vnc.
6837
6838 2008-09-08  Simon Josefsson  <simon@josefsson.org>
6839
6840         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
6841         rotate amounts.
6842
6843         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
6844         required for 16-bit and 8-bit rotates.
6845         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
6846         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
6847         UINT8_MAX instead of hard-coded constants.
6848         Suggested by Paul Eggert.
6849
6850 2008-09-07  Bruno Haible  <bruno@clisp.org>
6851
6852         * tests/test-striconveh.c (main): Check behaviour when converting from
6853         UTF-7.
6854
6855         Make striconveh work better with stateful encodings.
6856         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
6857         that iconv does not increment the inptr when returning -1/EINVAL.
6858
6859 2008-09-07  Bruno Haible  <bruno@clisp.org>
6860
6861         * build-aux/config.rpath: Update according to libtool-2.2.6.
6862         * build-aux/config.libpath: Likewise.
6863
6864 2008-09-06  Bruno Haible  <bruno@clisp.org>
6865
6866         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
6867         * lib/freadptr.c (freadptr): Likewise.
6868         * lib/freadseek.c (freadptrinc): Likewise.
6869         Reported by Simon Josefsson.
6870
6871 2008-09-06  Bruno Haible  <bruno@clisp.org>
6872
6873         * modules/freadptr (License): Change to LGPLv2+.
6874         * modules/freadseek (License): Likewise.
6875         Suggested by Eric Blake.
6876
6877         * modules/memchr2 (License): Change to LGPLv2+.
6878         Approved by Eric Blake.
6879
6880 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6881             Bruno Haible  <bruno@clisp.org>
6882
6883         Make gnulib-tool work with native 'sed' on AIX.
6884         * gnulib-tool (sed_noop): New variable.
6885         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
6886         func_add_or_update, func_create_testdir): Use it to initialize sed
6887         script variables.
6888         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6889
6890 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
6891             Bruno Haible  <bruno@clisp.org>
6892
6893         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
6894         also works after #include directives.
6895
6896 2008-09-04  Ondřej Vašík  <ovasik@redhat.com>
6897
6898         getdate.y: reject an out-of-range timezone value
6899         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
6900         the range [-24...+24].  When specified with only one or two digits,
6901         * tests/test-getdate.c: Tests for the fix.
6902         * doc/getdate.texi: Document this change.
6903
6904 2008-09-03  Bruno Haible  <bruno@clisp.org>
6905
6906         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
6907
6908 2008-09-02  Simon Josefsson  <simon@josefsson.org>
6909
6910         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
6911         <bruce.korb@gmail.com> with ideas from Ben Pfaff
6912         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
6913         Blake <ebb9@byu.net>.
6914
6915         * tests/test-bitrotate.c: Add more test vectors.
6916
6917 2008-09-02  Eric Blake  <ebb9@byu.net>
6918
6919         vasnprintf-posix: handle large precision via %.*d
6920         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
6921         when handling it ourselves.
6922         * tests/test-vasnprintf-posix.c (test_function): Add test.
6923         * tests/test-snprintf-posix.h (test_function): Likewise.
6924         * tests/test-sprintf-posix.h (test_function): Likewise.
6925         * tests/test-vasprintf-posix.c (test_function): Likewise.
6926         Reported by Alain Guibert.
6927
6928 2008-09-01  Eric Blake  <ebb9@byu.net>
6929
6930         c-stack: make configure-time check more robust
6931         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
6932         successful sigaction call.
6933         Reported by Tom G. Christensen.
6934
6935 2008-09-01  Bruno Haible  <bruno@clisp.org>
6936
6937         New module 'findprog-lgpl'.
6938         * modules/findprog-lgpl: New file.
6939         * lib/findprog-lgpl.c: New file.
6940         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
6941         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
6942         to decide whether to use strdup or xstrdup, concatenated_filename or
6943         xconcatenated_filename.
6944
6945 2008-09-01  Bruno Haible  <bruno@clisp.org>
6946
6947         Split module 'concat-filename' into 'concat-filename' (LGPL) and
6948         'xconcat-filename' (GPL).
6949         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
6950         (License): Change to LGPLv2+.
6951         * modules/xconcat-filename: New file.
6952         * lib/concat-filename.h (concatenated_filename): Change specification.
6953         (xconcatenated_filename): New declaration.
6954         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
6955         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
6956         memory situations.
6957         * lib/xconcat-filename.c: New file.
6958         * NEWS: Mention the change.
6959         * lib/findprog.c: Include concat-filename.h, not filename.h.
6960         (find_in_path): Use xconcatenated_filename instead of
6961         concatenated_filename.
6962         * lib/javacomp.c: Include concat-filename.h, not filename.h.
6963         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
6964         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
6965         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
6966         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
6967         instead of concatenated_filename.
6968         * lib/javaexec.c: Include concat-filename.h, not filename.h.
6969         (execute_java_class): Use xconcatenated_filename instead of
6970         concatenated_filename.
6971         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
6972         * modules/javacomp (Depends-on): Likewise.
6973         * modules/javaexec (Depends-on): Likewise.
6974
6975 2008-09-01  Bruno Haible  <bruno@clisp.org>
6976
6977         Split module 'filename' into 'filename' and 'concat-filename'.
6978         * modules/filename: Keep only lib/filename.h.
6979         (License): Change to LGPLv2+.
6980         * modules/concat-filename: New file, extracted from modules/filename.
6981         * lib/filename.h (concatenated_filename): Remove declaration.
6982         * lib/concat-filename.h: New file, extracted from lib/filename.h.
6983         * lib/concat-filename.c: Include concat-filename.h.
6984         * NEWS: Mention the change.
6985
6986 2008-09-01  Simon Josefsson  <simon@josefsson.org>
6987
6988         * lib/bitrotate.h (rotl8, rotr8): Add.
6989
6990         * modules/bitrotate (configure.ac): Need
6991         AC_REQUIRE([AC_C_INLINE]).
6992         (Description): Mention stdint.h.  Reported by Bruno Haible
6993         <bruno@clisp.org>.
6994
6995         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
6996         Paolo Bonzini <bonzini@gnu.org>.
6997
6998 2008-08-31  Bruno Haible  <bruno@clisp.org>
6999
7000         Assume Solaris specific bi-arch conventions on Solaris systems.
7001         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
7002         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
7003         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
7004         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
7005         like acl_libdirstem.
7006         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
7007         acl_libdirstem.
7008         * NEWS: Mention the change.
7009         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
7010
7011 2008-08-31  Jim Meyering  <meyering@redhat.com>
7012
7013         * lib/strftime.h: Add comments describing the two added arguments.
7014
7015         remove duplicate #include directives
7016         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
7017         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
7018
7019 2008-08-31  Bruno Haible  <bruno@clisp.org>
7020
7021         New module 'sigpipe-die'.
7022         * modules/sigpipe-die: New file.
7023         * lib/sigpipe-die.h: New file.
7024         * lib/sigpipe-die.c: New file.
7025         * MODULES.html.sh (Signal handling): Add sigpipe-die.
7026
7027 2008-08-31  Bruno Haible  <bruno@clisp.org>
7028
7029         Don't override previously installed signal handlers.
7030         * lib/fatal-signal.c (saved_sigactions): New variable.
7031         (uninstall_handlers): Reset the signal to the saved handler, not
7032         to SIG_DFL (except when ignored).
7033         (install_handlers): Save the previous handlers.
7034
7035 2008-08-30  Bruno Haible  <bruno@clisp.org>
7036
7037         * gnulib-tool (func_reset_sigpipe): New function.
7038         (func_get_automake_snippet, func_modules_transitive_closure,
7039         func_import): Invoke it before a join command that reads from stdin,
7040         to avoid "echo: write error: Broken pipe" error messages on stderr.
7041         Reported by Sam Steingold <sds@gnu.org>.
7042
7043 2008-08-30  Bruno Haible  <bruno@clisp.org>
7044
7045         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
7046         Code copied from m4/open.m4.
7047         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
7048         access and the filename ends in a slash. Code copied from lib/open.c.
7049         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
7050         * tests/test-fopen.c (main): Check against bug with trailing slash.
7051
7052 2008-08-29  Bruno Haible  <bruno@clisp.org>
7053
7054         Avoid some "gcc -pedantic" warnings.
7055         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
7056         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
7057         * lib/dirent.in.h: Likewise.
7058         * lib/fcntl.in.h: Likewise.
7059         * lib/float.in.h: Likewise.
7060         * lib/iconv.in.h: Likewise.
7061         * lib/inttypes.in.h: Likewise.
7062         * lib/locale.in.h: Likewise.
7063         * lib/math.in.h: Likewise.
7064         * lib/netinet_in.in.h: Likewise.
7065         * lib/search.in.h: Likewise.
7066         * lib/signal.in.h: Likewise.
7067         * lib/stdarg.in.h: Likewise.
7068         * lib/stdint.in.h: Likewise.
7069         * lib/stdio.in.h: Likewise.
7070         * lib/stdlib.in.h: Likewise.
7071         * lib/string.in.h: Likewise.
7072         * lib/strings.in.h: Likewise.
7073         * lib/sys_select.in.h: Likewise.
7074         * lib/sys_socket.in.h: Likewise.
7075         * lib/sys_stat.in.h: Likewise.
7076         * lib/sys_time.in.h: Likewise.
7077         * lib/sysexits.in.h: Likewise.
7078         * lib/time.in.h: Likewise.
7079         * lib/unistd.in.h: Likewise.
7080         * lib/wchar.in.h: Likewise.
7081         * lib/wctype.in.h: Likewise.
7082         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
7083         * modules/fchdir (Makefile.am): Likewise.
7084         * modules/fcntl (Makefile.am): Likewise.
7085         * modules/float (Makefile.am): Likewise.
7086         * modules/iconv_open (Makefile.am): Likewise.
7087         * modules/inttypes (Makefile.am): Likewise.
7088         * modules/locale (Makefile.am): Likewise.
7089         * modules/math (Makefile.am): Likewise.
7090         * modules/netinet_in (Makefile.am): Likewise.
7091         * modules/search (Makefile.am): Likewise.
7092         * modules/signal (Makefile.am): Likewise.
7093         * modules/stdarg (Makefile.am): Likewise.
7094         * modules/stdint (Makefile.am): Likewise.
7095         * modules/stdio (Makefile.am): Likewise.
7096         * modules/stdlib (Makefile.am): Likewise.
7097         * modules/string (Makefile.am): Likewise.
7098         * modules/strings (Makefile.am): Likewise.
7099         * modules/sys_select (Makefile.am): Likewise.
7100         * modules/sys_socket (Makefile.am): Likewise.
7101         * modules/sys_stat (Makefile.am): Likewise.
7102         * modules/sys_time (Makefile.am): Likewise.
7103         * modules/sysexits (Makefile.am): Likewise.
7104         * modules/time (Makefile.am): Likewise.
7105         * modules/unistd (Makefile.am): Likewise.
7106         * modules/wchar (Makefile.am): Likewise.
7107         * modules/wctype (Makefile.am): Likewise.
7108         Reported by Reuben Thomas <rrt@sc3d.org>.
7109
7110 2008-08-29  Bruno Haible  <bruno@clisp.org>
7111
7112         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
7113         any more.
7114
7115 2008-08-29  Simon Josefsson  <simon@josefsson.org>
7116
7117         * MODULES.html.sh (Misc): Add bitrotate.
7118
7119         * modules/bitrotate: New file.
7120
7121         * lib/bitrotate.h: New file.
7122
7123         * modules/bitrotate-tests: New file.
7124
7125         * tests/test-bitrotate.c: New file.
7126
7127         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
7128         on the bitrotate module.
7129
7130         * lib/arctwo.c: Use new bitrotate module.
7131
7132 2008-08-29  Jim Meyering  <meyering@redhat.com>
7133
7134         bootstrap: merge changes from coreutils
7135         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
7136         of copied files.  Remove a kludge, now that this is fixed.
7137         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
7138         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
7139         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
7140
7141 2008-08-29  Bruno Haible  <bruno@clisp.org>
7142
7143         * MODULES.html.sh: Remove --cvs-urls option.
7144
7145 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
7146
7147         maint.mk: adjust to file name change
7148         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
7149
7150 2008-08-28  Jim Meyering  <meyering@redhat.com>
7151
7152         * modules/getndelim2 (License): Relicense to LGPLv2+.
7153         Approved by Richard Stallman for the version of 1995, and by
7154         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
7155
7156 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
7157
7158         * lib/getdelim.c (flockfile, funlockfile): Make all of them
7159         dummy if one is not available.  Do not touch them if
7160         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
7161         (getc_maybe_unlocked): New.
7162         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
7163
7164 2008-08-26  Eric Blake  <ebb9@byu.net>
7165
7166         doc/INSTALL: resync from autoconf
7167         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
7168         (INSTALL_PRELUDE): Delete; this is done more efficiently by
7169         moving...
7170         * install.texi [!autoconf]: ...here.  Resync from autoconf.
7171         * INSTALL: Regenerate.
7172         * INSTALL.ISO: New file.
7173         * INSTALL.UTF-8: Likewise.
7174
7175 2008-08-26  Jim Meyering  <meyering@redhat.com>
7176
7177         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
7178         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
7179         these definitions conditional, so that they may be overridden, too.
7180
7181 2008-08-26  Bruno Haible  <bruno@clisp.org>
7182
7183         Generate INSTALL file variants with prettier quotes.
7184         * doc/Makefile (INSTALL_PRELUDE): New macro.
7185         (INSTALL): Use it.
7186         (INSTALL.ISO, INSTALL.UTF-8): New rules.
7187
7188 2008-08-26  Bruno Haible  <bruno@clisp.org>
7189
7190         Run makeinfo in an English locale.
7191         * doc/Makefile (MAKEINFO): New variable.
7192
7193 2008-08-26  Bruno Haible  <bruno@clisp.org>
7194
7195         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
7196         Suggested by Eric Blake.
7197
7198 2008-08-25  Bruno Haible  <bruno@clisp.org>
7199
7200         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
7201
7202 2008-08-25  Eric Blake  <ebb9@byu.net>
7203
7204         c-stack: test that stack overflow can be caught
7205         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
7206         that platform allows handling stack overflow; at least OS/2 EMX
7207         has sigaltstack, but crashes before transferring control to
7208         handler on stack overflow.
7209         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
7210         check for HAVE_STACK_OVERFLOW_HANDLING.
7211         Reported by Elbert Pol.
7212
7213 2008-08-25  Bruno Haible  <bruno@clisp.org>
7214
7215         * doc/posix-functions/strftime.texi: Fix description of strftime
7216         module.
7217
7218 2008-08-24  Bruno Haible  <bruno@clisp.org>
7219
7220         * tests/uniwidth/test-uc_width2.c: New file.
7221         * tests/uniwidth/test-uc_width2.sh: New file.
7222         * modules/uniwidth/width-tests (Files): Add the new files.
7223         (TESTS): Add uniwidth/test-uc_width2.sh.
7224         (TESTS_ENVIRONMENT): New variable.
7225         (check_PROGRAMS): Add test-uc_width2.
7226         (test_uc_width2_SOURCES): New variable.
7227
7228         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
7229         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
7230         not 0x00AB.
7231         Reported by Alexander V. Lukyanov <lav@netis.ru>.
7232
7233 2008-08-22  Eric Blake  <ebb9@byu.net>
7234
7235         test-lock, test-tls: mention why a test is skipped
7236         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
7237         skipped.
7238         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
7239
7240         count-one-bits: relax license
7241         * modules/count-one-bits (License): Relicense to LGPLv2+.
7242         Suggested by Ludovic Courtès, approved by Ben Pfaff.
7243
7244 2008-08-22  Andreas Schwab  <schwab@suse.de>
7245
7246         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
7247         Remove spurious space in assignment.
7248
7249 2008-08-21  Simon Josefsson  <simon@josefsson.org>
7250
7251         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
7252         Paul Eggert <eggert@CS.UCLA.EDU>.
7253
7254 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
7255
7256         * modules/gettext: Add m4/threadlib.m4.
7257
7258 2008-08-19  Eric Blake  <ebb9@byu.net>
7259
7260         test-c-stack: fix compilation failure on FreeBSD 5.0
7261         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
7262         headers before <sys/resource.h>.
7263         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
7264         the bug.
7265         Reported by Nelson H. F. Beebe.
7266
7267         strverscmp: migrate from "strverscmp.h" to <string.h>
7268         * modules/string (Makefile.am): Add new hooks.
7269         * modules/strverscmp (Files): Remove strverscmp.h.
7270         (Depends-on): Add string.
7271         (configure.ac): Add indicator.
7272         (Include): Mention new header.
7273         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
7274         defaults.
7275         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
7276         results.
7277         * lib/strverscmp.h: Delete.
7278         * lib/string.in.h (strverscmp): Provide declaration, when needed.
7279         * tests/test-strverscmp.c (includes): Adjust client.
7280         * lib/check-version.c (includes): Likewise.
7281         * NEWS: Document the change.
7282
7283         strverscmp: add unit test
7284         * modules/strverscmp-tests: New file.
7285         * tests/test-strverscmp.c: Likewise.
7286
7287 2008-08-19  Simon Josefsson  <simon@josefsson.org>
7288
7289         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
7290         regarding Windows crypto stuff, from Mono.
7291
7292 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
7293
7294         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
7295         if present, for intel RND.  Return error on failures.
7296
7297 2008-08-18  Ben Pfaff  <blp@gnu.org>
7298
7299         gitlog-to-changelog: give better diagnostic for failed pipe-open
7300         * build-aux/gitlog-to-changelog: Improve error message: suggest
7301         that the version of Git may be too old.
7302
7303 2008-08-18  Simon Josefsson  <simon@josefsson.org>
7304
7305         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
7306         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
7307
7308 2008-08-18  Bruno Haible  <bruno@clisp.org>
7309
7310         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
7311         pthread_in_use().
7312
7313 2008-08-18  Bruno Haible  <bruno@clisp.org>
7314
7315         * lib/glthread/threadlib.c: Include <pthread.h>.
7316
7317 2008-08-18  Bruno Haible  <bruno@clisp.org>
7318
7319         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
7320         glthread_recursive_lock_* macros.
7321         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
7322         Fix syntax error.
7323
7324 2008-08-18  Bruno Haible  <bruno@clisp.org>
7325
7326         * lib/glthread/thread.c: Avoid forcing a context switch right after
7327         thread creation.
7328
7329 2008-08-17  Bruno Haible  <bruno@clisp.org>
7330
7331         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
7332         * lib/glthread/thread.h: Provide Win32 specific implementation.
7333         * modules/thread (Files): Add lib/glthread/thread.c.
7334         (Depends-on): Add lock.
7335         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
7336
7337 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
7338
7339         New module 'yield'.
7340         * modules/yield: New file.
7341         * lib/glthread/yield.h: New file.
7342         * m4/yield.m4: New file.
7343         * MODULES.html.sh (Multithreading): Add yield.
7344
7345 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
7346
7347         New module 'thread'.
7348         * modules/thread: New file.
7349         * lib/glthread/thread.h: New file.
7350         * m4/thread.m4: New file.
7351         * MODULES.html.sh (Multithreading): Add thread.
7352
7353 2008-08-17  Bruno Haible  <bruno@clisp.org>
7354
7355         * lib/glthread/lock.h: Include <stdlib.h> always.
7356         * lib/glthread/tls.h: Likewise.
7357         * lib/glthread/cond.h: Likewise.
7358
7359 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
7360
7361         New module 'cond'.
7362         * modules/cond: New file.
7363         * lib/glthread/cond.h: New file.
7364         * lib/glthread/cond.c: New file.
7365         * m4/cond.m4: New file.
7366         * MODULES.html.sh (Multithreading): Add cond.
7367
7368 2008-08-16  Eric Blake  <ebb9@byu.net>
7369
7370         c-stack: fix regression on Irix 5.3 from 2008-06-21
7371         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
7372         sa_sigaction...
7373         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
7374         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
7375         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
7376         * modules/signal (Makefile.am): Use the value.
7377         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
7378         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
7379         * doc/posix-headers/signal.texi (signal.h): Document this
7380         portability issue.
7381         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
7382         Reported by Tom G. Christensen.
7383
7384 2008-08-17  Bruno Haible  <bruno@clisp.org>
7385
7386         New module 'threadlib'.
7387         * modules/threadlib: New file.
7388         * lib/glthread/threadlib.c: New file, extracted from
7389         lib/glthread/lock.c.
7390         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
7391         functions.
7392         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
7393         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
7394         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
7395         macros.
7396         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
7397         (gl_DISABLE_THREADS): Remove macro.
7398         * modules/lock (Files): Remove build-aux/config.rpath.
7399         (Depends-on): Remove havelib. Add threadlib.
7400         (configure.ac-early): Remove section.
7401         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
7402         * modules/tls (Depends-on): Remove lock. Add threadlib.
7403         (Link): New section, copied from threadlib.
7404         * MODULES.html.sh (Multithreading): Add threadlib.
7405
7406 2008-08-14  Bruno Haible  <bruno@clisp.org>
7407
7408         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
7409         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
7410         glthread_rwlock_unlock, glthread_rwlock_destroy,
7411         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
7412         glthread_recursive_lock_destroy): Define as macros always.
7413         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
7414         glthread_lock_lock.
7415         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
7416         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
7417         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
7418         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
7419         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
7420         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
7421         (glthread_recursive_lock_lock_func): Renamed from
7422         glthread_recursive_lock_lock.
7423         (glthread_recursive_lock_unlock_func): Renamed from
7424         glthread_recursive_lock_unlock.
7425         (glthread_recursive_lock_destroy_func): Renamed from
7426         glthread_recursive_lock_destroy.
7427
7428 2008-08-14  Bruno Haible  <bruno@clisp.org>
7429
7430         * lib/glthread/lock.h: Renamed from lib/lock.h.
7431         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
7432         * lib/glthread/tls.h: Renamed from lib/tls.h.
7433         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
7434         * lib/fstrcmp.c: Update includes.
7435         * lib/strsignal.c: Update includes.
7436         * modules/lock (Files, Makefile.am): Update.
7437         (Include): Change to "glthread/lock.h".
7438         * modules/tls (Files, Makefile.am): Update.
7439         (Include): Change to "glthread/tls.h".
7440         * tests/test-lock.c: Update includes.
7441         * tests/test-tls.c: Update includes.
7442         * NEWS: Mention the renamed header files.
7443
7444 2008-08-11  Jim Meyering  <meyering@redhat.com>
7445
7446         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
7447
7448 2008-08-11  Eric Blake  <ebb9@byu.net>
7449
7450         test-c-stack: avoid C99-ism
7451         * tests/test-c-stack.c (main): Fix whitespace, move declaration
7452         before statement.
7453         Reported by Alain Guibert.
7454
7455 2008-08-10  Jim Meyering  <meyering@redhat.com>
7456
7457         ensure that return value of uinttostr et al are not ignored
7458         * lib/inttostr.h (__GNUC_PREREQ): Define.
7459         (__attribute_warn_unused_result__): Define.
7460         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
7461
7462 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
7463
7464         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
7465         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
7466
7467 2008-08-07  Jim Meyering  <meyering@redhat.com>
7468
7469         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
7470
7471         * modules/mkstemp (License): Relicense under LGPLv2+.
7472         * modules/tempname (License): Likewise.
7473
7474 2008-08-06  Bruno Haible  <bruno@clisp.org>
7475
7476         * lib/poll.c (poll): Further micro-optimization.
7477
7478 2008-08-06  Jim Meyering  <meyering@redhat.com>
7479
7480         inet_pton.c: use locale-independent tolower
7481         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
7482         (inet_pton6): Use c_tolower rather than tolower.
7483         * modules/inet_pton (Depends-on): Add c-ctype.
7484
7485 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
7486
7487         * lib/poll.c (poll): Avoid division when timeout is 0, cache
7488         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
7489
7490 2008-08-06  Jim Meyering  <meyering@redhat.com>
7491
7492         * modules/inet_pton (License): Relicense under LGPLv2+.
7493
7494 2008-08-03  Bruno Haible  <bruno@clisp.org>
7495
7496         Additional non-aborting API for lock and tls.
7497         * lib/lock.h: Include <errno.h>.
7498         (glthread_lock_init): New macro/function.
7499         (gl_lock_init): Define as wrapper around glthread_lock_init.
7500         (glthread_lock_lock): New macro/function.
7501         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
7502         (glthread_lock_unlock): New macro/function.
7503         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
7504         (glthread_lock_destroy): New macro/function.
7505         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
7506         (glthread_rwlock_init): New macro/function.
7507         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
7508         (glthread_rwlock_rdlock): New macro/function.
7509         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
7510         (glthread_rwlock_wrlock): New macro/function.
7511         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
7512         (glthread_rwlock_unlock): New macro/function.
7513         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
7514         (glthread_rwlock_destroy): New macro/function.
7515         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
7516         (glthread_recursive_lock_init): New macro/function.
7517         (gl_recursive_lock_init): Define as wrapper around
7518         glthread_recursive_lock_init.
7519         (glthread_recursive_lock_lock): New macro/function.
7520         (gl_recursive_lock_lock): Define as wrapper around
7521         glthread_recursive_lock_lock.
7522         (glthread_recursive_lock_unlock): New macro/function.
7523         (gl_recursive_lock_unlock): Define as wrapper around
7524         glthread_recursive_lock_unlock.
7525         (glthread_recursive_lock_destroy): New macro/function.
7526         (gl_recursive_lock_destroy): Define as wrapper around
7527         glthread_recursive_lock_destroy.
7528         (glthread_once): New macro/function.
7529         (gl_once): Define as wrapper around glthread_once.
7530         Update function declarations.
7531         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
7532         glthread_rwlock_init. Return error code.
7533         (glthread_rwlock_rdlock_multithreaded): Renamed from
7534         glthread_rwlock_rdlock. Return error code.
7535         (glthread_rwlock_wrlock_multithreaded): Renamed from
7536         glthread_rwlock_wrlock. Return error code.
7537         (glthread_rwlock_unlock_multithreaded): Renamed from
7538         glthread_rwlock_unlock. Return error code.
7539         (glthread_rwlock_destroy_multithreaded): Renamed from
7540         glthread_rwlock_destroy. Return error code.
7541         (glthread_recursive_lock_init_multithreaded): Renamed from
7542         glthread_recursive_lock_init. Return error code.
7543         (glthread_recursive_lock_lock_multithreaded): Renamed from
7544         glthread_recursive_lock_lock. Return error code.
7545         (glthread_recursive_lock_unlock_multithreaded): Renamed from
7546         glthread_recursive_lock_unlock. Return error code.
7547         (glthread_recursive_lock_destroy_multithreaded): Renamed from
7548         glthread_recursive_lock_destroy. Return error code.
7549         (glthread_once_call): Make static.
7550         (glthread_once_multithreaded): Renamed from glthread_once.
7551         * lib/tls.h: Include <errno.h>.
7552         (glthread_tls_key_init): New macro/function.
7553         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
7554         (glthread_tls_set): New macro/function.
7555         (gl_tls_set): Define as wrapper around glthread_tls_set.
7556         (glthread_tls_key_destroy): New macro/function.
7557         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
7558         Update function declarations.
7559         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
7560         glthread_tls_get.
7561         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
7562
7563 2008-08-04  Eric Blake  <ebb9@byu.net>
7564
7565         gnumakefile: use space, not TAB, outside of targets
7566         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
7567
7568 2008-08-02  Jim Meyering  <meyering@redhat.com>
7569
7570         getdate.y: avoid locale-dependent date parsing failure
7571         In Turkish locales, getdate would fail to recognize keywords
7572         containing a lowercase "i".  The solution is not to rely on
7573         locale-sensitive case-conversion.
7574         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
7575         (lookup_word): Use c_toupper in place of toupper.
7576         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
7577         Reported by Vefa Bicakci <bicave@superonline.com> in
7578         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
7579         * modules/getdate (Depends-on): Add c-ctype.
7580
7581 2008-08-02  Bruno Haible  <bruno@clisp.org>
7582
7583         * gnulib-tool (func_import): When updating or creating a .gitignore
7584         file, prepend each added line with a slash, and ignore leading slashes
7585         from the existing lines.
7586         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
7587
7588 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7589
7590         Portability fix for GNU make 3.79.1.
7591         * top/GNUmakefile: Avoid 'else COND', which older GNU make
7592         versions do not understand.
7593
7594 2008-08-01  Bruno Haible  <bruno@clisp.org>
7595
7596         Work around bug of HP-UX 10.20 cc with -0.0 literal.
7597         * tests/test-isnanf.h (zero): New variable.
7598         (main): Avoid literal -0.0f.
7599         * tests/test-isnand.h (zero): New variable.
7600         (main): Avoid literal -0.0.
7601         * tests/test-isnanl.h (zero): New variable.
7602         (main): Avoid literal -0.0L.
7603         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
7604         (test_float, test_double, test_long_double): Avoid literals -0.0f,
7605         -0.0, -0.0L.
7606         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
7607         (test_signbitd): Avoid literal -0.0.
7608         (test_signbitl): Avoid literal -0.0L.
7609         * tests/test-ceilf1.c (zero): New variable.
7610         (main): Avoid literal -0.0f.
7611         * tests/test-ceill.c (zero): New variable.
7612         (main): Avoid literal -0.0L.
7613         * tests/test-floorf1.c (zero): New variable.
7614         (main): Avoid literal -0.0f.
7615         * tests/test-floorl.c (zero): New variable.
7616         (main): Avoid literal -0.0L.
7617         * tests/test-roundf1.c (zero): New variable.
7618         (main): Avoid literal -0.0f.
7619         * tests/test-round1.c (zero): New variable.
7620         (main): Avoid literal -0.0.
7621         * tests/test-roundl.c (zero): New variable.
7622         (main): Avoid literal -0.0L.
7623         * tests/test-truncf1.c (zero): New variable.
7624         (main): Avoid literal -0.0f.
7625         * tests/test-trunc1.c (zero): New variable.
7626         (main): Avoid literal -0.0.
7627         * tests/test-truncl.c (zero): New variable.
7628         (main): Avoid literal -0.0L.
7629         * tests/test-frexp.c (zero): New variable.
7630         (main): Avoid literal -0.0.
7631         * tests/test-frexpl.c (zero): New variable.
7632         (main): Avoid literal -0.0L.
7633         * tests/test-ldexpl.c (zero): New variable.
7634         (main): Avoid literal -0.0L.
7635         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
7636         (zerod, zerol): New variables.
7637         (test_function): Avoid literals -0.0, -0.0L.
7638         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
7639         (zerod, zerol): New variables.
7640         (test_function): Avoid literals -0.0, -0.0L.
7641         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
7642         (zerod, zerol): New variables.
7643         (test_function): Avoid literals -0.0, -0.0L.
7644         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
7645         (zerod, zerol): New variables.
7646         (test_function): Avoid literals -0.0, -0.0L.
7647         * tests/test-strtod.c (zero): New variable.
7648         (main): Avoid literal -0.0.
7649         Reported by Jonathan C. Patschke <jp@centtech.com>.
7650
7651 2008-07-31  Jim Meyering  <meyering@redhat.com>
7652
7653         sha256.h: correct definition of SHA224_DIGEST_SIZE
7654         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
7655         Reported by Paulie Pena IV <paulie4@gmail.com>.
7656         Define as 224 / 8, rather than as a literal.
7657         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
7658         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
7659         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
7660
7661 2008-07-31  Bruno Haible  <bruno@clisp.org>
7662
7663         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
7664         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
7665         Reported by Jonathan Patschke <jp@centtech.com>.
7666
7667 2008-07-31  Bruno Haible  <bruno@clisp.org>
7668
7669         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
7670         Reported by Paolo Bonzini <bonzini@gnu.org>.
7671
7672 2008-07-30  Eric Blake  <ebb9@byu.net>
7673
7674         test-strtod: allow compilation without -lm
7675         * tests/test-strtod.c (main): Avoid link dependence on fabs.
7676         Reported by Dennis Clarke <blastwave@gmail.com>.
7677
7678 2008-07-28  Jim Meyering  <meyering@redhat.com>
7679
7680         bootstrap: work also when there are no .po files in po/
7681         * build-aux/bootstrap (update_po_files): Complete the change
7682         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
7683
7684 2008-07-27  Jim Meyering  <meyering@redhat.com>
7685
7686         * users.txt: Add zile.
7687
7688 2008-07-26  Ben Pfaff  <blp@gnu.org>
7689
7690         Add missing dependencies on new m4/exponent[fdl].m4 files.
7691         * modules/isnanf-nolibm: Add m4/exponentf.m4.
7692         * modules/isnand-nolibm: Add m4/exponentd.m4.
7693         * modules/isnanl-nolibm: Add m4/exponentl.m4.
7694         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
7695         m4/isnan[fdl].m4, because the macros actually used moved.
7696         Reported by Jim Meyering.
7697
7698 2008-07-14  Ben Pfaff  <blp@gnu.org>
7699
7700         Add isinf module.
7701         * lib/isinf.c: New file.
7702         * lib/math.in.h: Define isinf macro if we have decided to replace
7703         it.
7704         * m4/isinf.m4: New file.
7705         * m4/math_h.m4: Initialize and substitute variables for isinf
7706         module.
7707         * modules/isinf: New file.
7708         * modules/isinf-tests: New file.
7709         * modules/math: Add substitutions for new module.
7710         * tests/test-isinf.c: New file.
7711         * doc/posix-functions/isinf.texi: Mention new module.
7712         * MODULES.html.sh: Mention new module.
7713
7714 2008-07-14  Ben Pfaff  <blp@gnu.org>
7715
7716         Factor out some macros for use by additional modules.
7717         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
7718         exponentf.m4.
7719         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
7720         exponentd.m4.
7721         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
7722         file exponentl.m4.
7723         * m4/exponentf.m4: New file.
7724         * m4/exponentd.m4: New file.
7725         * m4/exponentl.m4: New file.
7726         * modules/isnanf: Use new file m4/exponentf.m4.
7727         * modules/isnand: Use new file m4/exponentd.m4.
7728         * modules/isnanl: Use new file m4/exponentl.m4.
7729
7730 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
7731
7732         mktime.c: normalize tp->tm_isdst value to -1/0/1.
7733         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
7734         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
7735         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
7736
7737         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
7738         readlink on platforms without PATH_MAX.
7739
7740 2008-07-21  Eric Blake  <ebb9@byu.net>
7741
7742         Warn, not fail, on stale version.
7743         * top/GNUmakefile (_curr-ver): Tone down previous patch.
7744
7745         Don't allow installation with stale devel version number.
7746         * top/GNUmakefile (_is-install-target): New macro.
7747         (_curr-ver): Forbid installation with stale version number.
7748
7749 2008-07-20  Bruno Haible  <bruno@clisp.org>
7750
7751         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
7752         TESTS_ENVIRONMENT.
7753         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
7754
7755 2008-07-20  Bruno Haible  <bruno@clisp.org>
7756
7757         * lib/c-stack.h (c_stack_action): Add documentation.
7758         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
7759
7760 2008-07-20  Bruno Haible  <bruno@clisp.org>
7761
7762         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
7763         * modules/readlink (License): Likewise.
7764
7765 2008-07-17  Eric Blake  <ebb9@byu.net>
7766
7767         * modules/c-stack (Link): Fix typo.
7768
7769         Make c-stack use libsigsegv, when available.
7770         * modules/c-stack (Depends-on): Add libsigsegv.
7771         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
7772         needed.
7773         * lib/c-stack.c (SIGSTKSZ): Define fallback.
7774         (segv_handler, overflow_handler, c_stack_action)
7775         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
7776         implementation when libsigsegv is available, but only when using
7777         the library is necessary.
7778         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
7779         comment, explaining why XSI check fails on Linux.
7780         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
7781         * tests/test-c-stack2.sh: Tweak skip message.
7782         * NEWS: Document new link-time requirements.
7783
7784 2008-07-16  Eric Blake  <ebb9@byu.net>
7785
7786         c-stack: Expose false positives when not using libsigsegv.
7787         * modules/c-stack-tests (Files): Expand test.
7788         * tests/test-c-stack.c (main): Add means to conditionally trigger
7789         non-overflow SIGSEGV.
7790         * tests/test-c-stack2.sh: New file.
7791
7792 2008-07-14  Bruno Haible  <bruno@clisp.org>
7793
7794         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
7795         Reported by Eric Blake.
7796
7797 2008-07-14  Sam Steingold  <sds@gnu.org>
7798             Bruno Haible  <bruno@clisp.org>
7799
7800         New module libsigsegv.
7801         * modules/libsigsegv: New file.
7802         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
7803         modifications.
7804         * MODULES.html.sh (Signal handling): New section.
7805
7806 2008-07-14  Bruno Haible  <bruno@clisp.org>
7807
7808         * modules/unictype/ctype-* (Description): Add the word "function".
7809         Improves the resulting doc in MODULES.html.
7810
7811 2008-07-12  Ben Pfaff  <blp@gnu.org>
7812
7813         Add longlong module.
7814         * modules/longlong: New file.
7815
7816 2008-07-12  Bruno Haible  <bruno@clisp.org>
7817
7818         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
7819         to empty.
7820
7821 2008-07-10  Ben Pfaff  <blp@gnu.org>
7822
7823         Add isnan module.
7824         * doc/posix-functions/isnan.texi: Mention new module.
7825         * lib/math.in.h: Define isnan macro if we have decided to replace
7826         it.
7827         * m4/isnan.m4: New file.
7828         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
7829         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
7830         also.
7831         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
7832         redundancy.
7833         * m4/math_h.m4: Initialize and substitute variables for isnan
7834         module.
7835         * modules/isnan: New file.
7836         * modules/isnan-tests: New file.
7837         * modules/math: Add substitutions for new module.
7838         * tests/test-isnan.c: New file.
7839         * MODULES.html.sh: Mention new module.
7840
7841 2008-07-10  Ben Pfaff  <blp@gnu.org>
7842
7843         Add isnanf module.
7844         * lib/isnanf.m4: New file.
7845         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
7846         (gl_HAVE_ISNANF_IN_LIBM): New macro.
7847         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
7848         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
7849         * modules/isnanf: New file.
7850         * modules/isnanf-tests: New file.
7851         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
7852         files.
7853         * tests/test-isnanf-nolibm.c: factored most of its contents into
7854         new file tests/test-isnanf.h.
7855         * tests/test-isnanf.h: New file.
7856         * tests/test-isnanf.c: New file.
7857         * MODULES.html.sh: Mention new module.
7858         * doc/glibc-functions/isnanf.texi: Mention new module.
7859
7860 2008-07-10  Ben Pfaff  <blp@gnu.org>
7861
7862         Add isnand module.
7863         * lib/isnand.h: New file.
7864         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
7865         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
7866         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
7867         functionality also.
7868         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
7869         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
7870         (gl_HAVE_ISNAND_IN_LIBM): New macro.
7871         * modules/isnand: New file.
7872         * modules/isnand-tests: New file.
7873         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
7874         files.
7875         * tests/test-isnand-nolibm.c: factored most of its contents into
7876         new file tests/test-isnand.h.
7877         * tests/test-isnand.h: New file.
7878         * tests/test-isnand.c: New file.
7879         * MODULES.html.sh: Mention new module.
7880
7881 2008-07-10  Ben Pfaff  <blp@gnu.org>
7882
7883         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
7884         * lib/isnand.h: Rename lib/isnand-nolibm.h.
7885         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
7886         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
7887         * modules/isnanf-nolibm: Update references to renamed files.
7888         * modules/isnand-nolibm: Likewise.
7889         * modules/isnanf-nolibm-tests: Likewise.
7890         * modules/isnand-nolibm-tests: Likewise.
7891         * lib/frexp.c: Likewise.
7892         * lib/isfinite.c: Likewise.
7893         * lib/signbitd.c: Likewise.
7894         * lib/signbitf.c: Likewise.
7895         * lib/vasnprintf.c: Likewise.
7896         * tests/test-ceilf1.c: Likewise.
7897         * tests/test-ceilf2.c: Likewise.
7898         * tests/test-floorf1.c: Likewise.
7899         * tests/test-floorf2.c: Likewise.
7900         * tests/test-frexp.c: Likewise.
7901         * tests/test-round1.c: Likewise.
7902         * tests/test-round2.c: Likewise.
7903         * tests/test-roundf1.c: Likewise.
7904         * tests/test-strtod.c: Likewise.
7905         * tests/test-trunc1.c: Likewise.
7906         * tests/test-trunc2.c: Likewise.
7907         * tests/test-truncf1.c: Likewise.
7908         * tests/test-truncf2.c: Likewise.
7909         * NEWS: Mention the renamed header files.
7910
7911 2008-07-11  Jim Meyering  <meyering@redhat.com>
7912
7913         vc-list-files: make the last-resort awk code more portable
7914         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
7915         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
7916         does not support it.
7917
7918 2008-07-10  Eric Blake  <ebb9@byu.net>
7919
7920         Work with tar's bootstrap.
7921         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
7922         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
7923         an m4 comment.
7924
7925 2008-07-09  Jim Meyering  <meyering@redhat.com>
7926
7927         posix-shell.m4: fix typo that made this test malfunction
7928         * m4/posix-shell.m4: Remove capitalization in variable name.
7929
7930 2008-07-08  Bruno Haible  <bruno@clisp.org>
7931
7932         * m4/onceonly.m4: Update comments.
7933         Reported by Ben Pfaff <blp@cs.stanford.edu>.
7934
7935 2008-07-04  Jim Meyering  <meyering@redhat.com>
7936
7937         * users.txt: Add vc-dwim.
7938         (bison, coreutils): Use the gitweb URL.
7939
7940 2008-07-03  Jim Meyering  <meyering@redhat.com>
7941
7942         * users.txt: Add libffcall.  From Sam Steingold.
7943
7944 2008-07-03  Ondřej Vašík  <ovasik@redhat.com>
7945
7946         getdate.y: do not ignore TZ with relative day, month or year offset
7947         * lib/getdate.y (get_date): Move the tz-handling block to follow the
7948         relative-date-handling, since otherwise, the latter would clobber the
7949         sole output (an updated Start value) of the tz-handling block.
7950         * tests/test-getdate.c: Tests for the fix
7951
7952 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7953
7954         Recognize 'foo_LIBRARIES += libgnu.a'.
7955         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
7956         makefile snippet has already specified an installation location,
7957         also using '+='.
7958
7959 2008-07-02  Ondřej Vašík  <ovasik@redhat.com>
7960
7961         getdate.y: factor out common actions
7962         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
7963         Use them in place of open-coded actions.
7964
7965 2008-07-01  Simon Josefsson  <simon@josefsson.org>
7966
7967         Add self-test for getdate module.
7968         * modules/getdate-tests: New file.
7969         * tests/test-getdate.c: New file.
7970
7971 2008-06-29  Bruno Haible  <bruno@clisp.org>
7972
7973         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
7974         .gitignore.
7975         Reported by Sylvain Beucler <beuc@beuc.net>.
7976
7977 2008-06-29  Bruno Haible  <bruno@clisp.org>
7978
7979         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
7980         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
7981
7982 2008-06-29  Bruno Haible  <bruno@clisp.org>
7983
7984         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
7985         EXTRA_DIST.
7986         Reported by Sylvain Beucler <beuc@beuc.net>.
7987
7988 2008-06-26  Jim Meyering  <meyering@redhat.com>
7989
7990         make several modules depend on the "open" module
7991         This provides slightly increased consistency when opening-for-write
7992         the name of a non-directory spelled with a trailing slash.
7993         * modules/chdir-safer: Likewise.
7994         * modules/chown: Likewise.
7995         * modules/clean-temp: Likewise.
7996         * modules/copy-file: Likewise.
7997         * modules/fchdir: Likewise.
7998         * modules/fcntl-safer: Likewise.
7999         * modules/pipe: Likewise.
8000         * modules/utime: Likewise.
8001         Prompted by Eric Blake and Bruno Haible.
8002
8003 2008-06-24  Andreas Schwab  <schwab@suse.de>
8004
8005         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
8006         literals can be used as initializers for global variables.
8007
8008 2008-06-23  Eric Blake  <ebb9@byu.net>
8009
8010         Make gnulib-cache.m4 easier to diff.
8011         * gnulib-tool (func_import): Allow newlines when reading cached
8012         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
8013
8014 2008-06-23  Bruno Haible  <bruno@clisp.org>
8015
8016         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
8017         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
8018         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
8019         m4/signalblocking.m4.
8020         (gl_PREREQ_SIGACTION): Don't invoke it.
8021         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
8022         gl_PREREQ_SIG_HANDLER_H.
8023         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
8024         Don't check for sigaction here.
8025
8026 2008-06-23  Bruno Haible  <bruno@clisp.org>
8027
8028         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
8029         (install_handlers): Don't set the SA_RESETHAND flag.
8030
8031 2008-06-23  Bruno Haible  <bruno@clisp.org>
8032
8033         * m4/sigaction.m4: Comment fixes.
8034         * lib/signal.in.h: Likewise.
8035
8036 2008-06-23  Eric Blake  <ebb9@byu.net>
8037
8038         Fix typo.
8039         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
8040
8041         Avoid SA_ namespace.
8042         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
8043         Reported by Ralf Wildenhues.
8044
8045         Avoid test failure due to SA_RESTORER.
8046         * tests/test-sigaction.c (SA_MASK): New macro.
8047         (main): Avoid failing due to extension flags being set.
8048         Reported by Jim Meyering.
8049
8050         Revert use of sig-handler.h in sigprocmask.c.
8051         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
8052         it requires the existence of struct sigaction.
8053         * lib/sigprocmask.c (handler_t): Restore typedef.
8054         (rpl_signal, old_handlers): Use local type.
8055
8056 2008-06-22  Bruno Haible  <bruno@clisp.org>
8057
8058         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
8059         conditionally.
8060         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
8061
8062 2008-06-22  Bruno Haible  <bruno@clisp.org>
8063
8064         * doc/posix-functions/siginterrupt.texi: Move note.
8065
8066         * lib/signal.in.h (SA_RESTART): New macro.
8067         * lib/sigaction.c: Update comment.
8068
8069         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
8070
8071         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
8072         (gl_PREREQ_SIGPROCMASK): Invoke it.
8073         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
8074
8075         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
8076
8077         * lib/sigprocmask.c: Update a comment.
8078
8079 2008-06-21  Eric Blake  <ebb9@byu.net>
8080
8081         Use sigaction module rather than signal().
8082         * modules/c-stack (Depends-on): Add sigaction.
8083         * modules/fatal-signal (Depends-on): Likewise.
8084         * modules/nanosleep (Depends-on): Likewise.
8085         * modules/sigprocmask (Files): Add sig-handler.h.
8086         * modules/sigaction (Files): Likewise.
8087         * lib/sig-handler.h (get_handler): New file, suggested by Paul
8088         Eggert.
8089         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
8090         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
8091         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
8092         (init_fatal_signals): Likewise.
8093         * lib/nanosleep.c (rpl_nanosleep): Likewise.
8094         (siginterrupt): Delete fallback.
8095         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
8096         instead.
8097         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
8098         siginterrupt.
8099
8100         New module sigaction, for mingw.
8101         * modules/sigaction: New module...
8102         * modules/sigaction-tests: ...and its test.
8103         * m4/sigaction.m4: New file.
8104         * lib/sigaction.c: Likewise.
8105         * tests/test-sigaction.c: Likewise.
8106         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
8107         * modules/signal (Makefile.am): Likewise.
8108         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
8109         needed.
8110         * doc/posix-headers/signal.texi (signal.h): Mention provided
8111         types.
8112         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
8113         that sigaction is preferable.
8114         * doc/posix-functions/sigaction.texi (sigaction): Mention new
8115         module.
8116         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
8117         sigaction.
8118
8119         Improve robustness of sigprocmask by overriding signal.
8120         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
8121         is in use.
8122         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
8123         (SIGKILL, SIGSTOP): Provide fallbacks.
8124         (rpl_signal): Implement.
8125         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
8126         signal can be called inside handlers.
8127
8128         Fix nanosleep module on mingw.
8129         * modules/nanosleep (Depends-on): Add sys_select.
8130         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
8131
8132         Fix licensing of sigprocmask.
8133         * modules/raise (License): Relicense as LGPL.
8134
8135 2008-06-21  Bruno Haible  <bruno@clisp.org>
8136
8137         * lib/propername.c (proper_name_utf8): Don't use the transliterated
8138         result if it contains question marks.
8139         Reported by Michael Geng <linux@michaelgeng.de>.
8140
8141 2008-06-19  Bruno Haible  <bruno@clisp.org>
8142
8143         Fix CVS-ism.
8144         * doc/gnulib.texi: Include updated-stamp.texi.
8145         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
8146         (updated-stamp.texi): New rule.
8147         (gnulib.info): Depend on it.
8148         * doc/.gitignore: Add updated-stamp.texi.
8149         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
8150
8151 2008-06-19  Bruno Haible  <bruno@clisp.org>
8152
8153         * doc/Makefile (gnulib.info): Update and simplify dependencies.
8154         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
8155
8156 2008-06-19  Eric Blake  <ebb9@byu.net>
8157
8158         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
8159         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
8160         Reported by Stepan Kasal.
8161
8162 2008-06-18  Bruno Haible  <bruno@clisp.org>
8163
8164         * lib/fatal-signal.c (init_fatal_signals): Add comment.
8165         Reported by Eric Blake.
8166
8167 2008-06-18  Eric Blake  <ebb9@byu.net>
8168
8169         Work around cygwin 1.5.25 strsignal bug.
8170         * tests/test-strsignal.c: Allow for const char *.
8171         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
8172
8173 2008-06-18  Simon Josefsson  <simon@josefsson.org>
8174
8175         * users.txt: Update URL to article and add author/date
8176         information.
8177
8178 2008-06-17  Bruno Haible  <bruno@clisp.org>
8179
8180         New macro gl_DISABLE_THREADS.
8181         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
8182         if the user did not pass --enable-threads or --disable-threads option.
8183         (gl_DISABLE_THREADS): New macro.
8184         Reported by Eric Blake <ebb9@byu.net>.
8185
8186 2008-06-17  Bruno Haible  <bruno@clisp.org>
8187
8188         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
8189         when the macro ignores it.
8190         Based on a patch by Eric Blake <ebb9@byu.net>.
8191
8192 2008-06-17  Bruno Haible  <bruno@clisp.org>
8193
8194         * modules/tls (License): Change to LGPLv2+.
8195         Reported by Eric Blake.
8196
8197 2008-06-17  Eric Blake  <ebb9@byu.net>
8198
8199         Simplify c-stack prerequisites.
8200         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
8201         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
8202         no longer requires <ucontext.h> to exist.  Optimize setrlimit
8203         check.
8204         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
8205         <sys/resource.h>.
8206
8207         Move c-stack test into testsuite.
8208         * modules/c-stack-tests: New file.
8209         * lib/c-stack.c [DEBUG]: Move test program...
8210         * tests/test-c-stack.c: ...into this new file.  Skip rather than
8211         fail test if sigaltstack is lacking.
8212         * tests/test-c-stack.sh: New driver file.
8213
8214 2008-06-16  Eric Blake  <ebb9@byu.net>
8215
8216         Use raise module consistently.
8217         * modules/fatal-signal (Depends-on): Add raise.
8218         * modules/sigprocmask (Depends-on): Likewise.
8219         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
8220         * lib/sigprocmask.c (sigprocmask): Likewise.
8221         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
8222         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
8223
8224         Fix compliance bug in sigpending.
8225         * lib/sigprocmask.c (sigpending): Return pending array via
8226         parameter, not return value.
8227
8228 2008-06-14  Eric Blake  <ebb9@byu.net>
8229
8230         Improve obstack-printf test code.
8231         * tests/test-obstack-printf.c (test_function): Fix comment, and
8232         simplify usage of obstack_* in macros.  Add a test for coverage.
8233         Reported by Bruno Haible.
8234
8235 2008-06-14  Bruno Haible  <bruno@clisp.org>
8236
8237         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
8238         array size as a constant, not as a const variable.
8239         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
8240         AC_USE_SYSTEM_EXTENSIONS.
8241         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
8242         Test whether the obstack_printf function actually exists.
8243         * modules/obstack-printf (Depends-on): Add extensions.
8244         (Include): Remove obstack.h.
8245         * modules/obstack-printf-posix (Depends-on): Add extensions.
8246         (Include): Remove obstack.h.
8247
8248 2008-06-13  Eric Blake  <ebb9@byu.net>
8249
8250         Add obstack-printf and obstack-printf-posix modules.
8251         * modules/obstack-printf: New file.
8252         * modules/obstack-printf-posix: Likewise.
8253         * MODULES.html.sh (Misc): Mention them.
8254         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
8255         Likewise.
8256         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
8257         Likewise.
8258         * modules/stdio (Makefile.am): Accomodate new modules.
8259         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
8260         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
8261         Declare.
8262         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
8263         functions.
8264         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
8265         (gl_REPLACE_OBSTACK_PRINTF): New macros
8266         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
8267         * tests/test-obstack-printf.c: New file.
8268         * modules/obstack-printf-tests: Likewise.
8269         * modules/obstack-printf-posix-tests: Likewise.
8270
8271 2008-06-11  Bruno Haible  <bruno@clisp.org>
8272
8273         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
8274         * lib/open.c: Include errno.h.
8275         (open): Fail when attempting to write to a file that has a trailing
8276         slash.
8277         * tests/test-open.c (main): Test against trailing slash bug.
8278         * doc/posix-functions/open.texi: Mention the trailing slash bug.
8279
8280 2008-06-10  Bruno Haible  <bruno@clisp.org>
8281
8282         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
8283         for $? to work inside the trap command, with various /bin/sh-s.
8284         * tests/test-vc-list-files-cvs.sh: Likewise.
8285
8286 2008-06-10  Bruno Haible  <bruno@clisp.org>
8287
8288         * lib/acl-internal.h: Don't include gettext.h here.
8289         * lib/set-mode-acl.c: Include gettext.h here.
8290         * lib/copy-acl.c: Likewise.
8291
8292 2008-06-10  Bruno Haible  <bruno@clisp.org>
8293
8294         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
8295         * lib/wait-process.c (wait_subprocess): Likewise.
8296         * lib/execute.h (execute): Add termsigp argument.
8297         * lib/execute.c (execute): Likewise.
8298         * lib/csharpcomp.c (compile_csharp_using_pnet,
8299         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
8300         * lib/csharpexec.c (execute_csharp_using_pnet,
8301         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
8302         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
8303         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
8304         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
8305         is_jikes_present): Update.
8306         * lib/javaexec.c (execute_java_class): Update.
8307         * lib/javaversion.c (execute_and_read_line): Update.
8308         * NEWS: Document the changes.
8309         Reported by Eric Blake.
8310
8311 2008-06-10  Eric Blake  <ebb9@byu.net>
8312
8313         Add missing include.
8314         * tests/test-strstr.c (includes): Add <signal.h>.
8315         * tests/test-strcasestr.c (includes): Likewise.
8316         * tests/test-memmem.c (includes): Likewise.
8317
8318 2008-06-10  Bruno Haible  <bruno@clisp.org>
8319
8320         * lib/wait-process.c (wait_subprocess): Add an assertion.
8321
8322 2008-06-10  Bruno Haible  <bruno@clisp.org>
8323
8324         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
8325
8326 2008-06-10  Bruno Haible  <bruno@clisp.org>
8327
8328         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
8329         using alarm().
8330         * tests/test-strcasestr.c (main): Likewise.
8331         * tests/test-strstr.c (main): Likewise.
8332
8333 2008-06-09  Bruno Haible  <bruno@clisp.org>
8334
8335         Work around the Solaris 10 ACE ACLs ABI change.
8336         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
8337         declare if ACL_NO_TRIVIAL is present.
8338         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
8339         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
8340         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
8341         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
8342         define if ACL_NO_TRIVIAL is present.
8343         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
8344         and use the current ABI.
8345         (file_has_acl): Use same #if condition as elsewhere.
8346         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
8347         in use, and use the current ABI.
8348         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
8349         Reported by Jim Meyering.
8350
8351 2008-06-09  Eric Blake  <ebb9@byu.net>
8352
8353         Work around environments that (stupidly) ignore SIGALRM.
8354         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
8355         before using alarm().
8356         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8357         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
8358         Reported by Ian Beckwith <ianb@erislabs.net>.
8359
8360         Produce autobuild blurb earlier in log.
8361         * modules/autobuild (configure.ac-early): Move AB_INIT here.
8362
8363 2008-06-09  Jim Meyering  <meyering@redhat.com>
8364         and Ondřej Vašík  <ovasik@redhat.com>
8365
8366         utimens.c: correct kernel bug work-around
8367         Ondřej Vašík found that the invalid return value of 280 indicates
8368         failure, not success, and the kernel bug we're trying to work
8369         around affects not just the utimensat call, but also the fallback
8370         futimens call.
8371         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
8372         not success.
8373         [HAVE_FUTIMENS]: Use the same work-around, here.
8374
8375 2008-06-09  Jim Meyering  <meyering@redhat.com>
8376
8377         add more guards around definition of ACE_-related code
8378         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
8379         ALLOW and ACE_OWNER are also defined.
8380
8381 2008-06-08  Bruno Haible  <bruno@clisp.org>
8382
8383         * lib/acl-internal.h: Add me as co-author.
8384         * lib/file-has-acl.c: Likewise.
8385         * lib/set-mode-acl.c: Likewise.
8386         * lib/copy-acl.c: Likewise.
8387
8388 2008-06-08  Bruno Haible  <bruno@clisp.org>
8389
8390         Add support for AIX ACLs.
8391         * lib/acl-internal.h (acl_nontrivial): New declaration.
8392         * lib/file-has-acl.c (acl_nontrivial): New function.
8393         (file_has_acl): Add implementation using AIX 4 ACL API.
8394         * lib/set-mode-acl.c (qset_acl): Likewise.
8395         * lib/copy-acl.c (qcopy_acl): Likewise.
8396
8397 2008-06-08  Bruno Haible  <bruno@clisp.org>
8398
8399         Add support for HP-UX ACLs.
8400         * lib/acl-internal.h (acl_nontrivial): New declaration.
8401         * lib/file-has-acl.c (acl_nontrivial): New function.
8402         (file_has_acl): Add implementation using HP-UX 11 ACL API.
8403         * lib/set-mode-acl.c (qset_acl): Likewise.
8404         * lib/copy-acl.c (qcopy_acl): Likewise.
8405
8406 2008-06-08  Bruno Haible  <bruno@clisp.org>
8407
8408         Add support for Cygwin ACLs.
8409         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
8410         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
8411         the chmod_or_fchmod call.
8412         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
8413
8414 2008-06-08  Bruno Haible  <bruno@clisp.org>
8415
8416         Fix bug with setuid modes in Solaris 10+ code.
8417         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
8418         succeeded, when the mode contains some special bits.
8419
8420 2008-06-08  Bruno Haible  <bruno@clisp.org>
8421
8422         Add support for Solaris 7..10 ACLs.
8423         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
8424         declarations.
8425         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
8426         functions.
8427         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
8428         * lib/set-mode-acl.c (qset_acl): Likewise.
8429         * lib/copy-acl.c (qcopy_acl): Likewise.
8430
8431 2008-06-08  Bruno Haible  <bruno@clisp.org>
8432
8433         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
8434         declaration.
8435         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
8436         (acl_access_nontrivial): Remove MacOS X case.
8437         (file_has_acl): Use acl_extended_nontrivial.
8438         * lib/copy-acl.c (qcopy_acl): Likewise.
8439
8440 2008-06-08  Bruno Haible  <bruno@clisp.org>
8441
8442         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
8443
8444 2008-06-08  Jim Meyering  <meyering@redhat.com>
8445
8446         * modules/acl (Maintainer): Add Bruno Haible.
8447
8448 2008-06-07  Bruno Haible  <bruno@clisp.org>
8449
8450         Improve support for Tru64 ACLs.
8451         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
8452         ACL on OSF/1.
8453
8454 2008-06-07  Bruno Haible  <bruno@clisp.org>
8455
8456         Add support for MacOS X ACLs.
8457         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
8458         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
8459         * lib/set-mode-acl.c (qset_acl): Likewise.
8460         * lib/copy-acl.c (qcopy_acl): Likewise.
8461
8462 2008-06-07  Bruno Haible  <bruno@clisp.org>
8463
8464         Fix memory leak introduced on 2008-05-22.
8465         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
8466         use.
8467
8468 2008-06-07  Bruno Haible  <bruno@clisp.org>
8469
8470         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
8471         to construct an empty ACL.
8472
8473 2008-06-07  Bruno Haible  <bruno@clisp.org>
8474
8475         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
8476         precisely.
8477         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
8478
8479 2008-06-07  Bruno Haible  <bruno@clisp.org>
8480
8481         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
8482         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
8483
8484 2008-06-07  Bruno Haible  <bruno@clisp.org>
8485
8486         * doc/posix-functions/_setjmp.texi: Explain the use of this function
8487         regardless of POSIX.
8488         * doc/posix-functions/_longjmp.texi: Likewise.
8489         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
8490         SystemV platform in this case.
8491
8492 2008-06-06  Eric Blake  <ebb9@byu.net>
8493
8494         Document abort() bugs.
8495         * doc/posix-functions/abort.texi (abort): Mention anomalies.
8496
8497         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
8498         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
8499         sigsetjmp.
8500         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
8501         siglongjmp, but only as a macro.
8502         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
8503         is obsolete.
8504         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
8505
8506         Tweak documentation to cover cygwin argz bugs.
8507         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
8508         argz bug fix; no code change needed since no cygwin releases
8509         occurred between the last fix and the bug being tested.
8510         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
8511         module and recently fixed cygwin bugs.
8512         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
8513         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
8514         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
8515         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
8516         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
8517         Likewise.
8518         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
8519         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
8520         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
8521         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
8522         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
8523         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
8524         Likewise.
8525
8526         Avoid gcc warning on cygwin.
8527         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
8528         !ACL_NO_TRIVIAL]: Avoid unused variable.
8529
8530 2008-06-05  Eric Blake  <ebb9@byu.net>
8531
8532         Be tolerant of UNKNOWN version in gnulib-tool test dir.
8533         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
8534         git-version-gen fails to come up with a version.
8535         Reported by Simon Josefsson.
8536
8537 2008-06-05  Jim Meyering  <meyering@redhat.com>
8538             Paul Eggert  <eggert@cs.ucla.edu>
8539
8540         utimens.c: work around a probable Linux kernel bug
8541         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
8542         appears to be a kernel bug that causes utimensat to return 280
8543         instead of 0, indicating success.
8544
8545 2008-06-04  Bruno Haible  <bruno@clisp.org>
8546
8547         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
8548         2008-06-01 commit.
8549
8550 2008-06-04  Bruno Haible  <bruno@clisp.org>
8551
8552         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
8553         * lib/file-has-acl.c (acl_access_nontrivial): New function.
8554         (file_has_acl): Use it. Save errno afterwards.
8555         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
8556
8557 2008-06-03  Bruno Haible  <bruno@clisp.org>
8558
8559         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
8560         draft code. Simplify #ifs.
8561         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
8562         Put Solaris code after POSIX-draft code. Fix comments regarding
8563         Solaris 10, HP-UX. Mention Cygwin.
8564         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
8565
8566 2008-06-03  Eric Blake  <ebb9@byu.net>
8567
8568         Provide fallback for older kernels.
8569         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
8570         Provide runtime fallback if kernel lacks support.
8571         Reported by Mike Frysinger.
8572
8573 2008-06-02  Bruno Haible  <bruno@clisp.org>
8574
8575         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
8576         it exists.
8577
8578 2008-06-02  Bruno Haible  <bruno@clisp.org>
8579
8580         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
8581         * lib/copy-acl.c (qcopy_acl): Update comment.
8582
8583 2008-06-02  Bruno Haible  <bruno@clisp.org>
8584
8585         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
8586         like ACL APIs.
8587
8588 2008-06-02  Bruno Haible  <bruno@clisp.org>
8589
8590         * tests/test-file-has-acl.sh: Use different code for Cygwin.
8591         * tests/test-set-mode-acl.sh: Likewise.
8592         * tests/test-copy-acl.sh: Likewise.
8593         * tests/test-copy-file.sh: Likewise.
8594
8595 2008-06-02  Bruno Haible  <bruno@clisp.org>
8596
8597         * tests/test-file-has-acl.sh: Remove unused code.
8598
8599 2008-06-01  Bruno Haible  <bruno@clisp.org>
8600
8601         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
8602         (copy_acl): Just a wrapper around qcopy_acl that emits the error
8603         messages.
8604         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
8605
8606 2008-06-01  Bruno Haible  <bruno@clisp.org>
8607
8608         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
8609         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
8610         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
8611         APIs.
8612         * modules/acl-tests (configure.ac): Remove tests now contained in
8613         m4/acl.m4.
8614
8615 2008-06-02  Jim Meyering  <meyering@redhat.com>
8616
8617         announce-gen: use a better key-server host name
8618         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
8619         it may be more consistently reliable.  Suggested by Werner Koch
8620         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
8621
8622 2008-06-01  Bruno Haible  <bruno@clisp.org>
8623
8624         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
8625         Reported by Voroskoi Andras <voroskoi@gmail.com>.
8626
8627 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
8628
8629         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
8630
8631 2008-06-01  Bruno Haible  <bruno@clisp.org>
8632
8633         New ACL tests.
8634         * tests/test-file-has-acl.sh: New file.
8635         * tests/test-file-has-acl.c: New file.
8636         * tests/test-set-mode-acl.sh: New file.
8637         * tests/test-set-mode-acl.c: New file.
8638         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
8639         * tests/test-copy-acl.c: New file.
8640         * modules/acl-tests: New file, based on modules/copy-file-tests.
8641         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
8642         (Depends-on): Add acl-tests.
8643         (configure.ac): Remove checks.
8644         (Makefile.am): Don't create test-sameacls program here any more.
8645
8646 2008-06-01  Bruno Haible  <bruno@clisp.org>
8647
8648         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
8649         * tests/test-sameacls.c: Include progname.h.
8650         (main): Invoke set_program_name. Portability fixes for MacOS X,
8651         Solaris, HP-UX.
8652
8653 2008-06-01  Bruno Haible  <bruno@clisp.org>
8654
8655         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
8656         function.
8657         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
8658
8659 2008-06-01  Bruno Haible  <bruno@clisp.org>
8660
8661         * modules/rpmatch (Depends-on): Add strdup.
8662
8663 2008-06-01  Bruno Haible  <bruno@clisp.org>
8664
8665         * lib/pipe.c: Include unistd-safer.h.
8666         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
8667         * modules/pipe (Depends-on): Add unistd-safer.
8668
8669 2008-05-30  Simon Josefsson  <simon@josefsson.org>
8670
8671         * modules/autobuild (configure.ac): Call AB_INIT.
8672
8673 2008-05-30  Simon Josefsson  <simon@josefsson.org>
8674
8675         * tests/test-getaddrinfo.c: Don't print debug messages by default.
8676         Suggested by Bruno Haible <bruno@clisp.org>.
8677
8678 2008-05-30  Simon Josefsson  <simon@josefsson.org>
8679
8680         * tests/test-base64.c: Cast size_t to unsigned long when invoking
8681         printf.  Use %lu instead of %d.  Reported by Bruno Haible
8682         <bruno@clisp.org>.
8683
8684 2008-05-29  Eric Blake  <ebb9@byu.net>
8685
8686         Prefer new POSIX 200x interfaces over futimesat.
8687         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
8688         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
8689         when available.
8690         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
8691
8692 2008-05-28  Bruno Haible  <bruno@clisp.org>
8693
8694         * modules/stpcpy (License): Change to LGPLv2+.
8695         Requested by David Lutterkort <dlutter@redhat.com>.
8696
8697 2008-05-27  Bruno Haible  <bruno@clisp.org>
8698
8699         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
8700         current mingw.
8701         Reported by Jose E. Marchesi <jemarch@gnu.org>.
8702
8703 2008-05-27  Bruno Haible  <bruno@clisp.org>
8704
8705         * modules/iconv_open (Link): New section, from module 'iconv'.
8706         * modules/striconv (Link): Likewise.
8707         * modules/striconveh (Link): Likewise.
8708         * modules/xstriconv (Link): Likewise.
8709         * modules/unicodeio (Link): Likewise.
8710         * modules/propername (Link): Likewise.
8711         Reported by Jim Meyering.
8712
8713 2008-05-26  Jim Meyering  <meyering@redhat.com>
8714
8715         sha256: do not artificially restrict buffer length to be < 2^32
8716         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
8717         uint32_t to size_t.
8718         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
8719         to match.
8720
8721         avoid unaligned access errors, e.g., on sparc
8722         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
8723         direct access through a possibly-unaligned uint64* pointer.
8724         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
8725         direct access through a possibly-unaligned uint32* pointer.
8726         Prompted by this patch from Tom "spot" Callaway:
8727         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
8728
8729         sha512.c: fix typo in comment
8730         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
8731
8732 2008-05-25  Bruno Haible  <bruno@clisp.org>
8733
8734         * lib/set-mode-acl.c: Renamed from lib/acl.c.
8735         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
8736         (Makefile.am): Update lib_SOURCES.
8737
8738 2008-05-25  Bruno Haible  <bruno@clisp.org>
8739
8740         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
8741
8742 2008-05-25  Jim Meyering  <meyering@redhat.com>
8743
8744         useless-if-before-free: freed expr may have white-space differences
8745         * build-aux/useless-if-before-free: Recognize cases in which the
8746         freed expression differs from the tested one in embedded white
8747         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
8748         $1 was used, so we can't make any regexp shy.  Improved tests now
8749         detect this.
8750
8751         useless-if-before-free: accept white space in the expression.
8752         * build-aux/useless-if-before-free: For now, any white space
8753         in the expression must be identical in the free argument.
8754
8755         useless-if-before-free: efficiency tweak
8756         * build-aux/useless-if-before-free: Make the expression-matching
8757         regexp "shy".
8758         Make the *outer* regexp shy, not the expr-matching one.
8759
8760         update code-in-comment to accept cast of free arg
8761         * build-aux/useless-if-before-free: Update regexp.
8762
8763 2008-05-25  Bruno Haible  <bruno@clisp.org>
8764
8765         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
8766         * modules/copy-file-tests (Files, Makefile.am): Update.
8767         * tests/test-copy-file.c (func_test_copy): Update.
8768
8769 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
8770
8771         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
8772
8773 2008-05-23  Bruno Haible  <bruno@clisp.org>
8774
8775         Improve support for ACLs on OSF/1.
8776         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
8777         Remove fallback for unknown flavors of ACLs.
8778
8779 2008-05-22  Bruno Haible  <bruno@clisp.org>
8780
8781         Add support for ACLs on OSF/1.
8782         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
8783         replacements.
8784         (acl_free_text): New macro fallback.
8785         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
8786         acl_free.
8787         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
8788         acl_free_text function. Require AC_C_INLINE.
8789
8790 2008-05-22  Bruno Haible  <bruno@clisp.org>
8791
8792         Make copy_acl work on MacOS X 10.5.
8793         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
8794         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
8795         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
8796         If MODE_INSIDE_ACL, don't assume that every system has the same text
8797         representation for ACLs as FreeBSD.
8798         * lib/copy-acl.c (copy_acl): Add support for platforms with
8799         !MODE_INSIDE_ACL.
8800         * lib/file-has-acl.c (file_has_acl): Likewise.
8801         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
8802         FreeBSD, MacOS X, or IRIX, respectively.
8803
8804 2008-05-22  Bruno Haible  <bruno@clisp.org>
8805
8806         * lib/acl.h: Don't include <sys/acl.h>.
8807         (GETACLCNT): Move fallback to lib/acl-internal.h.
8808         * lib/acl-internal.h: Include <sys/acl.h> here.
8809         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
8810
8811 2008-05-22  Bruno Haible  <bruno@clisp.org>
8812
8813         Split off copy_acl function to separate file.
8814         * lib/copy-acl.c: New file, extracted from lib/acl.c.
8815         * lib/acl.c (copy_acl): Moved function to separate file.
8816         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
8817         * modules/acl (Files): Add lib/copy-acl.c.
8818         (Makefiles.am): Augment lib_SOURCES.
8819
8820 2008-05-22  Bruno Haible  <bruno@clisp.org>
8821
8822         * modules/copy-file-tests: New file.
8823         * tests/test-copy-file.sh: New file.
8824         * tests/test-copy-file.c: New file.
8825         * tests/test-copy-file-sameacls.c: New file.
8826
8827 2008-05-22  Eric Blake  <ebb9@byu.net>
8828
8829         Avoid gcc warning.
8830         * tests/test-memcmp.c (main): Pass NULL indirectly.
8831
8832 2008-05-21  Bruno Haible  <bruno@clisp.org>
8833
8834         Add reference doc about ACLs.
8835         * doc/acl-resources.txt: New file.
8836         * doc/acl-cygwin.txt: New file.
8837
8838 2008-05-21  Bruno Haible  <bruno@clisp.org>
8839
8840         Avoid one more warning from gcc.
8841         * lib/vasnprintf.c (IF_LINT): Update comments.
8842         (VASNPRINTF): Use it also for the 'prefix' array initializer.
8843
8844 2008-05-21  Jim Meyering  <meyering@redhat.com>
8845
8846         avoid a warning from gcc
8847         * lib/vasnprintf.c (IF_LINT): Define.
8848         (scale10_round_decimal_long_double):
8849         Use it to avoid a "may be used uninitialized" warning.
8850         (scale10_round_decimal_double): Likewise.
8851
8852 2008-05-21  Simon Josefsson  <simon@josefsson.org>
8853
8854         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
8855         declared.
8856
8857 2008-05-20  Bruno Haible  <bruno@clisp.org>
8858
8859         * tests/test-memcmp.c (main): Test also the sign of the result. Test
8860         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
8861
8862 2008-05-20  Simon Josefsson  <simon@josefsson.org>
8863
8864         * modules/memcmp-tests: New file.
8865         * tests/test-memcmp.c: New file.
8866
8867 2008-05-19  Bruno Haible  <bruno@clisp.org>
8868
8869         * modules/propername (Notice, configure.ac): Put quoted "..." into
8870         --keyword option.
8871         * lib/propername.h: Update comments accordingly.
8872         Reported by Eric Blake.
8873
8874 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
8875
8876         * modules/getpass-gnu (Depends-on): Add fseeko.
8877
8878 2008-05-19  Simon Josefsson  <simon@josefsson.org>
8879
8880         * modules/base64-tests: New file.
8881
8882 2008-05-19  Bo Borgerson <gigabo@gmail.com>
8883
8884         * lib/base64.c (base64_decode_ctx): If a decode context structure
8885         was passed in use it to ignore newlines.  If a context structure
8886         was _not_ passed in, continue to treat newlines as garbage (this
8887         is the historical behavior).  Formerly base64_decode.
8888         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
8889         takes a decode context structure.
8890         * lib/base64.h (base64_decode): Macro for four-argument calls.
8891         (base64_decode_alloc): Likewise.
8892         * lib/base64.c (base64_decode_ctx): If a decode context structure
8893         was passed in use it to ignore newlines.  If a context structure
8894         was _not_ passed in, continue to treat newlines as garbage (this
8895         is the historical behavior).  Formerly base64_decode.
8896         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
8897         takes a decode context structure.
8898         * lib/base64.h (base64_decode): Macro for four-argument calls.
8899         (base64_decode_alloc): Likewise.
8900
8901 2008-05-19  Jim Meyering  <meyering@redhat.com>
8902
8903         avoid a warning from gcc
8904         * lib/trim.c (IF_LINT): Define.
8905         (trim2): Use it to avoid a "may be used uninitialized" warning.
8906
8907         Fix doc typo.
8908         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
8909
8910 2008-05-19  Bruno Haible  <bruno@clisp.org>
8911
8912         * doc/glibc-functions/getpass.texi: Document limits of other
8913         implementations.
8914
8915 2008-05-19  Simon Josefsson  <simon@josefsson.org>
8916             Bruno Haible <bruno@clisp.org>
8917
8918         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
8919
8920 2008-05-18  Bruno Haible  <bruno@clisp.org>
8921
8922         * modules/propername: New file, from GNU gettext.
8923         * lib/propername.h: New file, from GNU gettext.
8924         * lib/propername.c: New file, from GNU gettext.
8925         * MODULES.html.sh (Internationalization functions): Add propername.
8926
8927 2008-05-16  Jim Meyering  <meyering@redhat.com>
8928             Bruno Haible  <bruno@clisp.org>
8929
8930         Avoid some warnings from "gcc -Wshadow".
8931         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
8932
8933 2008-05-15  Eric Blake  <ebb9@byu.net>
8934
8935         Extend previous patch to cygwin 1.7.0.
8936         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
8937         fast implementation in cygwin >= 1.7.0.
8938         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8939         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8940
8941 2008-05-15  Bruno Haible  <bruno@clisp.org>
8942
8943         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
8944         implementation in glibc >= 2.9.
8945         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8946         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8947
8948 2008-05-15  Bruno Haible  <bruno@clisp.org>
8949
8950         * MODULES.html.sh (Internationalization functions): Remove linebreak.
8951         (Unicode string functions): Add unilbrk/*.
8952         Reported by Karl Berry.
8953
8954 2008-05-15  Eric Blake  <ebb9@byu.net>
8955
8956         Fix violation of <stdbool.h> replacement in regex.
8957         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
8958         * lib/regexec.c (re_search_internal): Likewise.
8959         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
8960
8961 2008-05-15  Jim Meyering  <meyering@redhat.com>
8962
8963         avoid distracting test output when git or cvs is not found
8964         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
8965         * tests/test-vc-list-files-git.sh: Likewise.
8966
8967 2008-05-15  Eric Blake  <ebb9@byu.net>
8968
8969         Glibc finally accepted the memmem speedup code, bugzilla #5514.
8970         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
8971         glibc version.
8972         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
8973         * doc/posix-functions/strstr.texi (strstr): Likewise.
8974         * lib/str-two-way.h (MAX): Sychronize with glibc.
8975
8976 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
8977
8978         * lib/regcomp.c (optimize_utf8): Add a note on why we test
8979         opr.ctx_type.
8980         (calc_first): Initialize constraint field.
8981         (duplicate_node_closure): Use it instead of special casing ANCHORS.
8982         Fix grammar.
8983         (duplicate_node): Merge constraint field for all node types.
8984         (calc_eclosure_iter): Look at constraint field for all node types.
8985         * lib/regex_internal.c (create_cd_newstate): Don't look at
8986         opr.ctx_type.
8987
8988 2008-05-14  Bruno Haible  <bruno@clisp.org>
8989
8990         Help GCC to do better code generation.
8991         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
8992         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
8993         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
8994         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
8995         Declare with attribute 'malloc' if supported.
8996
8997 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
8998
8999         use "echo STR|wc -c" rather than unportable "expr length STR"
9000         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
9001         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
9002
9003 2008-05-14  Jim Meyering  <meyering@redhat.com>
9004
9005         use dd ibs=$n count=1 ... rather than less-portable head -c$n
9006         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
9007         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
9008         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
9009         via Collin Lasse.
9010
9011 2008-05-14  Eric Blake  <ebb9@byu.net>
9012
9013         Avoid quadratic growth in gl_LIBSOURCES.
9014         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
9015         Suggested by Bruno Haible.
9016
9017         Test xmemdup0.
9018         * modules/xmemdup0-tests: New file.
9019         * tests/test-xmemdup0.c: Likewise.
9020
9021 2008-05-13  Eric Blake  <ebb9@byu.net>
9022
9023         Split xmemdup0 into its own module.
9024         * modules/xmemdup0: New file.
9025         * lib/xmemdup0.h: Likewise.
9026         * lib/xmemdup0.c: Likewise.
9027         * MODULES.html.sh (Memory management functions): Add xmemdup0.
9028         * lib/xalloc.h (xmemdup0): Remove.
9029         * lib/xmalloc.c (xmemdup0): Likewise.
9030
9031 2008-05-13  Eric Blake  <ebb9@byu.net>
9032             Bruno Haible  <bruno@clisp.org>
9033
9034         Reduce number of forks required during autoconf.
9035         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
9036         and gl_LIBSOURCES_DIR.
9037         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
9038         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
9039         m4_syscmd per file.
9040         <m4_foreach_w>: Move...
9041         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
9042
9043 2008-05-13  Eric Blake  <ebb9@byu.net>
9044
9045         * gnulib-tool: Fix various comment typos.
9046
9047 2008-05-12  Bruno Haible  <bruno@clisp.org>
9048
9049         Tailor the linebreaking algorithm.
9050         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
9051
9052 2008-05-12  Bruno Haible  <bruno@clisp.org>
9053
9054         Update to Unicode 5.0.0.
9055         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
9056         LBP_JV, LBP_JT. Redistribute values.
9057         (unilbrk_table): Change size.
9058         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
9059         Unicode TR#14 rev. 22.
9060         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
9061         LBP_JV, LBP_JT. Redistribute values.
9062         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
9063         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
9064         Update.
9065         * lib/unilbrk/lbrkprop1.h: Regenerated.
9066         * lib/unilbrk/lbrkprop2.h: Regenerated.
9067         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
9068         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
9069         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
9070         Likewise.
9071         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
9072         Likewise.
9073         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
9074         result.
9075         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
9076         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
9077         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
9078         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
9079         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
9080         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
9081
9082 2008-05-11  Bruno Haible  <bruno@clisp.org>
9083
9084         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
9085
9086 2008-05-11  Bruno Haible  <bruno@clisp.org>
9087
9088         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
9089         * modules/unilbrk/gen-lbrk: New file.
9090
9091 2008-05-11  Bruno Haible  <bruno@clisp.org>
9092
9093         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
9094         * m4/sha512.m4 (gl_SHA512): Likewise.
9095
9096 2008-05-11  Jim Meyering  <meyering@redhat.com>
9097
9098         New modules: crypto/sha256, crypto/sha512 (from coreutils)
9099         * modules/crypto/sha256: New file.
9100         * modules/crypto/sha512: Likewise.
9101         * lib/sha256.c: Likewise.
9102         * lib/sha256.h: Likewise.
9103         * lib/sha512.c: Likewise.
9104         * lib/sha512.h: Likewise.
9105         * lib/u64.h: Likewise.
9106         * m4/sha256.m4: Likewise.
9107         * m4/sha512.m4: Likewise.
9108         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
9109
9110 2008-05-10  Bruno Haible  <bruno@clisp.org>
9111
9112         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
9113         (Input/Output <stdio.h>): Add xprintf.
9114         (Signal handling <signal.h>): Add strsignal.
9115         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
9116         (Core language properties): Add func.
9117         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
9118         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
9119         strings.
9120         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
9121         (Input/output): New section.
9122         (File system functions): Add openat-die, stat-macros.
9123         (Networking functions): Add sockets.
9124         (Unicode string functions): Add unictype/*.
9125         (Support for building libraries and executables): Add gperf.
9126         (Support for building documentation): Add agpl-3.0.
9127         (Misc): Add nocrash.
9128
9129 2008-05-10  Bruno Haible  <bruno@clisp.org>
9130
9131         * modules/unictype/gen-ctype: New file.
9132
9133 2008-05-10  Jim Meyering  <meyering@redhat.com>
9134
9135         Make chdir-safer.c more efficient on a system with no symlinks.
9136         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
9137         also if ELOOP is zero.  Suggested by Bruno Haible.
9138
9139         Make chdir-safer.c slightly safer.
9140         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
9141         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
9142
9143         Avoid compile failure on systems without ELOOP (like mingw).
9144         * lib/chdir-safer.c (ELOOP): Define if not already defined.
9145         Reported by Bruno Haible.
9146
9147 2008-05-10  Bruno Haible  <bruno@clisp.org>
9148
9149         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
9150         (is_utf8_encoding): Use a case-insensitive comparison.
9151         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
9152         streq.
9153
9154 2008-05-10  Bruno Haible  <bruno@clisp.org>
9155
9156         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
9157         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
9158         * lib/unilbrk/ulc-common.h (iconv_string_length,
9159         iconv_string_keeping_offsets): Remove declarations.
9160         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
9161         Don't include <iconv.h>, streq.h, xsize.h.
9162         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
9163         conversion.
9164         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
9165         <iconv.h>, streq.h, xsize.h.
9166         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
9167         conversion.
9168         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
9169         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
9170         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
9171         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
9172
9173 2008-05-10  Bruno Haible  <bruno@clisp.org>
9174
9175         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
9176         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
9177
9178         * modules/unilbrk/u32-width-linebreaks-tests: New file.
9179         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
9180
9181         * modules/unilbrk/u16-width-linebreaks-tests: New file.
9182         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
9183
9184         * modules/unilbrk/u8-width-linebreaks-tests: New file.
9185         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
9186
9187         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
9188         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
9189
9190         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
9191         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
9192
9193         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
9194         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
9195
9196         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
9197         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
9198
9199 2008-05-10  Bruno Haible  <bruno@clisp.org>
9200
9201         Split up 'linebreak' module.
9202         * lib/unilbrk.h: New file, based on lib/linebreak.h.
9203         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
9204         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
9205         modifications.
9206         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
9207         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
9208         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
9209         lib/linebreak.c.
9210         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
9211         lib/linebreak.c.
9212         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
9213         lib/linebreak.c.
9214         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
9215         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
9216         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
9217         lib/linebreak.c.
9218         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
9219         lib/linebreak.c.
9220         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
9221         lib/linebreak.c.
9222         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
9223         lib/linebreak.c.
9224         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
9225         lib/linebreak.c.
9226         * modules/unilbrk/base: New file.
9227         * modules/unilbrk/tables: New file.
9228         * modules/unilbrk/u8-possible-linebreaks: New file.
9229         * modules/unilbrk/u16-possible-linebreaks: New file.
9230         * modules/unilbrk/u32-possible-linebreaks: New file.
9231         * modules/unilbrk/ulc-common: New file.
9232         * modules/unilbrk/ulc-possible-linebreaks: New file.
9233         * modules/unilbrk/u8-width-linebreaks: New file.
9234         * modules/unilbrk/u16-width-linebreaks: New file.
9235         * modules/unilbrk/u32-width-linebreaks: New file.
9236         * modules/unilbrk/ulc-width-linebreaks: New file.
9237         * lib/linebreak.h: Remove file.
9238         * lib/linebreak.c: Remove file.
9239         * m4/linebreak.m4: Remove file.
9240         * modules/linebreak: Remove file.
9241         * NEWS: Mention the changes.
9242
9243 2008-05-09  Eric Blake  <ebb9@byu.net>
9244
9245         Add xmemdup0.
9246         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
9247         implementation.
9248         * lib/xmalloc.c (xmemdup0): New C implementation.
9249
9250 2008-05-08  Bruno Haible  <bruno@clisp.org>
9251
9252         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
9253
9254 2008-05-07  Eric Blake  <ebb9@byu.net>
9255
9256         Support cross-compilation of <wctype.h>.
9257         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
9258         AC_CACHE_CHECK.
9259
9260 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
9261
9262         * build-aux/vc-list-files: Add support for bzr.
9263
9264 2008-05-03  Jim Meyering  <meyering@redhat.com>
9265
9266         avoid failed assertion with tight malloc
9267         * tests/test-getndelim2.c: Correct an off-by-one assertion.
9268
9269 2008-05-03  Simon Josefsson  <simon@josefsson.org>
9270
9271         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
9272         are needed from arpa/inet.h.
9273         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
9274         Reported by Bruno Haible.
9275
9276 2008-05-02  Jim Meyering  <meyering@redhat.com>
9277
9278         avoid compilation error on FreeBSD 6
9279         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
9280
9281 2008-05-01  Jim Meyering  <meyering@redhat.com>
9282
9283         useless-if-before-free: correct --help's exit status description
9284         * build-aux/useless-if-before-free (usage): Like grep, exit 0
9285         for one or more matches, etc.  Reported by Bruno Haible.
9286
9287         vc-list-files: make the stand-alone gnulib test work
9288         * modules/vc-list-files-tests (configure.ac):
9289         Define and AC_SUBST abs_aux_dir.
9290         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
9291         $(abs_top_srcdir) to each script and having each of them
9292         duplicate the work of setting PATH, set PATH here, using
9293         the new variable, abs_aux_dir instead.
9294         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
9295         * tests/test-vc-list-files-git.sh: Likewise.
9296         Reported by Bruno Haible.
9297
9298 2008-05-01  Bruno Haible  <bruno@clisp.org>
9299
9300         * lib/getndelim2.c (getndelim2): Fix newsize computation during
9301         reallocation. Rename 'done' to 'found_delimiter'.
9302
9303 2008-05-01  Jim Meyering  <meyering@redhat.com>
9304
9305         vc-list-files: accommodate /bin/sh like the one from Solaris 10
9306         * build-aux/vc-list-files: Use `...`, not $(...).
9307
9308 2008-04-30  Jim Meyering  <meyering@redhat.com>
9309
9310         add tests for vc-list-files
9311         * modules/vc-list-files-tests: New module.
9312         * tests/test-vc-list-files-cvs.sh: New file.
9313         * tests/test-vc-list-files-git.sh: New file.
9314
9315         avoid a warning from gcc
9316         * lib/getndelim2.c (IF_LINT): Define.
9317         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
9318
9319         vc-list-files: work properly with build-aux/cvsu, too
9320         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
9321         to all cvs-based clauses.
9322
9323         vc-list-files: work properly in the CVS+awk case, too
9324         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
9325
9326         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
9327         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
9328         take more than one file argument, so .  Add quotes, just in case $dir
9329         ever contains a shell meta-character.  Prompted by Soren Hansen in
9330         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
9331
9332 2008-04-29  Eric Blake  <ebb9@byu.net>
9333
9334         Optimize getndelim2 to use block operations when possible.
9335         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
9336         freadseek, and memchr2.
9337         * lib/getndelim2.c (getndelim2): Use them for block reads.
9338
9339 2008-04-29  Bruno Haible  <bruno@clisp.org>
9340
9341         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
9342         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
9343         * modules/inet_ntop (Depends-on): Add extensions.
9344         * modules/inet_pton (Depends-on): Likewise.
9345         Reported by Simon Josefsson.
9346
9347 2008-04-29  Jim Meyering  <meyering@redhat.com>
9348
9349         When the is more than one match in a block, match all of them.
9350         * build-aux/useless-if-before-free: Iterate through each block
9351         until there are no more matches.
9352
9353         Fix broken useless-if-before-free script.
9354         * build-aux/useless-if-before-free: Fix typo: missing "?" after
9355         the expression to match cast of argument to free-like function.
9356
9357 2008-04-29  Eric Blake  <ebb9@byu.net>
9358
9359         Use new header.
9360         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
9361
9362 2008-04-29  Jim Meyering  <meyering@redhat.com>
9363
9364         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
9365         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
9366         by gnulib to exist and to declare e.g., inet_ntop.
9367         Don't include "inet_ntop.h", now removed.
9368
9369         * m4/arpa_inet_h.m4: Remove trailing blanks.
9370
9371 2008-04-29  Eric Blake  <ebb9@byu.net>
9372
9373         Silence valgrind on safe reads beyond potential array bounds.
9374         * lib/rawmemchr.valgrind: New file.
9375         * lib/strchrnul.valgrind: Likewise.
9376         * modules/rawmemchr (Files): Distribute new file.
9377         * modules/strchrnul (Files): Likewise.
9378         Suggested by Bruno Haible.
9379
9380 2008-04-29  Bruno Haible  <bruno@clisp.org>
9381
9382         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
9383         (inet_ntop, inet_pton): Change portability warning's wording.
9384         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
9385         Invoke gl_CHECK_NEXT_HEADERS.
9386         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
9387         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
9388         set ARPA_INET_H.
9389         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
9390         * modules/arpa_inet (Description): No longer only for systems that
9391         lack it.
9392         (Depends-on): Add include_next.
9393         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
9394         HAVE_ARPA_INET_H.
9395
9396 2008-04-29  Jim Meyering  <meyering@redhat.com>
9397
9398         * modules/mkdir (License): Re-license as LGPLv2+.
9399
9400 2008-04-29  Bruno Haible  <bruno@clisp.org>
9401
9402         * modules/rawmemchr (Maintainer): Set to Eric.
9403         * modules/strchrnul (Maintainer): Likewise.
9404
9405 2008-04-29  Simon Josefsson  <simon@josefsson.org>
9406
9407         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
9408         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
9409
9410         * modules/arpa_inet (arpa/inet.h): Use them.
9411
9412 2008-04-28  Eric Blake  <ebb9@byu.net>
9413
9414         Test getndelim2.
9415         * modules/getndelim2-tests: New file.
9416         * tests/test-getndelim2.c: Likewise.
9417         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
9418         stream.
9419         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
9420
9421         * MODULES.html.sh: Document new module.
9422
9423 2008-04-20  Bruno Haible  <bruno@clisp.org>
9424
9425         * lib/c-stack.c (die): Use raise.
9426         * modules/c-stack (Depends-on): Add raise.
9427
9428 2008-04-28  Bruno Haible  <bruno@clisp.org>
9429
9430         Expect rpmatch to be declared.
9431         * lib/yesno.c (rpmatch): Remove declaration.
9432
9433         Declare rpmatch.
9434         * lib/stdlib.in.h (rpmatch): New declaration.
9435         * lib/rpmatch.c: Include <stdlib.h> first.
9436         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
9437         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
9438         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
9439         HAVE_RPMATCH.
9440         * modules/rpmatch (Depends-on): Add stdlib, extensions.
9441         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9442         (Include): Set to <stdlib.h>.
9443         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
9444         HAVE_RPMATCH.
9445         * NEWS: Document the change.
9446
9447 2008-04-28  Bruno Haible  <bruno@clisp.org>
9448
9449         Change rpmatch to use nl_langinfo when appropriate.
9450         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
9451         (N_): New macro.
9452         (localized_pattern): New function/macro.
9453         (try): Remove match, nomatch arguments. Copy the pattern into safe
9454         memory before caching it.
9455         (rpmatch): Use localized_pattern. Add translator comments.
9456         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
9457         Suggested by Eric Blake.
9458         * modules/rpmatch (Depends-on): Add stdbool.
9459
9460 2008-04-28  Eric Blake  <ebb9@byu.net>
9461
9462         Add rawmemchr module, matching glibc.
9463         * modules/string (Makefile.am): New indicator.
9464         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
9465         * lib/string.in.h (rawmemchr): Declare when appropriate.
9466         * modules/rawmemchr: New file.
9467         * m4/rawmemchr.m4: Likewise.
9468         * lib/rawmemchr.c: Likewise.
9469         * modules/rawmemchr-tests: Likewise.
9470         * tests/test-rawmemchr.c: Likewise.
9471         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
9472         module.
9473         * modules/strchrnul (Depends-on): Add rawmemchr.
9474         * lib/strchrnul.c (strchrnul): Optimize a corner case.
9475
9476         Whitespace cleanup.
9477         * tests/test-strchrnul.c: Reindent.
9478         * lib/strchrnul.c: Likewise.
9479
9480         Optimize and test strchrnul.
9481         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
9482         * modules/strchrnul-tests: New file.
9483         * tests/test-strchrnul.c: Likewise.
9484
9485         Remove intprops dependency.
9486         * modules/memchr (Depends-on): Remove intprops.
9487         * modules/memrchr (Depends-on): Likewise.
9488         * modules/memchr2 (Depends-on): Likewise.
9489         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
9490         * lib/memrchr.c (__memrchr): Likewise.
9491         * lib/memrchr2.c (memchr2): Likewise.
9492         Reported by Simon Josefsson.
9493
9494 2008-04-28  Simon Josefsson  <simon@josefsson.org>
9495
9496         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
9497         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
9498
9499 2008-04-28  Simon Josefsson  <simon@josefsson.org>
9500
9501         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
9502
9503         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
9504
9505         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
9506
9507         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
9508         declarations.
9509         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
9510
9511         * m4/inet_pton.m4: Don't check for header files.
9512
9513         * m4/inet_ntop.m4: Don't check for header files.
9514
9515 2008-04-28  Simon Josefsson  <simon@josefsson.org>
9516
9517         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
9518         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
9519         trigger for cygwin).
9520         Reported by Bruno Haible  <bruno@clisp.org>.
9521
9522 2008-04-28  Bruno Haible  <bruno@clisp.org>
9523
9524         * doc/posix-functions/strdup.texi: Mention mingw problem.
9525
9526 2008-04-27  Bruno Haible  <bruno@clisp.org>
9527
9528         * modules/stat-time-tests (Depends-on): Add sleep.
9529         * tests/test-stat-time.c (force_unlink): New function.
9530         (cleanup): Use it.
9531         (test_mtime): Remove the ctime related tests.
9532         (test_ctime): New function, containing the ctime related tests.
9533         (main): Call test_ctime, except on native Windows platforms.
9534
9535 2008-04-27  Bruno Haible  <bruno@clisp.org>
9536
9537         * lib/rpmatch.c (rpmatch): Add some comments.
9538         Reported by James Youngman <jay@gnu.org>.
9539
9540 2008-04-27  Bruno Haible  <bruno@clisp.org>
9541
9542         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
9543         quiet NaNs.
9544
9545 2008-04-27  Bruno Haible  <bruno@clisp.org>
9546
9547         Make test-yesno.sh work on mingw.
9548         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
9549         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
9550         (main): Set stdin to binary mode.
9551         * modules/yesno-tests (Depends-on): Add binary-io.
9552
9553 2008-04-27  Bruno Haible  <bruno@clisp.org>
9554
9555         Fix 'isfinite' on x86, x86_64, ia64 platforms.
9556         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
9557         argument that lie outside the IEEE 854 domain.
9558         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
9559         (gl_ISFINITE): Use it.
9560         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
9561
9562 2008-04-27  Bruno Haible  <bruno@clisp.org>
9563
9564         Allow local renaming in config.h.
9565         * lib/memrchr.c (memrchr): Don't undefine outside libc.
9566
9567 2008-04-27  Bruno Haible  <bruno@clisp.org>
9568
9569         * lib/memchr.c (__memchr): Change type of 'i'.
9570         * lib/memchr2.c (memchr2): Likewise.
9571
9572 2008-04-26  Eric Blake  <ebb9@byu.net>
9573         and Bruno Haible  <bruno@clisp.org>
9574
9575         Optimize and test memrchr.
9576         * modules/memrchr (Depends-on): Add intprops.
9577         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
9578         * modules/memrchr-tests: New file.
9579         * tests/test-memrchr.c: New file.
9580
9581 2008-04-26  Bruno Haible  <bruno@clisp.org>
9582
9583         Add tentative support for DragonFly BSD.
9584         * lib/stdio-impl.h: Add macros for DragonFly BSD.
9585         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
9586         fp.
9587         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
9588         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
9589         * lib/fpurge.c (fpurge): Likewise.
9590         * lib/freadable.c (freaadable): Likewise.
9591         * lib/freadahead.c (freadahead): Likewise.
9592         * lib/freading.c (freading): Likewise.
9593         * lib/freadptr.c (freadptr): Likewise.
9594         * lib/freadseek.c (freadptrinc): Likewise.
9595         * lib/fseeko.c (fseeko): Likewise.
9596         * lib/fseterr.c (fseterr): Likewise.
9597         * lib/fwritable.c (fwritable): Likewise.
9598         * lib/fwriting.c (fwriting): Likewise.
9599
9600 2008-04-26  Bruno Haible  <bruno@clisp.org>
9601
9602         * lib/stdio-impl.h: New file.
9603         * lib/fbufmode.c: Include stdio-impl.h.
9604         (fbufmode): Use fp_, remove redundant #defines.
9605         * lib/fflush.c: Include stdio-impl.h.
9606         (clear_ungetc_buffer): Remove redundant #defines.
9607         * lib/fpurge.c: Include stdio-impl.h.
9608         (fpurge): Remove redundant #defines.
9609         * lib/freadable.c: Include stdio-impl.h.
9610         (freadable): Remove redundant #defines.
9611         * lib/freadahead.c: Include stdio-impl.h.
9612         (freadahead): Remove redundant #defines.
9613         * lib/freading.c: Include stdio-impl.h.
9614         (freading): Remove redundant #defines.
9615         * lib/freadptr.c: Include stdio-impl.h.
9616         (freadptr): Remove redundant #defines.
9617         * lib/freadseek.c: Include stdio-impl.h.
9618         (freadptrinc): Remove redundant #defines.
9619         * lib/fseeko.c: Include stdio-impl.h.
9620         (rpl_fseeko): Remove redundant #defines.
9621         * lib/fseterr.c: Include stdio-impl.h.
9622         (fseterr): Remove redundant #defines.
9623         * lib/fwritable.c: Include stdio-impl.h.
9624         (fwritable: Remove redundant #defines.
9625         * lib/fwriting.c: Include stdio-impl.h.
9626         (fwriting): Remove redundant #defines.
9627         * modules/fbufmode (Files): Add lib/stdio-impl.h.
9628         * modules/fflush (Files): Likewise.
9629         * modules/fpurge (Files): Likewise.
9630         * modules/freadable (Files): Likewise.
9631         * modules/freadahead (Files): Likewise.
9632         * modules/freading (Files): Likewise.
9633         * modules/freadptr (Files): Likewise.
9634         * modules/freadseek (Files): Likewise.
9635         * modules/fseeko (Files): Likewise.
9636         * modules/fseterr (Files): Likewise.
9637         * modules/fwritable (Files): Likewise.
9638         * modules/fwriting (Files): Likewise.
9639
9640 2008-04-26  Bruno Haible  <bruno@clisp.org>
9641
9642         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
9643         restore_seek_optimization, update_fpos_cache): New functions, extracted
9644         from rpl_fflush.
9645         (rpl_fflush): Use them.
9646         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
9647         (gl_REPLACE_FFLUSH): Use it.
9648
9649 2008-04-26  Bruno Haible  <bruno@clisp.org>
9650
9651         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
9652         on Solaris.
9653         * tests/test-xstrtoimax.sh: Likewise.
9654         * tests/test-xstrtoumax.sh: Likewise.
9655         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
9656
9657 2008-04-26  Bruno Haible  <bruno@clisp.org>
9658
9659         * modules/memchr-tests: New file.
9660         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
9661
9662 2008-04-26  Eric Blake  <ebb9@byu.net>
9663             Bruno Haible  <bruno@clisp.org>
9664
9665         * lib/memchr.c: Include intprops.h.
9666         (__memchr): Optimize parallel detection of matching bytes. Rename local
9667         variables. Add explanatory comments.
9668
9669 2008-04-26  Bruno Haible  <bruno@clisp.org>
9670
9671         Fix module 'memchr', broken since 2000-10-28.
9672         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
9673
9674 2008-04-26  Bruno Haible  <bruno@clisp.org>
9675
9676         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
9677         comments.
9678
9679 2008-04-25  Eric Blake  <ebb9@byu.net>
9680
9681         Use native fstatat on cygwin 1.7.0.
9682         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
9683         first.
9684
9685 2008-04-23  Eric Blake  <ebb9@byu.net>
9686
9687         Improve memchr2 performance.
9688         * lib/memchr2.c (memchr2): Further optimize parallel detection of
9689         NUL bytes.
9690         * modules/memchr2 (Depends-on): Use intprops.h.
9691
9692 2008-04-23  Simon Josefsson  <simon@josefsson.org>
9693
9694         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
9695         an inline function instead of a CPP macro.  Patch by Ben Pfaff
9696         <blp@cs.stanford.edu>.
9697
9698 2008-04-23  Simon Josefsson  <simon@josefsson.org>
9699
9700         * lib/arpa_inet.in.h: New file.
9701
9702         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
9703         (Makefile.am): Sed in substitute header file.
9704
9705         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
9706         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
9707
9708         * modules/inet_ntop (configure.ac): Use
9709         gl_ARPA_INET_MODULE_INDICATOR.
9710
9711         * modules/inet_pton (configure.ac): Use
9712         gl_ARPA_INET_MODULE_INDICATOR.
9713
9714 2008-04-22  Jim Meyering  <meyering@redhat.com>
9715
9716         * modules/verify (License): Re-license as LGPLv2+.
9717
9718 2008-04-22  Simon Josefsson  <simon@josefsson.org>
9719
9720         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
9721         parameter to void* as per POSIX standard (MinGW uses char*).
9722
9723 2008-04-21  Bruno Haible  <bruno@clisp.org>
9724
9725         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
9726         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
9727         Define to replacements if REPLACE_ISWCNTRL is 1.
9728         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
9729         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
9730         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
9731         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
9732         what it fixes.
9733         * doc/posix-functions/iswalpha.texi: Likewise.
9734         * doc/posix-functions/iswblank.texi: Likewise.
9735         * doc/posix-functions/iswcntrl.texi: Likewise.
9736         * doc/posix-functions/iswdigit.texi: Likewise.
9737         * doc/posix-functions/iswgraph.texi: Likewise.
9738         * doc/posix-functions/iswlower.texi: Likewise.
9739         * doc/posix-functions/iswprint.texi: Likewise.
9740         * doc/posix-functions/iswpunct.texi: Likewise.
9741         * doc/posix-functions/iswspace.texi: Likewise.
9742         * doc/posix-functions/iswupper.texi: Likewise.
9743         * doc/posix-functions/iswxdigit.texi: Likewise.
9744         Reported by Alain Guibert.
9745
9746 2008-04-21  Bruno Haible  <bruno@clisp.org>
9747
9748         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
9749         Patch by Alain Guibert.
9750
9751 2008-04-21  Bruno Haible  <bruno@clisp.org>
9752
9753         Fix test failures on mingw.
9754         * tests/test-xstrtol.c (print_no_progname): New function.
9755         (main): Install it in error_print_progname hook.
9756         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
9757         * tests/test-xstrtoimax.sh: Likewise.
9758         * tests/test-xstrtoumax.sh: Likewise.
9759
9760 2008-04-21  Bruno Haible  <bruno@clisp.org>
9761
9762         Fix test failure on mingw.
9763         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
9764
9765 2008-04-21  Bruno Haible  <bruno@clisp.org>
9766
9767         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
9768         Actually assign a value.
9769
9770 2008-04-20  Bruno Haible  <bruno@clisp.org>
9771
9772         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
9773         take 2.
9774         * lib/canonicalize.c (canonicalize_file_name): Elide if the
9775         'canonicalize-lgpl' module is also used.
9776         * lib/canonicalize-lgpl.c: Undo last change.
9777         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
9778
9779 2008-04-20  Bruno Haible  <bruno@clisp.org>
9780
9781         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
9782         config.h. Provide _mkdir based fallback for mingw.
9783         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
9784         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
9785         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
9786         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
9787         rather than defining mkdir in config.h.
9788         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
9789         (gl_SYS_STAT_H_DEFAULTS): New macro.
9790         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
9791         HAVE_IO_H any more.
9792         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
9793         HAVE_DECL_MKDIR and HAVE_IO_H.
9794
9795 2008-04-20  Bruno Haible  <bruno@clisp.org>
9796
9797         * lib/isapipe.c: Port to native Windows platforms.
9798
9799 2008-04-20  Bruno Haible  <bruno@clisp.org>
9800
9801         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
9802
9803 2008-04-21  Eric Blake  <ebb9@byu.net>
9804
9805         Work around preprocessors that don't handle UINTMAX_MAX.
9806         * lib/memchr2.c (memchr2): Avoid embedded #if.
9807         Reported by Alain Guibert, fix suggested by Bruno Haible.
9808
9809 2008-04-21  Simon Josefsson  <simon@josefsson.org>
9810
9811         * doc/posix-functions/strftime.texi (strftime): Explain better
9812         Windows incompatibility.  Suggested by Micah Cowan
9813         <micah@cowan.name>.
9814
9815 2008-04-20  Bruno Haible  <bruno@clisp.org>
9816
9817         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
9818         unistr/u8-mblen.
9819
9820 2008-04-20  Bruno Haible  <bruno@clisp.org>
9821
9822         Fix test failure on platforms with non-GNU iconv.
9823         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
9824         (U_TO_U8): Use it, rather than u16_to_u8.
9825         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
9826         units at the end of the input string.
9827         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
9828
9829 2008-04-20  Bruno Haible  <bruno@clisp.org>
9830
9831         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
9832         when the resulting length is 0.
9833         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
9834
9835 2008-04-20  Bruno Haible  <bruno@clisp.org>
9836
9837         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
9838         works.
9839         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
9840
9841 2008-04-20  Bruno Haible  <bruno@clisp.org>
9842
9843         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
9844         * modules/tsearch-tests (configure.ac): Test for initstate function.
9845
9846 2008-04-20  Bruno Haible  <bruno@clisp.org>
9847
9848         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
9849         for nlink_t if missing.
9850         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
9851
9852 2008-04-19  Bruno Haible  <bruno@clisp.org>
9853
9854         Work around snprintf bug on Linux libc5.
9855         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
9856         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
9857         gl_SNPRINTF_SIZE1.
9858         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
9859         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
9860         that test failed.
9861         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
9862         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
9863         * modules/snprintf (Files): Add m4/printf.m4.
9864         * modules/vsnprintf (Files): Likewise.
9865         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
9866         * doc/posix-functions/vsnprintf.texi: Likewise.
9867
9868 2008-04-19  Bruno Haible  <bruno@clisp.org>
9869
9870         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
9871         from 0.0058 to less than 10^-7.
9872
9873 2008-04-19  Bruno Haible  <bruno@clisp.org>
9874
9875         Fix rounding when a precision is given.
9876         * lib/vasnprintf.c (is_borderline): New function.
9877         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
9878         9...9x.
9879         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
9880         %e, %g.
9881         * tests/test-vasprintf-posix.c (test_function): Likewise.
9882         * tests/test-snprintf-posix.h (test_function): Likewise.
9883         * tests/test-sprintf-posix.h (test_function): Likewise.
9884         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
9885         * tests/test-printf-posix.h (test_function): Likewise.
9886         * tests/test-printf-posix.output: Update.
9887         Reported by John Darrington <john@darrington.wattle.id.au> via
9888         Ben Pfaff <blp@cs.stanford.edu>.
9889
9890 2008-04-18  Simon Josefsson  <simon@josefsson.org>
9891
9892         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
9893         Suggested by Bruno Haible <bruno@clisp.org>.
9894
9895 2008-04-17  Bruno Haible  <bruno@clisp.org>
9896
9897         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
9898         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
9899         implementation.
9900         Patch by Bruce Merry <bmerry@gmail.com>.
9901
9902 2008-04-17  Simon Josefsson  <simon@josefsson.org>
9903
9904         * doc/posix-functions/strftime.texi (strftime): Mention that %e
9905         doesn't work under Windows.
9906
9907 2008-04-16  Bruno Haible  <bruno@clisp.org>
9908
9909         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
9910         New macros.
9911         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
9912         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
9913         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
9914         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
9915         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
9916         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
9917         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
9918         macros.
9919         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
9920         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
9921         Northern Sotho, Uighur.
9922
9923 2008-04-16  Bruno Haible  <bruno@clisp.org>
9924
9925         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
9926         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
9927         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
9928         Reported by Daniel Bergström <daniel@octocode.com>.
9929
9930 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
9931             Bruno Haible  <bruno@clisp.org>
9932
9933         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
9934         function.
9935         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
9936         New functions, mostly extracted from gl_locale_name_default.
9937         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
9938
9939 2008-04-16  Eric Blake  <ebb9@byu.net>
9940
9941         Adjust strtod detection to catch glibc 2.7 bug.
9942         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
9943         Reported by John Gatewood Ham.
9944
9945 2008-04-16  Bruno Haible  <bruno@clisp.org>
9946
9947         Add tentative support for Linux libc5.
9948         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
9949         * lib/fpurge.c (fpurge): Likewise.
9950         * lib/freadable.c (freadable): Likewise.
9951         * lib/freadahead.c (freadahead): Likewise.
9952         * lib/freading.c (freading): Likewise.
9953         * lib/freadptr.c (freadptr): Likewise.
9954         * lib/freadseek.c (freadptrinc): Likewise.
9955         * lib/fseeko.c (rpl_fseeko): Likewise.
9956         * lib/fseterr.c (fseterr): Likewise.
9957         * lib/fwritable.c (fwritable): Likewise.
9958         * lib/fwriting.c (fwriting): Likewise.
9959         Reported by Alain Guibert <alguibert+bts@free.fr>.
9960
9961 2008-04-15  Bruno Haible  <bruno@clisp.org>
9962
9963         * modules/mathl (configure.ac): Define module indicator.
9964
9965 2008-04-15  Bruno Haible  <bruno@clisp.org>
9966
9967         * lib/logl.c (logl): Remove unused variables.
9968
9969 2008-04-15  Bruno Haible  <bruno@clisp.org>
9970
9971         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
9972         fails.
9973
9974 2008-04-15  Bruno Haible  <bruno@clisp.org>
9975
9976         * lib/trim.c (trim2): Fix argument of isspace() macro.
9977
9978 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
9979
9980         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
9981         to 0.
9982         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
9983
9984 2008-04-14  Bruno Haible  <bruno@clisp.org>
9985
9986         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
9987         AC_LANG_PROGRAM argument.
9988         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
9989         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
9990         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
9991         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
9992         * m4/math_h.m4 (gl_MATH_H): Likewise.
9993         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
9994         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
9995         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
9996         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
9997         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
9998         * m4/regex.m4 (gl_REGEX): Likewise.
9999         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
10000         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
10001         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
10002         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
10003         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
10004         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
10005         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
10006         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
10007
10008 2008-04-14  Jim Meyering  <meyering@redhat.com>
10009
10010         test-strtod: fix typos: s/abs/fabs/
10011         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
10012
10013 2008-04-13  Bruno Haible  <bruno@clisp.org>
10014
10015         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
10016         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
10017         module is also used and while not building the reloc-wrapper.
10018
10019 2008-04-13  Bruno Haible  <bruno@clisp.org>
10020
10021         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
10022
10023 2008-04-13  Bruno Haible  <bruno@clisp.org>
10024
10025         Fix AIX compilation failure introduced on 2008-04-02.
10026         * tests/test-frexp.c (exp): Undefine before redefining.
10027         * tests/test-frexpl.c (exp): Likewise.
10028
10029 2008-04-13  Bruno Haible  <bruno@clisp.org>
10030
10031         Work around a HP-UX stdio bug.
10032         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
10033         * tests/test-ftello.c (main): Likewise.
10034         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
10035         * doc/posix-functions/ftello.texi: Likewise.
10036
10037 2008-04-13  Bruno Haible  <bruno@clisp.org>
10038
10039         Make test-signbit pass on HP-UX/hppa.
10040         * tests/test-signbit.c (minus_zerol): New variable.
10041         (test_signbitl): Use it.
10042
10043 2008-04-13  Bruno Haible  <bruno@clisp.org>
10044
10045         Make truncl work on OSF/1 4.0.
10046         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
10047         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
10048         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
10049         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
10050         HAVE_DECL_TRUNCL.
10051         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
10052         HAVE_DECL_TRUNCL.
10053         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
10054
10055 2008-04-13  Bruno Haible  <bruno@clisp.org>
10056
10057         * lib/unictype.h: Remove trailing comma from enumeration definitions.
10058
10059 2008-04-13  Bruno Haible  <bruno@clisp.org>
10060
10061         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
10062         expression, so as to avoid HP-UX 11 cc compiler bug.
10063
10064 2008-04-13  Bruno Haible  <bruno@clisp.org>
10065
10066         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
10067
10068 2008-04-13  Bruno Haible  <bruno@clisp.org>
10069
10070         * lib/git-merge-changelog.c: Remove empty declaration outside of
10071         functions.
10072
10073 2008-04-13  Bruno Haible  <bruno@clisp.org>
10074
10075         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
10076
10077 2008-04-13  Bruno Haible  <bruno@clisp.org>
10078
10079         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
10080         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
10081         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
10082         also if it exists but lacks definitions of the SHUT_* macros.
10083         * modules/sys_socket (Description): Update.
10084         Reported by Elbert Pol <e.pol@chello.nl>.
10085
10086 2008-04-13  Bruno Haible  <bruno@clisp.org>
10087
10088         * lib/localcharset.c (OS2): Don't redefine if already defined.
10089         Reported by Elbert Pol <e.pol@chello.nl>.
10090
10091 2008-04-13  Bruno Haible  <bruno@clisp.org>
10092
10093         * lib/binary-io.h [__EMX__]: Include <io.h>.
10094         Reported by Elbert Pol <e.pol@chello.nl>.
10095
10096 2008-04-12  Bruno Haible  <bruno@clisp.org>
10097
10098         * lib/fpucw.h: Enable the definitions also for x86_64.
10099         Needed for NetBSD/x86_64.
10100         Reported by Thomas Klausner <tk@giga.or.at>.
10101
10102 2008-04-12  Bruno Haible  <bruno@clisp.org>
10103
10104         * tests/test-strtod.c: Include isnand.h.
10105         (main): Use isnand instead of isnan.
10106         Reported by Jim Meyering.
10107
10108 2008-04-12  Bruno Haible  <bruno@clisp.org>
10109
10110         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
10111         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
10112
10113 2008-04-12  Jim Meyering  <meyering@redhat.com>
10114
10115         * m4/math_h.m4 (gl_MATH_H): Fix typos.
10116
10117 2008-04-12  Bruno Haible  <bruno@clisp.org>
10118
10119         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
10120         Reported by Elbert Pol <e.pol@chello.nl>.
10121
10122 2008-04-12  Eric Blake  <ebb9@byu.net>
10123
10124         Work around Solaris 10 math.h bug.
10125         * m4/math_h.m4 (gl_MATH_H): Check for bug.
10126         (gl_MATH_H_DEFAULTS): Set up default.
10127         * modules/math (Makefile.am): Replace new indicators.
10128         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
10129         * tests/test-math.c (main): Test this.
10130         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
10131         * doc/posix-headers/math.texi (math.h): Mention bug.
10132         Reported by Nelson H. F. Beebe and Jim Meyering.
10133
10134 2008-04-11  Bruno Haible  <bruno@clisp.org>
10135
10136         Adapt to future versions of Apple GCC.
10137         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
10138         Reported by Peter O'Gorman <peter@pogma.com>.
10139
10140 2008-04-11  Bruno Haible  <bruno@clisp.org>
10141
10142         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
10143
10144 2008-04-11  Bruno Haible  <bruno@clisp.org>
10145
10146         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
10147
10148         * modules/getaddrinfo-tests (Makefile.am): Define
10149         test_getaddrinfo_LDADD.
10150
10151 2008-04-11  Bruno Haible  <bruno@clisp.org>
10152
10153         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
10154         (init): Fix syntax error.
10155         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
10156         is declared.
10157
10158 2008-04-11  Bruno Haible  <bruno@clisp.org>
10159
10160         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
10161         * modules/glob (Depends-on): Add stdbool.
10162
10163 2008-04-11  Bruno Haible  <bruno@clisp.org>
10164
10165         * lib/trim.c: Include <string.h>.
10166
10167 2008-04-11  Eric Blake  <ebb9@byu.net>
10168
10169         Avoid compile failure on OS/2.
10170         * lib/regex_internal.h (internal_function): Disable optimization
10171         on OS/2 (__EMX__), where it caused compiler error.
10172         Reported by Elbert Pol.
10173
10174 2008-04-11  Bruno Haible  <bruno@clisp.org>
10175
10176         Flush the standard error stream before aborting. Needed on mingw.
10177         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
10178         * tests/test-array_list.c (ASSERT): Likewise.
10179         * tests/test-array_oset.c (ASSERT): Likewise.
10180         * tests/test-avltree_list.c (ASSERT): Likewise.
10181         * tests/test-avltree_oset.c (ASSERT): Likewise.
10182         * tests/test-avltreehash_list.c (ASSERT): Likewise.
10183         * tests/test-binary-io.c (ASSERT): Likewise.
10184         * tests/test-byteswap.c (ASSERT): Likewise.
10185         * tests/test-c-ctype.c (ASSERT): Likewise.
10186         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
10187         * tests/test-c-strcasestr.c (ASSERT): Likewise.
10188         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
10189         * tests/test-c-strstr.c (ASSERT): Likewise.
10190         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
10191         * tests/test-canonicalize.c (ASSERT): Likewise.
10192         * tests/test-carray_list.c (ASSERT): Likewise.
10193         * tests/test-ceilf1.c (ASSERT): Likewise.
10194         * tests/test-ceilf2.c (ASSERT): Likewise.
10195         * tests/test-ceill.c (ASSERT): Likewise.
10196         * tests/test-count-one-bits.c (ASSERT): Likewise.
10197         * tests/test-fbufmode.c (ASSERT): Likewise.
10198         * tests/test-fflush2.c (ASSERT): Likewise.
10199         * tests/test-floorf1.c (ASSERT): Likewise.
10200         * tests/test-floorf2.c (ASSERT): Likewise.
10201         * tests/test-floorl.c (ASSERT): Likewise.
10202         * tests/test-fopen.c (ASSERT): Likewise.
10203         * tests/test-fpending.c (ASSERT): Likewise.
10204         * tests/test-fprintf-posix.c (ASSERT): Likewise.
10205         * tests/test-fpurge.c (ASSERT): Likewise.
10206         * tests/test-freadable.c (ASSERT): Likewise.
10207         * tests/test-freadahead.c (ASSERT): Likewise.
10208         * tests/test-freading.c (ASSERT): Likewise.
10209         * tests/test-freadptr.c (ASSERT): Likewise.
10210         * tests/test-freadptr2.c (ASSERT): Likewise.
10211         * tests/test-freadseek.c (ASSERT): Likewise.
10212         * tests/test-freopen.c (ASSERT): Likewise.
10213         * tests/test-frexp.c (ASSERT): Likewise.
10214         * tests/test-frexpl.c (ASSERT): Likewise.
10215         * tests/test-fseek.c (ASSERT): Likewise.
10216         * tests/test-fseeko.c (ASSERT): Likewise.
10217         * tests/test-fstrcmp.c (ASSERT): Likewise.
10218         * tests/test-ftell.c (ASSERT): Likewise.
10219         * tests/test-ftello.c (ASSERT): Likewise.
10220         * tests/test-func.c (ASSERT): Likewise.
10221         * tests/test-fwritable.c (ASSERT): Likewise.
10222         * tests/test-fwriting.c (ASSERT): Likewise.
10223         * tests/test-getdelim.c (ASSERT): Likewise.
10224         * tests/test-getline.c (ASSERT): Likewise.
10225         * tests/test-i-ring.c (ASSERT): Likewise.
10226         * tests/test-iconv-utf.c (ASSERT): Likewise.
10227         * tests/test-iconv.c (ASSERT): Likewise.
10228         * tests/test-isfinite.c (ASSERT): Likewise.
10229         * tests/test-isnand.c (ASSERT): Likewise.
10230         * tests/test-isnanf.c (ASSERT): Likewise.
10231         * tests/test-isnanl.h (ASSERT): Likewise.
10232         * tests/test-ldexpl.c (ASSERT): Likewise.
10233         * tests/test-linked_list.c (ASSERT): Likewise.
10234         * tests/test-linkedhash_list.c (ASSERT): Likewise.
10235         * tests/test-localename.c (ASSERT): Likewise.
10236         * tests/test-lseek.c (ASSERT): Likewise.
10237         * tests/test-mbscasecmp.c (ASSERT): Likewise.
10238         * tests/test-mbscasestr1.c (ASSERT): Likewise.
10239         * tests/test-mbscasestr2.c (ASSERT): Likewise.
10240         * tests/test-mbscasestr3.c (ASSERT): Likewise.
10241         * tests/test-mbscasestr4.c (ASSERT): Likewise.
10242         * tests/test-mbschr.c (ASSERT): Likewise.
10243         * tests/test-mbscspn.c (ASSERT): Likewise.
10244         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
10245         * tests/test-mbspbrk.c (ASSERT): Likewise.
10246         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
10247         * tests/test-mbsrchr.c (ASSERT): Likewise.
10248         * tests/test-mbsspn.c (ASSERT): Likewise.
10249         * tests/test-mbsstr1.c (ASSERT): Likewise.
10250         * tests/test-mbsstr2.c (ASSERT): Likewise.
10251         * tests/test-mbsstr3.c (ASSERT): Likewise.
10252         * tests/test-memchr2.c (ASSERT): Likewise.
10253         * tests/test-memmem.c (ASSERT): Likewise.
10254         * tests/test-open.c (ASSERT): Likewise.
10255         * tests/test-printf-frexp.c (ASSERT): Likewise.
10256         * tests/test-printf-frexpl.c (ASSERT): Likewise.
10257         * tests/test-printf-posix.c (ASSERT): Likewise.
10258         * tests/test-quotearg.c (ASSERT): Likewise.
10259         * tests/test-rbtree_list.c (ASSERT): Likewise.
10260         * tests/test-rbtree_oset.c (ASSERT): Likewise.
10261         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
10262         * tests/test-round1.c (ASSERT): Likewise.
10263         * tests/test-roundf1.c (ASSERT): Likewise.
10264         * tests/test-roundl.c (ASSERT): Likewise.
10265         * tests/test-signbit.c (ASSERT): Likewise.
10266         * tests/test-sleep.c (ASSERT): Likewise.
10267         * tests/test-snprintf-posix.c (ASSERT): Likewise.
10268         * tests/test-snprintf.c (ASSERT): Likewise.
10269         * tests/test-sprintf-posix.c (ASSERT): Likewise.
10270         * tests/test-stat-time.c (ASSERT): Likewise.
10271         * tests/test-strcasestr.c (ASSERT): Likewise.
10272         * tests/test-strerror.c (ASSERT): Likewise.
10273         * tests/test-striconv.c (ASSERT): Likewise.
10274         * tests/test-striconveh.c (ASSERT): Likewise.
10275         * tests/test-striconveha.c (ASSERT): Likewise.
10276         * tests/test-strsignal.c (ASSERT): Likewise.
10277         * tests/test-strstr.c (ASSERT): Likewise.
10278         * tests/test-strtod.c (ASSERT): Likewise.
10279         * tests/test-trunc1.c (ASSERT): Likewise.
10280         * tests/test-trunc2.c (ASSERT): Likewise.
10281         * tests/test-truncf1.c (ASSERT): Likewise.
10282         * tests/test-truncf2.c (ASSERT): Likewise.
10283         * tests/test-truncl.c (ASSERT): Likewise.
10284         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
10285         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
10286         * tests/test-vasnprintf.c (ASSERT): Likewise.
10287         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
10288         * tests/test-vasprintf.c (ASSERT): Likewise.
10289         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
10290         * tests/test-vprintf-posix.c (ASSERT): Likewise.
10291         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
10292         * tests/test-vsnprintf.c (ASSERT): Likewise.
10293         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
10294         * tests/test-wcwidth.c (ASSERT): Likewise.
10295         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
10296         * tests/test-xprintf-posix.c (ASSERT): Likewise.
10297         * tests/test-xvasprintf.c (ASSERT): Likewise.
10298         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
10299         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
10300         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
10301         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
10302         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
10303         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
10304         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
10305         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
10306         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
10307         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
10308         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
10309         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
10310         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
10311         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
10312         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
10313         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
10314         * tests/unictype/test-block_list.c (ASSERT): Likewise.
10315         * tests/unictype/test-block_of.c (ASSERT): Likewise.
10316         * tests/unictype/test-block_test.c (ASSERT): Likewise.
10317         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
10318         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
10319         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
10320         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
10321         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
10322         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
10323         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
10324         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
10325         * tests/unictype/test-combining.c (ASSERT): Likewise.
10326         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
10327         * tests/unictype/test-digit.c (ASSERT): Likewise.
10328         * tests/unictype/test-mirror.c (ASSERT): Likewise.
10329         * tests/unictype/test-numeric.c (ASSERT): Likewise.
10330         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
10331         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
10332         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
10333         * tests/unictype/test-scripts.c (ASSERT): Likewise.
10334         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
10335         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
10336         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
10337         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
10338         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
10339         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
10340         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
10341         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
10342         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
10343         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
10344         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
10345         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
10346         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
10347         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
10348         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
10349         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
10350         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
10351         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
10352         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
10353         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
10354         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
10355         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
10356         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
10357         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
10358         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
10359         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
10360         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
10361         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
10362         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
10363         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
10364         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
10365         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
10366         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
10367         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
10368         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
10369         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
10370         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
10371         Reported by Eric Blake.
10372
10373 2008-04-11  Bruno Haible  <bruno@clisp.org>
10374
10375         * lib/wchar.in.h: Tweak comment.
10376
10377 2008-04-11  Bruno Haible  <bruno@clisp.org>
10378
10379         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
10380         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
10381         gl_COMMON.
10382         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
10383
10384 2008-04-11  Bruno Haible  <bruno@clisp.org>
10385
10386         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
10387
10388 2008-04-11  Simon Josefsson  <simon@josefsson.org>
10389
10390         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
10391         of attempting to use non-existing /dev/*random.  Based on patch
10392         from Adam Strzelecki <ono@java.pl> in
10393         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
10394
10395 2008-04-08  Bruno Haible  <bruno@clisp.org>
10396
10397         Add tentative support for emx+gcc.
10398         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
10399         * lib/fpurge.c (fpurge): Likewise.
10400         * lib/freadable.c (freadable): Likewise.
10401         * lib/freadahead.c (freadahead): Likewise.
10402         * lib/freading.c (freading): Likewise.
10403         * lib/freadptr.c (freadptr): Likewise.
10404         * lib/freadseek.c (freadptrinc): Likewise.
10405         * lib/fseeko.c (rpl_fseeko): Likewise.
10406         * lib/fseterr.c (fseterr): Likewise.
10407         * lib/fwritable.c (fwritable): Likewise.
10408         * lib/fwriting.c (fwriting): Likewise.
10409         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
10410
10411 2008-04-09  Eric Blake  <ebb9@byu.net>
10412
10413         Avoid some autoconf warnings.
10414         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
10415         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
10416         * m4/afs.m4 (gl_AFS): Likewise.
10417         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
10418         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
10419         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
10420         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
10421         (gl_INTEGER_TYPE_SUFFIX): Likewise.
10422         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
10423         (AC_CHECK_DECLS_ONCE): Likewise.
10424         Rename file...
10425         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
10426         gnulib-tool requires autoconf 2.59 or better.
10427         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
10428
10429 2008-04-08  Eric Blake  <ebb9@byu.net>
10430
10431         Use 'git describe --match' if present (added in git 1.5.5).
10432         * build-aux/git-version-gen: Limit result to tags that match 'v*'
10433         if possible.
10434
10435 2008-04-08  Bruno Haible  <bruno@clisp.org>
10436
10437         Add tentative support for OpenServer.
10438         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
10439         _ptr, _cnt.
10440         * lib/fpurge.c (fpurge): Likewise.
10441         * lib/freadable.c (freadable): Likewise.
10442         * lib/freadahead.c (freadahead): Likewise.
10443         * lib/freading.c (freading): Likewise.
10444         * lib/freadptr.c (freadptr): Likewise.
10445         * lib/freadseek.c (freadptrinc): Likewise.
10446         * lib/fseeko.c (rpl_fseeko): Likewise.
10447         * lib/fseterr.c (fseterr): Likewise.
10448         * lib/fwritable.c (fwritable): Likewise.
10449         * lib/fwriting.c (fwriting): Likewise.
10450         Reported by Roger Cornelius <rac@tenzing.org> and
10451         Brian K. White <brian@aljex.com>.
10452
10453 2008-04-06  Jim Meyering  <meyering@redhat.com>
10454
10455         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
10456
10457 2008-04-06  Bruno Haible  <bruno@clisp.org>
10458
10459         Avoid possible error with non-ASCII bytes in UTF-8 locales.
10460         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
10461         * tests/test-printf-posix.sh: Likewise.
10462         * tests/test-vfprintf-posix.sh: Likewise.
10463         * tests/test-vprintf-posix.sh: Likewise.
10464         * tests/test-xprintf-posix.sh: Likewise.
10465
10466 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10467
10468         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
10469         hide error from 'ls', needed on OS/2.
10470         Report by Elbert Pol <elbert.pol@gmail.com>.
10471
10472 2008-04-04  Eric Blake  <ebb9@byu.net>
10473
10474         Make test-fseeko.c failures meaningful.
10475         * tests/test-fseeko.c: Print line number on failure.
10476         * tests/test-fseek.c: Likewise.
10477         Reported by Nelson H. F. Beebe.
10478
10479         Improve strtod bug detection check.
10480         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
10481         required for Solaris 10.
10482         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
10483
10484 2008-04-04  Bruno Haible  <bruno@clisp.org>
10485
10486         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
10487         by m4/setenv.m4.
10488
10489 2008-04-03  Eric Blake  <ebb9@byu.net>
10490
10491         Ensure sane .version contents.
10492         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
10493         version string.
10494         * build-aux/git-version-gen: Improve documentation.
10495
10496         Make GNU make output nicer.
10497         * top/GNUmakefile [!_have-Makefile]: Add dependency on
10498         MAKECMDGOALS to enforce message for all command line targets.  Set
10499         srcdir for use in maint.mk.
10500
10501         Another maintainer tweak.
10502         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
10503         a target that regenerates version.
10504
10505 2008-04-03  Jim Meyering  <meyering@redhat.com>
10506
10507         vc-list-files: don't cause coreutils "make po-check" failure
10508         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
10509
10510 2008-04-03  Eric Blake  <ebb9@byu.net>
10511
10512         Allow VPATH usage of vc-list-files.
10513         * build-aux/vc-list-files (scriptversion): Add timestamp.
10514         (options): Add --help, --version, -C.
10515         (CVS): Support installed cvsu.
10516
10517 2008-04-02  Bruno Haible  <bruno@clisp.org>
10518
10519         Avoid some "statement with no effect" warnings from gcc.
10520         * tests/test-wctype.c (main): Explicitly ignore unused values.
10521         Reported by Jim Meyering.
10522
10523 2008-04-02  Jim Meyering  <meyering@redhat.com>
10524
10525         Avoid some warnings from "gcc -Wshadow".
10526         * tests/test-frexp.c (exp): Define to a different identifier.
10527         * tests/test-frexpl.c (exp): Likewise.
10528
10529 2008-04-03  Jim Meyering  <meyering@redhat.com>
10530
10531         bootstrap: remove dangling *.[ch] symlinks from lib
10532         * build-aux/bootstrap [dangling symlink removal]: Move find's
10533         -depth option to precede all others, to avoid a warning.
10534         Remove *.[ch] files too, and from "$source_base" (usually lib/).
10535
10536 2008-04-02  Bruno Haible  <bruno@clisp.org>
10537
10538         Avoid some warnings from "gcc -Wshadow".
10539         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
10540         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
10541         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
10542         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
10543         Reported by Jim Meyering.
10544
10545 2008-04-01  Bruno Haible  <bruno@clisp.org>
10546
10547         Fix test to work on IRIX 6.5 with cc.
10548         * tests/test-math.c (numeric_equal): New function.
10549         (main): Use it.
10550
10551 2008-04-01  Bruno Haible  <bruno@clisp.org>
10552
10553         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
10554
10555 2008-04-01  Bruno Haible  <bruno@clisp.org>
10556
10557         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
10558         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10559         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
10560         (Depends-on): Remove math.
10561
10562         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
10563         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10564         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
10565         (Depends-on): Remove math.
10566
10567         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
10568         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10569         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
10570         (Depends-on): Remove math.
10571         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
10572         (Depends-on): Remove math.
10573
10574         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
10575         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10576         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
10577         (Depends-on): Remove math.
10578         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
10579         (Depends-on): Remove math.
10580
10581         * tests/test-round1.c: Include nan.h.
10582         (main): Use NaNd instead of NAN.
10583         * modules/round-tests (Files): Add tests/nan.h.
10584
10585         * tests/test-trunc1.c: Include nan.h.
10586         (main): Use NaNd instead of NAN.
10587         * modules/trunc-tests (Files): Add tests/nan.h.
10588
10589         * tests/test-roundf1.c: Include nan.h.
10590         (main): Use NaNf instead of NAN.
10591         * modules/roundf-tests (Files): Add tests/nan.h.
10592
10593         * tests/test-truncf1.c: Include nan.h.
10594         (main): Use NaNf instead of NAN.
10595         * modules/truncf-tests (Files): Add tests/nan.h.
10596
10597         * tests/test-ceilf1.c: Include nan.h.
10598         (main): Use NaNf instead of NAN.
10599         * modules/ceilf-tests (Files): Add tests/nan.h.
10600
10601         * tests/test-floorf1.c: Include nan.h.
10602         (main): Use NaNf instead of NAN.
10603         * modules/floorf-tests (Files): Add tests/nan.h.
10604
10605         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
10606         (main): Use NaNf instead of NAN.
10607         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
10608
10609         * tests/test-isnand.c: Include nan.h instead of <math.h>.
10610         (main): Use NaNd instead of NAN.
10611         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
10612
10613         * tests/test-frexp.c: Include nan.h.
10614         (main): Use NaNd instead of NAN.
10615         * modules/frexp-tests (Files): Add tests/nan.h.
10616
10617         * lib/isnan.c: Don't include <math.h>.
10618         (FUNC): Don't use NAN macro.
10619         * modules/isnand-nolibm (Depends-on): Remove math.
10620         * modules/isnanf-nolibm (Depends-on): Remove math.
10621         * modules/isnanl (Depends-on): Remove math.
10622         * modules/isnanl-nolibm (Depends-on): Remove math.
10623
10624         * tests/nan.h: New file.
10625
10626 2008-04-01  Eric Blake  <ebb9@byu.net>
10627
10628         Fix typos.
10629         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
10630         values to be the right type.
10631
10632         For now, cater to gnulib strtod inaccuracies.
10633         * tests/test-strtod.c (main): Allow 1-ulp error on expected
10634         fractional results.  While not as nice from a QoI perspective, it
10635         is a quicker patch than correctly implementing decimal to binary
10636         rounding.
10637
10638 2008-03-31  Eric Blake  <ebb9@byu.net>
10639
10640         Guarantee a definition of NAN.
10641         * lib/math.in.h (NAN): Define if missing.
10642         * tests/test-math.c (main): Test it.
10643         * doc/posix-headers/math.texi (math.h): Document this.
10644         * lib/isnan.c (rpl_isnand): Use it.
10645         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
10646         * tests/test-floorf1.c (NaN): Likewise.
10647         * tests/test-frexp.c (NaN): Likewise.
10648         * tests/test-isnand.c (NaN): Likewise.
10649         * tests/test-isnanf.c (NaN): Likewise.
10650         * tests/test-round1.c (NaN): Likewise.
10651         * tests/test-roundf1.c (NaN): Likewise.
10652         * tests/test-snprintf-posix.h (NaN): Likewise.
10653         * tests/test-sprintf-posix.h (NaN): Likewise.
10654         * tests/test-trunc1.c (NaN): Likewise.
10655         * tests/test-truncf1.c (NaN): Likewise.
10656         * tests/test-vasnprintf-posix.c (NaN): Likewise.
10657         * tests/test-vasprintf-posix.c (NaN): Likewise.
10658         * modules/isnand-nolibm (Depends-on): Add math.
10659         * modules/isnanf-nolibm (Depends-on): Likewise.
10660         * modules/isnanl (Depends-on): Likewise.
10661         * modules/isnanl-nolibm (Depends-on): Likewise.
10662         * modules/snprintf-posix-tests (Depends-on): Likewise.
10663         * modules/sprintf-posix-tests (Depends-on): Likewise.
10664         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
10665         * modules/vsprintf-posix-tests (Depends-on): Likewise.
10666         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
10667         * modules/vasprintf-posix-tests (Depends-on): Likewise.
10668
10669 2008-03-31  Bruno Haible  <bruno@clisp.org>
10670
10671         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
10672         * doc/posix-functions/strtod.texi: Likewise.
10673
10674 2008-03-31  Bruno Haible  <bruno@clisp.org>
10675
10676         * tests/test-strtod.c (main): Don't use C99 syntax.
10677
10678 2008-03-31  Bruno Haible  <bruno@clisp.org>
10679
10680         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
10681         Reported by Eric Blake.
10682
10683 2008-03-31  Jim Meyering  <meyering@redhat.com>
10684
10685         Don't compare actual signbit return values.
10686         * tests/test-strtod.c (main): Rather, compare only their
10687         zero/non-zero nature.
10688
10689 2008-03-31  Eric Blake  <ebb9@byu.net>
10690
10691         More strtod documentation.
10692         * doc/posix-functions/strtod.texi (strtod): Interpret more test
10693         failures as distinct bugs.
10694
10695 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
10696
10697         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
10698         Problem reported by Erik Benada in
10699         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
10700
10701 2008-03-30  Bruno Haible  <bruno@clisp.org>
10702
10703         * tests/test-strtod.c: Add comments about which assertion fails on which
10704         platform.
10705         * doc/posix-functions/strtod.texi: Add info about many more platforms.
10706
10707 2008-03-30  Eric Blake  <ebb9@byu.net>
10708
10709         Test signbit behavior on zeros.
10710         * tests/test-signbit.c (test_signbitf): Add tests for zero.
10711         (test_signbitd, test_signbitl): Likewise.
10712
10713         More strtod touchups.
10714         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
10715         sign of negative underflow, for now.  Use .5, not .1.
10716         * doc/posix-functions/strtod.texi (strtod): Mention these
10717         limitations.
10718         Reported by Jim Meyering.
10719
10720 2008-03-30  Bruno Haible  <bruno@clisp.org>
10721
10722         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
10723         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
10724
10725 2008-03-30  Bruno Haible  <bruno@clisp.org>
10726
10727         Avoid failure when attempting to return empty iconv results on some
10728         platforms.
10729         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
10730         allocation, don't report ENOMEM when the resulting string is empty.
10731
10732 2008-03-30  Bruno Haible  <bruno@clisp.org>
10733
10734         Fix buffer overrun.
10735         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
10736         Don't consider the width for tmp_length. Check count against tmp_length
10737         before doing the padding. Ensure enough allocation during padding.
10738
10739 2008-03-30  Eric Blake  <ebb9@byu.net>
10740
10741         strtod touchups.
10742         * lib/strtod.c (strtod): Avoid compiler warnings.
10743         Reported by Jim Meyering.
10744
10745 2008-03-30  Bruno Haible  <bruno@clisp.org>
10746
10747         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
10748         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
10749         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
10750         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
10751         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
10752         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
10753         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
10754         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
10755
10756         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
10757         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
10758         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
10759         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
10760         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
10761         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
10762         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
10763         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
10764
10765         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
10766         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
10767         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
10768         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
10769         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
10770         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
10771         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
10772         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
10773
10774         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
10775         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
10776
10777         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
10778         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
10779
10780         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
10781         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
10782
10783         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
10784         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
10785         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
10786
10787         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
10788         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
10789         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
10790
10791         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
10792         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
10793         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
10794
10795         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
10796         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
10797         * modules/vasprintf (Depends-on): Add EOVERFLOW.
10798
10799         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
10800         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
10801         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
10802         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
10803         (Depends-on): Add EOVERFLOW.
10804         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
10805         (Depends-on): Add EOVERFLOW.
10806         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
10807         (Depends-on): Add EOVERFLOW.
10808         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
10809         (Depends-on): Add EOVERFLOW.
10810         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
10811         (Depends-on): Add EOVERFLOW.
10812         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
10813         (Depends-on): Add EOVERFLOW.
10814         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
10815         (Depends-on): Add EOVERFLOW.
10816         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
10817         (Depends-on): Add EOVERFLOW.
10818
10819         * lib/sprintf.c (EOVERFLOW): Remove fallback.
10820         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
10821         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
10822
10823         * lib/snprintf.c (EOVERFLOW): Remove fallback.
10824         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
10825         * modules/snprintf (Depends-on): Add EOVERFLOW.
10826
10827         * lib/poll.c (EOVERFLOW): Remove fallback.
10828         * modules/poll (Depends-on): Add EOVERFLOW.
10829
10830         * lib/getugroups.c (EOVERFLOW): Remove fallback.
10831         * modules/getugroups (Depends-on): Add EOVERFLOW.
10832
10833         * lib/getdelim.c (EOVERFLOW): Remove fallback.
10834         * modules/getdelim (Depends-on): Add EOVERFLOW.
10835
10836         * lib/ftell.c (EOVERFLOW): Remove fallback.
10837         * modules/ftell (Depends-on): Add EOVERFLOW.
10838
10839         * lib/fprintf.c (EOVERFLOW): Remove fallback.
10840         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
10841         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
10842
10843         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
10844
10845         * modules/EOVERFLOW-tests: New file.
10846         * tests/test-EOVERFLOW.c: New file.
10847
10848         * modules/EOVERFLOW: New file.
10849         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
10850
10851 2008-03-30  Bruno Haible  <bruno@clisp.org>
10852
10853         Fix bug introduced on 2007-06-10.
10854         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
10855         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
10856
10857 2008-03-30  Bruno Haible  <bruno@clisp.org>
10858
10859         Improve freadseek's efficiency after ungetc.
10860         * lib/freadseek.c: Include freadahead.h.
10861         (freadptrinc): New function, extracted from freadseek.
10862         (freadseek): Use it in a loop. Use freadahead to determine the number
10863         of loop iterations.
10864         * modules/freadseek (Depends-on): Add freadahead.
10865         (configure.ac): Require AC_C_INLINE.
10866
10867 2008-03-30  Bruno Haible  <bruno@clisp.org>
10868
10869         * lib/freadseek.c (freadseek): Don't ignore the return value of
10870         freadptr.
10871
10872 2008-03-29  Eric Blake  <ebb9@byu.net>
10873
10874         Add hex float support.
10875         * modules/strtod (Depends-on): Add c-ctype.
10876         (Link): Mention POW_LIB.
10877         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
10878         whitespace between 'e' and exponent.
10879         * tests/test-strtod.c (main): Enable hex float tests.
10880         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
10881         now provides.
10882
10883         Document various strtod bugs, with some fixes.
10884         * doc/posix-functions/strtod.texi (strtod): Document bugs with
10885         "-0x", "inf", "nan", and hex constants.
10886         * doc/posix-functions/atof.texi (atof): Likewise.
10887         * modules/stdlib (Makefile.am): Support strtod.
10888         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
10889         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
10890         detect additional strtod bugs.
10891         * lib/stdlib.in.h (rpl_strtod): Add declarations.
10892         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
10893         bool where appropriate.  Parse 'inf' and 'nan'.
10894         * tests/test-strtod.c: New file.
10895         * modules/strtod (Depends-on): Add stdbool, stdlib.
10896         (configure.ac): Turn on module indicator.
10897         * modules/strtod-tests: New module.
10898
10899 2008-03-29  Eric Blake  <ebb9@byu.net>
10900
10901         Fix ftell on mingw.
10902         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
10903         * modules/ftell-tests (Depends-on): Add binary-io.
10904         * modules/ftello-tests (Depends-on): Likewise.
10905         * tests/test-ftell.c (main): Enhance test to cover behavior after
10906         ungetc.  Enforce binary mode.
10907         * tests/test-ftello.c (main): Likewise.
10908
10909         Pass test-freadseek on cygwin.
10910         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
10911         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
10912         ungetc buffer.
10913
10914         * tests/test-fflush2.c (main): Fix typo.
10915
10916 2008-03-29  Bruno Haible  <bruno@clisp.org>
10917
10918         * tests/test-fflush2.c (main): Temporarily disable the contents of
10919         this test.
10920         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
10921         Reported by Eric Blake.
10922
10923 2008-03-28  Simon Josefsson  <simon@josefsson.org>
10924
10925         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
10926         (GC_SHA224_DIGEST_SIZE): Add.
10927
10928         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
10929         (gc_hash_digest_length): Likewise.
10930         (gc_hash_buffer): Likewise.
10931
10932 2008-03-25  Bruno Haible  <bruno@clisp.org>
10933
10934         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
10935         detail which gettext release to use.
10936         Reported by Simon Josefsson.
10937
10938 2008-03-26  Jim Meyering  <meyering@redhat.com>
10939
10940         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
10941         * modules/gnumakefile (clean-GNUmakefile): Also, use
10942         test ... && ... || : syntax rather than if-then ... fi.
10943
10944         gnumakefile: Don't double-quote-expand $(VPATH) value.
10945         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
10946
10947 2008-03-24  Eric Blake  <ebb9@byu.net>
10948
10949         Alter GNUmakefile to install into top directory.
10950         * modules/maintainer-makefile: Split, and add dependency...
10951         * modules/gnumakefile: to this new module.
10952         * build-aux/GNUmakefile: Move...
10953         * top/GNUmakefile: ...here.
10954         * build-aux/maint.mk: Move...
10955         * top/maint.mk: ...here.
10956         * MODULES.html.sh (Support for maintaining...): Document new
10957         module.
10958
10959 2008-03-23  Bruno Haible  <bruno@clisp.org>
10960
10961         * gnulib-tool: New options --vc-files, --no-vc-files.
10962         (func_usage): Document them.
10963         (vc_files): New variable.
10964         (func_import): Consider vc_files.
10965         (func_create_testdir): Set vc_files to empty.
10966         Suggested by Jim Meyering and Karl Berry.
10967
10968 2008-03-23  Bruno Haible  <bruno@clisp.org>
10969
10970         Fix regex compilation error on HP-UX 11.
10971         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
10972         * modules/regex (Files): Add m4/mbstate_t.m4.
10973         Reported by Ton Voon <ton.voon@altinity.com>.
10974
10975 2008-03-23  Bruno Haible  <bruno@clisp.org>
10976
10977         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
10978
10979 2008-03-23  Eric Blake  <ebb9@byu.net>
10980             Bruno Haible  <bruno@clisp.org>
10981
10982         Install files from top/ in the destination directory.
10983         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
10984         augmentation also for the files from top/.
10985         (func_import, func_create_testdir): Rewrite file names:
10986         top/filename -> filename.
10987
10988 2008-03-23  Bruno Haible  <bruno@clisp.org>
10989
10990         Tweak "gnulib --version" output.
10991         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
10992
10993 2008-03-23  Bruno Haible  <bruno@clisp.org>
10994
10995         Tweak "gnulib --version" output.
10996         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
10997         rather than contents of ChangeLog, when possible.
10998
10999 2008-03-21  Eric Blake  <ebb9@byu.net>
11000
11001         More --version tweaks.
11002         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
11003         date of last ChangeLog entry.
11004
11005 2008-03-21  Jim Meyering  <meyering@redhat.com>
11006
11007         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
11008
11009 2008-03-20  Eric Blake  <ebb9@byu.net>
11010
11011         VPATH fix.
11012         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
11013
11014 2008-03-20  Simon Josefsson  <simon@josefsson.org>
11015
11016         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
11017         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
11018
11019 2008-03-20  Eric Blake  <ebb9@byu.net>
11020
11021         Sync GNUmakefile with coreutils.
11022         * build-aux/GNUmakefile (have-Makefile): Rename...
11023         (_have-Makefile): ...to this, for namespace consideration.
11024         (GNUmakefile.cfg): Include, if present.
11025         (_autoreconf): Define a default.
11026         (_is-dist-target): New rule for rebuilds to pick up intra-release
11027         version.
11028         (maint-cfg.mk): Rename...
11029         (cfg.mk): ...to this.
11030
11031 2008-03-18  Jim Meyering  <meyering@redhat.com>
11032
11033         New script and module: mktempd
11034         * MODULES.html.sh (maint+release support): Add mktempd.
11035         * build-aux/mktempd: New file.
11036         * modules/mktempd: New file.
11037
11038 2008-03-15  Jim Meyering  <meyering@redhat.com>
11039
11040         Undo last change.
11041         * lib/sha1.c, lib/md5.c: 63 != ~63.
11042         Reported by Andreas Schwab.
11043
11044         sha1.c, md5.c: Hoist a redundant expression.
11045         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
11046         "ctx->buflen" only once, before calling *_process_block.
11047         * lib/md5.c (md5_process_bytes): Likewise.
11048
11049 2008-03-14  Eric Blake  <ebb9@byu.net>
11050
11051         Bump copyright year in files generated by gnulib-tool.
11052         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
11053         gnulib-tool, rather than hard-coding it.
11054
11055         Fix 'gnulib-tool --version' output to work with git.
11056         * gnulib-tool (func_gnulib_dir): New function, extracted from...
11057         (startup): ...here.
11058         (func_version): Use it to invoke git-version-gen, rather than
11059         relying on CVS keyword expansion.  Modernize wording.
11060         (cvsdatestamp, last_checkin_date, version): Kill unused
11061         variables.
11062
11063 2008-03-12  Jim Meyering  <meyering@redhat.com>
11064
11065         Recognize optional cast of the argument to free.
11066         * build-aux/useless-if-before-free: Update regexps.
11067
11068         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
11069
11070 2008-03-11  Bruno Haible  <bruno@clisp.org>
11071
11072         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
11073         by a single package.
11074         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
11075         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
11076         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
11077         Reported by Sam Steingold <sds@gnu.org>.
11078
11079 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
11080
11081         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
11082         repositories.
11083
11084 2008-03-11  Bruno Haible  <bruno@clisp.org>
11085
11086         Avoid conflicts between local macro definitions.
11087         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
11088         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
11089
11090 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
11091             Bruno Haible  <bruno@clisp.org>
11092
11093         Make va_copy work with some version of xlc on AIX 5.1.
11094         * lib/stdarg.in.h: New file.
11095         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
11096         On AIX, use a <stdarg.h> file substitute.
11097         * modules/stdarg (Files): Add lib/stdarg.in.h.
11098         (Depends-on): Add include_next.
11099         (Makefile.am): Build a stdarg.h substitute if requested.
11100         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
11101
11102 2008-03-10  Bruno Haible  <bruno@clisp.org>
11103
11104         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
11105         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
11106         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
11107
11108 2008-03-10  Bruno Haible  <bruno@clisp.org>
11109
11110         * modules/stdlib (Depends-on): Add include_next, remove
11111         absolute-header.
11112
11113 2008-03-09  Bruno Haible  <bruno@clisp.org>
11114
11115         * lib/freadahead.h (freadahead): Document more precisely.
11116         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
11117         the sum of both buffer sizes.
11118         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
11119         * NEWS: Document the change.
11120
11121 2008-03-09  Bruno Haible  <bruno@clisp.org>
11122
11123         Extend freadptr to return also the buffer size.
11124         * lib/freadptr.h (freadptr): Add sizep argument.
11125         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
11126         (freadptr): Add sizep argument. Determine buffer size like freadahead
11127         does.
11128         * tests/test-freadptr.c: Don't include freadahead.h.
11129         (main): Adapt for new calling convention of freadptr.
11130         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
11131         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
11132         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
11133         tests/test-freadptr2.sh.
11134         (Depends): Remove freadahead.
11135         (TESTS): Add test-freadptr2.sh.
11136         (check_PROGRAMS): Add test-freadptr2.
11137
11138 2008-03-09  Bruno Haible  <bruno@clisp.org>
11139
11140         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
11141         Report and solution by Simon Josefsson.
11142
11143 2008-03-06  Bruno Haible  <bruno@clisp.org>
11144
11145         Make fflush after ungetc work on BSD platforms.
11146         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
11147         * tests/test-fflush2.c: New file.
11148         * tests/test-fflush2.sh: New file.
11149         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
11150         tests/test-fflush2.c.
11151         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
11152         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
11153
11154 2008-03-06  Eric Blake  <ebb9@byu.net>
11155
11156         Likewise for ftello.
11157         * modules/ftello (Dependencies): Add extensions.
11158         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
11159
11160 2008-03-06  Bruno Haible  <bruno@clisp.org>
11161
11162         * modules/fseeko (Dependencies): Add extensions.
11163         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
11164         Needed on glibc systems.
11165
11166 2008-03-06  Bruno Haible  <bruno@clisp.org>
11167
11168         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
11169         email address.
11170         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
11171
11172 2008-03-06  Bruno Haible  <bruno@clisp.org>
11173
11174         * users.txt: Add libgnupdf.
11175
11176 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
11177
11178         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
11179         (Header File Substitutes, Function Substitutes,
11180         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
11181         (Build robot for gnulib): Fix typo.
11182
11183 2008-03-06  Bruno Haible  <bruno@clisp.org>
11184
11185         * doc/gnulib-tool.texi (VCS Issues): Small updates.
11186         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
11187
11188 2008-03-06  Bruno Haible  <bruno@clisp.org>
11189
11190         * doc/func.texi: New file, extracted from doc/gnulib.texi.
11191         * doc/gnulib.texi: Include it.
11192
11193 2008-03-06  Simon Josefsson  <simon@josefsson.org>
11194
11195         * modules/func (License): Change license to unlimited; there was
11196         no LGPL parts in the module anyway.
11197
11198 2008-03-06  Simon Josefsson  <simon@josefsson.org>
11199
11200         * modules/__func__: Renamed to modules/func.
11201         * modules/__func__-tests: Renamed to modules/func-tests.
11202         * tests/test-__func__.c: Renamed to tests/test-func.c.
11203         * m4/__func__.m4: Renamed to m4/func.m4.
11204         * doc/gnulib.texi (__func__): Section renamed to func.
11205         Suggested by Eric Blake <ebb9@byu.net>.
11206
11207 2008-03-06  Simon Josefsson  <simon@josefsson.org>
11208
11209         * doc/gnulib.texi (__func__): Use C99 terminology when talking
11210         about __func__.  Make example self-contained.  Suggested by Eric
11211         Blake <ebb9@byu.net>.
11212
11213         * tests/test-__func__.c (main): Avoid extraneous () around __func.
11214         Suggested by Eric Blake <ebb9@byu.net>.
11215
11216 2008-03-06  Simon Josefsson  <simon@josefsson.org>
11217
11218         * modules/__func__: New file.
11219         * modules/__func__-tests: New file.
11220         * tests/test-__func__.c: New file.
11221         * m4/__func__.m4: New file.
11222         * doc/gnulib.texi (__func__): Document __func__ module.
11223
11224 2008-03-05  Simon Josefsson  <simon@josefsson.org>
11225
11226         * modules/byteswap (License): Re-license as LGPLv2+.
11227
11228 2008-03-05  Simon Josefsson  <simon@josefsson.org>
11229
11230         * doc/Makefile: Add pdf target.
11231
11232 2008-03-05  Simon Josefsson  <simon@josefsson.org>
11233
11234         * modules/inline (License): Use 'unlimited', since there are only
11235         *.m4 files in this module.
11236
11237 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
11238             Bruno Haible  <bruno@clisp.org>
11239
11240         Add support for HP C 7.1 on OpenVMS 8.3.
11241         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
11242
11243 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
11244
11245         Update VMS specifics.
11246         * lib/getopt.c [VMS]: Remove include of unixlib.h.
11247
11248 2008-03-02  Jim Meyering  <meyering@redhat.com>
11249
11250         Remove the last dependency on the "free" module.
11251         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
11252         Reported by Bob Proulx.
11253
11254         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
11255
11256         Remove useless "if" tests before free.  Deprecate "free" module.
11257         * doc/posix-functions/free.texi: Mention that this
11258         module is no longer useful.
11259         * modules/free (Notice): Say this module is obsolete.
11260         * modules/readutmp (Depends-on): Remove free.
11261         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
11262         * lib/putenv.c (putenv): Likewise.
11263         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
11264         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
11265         * tests/test-c-strcasestr.c (main): Likewise.
11266         * tests/test-c-strstr.c (main): Likewise.
11267         * tests/test-mbscasestr1.c (main): Likewise.
11268         * tests/test-mbscasestr2.c (main): Likewise.
11269         * tests/test-mbsstr1.c (main): Likewise.
11270         * tests/test-mbsstr2.c (main): Likewise.
11271         * tests/test-memmem.c (main): Likewise.
11272         * tests/test-strcasestr.c (main): Likewise.
11273         * tests/test-striconv.c (main): Likewise.
11274         * tests/test-striconveh.c (main): Likewise.
11275         * tests/test-striconveha.c (main): Likewise.
11276         * tests/test-strstr.c (main): Likewise.
11277
11278         * build-aux/git-version-gen: Adjust a comment and the Usage string.
11279
11280         bootstrap: sync from coreutils again
11281         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
11282
11283 2008-03-01  Jim Meyering  <meyering@redhat.com>
11284
11285         bootstrap: sync from coreutils
11286         * build-aux/bootstrap (update_po_files): Copy a .po file into place
11287         also when the target doesn't exist.
11288
11289 2008-03-01  Eric Blake  <ebb9@byu.net>
11290
11291         Fix bugs in last patch.
11292         * lib/memchr2.c (memchr2): Fix typo.
11293         * tests/test-memchr2.c: Test previous bug, and don't use GNU
11294         extension.
11295         Reported by Bruce Korb.
11296
11297         New module 'memchr2'.
11298         * modules/memchr2: New file.
11299         * modules/memchr2-tests: Likewise.
11300         * lib/memchr2.h: Likewise.
11301         * lib/memchr2.c: Likewise, based on memchr.c.
11302         * tests/test-memchr2.c: New test.
11303         * MODULES.html.sh (String handling): Add memchr2.
11304
11305 2008-02-29  Bruno Haible  <bruno@clisp.org>
11306
11307         * modules/freadseek-tests: New file.
11308         * tests/test-freadseek.sh: New file.
11309         * tests/test-freadseek.c: New file.
11310
11311         New module 'freadseek'.
11312         * modules/freadseek: New file.
11313         * lib/freadseek.h: New file.
11314         * lib/freadseek.c: New file.
11315         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
11316
11317 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
11318
11319         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
11320         wydawca.
11321
11322         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
11323         program_invocation_name and program_invocation_short_name are
11324         present.
11325
11326 2008-02-28  Bruno Haible  <bruno@clisp.org>
11327
11328         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
11329         * tests/test-freadptr.sh: Also test non-seekable stdin.
11330
11331 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
11332
11333         * build-aux/bootstrap (source_base, m4_base)
11334         (doc_base, tests_base): New variables.
11335         (gnulib_tool_options): Do not hardcode base directories, use
11336         the above variables instead.
11337
11338 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
11339
11340         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
11341
11342 2008-02-28  Bruno Haible  <bruno@clisp.org>
11343
11344         * modules/freadptr-tests: New file.
11345         * tests/test-freadptr.sh: New file.
11346         * tests/test-freadptr.c: New file.
11347
11348         New module 'freadptr'.
11349         * modules/freadptr: New file.
11350         * lib/freadptr.h: New file.
11351         * lib/freadptr.c: New file.
11352         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
11353
11354 2008-02-26  Karl Berry  <karl@freefriends.org>
11355
11356         Sync from Libtool:
11357         * libltdl/argz.c (argz_add, argz_count): New functions.
11358         * libltdl/argz.in.h: Declare them.
11359         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
11360
11361 2008-02-22  Bruno Haible  <bruno@clisp.org>
11362
11363         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
11364         is a pointer type.  Needed for HP-UX 10.
11365         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
11366         * doc/posix-functions/gmtime_r.texi: Likewise.
11367         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
11368
11369 2008-02-24  Bruno Haible  <bruno@clisp.org>
11370
11371         * modules/environ-tests: New file.
11372         * tests/test-environ.c: New file.
11373
11374         New module 'environ'.
11375         * modules/environ: New file.
11376         * lib/unistd.in.h (environ): New declaration.
11377         * m4/environ.m4: New file.
11378         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
11379         after use.
11380         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
11381         HAVE_DECL_ENVIRON.
11382         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
11383         HAVE_DECL_ENVIRON.
11384         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
11385         wrong claim that 'environ' is missing on some systems.
11386         * modules/execute (Depends-on): Add environ.
11387         * lib/execute.c (environ): Remove fallback declaration.
11388         * modules/pipe (Depends-on): Add environ.
11389         * lib/pipe.c (environ): Remove fallback declaration.
11390         * modules/setenv (Depends-on): Add environ.
11391         * lib/setenv.c (environ): Remove fallback declaration.
11392         * modules/unsetenv (Depends-on): Add environ.
11393         * lib/unsetenv.c (environ): Remove fallback declaration.
11394         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
11395         m4/environ.m4.
11396         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
11397         (gl_PREREQ_UNSETENV): Likewise.
11398
11399 2008-02-24  Bruno Haible  <bruno@clisp.org>
11400
11401         * doc/posix-functions/environ.texi: Document the MacOS X problem.
11402
11403 2008-02-20  Bob Proulx  <bob@proulx.com>
11404
11405         Enable use of older two part flavor 'git describe'.
11406         * build-aux/git-version-gen: If using the older two part flavor of
11407         git version then recreate the third part now present in the
11408         newer three part flavor of git describe.
11409
11410 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
11411
11412         * lib/fts.c (fts_build): Typo correction to comment.
11413
11414 2008-02-17  Bruno Haible  <bruno@clisp.org>
11415
11416         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
11417         generating no-op conflicts.
11418
11419 2008-02-17  Bruno Haible  <bruno@clisp.org>
11420
11421         Speed up by 10%.
11422         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
11423         result_entries, rather than an index-based loop.
11424
11425 2008-02-17  Bruno Haible  <bruno@clisp.org>
11426
11427         Speed up by 25%.
11428         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
11429         'hashcode_cached'.
11430         (entry_create): New function.
11431         (entry_hashcode): Use the cached hashcode if possible.
11432         (read_changelog_file, try_split_merged_entry): Use entry_create.
11433
11434 2008-02-17  Bruno Haible  <bruno@clisp.org>
11435
11436         Speed up from O(n^2) to O(n) for long ChangeLog files.
11437         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
11438         (read_changelog_file): Change implementation of entries_reversed list
11439         to rbtreehash.
11440         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
11441
11442 2008-02-17  Bruno Haible  <bruno@clisp.org>
11443
11444         New option --split-merged-entry.
11445         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
11446         (find_paragraph_end, try_split_merged_entry): New functions.
11447         (long_options): Add option --split-merged-entry.
11448         (usage): Document option --split-merged-entry.
11449         (main): Implement option --split-merged-entry.
11450         Reported by Eric Blake.
11451
11452 2008-02-17  Bruno Haible  <bruno@clisp.org>
11453
11454         * lib/git-merge-changelog.c: Include c-strstr.h.
11455         (main): Support the "git pull --rebase" situation.
11456         * modules/git-merge-changelog (Depends-on): Add c-strstr.
11457         Reported by Eric Blake.
11458
11459 2008-02-16  Eric Blake  <ebb9@byu.net>
11460
11461         Avoid doubling \ in common case of "c-maybe" quoting style.
11462         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
11463         eliding outer quotes.
11464         * lib/quotearg.h: Document this.
11465         * tests/test-quotearg.c (result_strings, inputs, results_g)
11466         (flag_results, locale_results): Test it by adding a new string to
11467         each test group.
11468         (compare_strings): Test new string.
11469
11470 2008-02-13  Eric Blake  <ebb9@byu.net>
11471
11472         Avoid trigraph quoting in default output.
11473         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
11474         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
11475         unless explicitly requested.
11476         * tests/test-quotearg.c (flag_results, main): Add additional tests.
11477
11478 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
11479
11480         Don't rely on signed integer overflowing to negative value.
11481         * lib/getugroups.c (getugroups): Include <limits.h>.
11482         Instead, compare against INT_MAX, and increment only if the test passes.
11483
11484 2008-02-13  Jim Meyering  <meyering@redhat.com>
11485         and Eric Blake  <ebb9@byu.net>
11486
11487         Avoid shadowing warning and compile errors on Linux.
11488         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
11489         forwarding macros on Linux.
11490         (dcgettext): Define a stub, for Linux.
11491         (results_g, main): Avoid warnings.
11492
11493 2008-02-12  Eric Blake  <ebb9@byu.net>
11494
11495         Silence warning in last patch.
11496         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
11497
11498         Quotearg part 4: add tests, fix c-maybe colon quoting.
11499         * lib/quotearg.h: Improve documentation.
11500         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
11501         escapes when adding outer quotes.  When quoting trigraphs, use
11502         valid C notation.  When quoting NUL, omit extra characters if next
11503         character is not digit.  Alter prototype.
11504         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
11505         callers.
11506         * modules/quotearg-tests: New module.
11507         * tests/test-quotearg.c: New test.
11508
11509 2008-02-07  Eric Blake  <ebb9@byu.net>
11510
11511         Quotearg part 3: add flag to control outer quote elision.
11512         * lib/quotearg.h (c_maybe_quoting_style): New style.
11513         (enum quoting_flags): Better documentation of flags.
11514         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
11515         c-maybe style.
11516         (quotearg_buffer_restyled): Handle new flag to elide outer
11517         quotes.
11518
11519         Quotearg part 2: add flag that can control NUL elision.
11520         * lib/quotearg.h (set_quoting_flags): New prototype.
11521         * lib/quotearg.c (struct quoting_options): Add flag field.
11522         (set_quoting_flags): New function.
11523         (quotearg_buffer_restyled): Add flags parameter.
11524         (quotearg_alloc_mem): Set the flag if length cannot be returned.
11525         (quotearg_n_options): Set the flag, since length cannot be
11526         returned.
11527         (quoting_options_from_style): Default flags correctly.
11528
11529         Quotearg part 1: more wrappers, restore quotearg_char state.
11530         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
11531         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
11532         (quotearg_colon_mem): New wrappers.
11533         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
11534         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
11535         functions.
11536         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
11537         (quotearg_colon_mem): New functions.
11538
11539 2008-02-11  Bruno Haible  <bruno@clisp.org>
11540
11541         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
11542         library in the current directory: it does not work with parallel make.
11543         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
11544
11545 2008-02-11  Bruno Haible  <bruno@clisp.org>
11546
11547         * .gitattributes: New file.
11548
11549 2008-02-11  Jim Meyering  <meyering@redhat.com>
11550
11551         useless-if-before-free: Fix reversed exit values.
11552         * build-aux/useless-if-before-free: Use correct values
11553         for EXIT_MATCH and EXIT_NO_MATCH.
11554
11555         * build-aux/useless-if-before-free: Close stdout carefully.
11556
11557 2008-02-10  Bruno Haible  <bruno@clisp.org>
11558
11559         New module 'git-merge-changelog'.
11560         * modules/git-merge-changelog: New file.
11561         * lib/git-merge-changelog.c: New file.
11562
11563 2008-02-10  Jim Meyering  <meyering@redhat.com>
11564
11565         useless-if-before-free: New option: --list (-l).
11566
11567         useless-if-before-free: Don't exit immediately upon open failure.
11568         * build-aux/useless-if-before-free: Exit 2 for errors.
11569         Upon failure to open a file, don't exit immediately.
11570         Rather, just warn and continue with any remaining files.
11571
11572 2008-02-10  Bruno Haible  <bruno@clisp.org>
11573
11574         New abstract list operation 'node_set_value'.
11575         * lib/gl_list.h (gl_list_node_set_value): New function.
11576         (struct gl_list_implementation): New field node_set_value.
11577         * lib/gl_list.c (gl_list_node_set_value): New function.
11578         * lib/gl_array_list.c (gl_array_node_set_value): New function.
11579         (gl_array_list_implementation): Update.
11580         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
11581         (gl_carray_list_implementation): Update.
11582         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
11583         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
11584         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
11585         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
11586         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
11587         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
11588         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
11589         Update.
11590         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
11591         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
11592         (gl_sublist_list_implementation): Update.
11593
11594 2008-02-10  Bruno Haible  <bruno@clisp.org>
11595
11596         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
11597         Needed when ELEMENT is #defined to 'some_type *'.
11598
11599 2008-02-10  Jim Meyering  <meyering@redhat.com>
11600
11601         New script and module: useless-if-before-free
11602         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
11603         * build-aux/useless-if-before-free: New file.
11604         * modules/useless-if-before-free: New file.
11605
11606         * build-aux/gitlog-to-changelog: Use committer date, not author date.
11607
11608         xstrtol_error: Fix typo.
11609         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
11610         s/exit_failure/exit_status/.
11611
11612 2008-02-09  Jim Meyering  <meyering@redhat.com>
11613
11614         New script and module: gitlog-to-changelog
11615         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
11616         * modules/gitlog-to-changelog: New file.
11617         * build-aux/gitlog-to-changelog: New file.
11618
11619 2008-02-08  Jim Meyering  <meyering@redhat.com>
11620
11621         Avoid two "parameter unused" warnings.
11622         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
11623         Mark "st" as used.
11624
11625         Use "git COMMAND", not "git-COMMAND".
11626         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
11627         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
11628         * build-aux/git-version-gen: Use "git status", not "git-status".
11629
11630 2008-02-07  Bruno Haible  <bruno@clisp.org>
11631
11632         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
11633         Avoids a crash on Windows Vista.
11634         Reported by Adam Strzelecki <ono@java.pl> via
11635         Simon Josefsson <simon@josefsson.org>.
11636
11637 2008-02-06  Bruno Haible  <bruno@clisp.org>
11638
11639         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
11640         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
11641         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
11642         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
11643         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
11644         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11645         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
11646         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
11647         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11648         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11649         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11650         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11651         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11652         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11653         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11654         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
11655         left-adjust flag.
11656         * tests/test-snprintf-posix.h (test_function): Likewise.
11657         * tests/test-sprintf-posix.h (test_function): Likewise.
11658         * tests/test-vasprintf-posix.c (test_function): Likewise.
11659         * doc/posix-functions/fprintf.texi: Update.
11660         * doc/posix-functions/printf.texi: Update.
11661         * doc/posix-functions/snprintf.texi: Update.
11662         * doc/posix-functions/sprintf.texi: Update.
11663         * doc/posix-functions/vfprintf.texi: Update.
11664         * doc/posix-functions/vprintf.texi: Update.
11665         * doc/posix-functions/vsnprintf.texi: Update.
11666         * doc/posix-functions/vsprintf.texi: Update.
11667         Reported by Peter Fales <psfales@alcatel-lucent.com>.
11668
11669 2008-02-06  Bruno Haible  <bruno@clisp.org>
11670
11671         Fix bug introduced on 2008-01-26.
11672         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
11673
11674 2008-02-06  Bruno Haible  <bruno@clisp.org>
11675
11676         Fix bug introduced on 2007-06-10.
11677         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
11678         !NEED_PRINTF_FLAG_ZERO.
11679
11680 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
11681
11682         getloadavg: use libperfstat on AIX5
11683         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
11684
11685 2008-02-03  Bruno Haible  <bruno@clisp.org>
11686
11687         * lib/diffseq.h: Add comments about required #includes.
11688         Reported by Michael Biggs <gnulib@doubleplum.net>.
11689
11690 2008-02-01  Bruno Haible  <bruno@clisp.org>
11691
11692         * users.txt: Add gnuit.
11693
11694 2008-01-31  Bruno Haible  <bruno@clisp.org>
11695
11696         * lib/md4.c (set_uint32): Mark as inline.
11697         * lib/md5.c (set_uint32): Likewise.
11698         * lib/sha1.c (set_uint32): Likewise.
11699         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
11700         * m4/md5.m4 (gl_MD5): Likewise.
11701         * m4/sha1.m4 (gl_SHA1): Likewise.
11702
11703 2008-01-31  Jim Meyering  <meyering@redhat.com>
11704
11705         Use "sizeof VAR", rather than a literal "4".
11706         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
11707         * lib/md4.c (md4_read_ctx): Likewise.
11708         * lib/sha1.c (sha1_read_ctx): Likewise.
11709
11710 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11711
11712         * tests/test-sha1.c: New file, based on test-md5.c.
11713
11714         * modules/crypto/sha1-tests: New file.
11715
11716 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11717
11718         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
11719
11720 2008-01-31  Jim Meyering  <meyering@redhat.com>
11721
11722         Prefer "sizeof v" over the equivalent "4".
11723         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
11724         * lib/md5.c (set_uint32): Likewise.
11725         * lib/sha1.c (set_uint32): Likewise.
11726
11727 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11728
11729         * lib/sha1.c (set_uint32): Mark function as static.
11730
11731 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11732
11733         md2: clarify comments to say that alignment is not required.
11734         * lib/md2.h: Remove warning about alignment in comment.
11735         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
11736         never been required.
11737
11738 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11739
11740         md4: adapt alignment constraint fix from sha1.
11741         * lib/md4.c (set_uint32): New function, from sha1.c
11742         (md4_read_ctx): Use it.
11743         (md4_finish_ctx): Doc fix.
11744         * lib/md4.h: Doc fix.
11745
11746 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11747
11748         md5: adapt alignment constraint fix from sha1.
11749         * lib/md5.c (set_uint32): New function, from sha1.c
11750         (md5_read_ctx): Use it.
11751         (md5_finish_ctx): Doc fix.
11752         * lib/md5.h: Doc fix.
11753
11754 2008-01-30  Peter Palfrader  <weasel@debian.org>
11755
11756         sha1: remove the result buffer alignment constraint
11757         * lib/sha1.c (set_uint32): New function.
11758         (sha1_read_ctx): Rewrite to remove the result buffer alignment
11759         constraint.
11760         (sha1_finish_ctx): Remove comment warning about alignment constraint.
11761         * lib/sha1.h: Likewise.
11762
11763 2008-01-30  Andreas Schwab  <schwab@suse.de>
11764             Bruno Haible  <bruno@clisp.org>
11765
11766         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
11767         correct definition of LDBL_MIN_EXP.
11768
11769 2008-01-30  Karl Berry  <karl@gnu.org>
11770
11771         * config/srclist-update: try to preserve x bit on updates.
11772         * config/srclistvars.sh: update for karl.
11773
11774 2008-01-29  Jim Meyering  <meyering@redhat.com>
11775
11776         vasnprintf.c: Avoid warning about unused label
11777         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
11778         "overflow" label definition and associated code with the
11779         same cpp condition that guards the sole use of that label.
11780
11781 2008-01-26  Bruno Haible  <bruno@clisp.org>
11782
11783         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
11784         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
11785         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
11786         * lib/isnanl-nolibm.h (isnanl): Likewise.
11787         Reported by Paul Eggert <eggert@cs.ucla.edu>.
11788
11789 2008-01-26  Bruno Haible  <bruno@clisp.org>
11790
11791         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
11792         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
11793
11794 2008-01-26  Bruno Haible  <bruno@clisp.org>
11795
11796         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
11797         GCC >= 4.0 built-in.
11798         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
11799
11800 2008-01-26  Bruno Haible  <bruno@clisp.org>
11801
11802         Rename isnan, applicable to 'double' only, to isnand.
11803         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
11804         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
11805         (configure.ac): Update.
11806         (Include): Replace "isnan.h" with "isnand.h".
11807         * m4/isnand.m4: Renamed from m4/isnan.m4.
11808         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
11809         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
11810         instead of isnan.c.
11811         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
11812         instead of HAVE_ISNAN_IN_LIBC.
11813         (isnand): Renamed from isnan.
11814         * lib/isnand.c: New file.
11815         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
11816         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
11817         (Makefile.am): Update.
11818         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
11819         Include isnand.h instead of isnan.h.
11820         (main): Test isnand instead of isnan.
11821         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
11822         isnan-nolibm.
11823         * modules/frexp (Depends-on): Likewise.
11824         * modules/frexp-tests (Depends-on): Likewise.
11825         * modules/frexp-nolibm (Depends-on): Likewise.
11826         * modules/frexp-nolibm-tests (Depends-on): Likewise.
11827         * modules/isfinite (Depends-on): Likewise.
11828         * modules/round-tests (Depends-on): Likewise.
11829         * modules/signbit (Depends-on): Likewise.
11830         * modules/signbit-tests (Depends-on): Likewise.
11831         * modules/snprintf-posix (Depends-on): Likewise.
11832         * modules/sprintf-posix (Depends-on): Likewise.
11833         * modules/trunc-tests (Depends-on): Likewise.
11834         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
11835         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
11836         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
11837         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
11838         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
11839         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
11840         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
11841         * modules/vasnprintf-posix (Depends-on): Likewise.
11842         * modules/vasprintf-posix (Depends-on): Likewise.
11843         * modules/vfprintf-posix (Depends-on): Likewise.
11844         * modules/vsnprintf-posix (Depends-on): Likewise.
11845         * modules/vsprintf-posix (Depends-on): Likewise.
11846         * lib/frexp.c: Include isnand.h instead of isnan.h.
11847         (ISNAN): Set to isnand instead of isnan.
11848         * lib/isfinite.c: Include isnand.h instead of isnan.h.
11849         (gl_isfinited): Use isnand instead of isnan.
11850         * lib/signbitd.c: Include isnand.h instead of isnan.h.
11851         (gl_signbitd): Use isnand instead of isnan.
11852         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
11853         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
11854         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
11855         (main): Use isnand instead of isnan.
11856         * tests/test-round1.c: Include isnand.h.
11857         (main): Use isnand instead of isnan.
11858         * tests/test-round2.c: Include isnand.h instead of isnan.h.
11859         (ISNAN): Set to isnand instead of isnan.
11860         * tests/test-trunc1.c: Include isnand.h.
11861         (main): Use isnand instead of isnan.
11862         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
11863         (equal): Use isnand instead of isnan.
11864         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
11865         isnand-nolibm.
11866         * NEWS: Mention the change.
11867
11868 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
11869             Bruno Haible  <bruno@clisp.org>
11870
11871         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
11872         the GCC builtins for signbits are present and set
11873         REPLACE_SIGNBIT_USING_GCC if so.
11874         * lib/math.in.h (signbit): Define using GCC builtins if
11875         REPLACE_SIGNBIT_USING_GCC is set.
11876         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
11877         REPLACE_SIGNBIT_USING_GCC.
11878         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
11879
11880 2008-01-25  Jim Meyering  <meyering@redhat.com>
11881
11882         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
11883         * lib/poll.c: Include <config.h>, not "config.h".
11884         * tests/test-getaddrinfo.c: Likewise.
11885
11886 2008-01-25  Simon Josefsson  <simon@josefsson.org>
11887
11888         * modules/sockets-tests: New file.
11889
11890 2008-01-24  Simon Josefsson  <simon@josefsson.org>
11891
11892         * modules/sockets: New module, can be used to call WSA_Startup and
11893         WSA_Cleanup when needed.
11894
11895         * lib/sockets.h, lib/sockets.c: New files.
11896
11897         * m4/sockets.m4: New file.
11898
11899         * tests/test-sockets.c: New file.
11900
11901 2008-01-19  Bruno Haible  <bruno@clisp.org>
11902
11903         * doc/posix-headers: Renamed from doc/headers.
11904         * doc/posix-functions: Renamed from doc/functions.
11905         * doc/gnulib.texi: Update.
11906
11907 2008-01-19  Bruno Haible  <bruno@clisp.org>
11908
11909         * doc/glibc-functions/strcasestr.texi: Include contents of
11910         doc/functions/strcasestr.texi, fixing the list of platforms.
11911         * doc/functions/strcasestr.texi: Remove file.
11912
11913 2008-01-19  Bruno Haible  <bruno@clisp.org>
11914
11915         * doc/glibc-functions/memmem.texi: Include contents of
11916         doc/functions/memmem.texi.
11917         * doc/functions/memmem.texi: Remove file.
11918
11919 2008-01-18  Bruno Haible  <bruno@clisp.org>
11920
11921         * doc/glibc-functions/*.texi: New files.
11922         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
11923         to use the new files.
11924
11925 2008-01-17  Bruno Haible  <bruno@clisp.org>
11926
11927         * tests/test-gethostname.c (main): Fix printf statement.
11928
11929 2008-01-17  Simon Josefsson  <simon@josefsson.org>
11930
11931         * modules/gethostname-tests: New file.
11932
11933         * tests/test-gethostname.c: New file.
11934
11935 2008-01-17  Simon Josefsson  <simon@josefsson.org>
11936
11937         * lib/gethostname.c: Include string.h unconditionally, strncpy is
11938         used by the UNAME case.  Reported by Bruno Haible
11939         <bruno@clisp.org>.
11940
11941 2008-01-17  Eric Blake  <ebb9@byu.net>
11942
11943         Convert c-strcasestr to be more efficient.
11944         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
11945         (Depends-on): Add c-strcase, remove malloca, strnlen.
11946         * tests/test-c-strcasestr.c (main): Enhance test.
11947         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
11948
11949 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
11950
11951         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
11952         Use it in creating po/Makevars.
11953
11954 2008-01-15  Simon Josefsson  <simon@josefsson.org>
11955
11956         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
11957         Applications that requires it should initialize libgcrypt
11958         manually.
11959
11960 2008-01-16  Simon Josefsson  <simon@josefsson.org>
11961
11962         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
11963
11964 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
11965
11966         Fix problem with getdate on mingw32 reported by Simon Josefsson
11967         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
11968         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
11969         tzname", when deciding whether to declare tzname.
11970         * lib/strftime.c (tzname): Likewise.
11971
11972 2008-01-15  Bruno Haible  <bruno@clisp.org>
11973
11974         Work around a MacOS X 10.5 bug in frexpl().
11975         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
11976         * doc/functions/frexpl.texi: Document the bug.
11977         Reported by Elias Pipping <pipping@gentoo.org>.
11978
11979 2008-01-14  Eric Blake  <ebb9@byu.net>
11980
11981         Touch up previous patch.
11982         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
11983         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
11984
11985         Convert strcasestr module to use Two-Way algorithm.
11986         * modules/strcasestr-simple: New module, based on the old
11987         strcasestr, but with Two-Way rather than KMP.
11988         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
11989         * lib/string.in.h (rpl_strcasestr): Declare.
11990         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
11991         performance.
11992         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
11993         * modules/string (Makefile.am): Support strcasestr.
11994         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
11995         * modules/strcasestr-tests (Depends-on): Check for alarm.
11996         * tests/test-strcasestr.c: Augment test.
11997         * lib/str-two-way.h: Clean up stray macro.
11998         * NEWS: Document new module.
11999         * MODULES.html.sh (string handling): Likewise.
12000         * doc/functions/strcasestr.texi: New file.
12001         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
12002         here, since it is not a POSIX function.
12003
12004 2008-01-14  Colin Watson  <cjwatson@debian.org>
12005             Bruno Haible  <bruno@clisp.org>
12006
12007         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
12008         works fine; if not, set REPLACE_STRSIGNAL.
12009         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
12010         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
12011         REPLACE_STRSIGNAL.
12012         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
12013         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
12014         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
12015
12016 2008-01-14  Bruno Haible  <bruno@clisp.org>
12017
12018         * modules/strsignal (Include): Change to <string.h>.
12019
12020 2008-01-14  Colin Watson  <cjwatson@debian.org>
12021
12022         * modules/argp (Notice): Add a notice recommending to change
12023         XGETTEXT_OPTIONS.
12024         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
12025
12026 2008-01-13  Colin Watson  <cjwatson@debian.org>
12027
12028         * modules/strsignal-tests: New file.
12029         * tests/test-strsignal.c: New file.
12030
12031         * lib/strsignal.c: New file, from glibc with modifications.
12032         * lib/siglist.h: New file, from glibc with modifications.
12033         * lib/string.in.h (strsignal): New declaration.
12034         * m4/strsignal.m4: New file.
12035         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
12036         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
12037         * modules/strsignal: New file.
12038         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
12039         HAVE_DECL_STRSIGNAL.
12040
12041 2008-01-13  Bruno Haible  <bruno@clisp.org>
12042
12043         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
12044         locale encoding is not ASCII. Needed for OpenBSD 4.0.
12045         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
12046         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
12047
12048 2008-01-13  Bruno Haible  <bruno@clisp.org>
12049
12050         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
12051         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
12052         * lib/argp.h (__attribute__): Likewise.
12053         * lib/c-stack.c (__attribute__): Likewise.
12054         * lib/error.h (__attribute__): Likewise.
12055         * lib/fts.c (__attribute__): Likewise.
12056         * lib/openat.h (__attribute__): Likewise.
12057         * lib/stdio.in.h (__attribute__): Likewise.
12058         * lib/string.in.h (__attribute__): Likewise.
12059         * lib/utimens.c (__attribute__): Likewise.
12060         * lib/vasnprintf.h (__attribute__): Likewise.
12061         * lib/xalloc.h (__attribute__): Likewise.
12062         * lib/xprintf.h (__attribute__): Likewise.
12063         * lib/xstrtol.h (__attribute__): Likewise.
12064         * lib/xvasprintf.h (__attribute__): Likewise.
12065
12066 2008-01-12  Bruno Haible  <bruno@clisp.org>
12067
12068         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
12069         * doc/glibc-headers/a.out.texi: New file.
12070         * doc/glibc-headers/aliases.texi: New file.
12071         * doc/glibc-headers/alloca.texi: New file.
12072         * doc/glibc-headers/ar.texi: New file.
12073         * doc/glibc-headers/argp.texi: New file.
12074         * doc/glibc-headers/argz.texi: New file.
12075         * doc/glibc-headers/byteswap.texi: New file.
12076         * doc/glibc-headers/crypt.texi: New file.
12077         * doc/glibc-headers/endian.texi: New file.
12078         * doc/glibc-headers/envz.texi: New file.
12079         * doc/glibc-headers/err.texi: New file.
12080         * doc/glibc-headers/error.texi: New file.
12081         * doc/glibc-headers/execinfo.texi: New file.
12082         * doc/glibc-headers/fpu_control.texi: New file.
12083         * doc/glibc-headers/fstab.texi: New file.
12084         * doc/glibc-headers/fts.texi: New file.
12085         * doc/glibc-headers/getopt.texi: New file.
12086         * doc/glibc-headers/ieee754.texi: New file.
12087         * doc/glibc-headers/ifaddrs.texi: New file.
12088         * doc/glibc-headers/libintl.texi: New file.
12089         * doc/glibc-headers/mcheck.texi: New file.
12090         * doc/glibc-headers/mntent.texi: New file.
12091         * doc/glibc-headers/obstack.texi: New file.
12092         * doc/glibc-headers/paths.texi: New file.
12093         * doc/glibc-headers/printf.texi: New file.
12094         * doc/glibc-headers/pty.texi: New file.
12095         * doc/glibc-headers/resolv.texi: New file.
12096         * doc/glibc-headers/shadow.texi: New file.
12097         * doc/glibc-headers/sysexits.texi: New file.
12098         * doc/glibc-headers/ttyent.texi: New file.
12099
12100 2008-01-12  Jim Meyering  <meyering@redhat.com>
12101
12102         announce-gen: emit Gnulib's git-based version string.
12103         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
12104         New option --gnulib-version=V, where V is expected to be
12105         the output of running git describe in the gnulib directory.
12106         (get_tool_versions): Request feedback on xdelta.  I suspect it's
12107         not useful, and plan to stop publishing an xdelta file with each
12108         coreutils release.
12109
12110         * build-aux/announce-gen: Also check for lzma-compressed files.
12111
12112 2008-01-11  Bruno Haible  <bruno@clisp.org>
12113
12114         * tests/test-memmem.c (main): Increase maximum allowed time.
12115         * tests/test-strstr.c (main): Likewise.
12116
12117 2008-01-11  Bruno Haible  <bruno@clisp.org>
12118
12119         * doc/functions/memmem.texi: Add more precisions about platforms.
12120         * doc/functions/strstr.texi: Likewise.
12121
12122 2008-01-10  Eric Blake  <ebb9@byu.net>
12123
12124         * m4/strstr.m4: Delete cruft from copy-n-paste.
12125         Reported by Bruno Haible.
12126
12127 2008-01-10  Bruno Haible  <bruno@clisp.org>
12128
12129         Make c-strstr rely on strstr.
12130         * lib/c-strstr.c: Don't include str-kmp.h.
12131         (c_strstr): Define in terms of strstr.
12132         * modules/c-strstr (Files): Remove lib/str-kmp.h.
12133         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
12134
12135 2008-01-10  Bruno Haible  <bruno@clisp.org>
12136
12137         * doc/gnulib.texi (String Functions in C Locale): New section.
12138         * doc/c-ctype.texi: New file.
12139         * doc/c-strcase.texi: New file.
12140         * doc/c-strcaseeq.texi: New file.
12141         * doc/c-strcasestr.texi: New file.
12142         * doc/c-strstr.texi: New file.
12143         * doc/c-strtod.texi: New file.
12144         * doc/c-strtold.texi: New file.
12145
12146 2008-01-10  Eric Blake  <ebb9@byu.net>
12147
12148         * lib/relocatable.h: Fix a comment.
12149
12150 2008-01-10  Eric Blake  <ebb9@byu.net>
12151
12152         Share two-way algorithm.
12153         * lib/str-two-way.h: New file, merged from...
12154         * lib/memmem.c: ...here...
12155         * lib/strstr.c: ...and here.
12156         * modules/memmem (Files): Use it.
12157         * modules/strstr (Files): Likewise.
12158
12159         Avoid quadratic strstr implementations.
12160         * lib/strstr.c: New file.
12161         * m4/strstr.m4: Likewise.
12162         * modules/strstr: Likewise.
12163         * modules/strstr-tests: Likewise.
12164         * tests/test-strstr.c: Likewise.
12165         * lib/string.in.h (rpl_strstr): Declare.
12166         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
12167         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
12168         * modules/string (Makefile.am): Likewise.
12169         * MODULES.html.sh (string handling): Mention new module.
12170         * doc/functions/strstr.texi (strstr): Document the bug.
12171
12172 2008-01-10  Bruno Haible  <bruno@clisp.org>
12173
12174         * lib/relocatable.h (relocate): State whether result is freshly
12175         allocated or not.
12176         * lib/relocatable.c (relocate): Return a freshly allocated string
12177         instead of a pointer to a privately held string.
12178         Reported by Sylvain Beucler <beuc@gnu.org>.
12179
12180 2008-01-10  Colin Watson  <cjwatson@debian.org>
12181
12182         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
12183         s/S_ISNLK/S_ISLNK/.
12184
12185 2008-01-09  Bruno Haible  <bruno@clisp.org>
12186
12187         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
12188         and other files.
12189         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
12190         if it's only a guess.
12191         * modules/memmem: Simplify by depending on memmem-simple.
12192
12193 2008-01-09  Bruno Haible  <bruno@clisp.org>
12194
12195         Work around OpenBSD 4.0 tdelete() bug.
12196         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
12197         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
12198         macros and don't redefine the enum values.
12199         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
12200         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
12201         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
12202
12203 2008-01-09  Bruno Haible  <bruno@clisp.org>
12204
12205         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
12206         (main): Don't perform the tests if setlocale did not install a UTF-8
12207         locale. Needed on OpenBSD 4.0.
12208         * modules/wcwidth-tests (Depends-on): Add localcharset.
12209
12210 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
12211
12212         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
12213         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
12214         * NEWS: announce this.
12215         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
12216
12217 2008-01-09  Simon Josefsson  <simon@josefsson.org>
12218         and Eric Blake  <ebb9@byu.net>
12219
12220         Add memmem-simple module.
12221         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
12222         (gl_FUNC_MEMMEM): Separate performance from presence checks.
12223         * modules/memmem-simple: New file.
12224         * modules/memmem (Description): Tweak.
12225         * MODULES.html.sh (string handling): Mention new module.
12226         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
12227         addressed by memmem-simple.
12228         * NEWS: Document the difference.
12229
12230 2008-01-09  Eric Blake  <ebb9@byu.net>
12231
12232         Give gcc some memmem optimization hints.
12233         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
12234         (strcasestr): Declare as pure.
12235         * modules/memmem (Maintainer): Claim my implementation.
12236
12237 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12238
12239         Support AIX 6.1 and higher.
12240         * build-aux/config.libpath: Likewise.
12241         * build-aux/config.rpath: Likewise.
12242
12243 2008-01-08  Jim Meyering  <meyering@redhat.com>
12244             Bruno Haible  <bruno@clisp.org>
12245
12246         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
12247         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
12248         Reported by Peter Fales in
12249         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
12250
12251 2008-01-08  Bruno Haible  <bruno@clisp.org>
12252
12253         * modules/unictype/category-of (Depends-on): Add
12254         unictype/category-none.
12255         * modules/unictype/category-and-tests (Depends-on): Add
12256         unictype/category-{L,N,Lu,Nd}.
12257         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
12258         * modules/unictype/category-or-tests (Depends-on): Add
12259         unictype/category-{L,N}.
12260         * modules/unictype/category-name-tests (Depends-on): Add
12261         unictype/category-{Z,Nl}.
12262         Reported by Simon Josefsson.
12263
12264 2008-01-08  Bruno Haible  <bruno@clisp.org>
12265
12266         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
12267         convention better.
12268         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
12269         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
12270         Reported by Peter Miller <millerp@canb.auug.org.au>.
12271
12272 2008-01-08  Eric Blake  <ebb9@byu.net>
12273
12274         Rewrite memmem to guarantee linear complexity without malloc.
12275         * lib/memmem.c (memmem): Use Two-Way rather than
12276         Knuth-Morris-Pratt, to allow O(1) space usage.
12277         (critical_factorization, two_way_short_needle)
12278         (two_way_long_needle): New functions.
12279         (knuth_morris_pratt): Delete.
12280         * modules/memmem (Depends-on): No longer need malloca or stdbool.
12281         Add stdint.
12282         * tests/test-memmem.c (main): Add tests for periodic needle and
12283         sublinear performance.
12284         * doc/functions/memmem.texi (memmem): Document other deficiencies
12285         in cygwin and older glibc.
12286
12287 2008-01-08  Bruno Haible  <bruno@clisp.org>
12288
12289         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
12290         augmentation.
12291
12292 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
12293
12294         Add a configure time option: --disable-acl.
12295         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
12296         AC_ARG_ENABLE(acl).
12297
12298 2008-01-06  Simon Josefsson  <simon@josefsson.org>
12299
12300         * tests/test-localename.c: Don't include obsolete "setenv.h".
12301
12302         * modules/localename-tests (Depends-on): Need unsetenv.
12303
12304 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12305
12306         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
12307
12308 2008-01-06  Colin Watson  <cjwatson@debian.org>
12309
12310         * users.txt: Add man-db.
12311
12312 2008-01-07  Bruno Haible  <bruno@clisp.org>
12313
12314         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
12315         previous section name.
12316
12317 2008-01-07  Bruno Haible  <bruno@clisp.org>
12318
12319         * lib/progname.c (set_program_name): Don't strip off a leading
12320         "lt-" prefix outside a .libs directory.
12321         Suggested by Paul Eggert.
12322
12323 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
12324             Bruno Haible  <bruno@clisp.org>
12325
12326         Improve memory cleanup in 'relocatable' module.
12327         * lib/relocatable.h (compute_curr_prefix): Change return type to
12328         'char *'.
12329         * lib/relocatable.c (compute_curr_prefix): Change return type to
12330         'char *'. Free curr_installdir after use.
12331         (relocate): Free curr_prefix_better after use.
12332         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
12333
12334 2008-01-01  Bruno Haible  <bruno@clisp.org>
12335
12336         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
12337         failure on older glibc systems.
12338         Reported by Peter Fales <psfales@alcatel-lucent.com>.
12339
12340 2008-01-05  Eric Blake  <ebb9@byu.net>
12341
12342         Avoid quadratic system memmem.
12343         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
12344         Reported by Ralf Wildenhues.
12345
12346         Fix memmem test for mingw.
12347         * modules/memmem-tests (configure.ac): Check for alarm.
12348         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
12349         it.
12350         * doc/functions/memmem.texi: New file.
12351         * doc/gnulib.texi (Function Substitutes): Add memmem.
12352         Reported by Bruno Haible.
12353
12354 2008-01-04  Bruno Haible  <bruno@clisp.org>
12355
12356         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
12357         Require gl_HEADER_STRINGS_H_DEFAULTS, not
12358         gl_HEADER_STRING_H_DEFAULTS.
12359
12360 2008-01-04  Eric Blake  <ebb9@byu.net>
12361
12362         Shorten duration of memmem test.
12363         * tests/test-memmem.c (main): Use alarm to declare failure if test
12364         is taking too long.
12365         Reported by Ralf Wildenhues.
12366
12367 2007-12-21  Simon Josefsson  <simon@josefsson.org>
12368
12369         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
12370         string, needed by strerror.
12371
12372 2008-01-03  Colin Watson  <cjwatson@debian.org>
12373             Bruno Haible  <bruno@clisp.org>
12374
12375         * doc/gnulib-tool.texi (Localization): New section.
12376
12377 2008-01-02  Bruno Haible  <bruno@clisp.org>
12378
12379         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
12380         variables to 'unsigned char *' type.
12381         Reported by Paul Eggert.
12382
12383 2008-01-02  Jim Meyering  <jim@meyering.net>
12384
12385         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
12386
12387 2007-12-31  Jim Meyering  <jim@meyering.net>
12388
12389         Avoid use of private FTS type name.
12390         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
12391
12392 2007-12-30  Karl Berry  <karl@gnu.org>
12393
12394         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
12395         work around defect in Texinfo and/or the standalone Info browser.
12396
12397 2007-12-30  Bruno Haible  <bruno@clisp.org>
12398
12399         Unify 5 copies of the KMP code.
12400         * lib/str-kmp.h: New file.
12401         * lib/c-strcasestr.c: Include str-kmp.h.
12402         (knuth_morris_pratt): Remove function.
12403         (c_strcasestr): Update.
12404         * lib/c-strstr.c: Include str-kmp.h.
12405         (knuth_morris_pratt): Remove function.
12406         (c_strcasestr): Update.
12407         * lib/mbscasestr.c: Include str-kmp.h.
12408         (knuth_morris_pratt_unibyte): Remove function.
12409         * lib/mbsstr.c: Include str-kmp.h.
12410         (knuth_morris_pratt_unibyte): Remove function.
12411         * lib/strcasestr.c: Include str-kmp.h.
12412         (knuth_morris_pratt): Remove function.
12413         (strcasestr): Update.
12414         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
12415         * modules/c-strstr (Files): Likewise.
12416         * modules/mbscasestr (Files): Likewise.
12417         * modules/mbsstr (Files): Likewise.
12418         * modules/strcasestr (Files): Likewise.
12419         Suggested by Paul Eggert.
12420
12421 2007-12-30  Bruno Haible  <bruno@clisp.org>
12422
12423         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
12424         defined.
12425
12426 2007-12-30  Bruno Haible  <bruno@clisp.org>
12427
12428         * lib/xmalloca.h: Include xalloc.h.
12429         (xnmalloca): New macro.
12430
12431 2007-12-30  Bruno Haible  <bruno@clisp.org>
12432
12433         * lib/malloca.h (nmalloca): New macro.
12434         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
12435         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
12436         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
12437         knuth_morris_pratt_multibyte): Likewise.
12438         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
12439         knuth_morris_pratt_multibyte): Likewise.
12440         * lib/memmem.c (knuth_morris_pratt): Likewise.
12441         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
12442
12443 2007-12-25  Bruno Haible  <bruno@clisp.org>
12444
12445         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
12446         * lib/glob.c: Don't include openat.h.
12447         (link_exists2_p): Add back the code that deals with the
12448         !GLOB_ALTDIRFUNC case.
12449         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
12450         let it do the filename concatenation.
12451         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
12452         * modules/glob (Depends-on): Remove openat.
12453
12454 2007-12-31  Bruno Haible  <bruno@clisp.org>
12455
12456         * modules/dirfd (License): Change to LGPLv2+.
12457         Approved by Jim Meyering.
12458
12459 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12460
12461         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
12462         when multiplying M by sizeof (size_t).
12463
12464 2007-12-10  Martin Lambers  <marlam@marlam.de>
12465
12466         Override getpagesize on mingw.
12467         * lib/getpagesize.c: New file.
12468         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
12469         * modules/getpagesize (Files): Add lib/getpagesize.c.
12470         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
12471         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
12472         REPLACE_GETPAGESIZE.
12473         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
12474
12475 2007-12-25  Bruno Haible  <bruno@clisp.org>
12476
12477         * modules/localcharset (Notice): New field.
12478         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
12479         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
12480
12481 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
12482             Bruno Haible  <bruno@clisp.org>
12483
12484         Avoid using the syntax symbol() in formatted documentation.
12485         * MODULES.html.sh (func_module): When replacing symbol() with a
12486         hyperlink, remove the parentheses. Show an error if some remain.
12487         Recognize and render the '...' syntax.
12488         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
12489         Rework. Add paragraph about GCC's inlining.
12490         * doc/alloca.texi: Likewise.
12491         * doc/error.texi: Remove parentheses from symbol reference.
12492         * doc/gnulib-intro.texi: Likewise.
12493         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
12494         * modules/fnmatch (Description): Reword to say "the ... function".
12495         * modules/full-read (Description): Likewise.
12496         * modules/full-write (Description): Likewise.
12497         * modules/safe-read (Description): Likewise.
12498         * modules/safe-write (Description): Likewise.
12499         * modules/strchrnul (Description): Likewise.
12500         * modules/trim (Description): Likewise.
12501         * modules/error (Description): Remove parentheses from symbol
12502         references.
12503         * modules/verror (Description): Likewise.
12504         Reported by Karl Berry.
12505
12506 2007-12-25  Bruno Haible  <bruno@clisp.org>
12507
12508         Fixup after 2007-10-16 commit.
12509         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
12510
12511 2007-12-24  Bruno Haible  <bruno@clisp.org>
12512
12513         Make --enable-relocatable work with DESTDIR.
12514         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
12515         to compute installdir from destprog.
12516         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
12517         also set the RELOC_DESTDIR variable.
12518         Reported by Левашев Иван <octagram@bluebottle.com>.
12519
12520 2007-12-24  Bruno Haible  <bruno@clisp.org>
12521
12522         Fix link error due to xalloc_die().
12523         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
12524         of xreadlink.
12525         * lib/relocwrapper.c: Update comments.
12526         * build-aux/install-reloc: Remove xreadlink.c from file list.
12527         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
12528         xreadlink.c.
12529         Reported by Левашев Иван <octagram@bluebottle.com>.
12530
12531 2007-12-24  Bruno Haible  <bruno@clisp.org>
12532
12533         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
12534         * lib/setenv.h: Remove file.
12535         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
12536         lib/setenv.h.
12537         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
12538         (Depends-on): Add stdlib.
12539         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
12540         gl_FUNC_UNSETENV.
12541         (Include): Replace setenv.h with <stdlib.h>.
12542         * modules/unsetenv: New file.
12543         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
12544         * lib/unsetenv.c: Include <stdlib.h> first.
12545         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
12546         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
12547         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
12548         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
12549         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
12550         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
12551         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
12552         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
12553         * doc/functions/unsetenv.texi: Update.
12554         * modules/xsetenv (Depends-on): Add unsetenv.
12555         * modules/getdate (Depends-on): Likewise.
12556         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
12557         * lib/xsetenv.c: Don't include setenv.h.
12558         * lib/getdate.y: Likewise.
12559         * lib/relocwrapper.c: Likewise.
12560         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
12561         (Depends-on): Add stdlib.
12562         * NEWS: Mention the changes.
12563         Reported by Левашев Иван <octagram@bluebottle.com>.
12564
12565 2007-12-23  Bruno Haible  <bruno@clisp.org>
12566
12567         * lib/memmem.c (memmem): Use lowercase variable names. Tab
12568         indentation.
12569
12570 2007-12-23  Bruno Haible  <bruno@clisp.org>
12571
12572         * lib/c-strcasestr.c: Add more comments.
12573         * lib/c-strstr.c: Likewise.
12574         * lib/mbscasestr.c: Likewise.
12575         * lib/mbsstr.c: Likewise.
12576         * lib/strcasestr.c: Likewise.
12577         * lib/memmem.c: Likewise.
12578
12579 2007-12-23  Bruno Haible  <bruno@clisp.org>
12580
12581         * tests/test-memmem.c: Include <string.h> first.
12582
12583 2007-12-22  Bruno Haible  <bruno@clisp.org>
12584
12585         * gnulib-tool (func_create_testdir): Change $auxdir while generating
12586         the contents of $testsbase.
12587         Reported by Ralf Wildenhues.
12588
12589 2007-12-22  Bruno Haible  <bruno@clisp.org>
12590
12591         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
12592         two variables local_ldadd_before, local_ldadd_last.
12593
12594 2007-12-20  Eric Blake  <ebb9@byu.net>
12595
12596         Work around circular library issue when cross-compiling.
12597         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
12598         that progname.o does not need to pull in rpl_memcmp.
12599
12600 2007-12-19  Eric Blake  <ebb9@byu.net>
12601
12602         Fix memmem to avoid O(n^2) worst-case complexity.
12603         * lib/memmem.c (knuth_morris_pratt): New function.
12604         (memmem): Use it if first few naive iterations fail.
12605         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
12606         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
12607         * modules/memchr (License): Likewise.
12608         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
12609         malloca.
12610         * tests/test-memmem.c: Rewrite, borrowing ideas from
12611         test-mbsstr1.c; the old version wouldn't even compile!
12612         * modules/memmem-tests: New file.
12613         * lib/string.in.h (rpl_memmem): Add declaration.
12614         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
12615         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
12616         REPLACE_MEMMEM.
12617
12618 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
12619
12620         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
12621         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
12622         before any system include files, and undef after them all.  This
12623         should fix a problem on VMS reported by John E. Malmberg in
12624         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
12625
12626 2007-12-17  Eric Blake  <ebb9@byu.net>
12627
12628         Revert addition of verify, for BSD/OS.
12629         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
12630         can't handle large files, for the sake of obsolete platforms.
12631         * modules/fseeko (Depends-on): Remove verify.
12632         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
12633         * doc/functions/ftello.texi (ftello): Likewise.
12634         * doc/functions/fgetpos.texi (fgetpos): Likewise.
12635         Reported by Larry Jones.
12636
12637 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
12638
12639         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
12640         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
12641
12642 2007-12-17  Jim Meyering  <meyering@redhat.com>
12643
12644         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
12645         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
12646         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
12647         * modules/getcwd (Depends-on): Add openat.
12648         Reported by Petr Salinger.
12649
12650 2007-12-17  Bruno Haible  <bruno@clisp.org>
12651
12652         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
12653         avoid a segmentation fault of the configure test on x86_64 systems.
12654
12655 2007-12-15  Jim Meyering  <meyering@redhat.com>
12656
12657         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
12658
12659 2007-12-13  Eric Blake  <ebb9@byu.net>
12660
12661         Another fseek test.
12662         * tests/test-fseek.c (main): Also test ungetc handling.
12663         * tests/test-fseeko.c (main): Likewise.
12664         * modules/fseeko (Depends-on): Add verify.
12665         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
12666         large.
12667         Reported by Larry Jones.
12668
12669         Fix fseeko on mingw.
12670         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
12671         seek.
12672
12673         Beef up fseek tests.
12674         * tests/test-fseek.c (main): Also test eof handling.
12675         * tests/test-fseeko.c (main): Likewise.
12676         Reported by Larry Jones.
12677
12678 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
12679
12680         Fix fseeko on BSD-based platforms.
12681         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
12682         successful seek.
12683
12684 2007-12-12  Eric Blake  <ebb9@byu.net>
12685
12686         Allow circular dependency of separate libtests.a
12687         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
12688         when use_libtests.
12689
12690 2007-12-11  Eric Blake  <ebb9@byu.net>
12691
12692         Fix bug with -0.0L in previous patch.
12693         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
12694         * tests/test-isnan.c (main): Also test on zeroes.
12695         * tests/test-isnanf.c (main): Likewise.
12696         * tests/test-isnanl.h (main): Likewise.
12697
12698         Detect pseudo-denormals on x86 even when cross-compiling.
12699         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
12700         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
12701         invalid bit patterns that happen to satisfy ==.
12702
12703         Avoid link failures with separate libtests.a.
12704         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
12705         last, to satisfy circular dependencies.
12706
12707 2007-12-11  Eric Blake  <ebb9@byu.net>
12708         and Bruno Haible  <bruno@clisp.org>
12709
12710         Fix OpenBSD 4.0 <float.h> handling of long double.
12711         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
12712         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
12713         * doc/headers/float.texi (float.h): Document OpenBSD bug.
12714
12715 2007-12-11  Jim Meyering  <meyering@redhat.com>
12716
12717         * users.txt: Add libvirt.
12718
12719         Support versions of autoconf prior to 2.59c.
12720         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
12721         if it is not already defined.
12722
12723 2007-12-09  Bruno Haible  <bruno@clisp.org>
12724
12725         Let 'gnulib-tool --import' collect sources needed for the tests in
12726         tests/ rather than in lib/.
12727         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
12728         argument. If true, add rules to generate libtests.a, and put libtests.a
12729         into $(LDADD). Consider source files in subdirectories and set
12730         uses_subdirs.
12731         (func_emit_initmacro_start, func_emit_initmacro_end,
12732         func_emit_initmacro_done): Pass all arguments explicitly.
12733         (func_import): Determine two module lists main_modules,
12734         testsrelated_modules. Determine use_libtests. Determine two variables
12735         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
12736         instead of just sed_transform_lib_file. Determine two variables
12737         main_files and testsrelated_files. Compute 'files' as the union of
12738         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
12739         func_add_or_update. In the generated gnulib-comp.m4, collect the
12740         object files for tests/ in different variables than those for lib/.
12741         Substitute LIBTESTS_LIBDEPS.
12742         (func_create_testdir): Combine the uses_subdirs results from
12743         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
12744
12745 2007-12-09  Bruno Haible  <bruno@clisp.org>
12746
12747         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
12748         the build-aux directory.
12749
12750 2007-12-09  Bruno Haible  <bruno@clisp.org>
12751
12752         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
12753         introduced on 2006-09-09.
12754
12755 2007-12-07  Jim Meyering  <meyering@redhat.com>
12756
12757         Let these macros work also with autoconf-2.59.
12758         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
12759         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
12760         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
12761
12762 2007-12-06  Jim Meyering  <meyering@redhat.com>
12763
12764         Avoid a configure-time syntax error in gl_FUNC_ACL.
12765         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
12766         function in each branch, before testing the cache variable.
12767
12768 2007-12-04  Eric Blake  <ebb9@byu.net>
12769
12770         Make scripts executable.
12771         * build-aux/config.guess: Add execute permissions.
12772         * build-aux/config.sub: Likewise.
12773         * build-aux/gendocs.sh: Likewise.
12774
12775         Fix frexp on mingw.
12776         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
12777         cross-compiling.
12778         * doc/functions/frexp.texi (frexp): Document the bug.
12779
12780         Make cygwin fseeko check more reliable.
12781         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
12782         version numbers, rather than unrelated feature check.
12783         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
12784         * doc/functions/ftello.texi (ftello): Likewise.
12785         Reported by Bruno Haible.
12786
12787         * m4/strerror.m4: Bump version number.
12788
12789 2007-12-03  Bruno Haible  <bruno@clisp.org>
12790
12791         * doc/functions/mprotect.texi: Mention the mingw problem.
12792
12793 2007-12-03  Eric Blake  <ebb9@byu.net>
12794
12795         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
12796         REPLACE_STRERROR is initialized before this macro.
12797
12798 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
12799
12800         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
12801         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
12802         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
12803         put -lsec in even for programs other than 'ls'.  This fixes a problem
12804         for gettext reported by Bruno Haible in
12805         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
12806         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
12807         Add support for Solaris 10.  This isn't efficient, but should get the
12808         job done for now.
12809
12810 2007-12-03  James Youngman  <jay@gnu.org>
12811
12812         * doc/regexprops-generic.texi: change "an close-group" to "a
12813         close-group" and "illegal" to "not allowed".
12814
12815 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12816
12817         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
12818         pr_byname.h. Needed for the rare case when the maintainer has done
12819         "make maintainer-clean" in the source directory and then attempts a
12820         build outside the source directory.
12821         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
12822         scripts_byname.h.
12823
12824 2007-12-02  Martin Lambers <marlam@marlam.de>
12825             Bruno Haible  <bruno@clisp.org>
12826
12827         * lib/getpagesize.h: Remove file.
12828         * lib/unistd.in.h: Include declaration of getpagesize here.
12829         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
12830         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
12831         HAVE_SYS_PARAM_H.
12832         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
12833         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
12834         * modules/getpagesize (Files): Remove lib/getpagesize.h.
12835         (Depends-on): Add unistd.
12836         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
12837         (Include): Use <unistd.h> instead of getpagesize.h.
12838         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
12839         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
12840         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
12841         gl_GETPAGESIZE invocation, already handled by module dependency.
12842         * lib/pagealign_alloc.c: Don't include getpagesize.h.
12843
12844 2007-12-02  Bruno Haible  <bruno@clisp.org>
12845
12846         * modules/strings-tests: New file.
12847         * tests/test-strings.c: New file.
12848
12849         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
12850         * lib/strings.in.h: New file.
12851         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
12852         * m4/strings_h.m4: New file.
12853         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
12854         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
12855         * modules/strings: New file.
12856         * modules/string (Makefile.am): Update.
12857         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
12858         Reported by Karl Berry.
12859
12860 2007-12-01  Eric Blake  <ebb9@byu.net>
12861
12862         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
12863         accomodate fix in cygwin 1.5.25.
12864
12865 2007-12-01  Jim Meyering  <meyering@redhat.com>
12866
12867         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
12868         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
12869         that would inhibit utf8-optimization of a regexp containing line-
12870         or buffer-anchors, e.g., `^', `$'.
12871
12872 2007-11-30  Bruno Haible  <bruno@clisp.org>
12873
12874         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
12875         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
12876         glthread_recursive_lock_init.
12877         * lib/lock.c (glthread_recursive_lock_init)
12878         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
12879         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
12880
12881 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
12882
12883         New function qset_acl, like set_acl but with syscall semantics.
12884         * lib/acl.h (qset_acl): New decl.
12885         * lib/acl.c (qset_acl): New function.
12886         (set_acl): Use new function.  Use more-consistent diagnostics.
12887
12888 2007-11-28  Jim Meyering  <meyering@redhat.com>
12889
12890         * modules/physmem (License): Change from GPL to LGPLv2+.
12891
12892 2007-11-26  Bruno Haible  <bruno@clisp.org>
12893
12894         * lib/vasnprintf.c (decode_long_double): Don't abort if the
12895         'long double' type has excess precision.
12896         Reported by Jim Meyering in
12897         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
12898
12899 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12900
12901         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
12902         Sync from <http://gnu.org/licenses>.
12903         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
12904         with license text from same location.
12905         * doc/maintain.texi, doc/standards.texi:  Sync from
12906         <http://savannah.gnu.org/projects/gnustandards>.
12907
12908 2007-11-22  Ondřej Vašík  <ovasik@redhat.com>
12909         and Jim Meyering  <meyering@redhat.com>
12910
12911         Adjust getdate' grammar to accept a slightly more regular language.
12912         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
12913         Before, the former was rejected.
12914         * lib/getdate.y (digits_to_date_time): New function, factored
12915         out of ...
12916         (number): ...here.  Just call digits_to_date_time.
12917         (hybrid): New non-terminal to handle an <unsigned number,
12918         signed relative offset> sequence consistently.
12919
12920 2007-11-18  Jim Meyering  <meyering@redhat.com>
12921
12922         Pull my changes from coreutils:
12923         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
12924         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
12925         use of $gnulib_tool_option_extras, so that it's separated from the
12926         preceding argument.
12927
12928         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
12929         * build-aux/bootstrap (cp_mark_as_generated): Create any required
12930         parent destination directories before copying a file into place.
12931
12932 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
12933
12934         bootstrap: work also with 4-argument variant of AC_INIT
12935         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
12936
12937 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
12938
12939         Port test-getaddrinfo to Solaris.
12940         Problem reported by Bruno Haible in
12941         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
12942         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
12943         explanation of setting 'hints'.
12944         Don't reject an implementation merely because it returns EAI_SERVICE.
12945         (EAI_SERVICE): Define to 0 if not defined.
12946
12947 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
12948
12949         The license of gnu-make and posix-shell is now "GPLed build tool".
12950         * modules/gnu-make (License): Likewise.
12951         * modules/posix-shell (License): Likewise.
12952
12953         New module posix-shell, for determining a POSIX shell
12954         or perhaps something that is close enough to a POSIX shell.
12955         * m4/posix-shell.m4: New file.
12956         * modules/posix-shell: New file.
12957
12958         * MODULES.html.sh: Mention new module.
12959
12960         New module gnu-make, for determining whether we're using GNU Make.
12961         * m4/gnu-make.m4: New file.
12962         * modules/gnu-make: New file.
12963         * MODULES.html.sh: Mention new module.
12964
12965 2007-11-14  Jim Meyering  <meyering@redhat.com>
12966
12967         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
12968         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
12969         use this macro to create a function _definition_.
12970         Remove useless "#undef ARGMATCH_DIE".
12971
12972 2007-11-14  Bruno Haible  <bruno@clisp.org>
12973
12974         * lib/config.charset: Update for OpenBSD 4.1.
12975         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
12976
12977 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
12978
12979         Document 64-bit #if problems in stdint.texi.
12980         * doc/headers/stdint.texi (stdint.h): Mention problems with
12981         64-bit-#if, and how to work around them.
12982
12983         Don't insist on 'long long int' support in the preprocessor.  It
12984         breaks too many things.  For example, PRIdMAX still uses a 'long
12985         long int' format with the latest Sun compiler, even though
12986         HAVE_LONG_LONG_INT isn't defined due to that compiler's
12987         preprocessor problem.  This causes the latest coreutils to dump
12988         core on Solaris 10 sparc with the Sun C compiler.
12989         Instead, fix the 2007-10-16 problem in a different way, by evaluating
12990         the troublesome expressions at configure-time, not at #if-time.
12991         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
12992         preprocessor.
12993         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
12994         compile-time C checks, done at 'configure'-time.
12995         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
12996         * modules/inttypes (Makefile): Substitute the new symbols that
12997         gl_INTTYPES_H now generates.
12998         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
12999
13000 2007-11-12  Bruno Haible  <bruno@clisp.org>
13001
13002         Tests for Unicode character classification functions.
13003
13004         * modules/unictype/bidicategory-byname-tests: New file.
13005         * modules/unictype/bidicategory-name-tests: New file.
13006         * modules/unictype/bidicategory-of-tests: New file.
13007         * modules/unictype/bidicategory-test-tests: New file.
13008         * modules/unictype/block-list-tests: New file.
13009         * modules/unictype/block-of-tests: New file.
13010         * modules/unictype/block-test-tests: New file.
13011         * modules/unictype/category-C-tests: New file.
13012         * modules/unictype/category-Cc-tests: New file.
13013         * modules/unictype/category-Cf-tests: New file.
13014         * modules/unictype/category-Cn-tests: New file.
13015         * modules/unictype/category-Co-tests: New file.
13016         * modules/unictype/category-Cs-tests: New file.
13017         * modules/unictype/category-L-tests: New file.
13018         * modules/unictype/category-Ll-tests: New file.
13019         * modules/unictype/category-Lm-tests: New file.
13020         * modules/unictype/category-Lo-tests: New file.
13021         * modules/unictype/category-Lt-tests: New file.
13022         * modules/unictype/category-Lu-tests: New file.
13023         * modules/unictype/category-M-tests: New file.
13024         * modules/unictype/category-Mc-tests: New file.
13025         * modules/unictype/category-Me-tests: New file.
13026         * modules/unictype/category-Mn-tests: New file.
13027         * modules/unictype/category-N-tests: New file.
13028         * modules/unictype/category-Nd-tests: New file.
13029         * modules/unictype/category-Nl-tests: New file.
13030         * modules/unictype/category-No-tests: New file.
13031         * modules/unictype/category-P-tests: New file.
13032         * modules/unictype/category-Pc-tests: New file.
13033         * modules/unictype/category-Pd-tests: New file.
13034         * modules/unictype/category-Pe-tests: New file.
13035         * modules/unictype/category-Pf-tests: New file.
13036         * modules/unictype/category-Pi-tests: New file.
13037         * modules/unictype/category-Po-tests: New file.
13038         * modules/unictype/category-Ps-tests: New file.
13039         * modules/unictype/category-S-tests: New file.
13040         * modules/unictype/category-Sc-tests: New file.
13041         * modules/unictype/category-Sk-tests: New file.
13042         * modules/unictype/category-Sm-tests: New file.
13043         * modules/unictype/category-So-tests: New file.
13044         * modules/unictype/category-Z-tests: New file.
13045         * modules/unictype/category-Zl-tests: New file.
13046         * modules/unictype/category-Zp-tests: New file.
13047         * modules/unictype/category-Zs-tests: New file.
13048         * modules/unictype/category-and-not-tests: New file.
13049         * modules/unictype/category-and-tests: New file.
13050         * modules/unictype/category-byname-tests: New file.
13051         * modules/unictype/category-name-tests: New file.
13052         * modules/unictype/category-none-tests: New file.
13053         * modules/unictype/category-of-tests: New file.
13054         * modules/unictype/category-or-tests: New file.
13055         * modules/unictype/category-test-withtable-tests: New file.
13056         * modules/unictype/combining-class-tests: New file.
13057         * modules/unictype/ctype-alnum-tests: New file.
13058         * modules/unictype/ctype-alpha-tests: New file.
13059         * modules/unictype/ctype-blank-tests: New file.
13060         * modules/unictype/ctype-cntrl-tests: New file.
13061         * modules/unictype/ctype-digit-tests: New file.
13062         * modules/unictype/ctype-graph-tests: New file.
13063         * modules/unictype/ctype-lower-tests: New file.
13064         * modules/unictype/ctype-print-tests: New file.
13065         * modules/unictype/ctype-punct-tests: New file.
13066         * modules/unictype/ctype-space-tests: New file.
13067         * modules/unictype/ctype-upper-tests: New file.
13068         * modules/unictype/ctype-xdigit-tests: New file.
13069         * modules/unictype/decimal-digit-tests: New file.
13070         * modules/unictype/digit-tests: New file.
13071         * modules/unictype/mirror-tests: New file.
13072         * modules/unictype/numeric-tests: New file.
13073         * modules/unictype/property-alphabetic-tests: New file.
13074         * modules/unictype/property-ascii-hex-digit-tests: New file.
13075         * modules/unictype/property-bidi-arabic-digit-tests: New file.
13076         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
13077         * modules/unictype/property-bidi-block-separator-tests: New file.
13078         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
13079         * modules/unictype/property-bidi-common-separator-tests: New file.
13080         * modules/unictype/property-bidi-control-tests: New file.
13081         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
13082         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
13083         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
13084         * modules/unictype/property-bidi-european-digit-tests: New file.
13085         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
13086         * modules/unictype/property-bidi-left-to-right-tests: New file.
13087         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
13088         * modules/unictype/property-bidi-other-neutral-tests: New file.
13089         * modules/unictype/property-bidi-pdf-tests: New file.
13090         * modules/unictype/property-bidi-segment-separator-tests: New file.
13091         * modules/unictype/property-bidi-whitespace-tests: New file.
13092         * modules/unictype/property-byname-tests: New file.
13093         * modules/unictype/property-combining-tests: New file.
13094         * modules/unictype/property-composite-tests: New file.
13095         * modules/unictype/property-currency-symbol-tests: New file.
13096         * modules/unictype/property-dash-tests: New file.
13097         * modules/unictype/property-decimal-digit-tests: New file.
13098         * modules/unictype/property-default-ignorable-code-point-tests: New file.
13099         * modules/unictype/property-deprecated-tests: New file.
13100         * modules/unictype/property-diacritic-tests: New file.
13101         * modules/unictype/property-extender-tests: New file.
13102         * modules/unictype/property-format-control-tests: New file.
13103         * modules/unictype/property-grapheme-base-tests: New file.
13104         * modules/unictype/property-grapheme-extend-tests: New file.
13105         * modules/unictype/property-grapheme-link-tests: New file.
13106         * modules/unictype/property-hex-digit-tests: New file.
13107         * modules/unictype/property-hyphen-tests: New file.
13108         * modules/unictype/property-id-continue-tests: New file.
13109         * modules/unictype/property-id-start-tests: New file.
13110         * modules/unictype/property-ideographic-tests: New file.
13111         * modules/unictype/property-ids-binary-operator-tests: New file.
13112         * modules/unictype/property-ids-trinary-operator-tests: New file.
13113         * modules/unictype/property-ignorable-control-tests: New file.
13114         * modules/unictype/property-iso-control-tests: New file.
13115         * modules/unictype/property-join-control-tests: New file.
13116         * modules/unictype/property-left-of-pair-tests: New file.
13117         * modules/unictype/property-line-separator-tests: New file.
13118         * modules/unictype/property-logical-order-exception-tests: New file.
13119         * modules/unictype/property-lowercase-tests: New file.
13120         * modules/unictype/property-math-tests: New file.
13121         * modules/unictype/property-non-break-tests: New file.
13122         * modules/unictype/property-not-a-character-tests: New file.
13123         * modules/unictype/property-numeric-tests: New file.
13124         * modules/unictype/property-other-alphabetic-tests: New file.
13125         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
13126         * modules/unictype/property-other-grapheme-extend-tests: New file.
13127         * modules/unictype/property-other-id-continue-tests: New file.
13128         * modules/unictype/property-other-id-start-tests: New file.
13129         * modules/unictype/property-other-lowercase-tests: New file.
13130         * modules/unictype/property-other-math-tests: New file.
13131         * modules/unictype/property-other-uppercase-tests: New file.
13132         * modules/unictype/property-paired-punctuation-tests: New file.
13133         * modules/unictype/property-paragraph-separator-tests: New file.
13134         * modules/unictype/property-pattern-syntax-tests: New file.
13135         * modules/unictype/property-pattern-white-space-tests: New file.
13136         * modules/unictype/property-private-use-tests: New file.
13137         * modules/unictype/property-punctuation-tests: New file.
13138         * modules/unictype/property-quotation-mark-tests: New file.
13139         * modules/unictype/property-radical-tests: New file.
13140         * modules/unictype/property-sentence-terminal-tests: New file.
13141         * modules/unictype/property-soft-dotted-tests: New file.
13142         * modules/unictype/property-space-tests: New file.
13143         * modules/unictype/property-terminal-punctuation-tests: New file.
13144         * modules/unictype/property-test-tests: New file.
13145         * modules/unictype/property-titlecase-tests: New file.
13146         * modules/unictype/property-unassigned-code-value-tests: New file.
13147         * modules/unictype/property-unified-ideograph-tests: New file.
13148         * modules/unictype/property-uppercase-tests: New file.
13149         * modules/unictype/property-variation-selector-tests: New file.
13150         * modules/unictype/property-white-space-tests: New file.
13151         * modules/unictype/property-xid-continue-tests: New file.
13152         * modules/unictype/property-xid-start-tests: New file.
13153         * modules/unictype/property-zero-width-tests: New file.
13154         * modules/unictype/scripts-tests: New file.
13155         * modules/unictype/syntax-c-ident-tests: New file.
13156         * modules/unictype/syntax-c-whitespace-tests: New file.
13157         * modules/unictype/syntax-java-ident-tests: New file.
13158         * modules/unictype/syntax-java-whitespace-tests: New file.
13159         * tests/unictype/test-bidi_byname.c: New file.
13160         * tests/unictype/test-bidi_name.c: New file.
13161         * tests/unictype/test-bidi_of.c: New file.
13162         * tests/unictype/test-bidi_test.c: New file.
13163         * tests/unictype/test-block_list.c: New file.
13164         * tests/unictype/test-block_of.c: New file.
13165         * tests/unictype/test-block_test.c: New file.
13166         * tests/unictype/test-categ_and.c: New file.
13167         * tests/unictype/test-categ_and_not.c: New file.
13168         * tests/unictype/test-categ_byname.c: New file.
13169         * tests/unictype/test-categ_name.c: New file.
13170         * tests/unictype/test-categ_none.c: New file.
13171         * tests/unictype/test-categ_of.c: New file.
13172         * tests/unictype/test-categ_or.c: New file.
13173         * tests/unictype/test-categ_test_withtable.c: New file.
13174         * tests/unictype/test-combining.c: New file.
13175         * tests/unictype/test-decdigit.c: New file.
13176         * tests/unictype/test-digit.c: New file.
13177         * tests/unictype/test-mirror.c: New file.
13178         * tests/unictype/test-numeric.c: New file.
13179         * tests/unictype/test-pr_byname.c: New file.
13180         * tests/unictype/test-pr_test.c: New file.
13181         * tests/unictype/test-predicate-part1.h: New file.
13182         * tests/unictype/test-predicate-part2.h: New file.
13183         * tests/unictype/test-scripts.c: New file.
13184         * tests/unictype/test-sy_c_ident.c: New file.
13185         * tests/unictype/test-sy_java_ident.c: New file.
13186
13187         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
13188         for Unicode 5.0.0.
13189         * tests/unictype/test-categ_Cc.c: Likewise.
13190         * tests/unictype/test-categ_Cf.c: Likewise.
13191         * tests/unictype/test-categ_Cn.c: Likewise.
13192         * tests/unictype/test-categ_Co.c: Likewise.
13193         * tests/unictype/test-categ_Cs.c: Likewise.
13194         * tests/unictype/test-categ_L.c: Likewise.
13195         * tests/unictype/test-categ_Ll.c: Likewise.
13196         * tests/unictype/test-categ_Lm.c: Likewise.
13197         * tests/unictype/test-categ_Lo.c: Likewise.
13198         * tests/unictype/test-categ_Lt.c: Likewise.
13199         * tests/unictype/test-categ_Lu.c: Likewise.
13200         * tests/unictype/test-categ_M.c: Likewise.
13201         * tests/unictype/test-categ_Mc.c: Likewise.
13202         * tests/unictype/test-categ_Me.c: Likewise.
13203         * tests/unictype/test-categ_Mn.c: Likewise.
13204         * tests/unictype/test-categ_N.c: Likewise.
13205         * tests/unictype/test-categ_Nd.c: Likewise.
13206         * tests/unictype/test-categ_Nl.c: Likewise.
13207         * tests/unictype/test-categ_No.c: Likewise.
13208         * tests/unictype/test-categ_P.c: Likewise.
13209         * tests/unictype/test-categ_Pc.c: Likewise.
13210         * tests/unictype/test-categ_Pd.c: Likewise.
13211         * tests/unictype/test-categ_Pe.c: Likewise.
13212         * tests/unictype/test-categ_Pf.c: Likewise.
13213         * tests/unictype/test-categ_Pi.c: Likewise.
13214         * tests/unictype/test-categ_Po.c: Likewise.
13215         * tests/unictype/test-categ_Ps.c: Likewise.
13216         * tests/unictype/test-categ_S.c: Likewise.
13217         * tests/unictype/test-categ_Sc.c: Likewise.
13218         * tests/unictype/test-categ_Sk.c: Likewise.
13219         * tests/unictype/test-categ_Sm.c: Likewise.
13220         * tests/unictype/test-categ_So.c: Likewise.
13221         * tests/unictype/test-categ_Z.c: Likewise.
13222         * tests/unictype/test-categ_Zl.c: Likewise.
13223         * tests/unictype/test-categ_Zp.c: Likewise.
13224         * tests/unictype/test-categ_Zs.c: Likewise.
13225         * tests/unictype/test-ctype_alnum.c: Likewise.
13226         * tests/unictype/test-ctype_alpha.c: Likewise.
13227         * tests/unictype/test-ctype_blank.c: Likewise.
13228         * tests/unictype/test-ctype_cntrl.c: Likewise.
13229         * tests/unictype/test-ctype_digit.c: Likewise.
13230         * tests/unictype/test-ctype_graph.c: Likewise.
13231         * tests/unictype/test-ctype_lower.c: Likewise.
13232         * tests/unictype/test-ctype_print.c: Likewise.
13233         * tests/unictype/test-ctype_punct.c: Likewise.
13234         * tests/unictype/test-ctype_space.c: Likewise.
13235         * tests/unictype/test-ctype_upper.c: Likewise.
13236         * tests/unictype/test-ctype_xdigit.c: Likewise.
13237         * tests/unictype/test-decdigit.h: Likewise.
13238         * tests/unictype/test-digit.h: Likewise.
13239         * tests/unictype/test-numeric.h: Likewise.
13240         * tests/unictype/test-pr_alphabetic.c: Likewise.
13241         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
13242         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
13243         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
13244         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
13245         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
13246         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
13247         * tests/unictype/test-pr_bidi_control.c: Likewise.
13248         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
13249         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
13250         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
13251         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
13252         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
13253         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
13254         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
13255         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
13256         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
13257         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
13258         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
13259         * tests/unictype/test-pr_combining.c: Likewise.
13260         * tests/unictype/test-pr_composite.c: Likewise.
13261         * tests/unictype/test-pr_currency_symbol.c: Likewise.
13262         * tests/unictype/test-pr_dash.c: Likewise.
13263         * tests/unictype/test-pr_decimal_digit.c: Likewise.
13264         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
13265         * tests/unictype/test-pr_deprecated.c: Likewise.
13266         * tests/unictype/test-pr_diacritic.c: Likewise.
13267         * tests/unictype/test-pr_extender.c: Likewise.
13268         * tests/unictype/test-pr_format_control.c: Likewise.
13269         * tests/unictype/test-pr_grapheme_base.c: Likewise.
13270         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
13271         * tests/unictype/test-pr_grapheme_link.c: Likewise.
13272         * tests/unictype/test-pr_hex_digit.c: Likewise.
13273         * tests/unictype/test-pr_hyphen.c: Likewise.
13274         * tests/unictype/test-pr_id_continue.c: Likewise.
13275         * tests/unictype/test-pr_id_start.c: Likewise.
13276         * tests/unictype/test-pr_ideographic.c: Likewise.
13277         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
13278         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
13279         * tests/unictype/test-pr_ignorable_control.c: Likewise.
13280         * tests/unictype/test-pr_iso_control.c: Likewise.
13281         * tests/unictype/test-pr_join_control.c: Likewise.
13282         * tests/unictype/test-pr_left_of_pair.c: Likewise.
13283         * tests/unictype/test-pr_line_separator.c: Likewise.
13284         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
13285         * tests/unictype/test-pr_lowercase.c: Likewise.
13286         * tests/unictype/test-pr_math.c: Likewise.
13287         * tests/unictype/test-pr_non_break.c: Likewise.
13288         * tests/unictype/test-pr_not_a_character.c: Likewise.
13289         * tests/unictype/test-pr_numeric.c: Likewise.
13290         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
13291         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
13292         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
13293         * tests/unictype/test-pr_other_id_continue.c: Likewise.
13294         * tests/unictype/test-pr_other_id_start.c: Likewise.
13295         * tests/unictype/test-pr_other_lowercase.c: Likewise.
13296         * tests/unictype/test-pr_other_math.c: Likewise.
13297         * tests/unictype/test-pr_other_uppercase.c: Likewise.
13298         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
13299         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
13300         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
13301         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
13302         * tests/unictype/test-pr_private_use.c: Likewise.
13303         * tests/unictype/test-pr_punctuation.c: Likewise.
13304         * tests/unictype/test-pr_quotation_mark.c: Likewise.
13305         * tests/unictype/test-pr_radical.c: Likewise.
13306         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
13307         * tests/unictype/test-pr_soft_dotted.c: Likewise.
13308         * tests/unictype/test-pr_space.c: Likewise.
13309         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
13310         * tests/unictype/test-pr_titlecase.c: Likewise.
13311         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
13312         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
13313         * tests/unictype/test-pr_uppercase.c: Likewise.
13314         * tests/unictype/test-pr_variation_selector.c: Likewise.
13315         * tests/unictype/test-pr_white_space.c: Likewise.
13316         * tests/unictype/test-pr_xid_continue.c: Likewise.
13317         * tests/unictype/test-pr_xid_start.c: Likewise.
13318         * tests/unictype/test-pr_zero_width.c: Likewise.
13319         * tests/unictype/test-sy_c_whitespace.c: Likewise.
13320         * tests/unictype/test-sy_java_whitespace.c: Likewise.
13321
13322 2007-11-12  Bruno Haible  <bruno@clisp.org>
13323
13324         Unicode character classification functions.
13325         * lib/unictype.h: New file.
13326         * modules/unictype/base: New file.
13327         * modules/unictype/category-L: New file.
13328         * modules/unictype/category-Lu: New file.
13329         * modules/unictype/category-Ll: New file.
13330         * modules/unictype/category-Lt: New file.
13331         * modules/unictype/category-Lm: New file.
13332         * modules/unictype/category-Lo: New file.
13333         * modules/unictype/category-M: New file.
13334         * modules/unictype/category-Mn: New file.
13335         * modules/unictype/category-Mc: New file.
13336         * modules/unictype/category-Me: New file.
13337         * modules/unictype/category-N: New file.
13338         * modules/unictype/category-Nd: New file.
13339         * modules/unictype/category-Nl: New file.
13340         * modules/unictype/category-No: New file.
13341         * modules/unictype/category-P: New file.
13342         * modules/unictype/category-Pc: New file.
13343         * modules/unictype/category-Pd: New file.
13344         * modules/unictype/category-Ps: New file.
13345         * modules/unictype/category-Pe: New file.
13346         * modules/unictype/category-Pi: New file.
13347         * modules/unictype/category-Pf: New file.
13348         * modules/unictype/category-Po: New file.
13349         * modules/unictype/category-S: New file.
13350         * modules/unictype/category-Sm: New file.
13351         * modules/unictype/category-Sc: New file.
13352         * modules/unictype/category-Sk: New file.
13353         * modules/unictype/category-So: New file.
13354         * modules/unictype/category-Z: New file.
13355         * modules/unictype/category-Zs: New file.
13356         * modules/unictype/category-Zl: New file.
13357         * modules/unictype/category-Zp: New file.
13358         * modules/unictype/category-C: New file.
13359         * modules/unictype/category-Cc: New file.
13360         * modules/unictype/category-Cf: New file.
13361         * modules/unictype/category-Cs: New file.
13362         * modules/unictype/category-Co: New file.
13363         * modules/unictype/category-Cn: New file.
13364         * modules/unictype/category-or: New file.
13365         * modules/unictype/category-of: New file.
13366         * modules/unictype/category-test: New file.
13367         * modules/unictype/category-test-withtable: New file.
13368         * modules/unictype/category-byname: New file.
13369         * modules/unictype/category-none: New file.
13370         * modules/unictype/category-and: New file.
13371         * modules/unictype/category-and-not: New file.
13372         * modules/unictype/category-name: New file.
13373         * modules/unictype/combining-class: New file.
13374         * modules/unictype/category-all: New file.
13375         * modules/unictype/bidicategory-all: New file.
13376         * modules/unictype/bidicategory-byname: New file.
13377         * modules/unictype/bidicategory-name: New file.
13378         * modules/unictype/bidicategory-of: New file.
13379         * modules/unictype/bidicategory-test: New file.
13380         * modules/unictype/decimal-digit: New file.
13381         * modules/unictype/digit: New file.
13382         * modules/unictype/numeric: New file.
13383         * modules/unictype/mirror: New file.
13384         * modules/unictype/property-white-space: New file.
13385         * modules/unictype/property-alphabetic: New file.
13386         * modules/unictype/property-other-alphabetic: New file.
13387         * modules/unictype/property-not-a-character: New file.
13388         * modules/unictype/property-default-ignorable-code-point: New file.
13389         * modules/unictype/property-other-default-ignorable-code-point: New
13390         file.
13391         * modules/unictype/property-deprecated: New file.
13392         * modules/unictype/property-logical-order-exception: New file.
13393         * modules/unictype/property-variation-selector: New file.
13394         * modules/unictype/property-private-use: New file.
13395         * modules/unictype/property-unassigned-code-value: New file.
13396         * modules/unictype/property-uppercase: New file.
13397         * modules/unictype/property-other-uppercase: New file.
13398         * modules/unictype/property-lowercase: New file.
13399         * modules/unictype/property-other-lowercase: New file.
13400         * modules/unictype/property-titlecase: New file.
13401         * modules/unictype/property-soft-dotted: New file.
13402         * modules/unictype/property-id-start: New file.
13403         * modules/unictype/property-other-id-start: New file.
13404         * modules/unictype/property-id-continue: New file.
13405         * modules/unictype/property-other-id-continue: New file.
13406         * modules/unictype/property-xid-start: New file.
13407         * modules/unictype/property-xid-continue: New file.
13408         * modules/unictype/property-pattern-white-space: New file.
13409         * modules/unictype/property-pattern-syntax: New file.
13410         * modules/unictype/property-join-control: New file.
13411         * modules/unictype/property-grapheme-base: New file.
13412         * modules/unictype/property-grapheme-extend: New file.
13413         * modules/unictype/property-other-grapheme-extend: New file.
13414         * modules/unictype/property-grapheme-link: New file.
13415         * modules/unictype/property-bidi-control: New file.
13416         * modules/unictype/property-bidi-left-to-right: New file.
13417         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
13418         * modules/unictype/property-bidi-arabic-right-to-left: New file.
13419         * modules/unictype/property-bidi-european-digit: New file.
13420         * modules/unictype/property-bidi-eur-num-separator: New file.
13421         * modules/unictype/property-bidi-eur-num-terminator: New file.
13422         * modules/unictype/property-bidi-arabic-digit: New file.
13423         * modules/unictype/property-bidi-common-separator: New file.
13424         * modules/unictype/property-bidi-block-separator: New file.
13425         * modules/unictype/property-bidi-segment-separator: New file.
13426         * modules/unictype/property-bidi-whitespace: New file.
13427         * modules/unictype/property-bidi-non-spacing-mark: New file.
13428         * modules/unictype/property-bidi-boundary-neutral: New file.
13429         * modules/unictype/property-bidi-pdf: New file.
13430         * modules/unictype/property-bidi-embedding-or-override: New file.
13431         * modules/unictype/property-bidi-other-neutral: New file.
13432         * modules/unictype/property-hex-digit: New file.
13433         * modules/unictype/property-ascii-hex-digit: New file.
13434         * modules/unictype/property-ideographic: New file.
13435         * modules/unictype/property-unified-ideograph: New file.
13436         * modules/unictype/property-radical: New file.
13437         * modules/unictype/property-ids-binary-operator: New file.
13438         * modules/unictype/property-ids-trinary-operator: New file.
13439         * modules/unictype/property-zero-width: New file.
13440         * modules/unictype/property-space: New file.
13441         * modules/unictype/property-non-break: New file.
13442         * modules/unictype/property-iso-control: New file.
13443         * modules/unictype/property-format-control: New file.
13444         * modules/unictype/property-dash: New file.
13445         * modules/unictype/property-hyphen: New file.
13446         * modules/unictype/property-punctuation: New file.
13447         * modules/unictype/property-line-separator: New file.
13448         * modules/unictype/property-paragraph-separator: New file.
13449         * modules/unictype/property-quotation-mark: New file.
13450         * modules/unictype/property-sentence-terminal: New file.
13451         * modules/unictype/property-terminal-punctuation: New file.
13452         * modules/unictype/property-currency-symbol: New file.
13453         * modules/unictype/property-math: New file.
13454         * modules/unictype/property-other-math: New file.
13455         * modules/unictype/property-paired-punctuation: New file.
13456         * modules/unictype/property-left-of-pair: New file.
13457         * modules/unictype/property-combining: New file.
13458         * modules/unictype/property-composite: New file.
13459         * modules/unictype/property-decimal-digit: New file.
13460         * modules/unictype/property-numeric: New file.
13461         * modules/unictype/property-diacritic: New file.
13462         * modules/unictype/property-extender: New file.
13463         * modules/unictype/property-ignorable-control: New file.
13464         * modules/unictype/property-test: New file.
13465         * modules/unictype/property-byname: New file.
13466         * modules/unictype/property-all: New file.
13467         * modules/unictype/scripts: New file.
13468         * modules/unictype/scripts-all: New file.
13469         * modules/unictype/block-of: New file.
13470         * modules/unictype/block-test: New file.
13471         * modules/unictype/block-list: New file.
13472         * modules/unictype/block-all: New file.
13473         * modules/unictype/syntax-c-whitespace: New file.
13474         * modules/unictype/syntax-java-whitespace: New file.
13475         * modules/unictype/syntax-c-ident: New file.
13476         * modules/unictype/syntax-java-ident: New file.
13477         * modules/unictype/ctype-alnum: New file.
13478         * modules/unictype/ctype-alpha: New file.
13479         * modules/unictype/ctype-cntrl: New file.
13480         * modules/unictype/ctype-digit: New file.
13481         * modules/unictype/ctype-graph: New file.
13482         * modules/unictype/ctype-lower: New file.
13483         * modules/unictype/ctype-print: New file.
13484         * modules/unictype/ctype-punct: New file.
13485         * modules/unictype/ctype-space: New file.
13486         * modules/unictype/ctype-upper: New file.
13487         * modules/unictype/ctype-xdigit: New file.
13488         * modules/unictype/ctype-blank: New file.
13489         * lib/unictype/bidi_byname.c: New file.
13490         * lib/unictype/bidi_name.c: New file.
13491         * lib/unictype/bidi_of.c: New file.
13492         * lib/unictype/bidi_test.c: New file.
13493         * lib/unictype/bitmap.h: New file.
13494         * lib/unictype/block_test.c: New file.
13495         * lib/unictype/blocks.c: New file.
13496         * lib/unictype/categ_C.c: New file.
13497         * lib/unictype/categ_Cc.c: New file.
13498         * lib/unictype/categ_Cf.c: New file.
13499         * lib/unictype/categ_Cn.c: New file.
13500         * lib/unictype/categ_Co.c: New file.
13501         * lib/unictype/categ_Cs.c: New file.
13502         * lib/unictype/categ_L.c: New file.
13503         * lib/unictype/categ_Ll.c: New file.
13504         * lib/unictype/categ_Lm.c: New file.
13505         * lib/unictype/categ_Lo.c: New file.
13506         * lib/unictype/categ_Lt.c: New file.
13507         * lib/unictype/categ_Lu.c: New file.
13508         * lib/unictype/categ_M.c: New file.
13509         * lib/unictype/categ_Mc.c: New file.
13510         * lib/unictype/categ_Me.c: New file.
13511         * lib/unictype/categ_Mn.c: New file.
13512         * lib/unictype/categ_N.c: New file.
13513         * lib/unictype/categ_Nd.c: New file.
13514         * lib/unictype/categ_Nl.c: New file.
13515         * lib/unictype/categ_No.c: New file.
13516         * lib/unictype/categ_P.c: New file.
13517         * lib/unictype/categ_Pc.c: New file.
13518         * lib/unictype/categ_Pd.c: New file.
13519         * lib/unictype/categ_Pe.c: New file.
13520         * lib/unictype/categ_Pf.c: New file.
13521         * lib/unictype/categ_Pi.c: New file.
13522         * lib/unictype/categ_Po.c: New file.
13523         * lib/unictype/categ_Ps.c: New file.
13524         * lib/unictype/categ_S.c: New file.
13525         * lib/unictype/categ_Sc.c: New file.
13526         * lib/unictype/categ_Sk.c: New file.
13527         * lib/unictype/categ_Sm.c: New file.
13528         * lib/unictype/categ_So.c: New file.
13529         * lib/unictype/categ_Z.c: New file.
13530         * lib/unictype/categ_Zl.c: New file.
13531         * lib/unictype/categ_Zp.c: New file.
13532         * lib/unictype/categ_Zs.c: New file.
13533         * lib/unictype/categ_and.c: New file.
13534         * lib/unictype/categ_and_not.c: New file.
13535         * lib/unictype/categ_byname.c: New file.
13536         * lib/unictype/categ_name.c: New file.
13537         * lib/unictype/categ_none.c: New file.
13538         * lib/unictype/categ_of.c: New file.
13539         * lib/unictype/categ_or.c: New file.
13540         * lib/unictype/categ_test.c: New file.
13541         * lib/unictype/combining.c: New file.
13542         * lib/unictype/ctype_alnum.c: New file.
13543         * lib/unictype/ctype_alpha.c: New file.
13544         * lib/unictype/ctype_blank.c: New file.
13545         * lib/unictype/ctype_cntrl.c: New file.
13546         * lib/unictype/ctype_digit.c: New file.
13547         * lib/unictype/ctype_graph.c: New file.
13548         * lib/unictype/ctype_lower.c: New file.
13549         * lib/unictype/ctype_print.c: New file.
13550         * lib/unictype/ctype_punct.c: New file.
13551         * lib/unictype/ctype_space.c: New file.
13552         * lib/unictype/ctype_upper.c: New file.
13553         * lib/unictype/ctype_xdigit.c: New file.
13554         * lib/unictype/decdigit.c: New file.
13555         * lib/unictype/digit.c: New file.
13556         * lib/unictype/identsyntaxmap.h: New file.
13557         * lib/unictype/mirror.c: New file.
13558         * lib/unictype/numeric.c: New file.
13559         * lib/unictype/pr_alphabetic.c: New file.
13560         * lib/unictype/pr_ascii_hex_digit.c: New file.
13561         * lib/unictype/pr_bidi_arabic_digit.c: New file.
13562         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
13563         * lib/unictype/pr_bidi_block_separator.c: New file.
13564         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
13565         * lib/unictype/pr_bidi_common_separator.c: New file.
13566         * lib/unictype/pr_bidi_control.c: New file.
13567         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
13568         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
13569         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
13570         * lib/unictype/pr_bidi_european_digit.c: New file.
13571         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
13572         * lib/unictype/pr_bidi_left_to_right.c: New file.
13573         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
13574         * lib/unictype/pr_bidi_other_neutral.c: New file.
13575         * lib/unictype/pr_bidi_pdf.c: New file.
13576         * lib/unictype/pr_bidi_segment_separator.c: New file.
13577         * lib/unictype/pr_bidi_whitespace.c: New file.
13578         * lib/unictype/pr_byname.c: New file.
13579         * lib/unictype/pr_byname.gperf: New file.
13580         * lib/unictype/pr_combining.c: New file.
13581         * lib/unictype/pr_composite.c: New file.
13582         * lib/unictype/pr_currency_symbol.c: New file.
13583         * lib/unictype/pr_dash.c: New file.
13584         * lib/unictype/pr_decimal_digit.c: New file.
13585         * lib/unictype/pr_default_ignorable_code_point.c: New file.
13586         * lib/unictype/pr_deprecated.c: New file.
13587         * lib/unictype/pr_diacritic.c: New file.
13588         * lib/unictype/pr_extender.c: New file.
13589         * lib/unictype/pr_format_control.c: New file.
13590         * lib/unictype/pr_grapheme_base.c: New file.
13591         * lib/unictype/pr_grapheme_extend.c: New file.
13592         * lib/unictype/pr_grapheme_link.c: New file.
13593         * lib/unictype/pr_hex_digit.c: New file.
13594         * lib/unictype/pr_hyphen.c: New file.
13595         * lib/unictype/pr_id_continue.c: New file.
13596         * lib/unictype/pr_id_start.c: New file.
13597         * lib/unictype/pr_ideographic.c: New file.
13598         * lib/unictype/pr_ids_binary_operator.c: New file.
13599         * lib/unictype/pr_ids_trinary_operator.c: New file.
13600         * lib/unictype/pr_ignorable_control.c: New file.
13601         * lib/unictype/pr_iso_control.c: New file.
13602         * lib/unictype/pr_join_control.c: New file.
13603         * lib/unictype/pr_left_of_pair.c: New file.
13604         * lib/unictype/pr_line_separator.c: New file.
13605         * lib/unictype/pr_logical_order_exception.c: New file.
13606         * lib/unictype/pr_lowercase.c: New file.
13607         * lib/unictype/pr_math.c: New file.
13608         * lib/unictype/pr_non_break.c: New file.
13609         * lib/unictype/pr_not_a_character.c: New file.
13610         * lib/unictype/pr_numeric.c: New file.
13611         * lib/unictype/pr_other_alphabetic.c: New file.
13612         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
13613         * lib/unictype/pr_other_grapheme_extend.c: New file.
13614         * lib/unictype/pr_other_id_continue.c: New file.
13615         * lib/unictype/pr_other_id_start.c: New file.
13616         * lib/unictype/pr_other_lowercase.c: New file.
13617         * lib/unictype/pr_other_math.c: New file.
13618         * lib/unictype/pr_other_uppercase.c: New file.
13619         * lib/unictype/pr_paired_punctuation.c: New file.
13620         * lib/unictype/pr_paragraph_separator.c: New file.
13621         * lib/unictype/pr_pattern_syntax.c: New file.
13622         * lib/unictype/pr_pattern_white_space.c: New file.
13623         * lib/unictype/pr_private_use.c: New file.
13624         * lib/unictype/pr_punctuation.c: New file.
13625         * lib/unictype/pr_quotation_mark.c: New file.
13626         * lib/unictype/pr_radical.c: New file.
13627         * lib/unictype/pr_sentence_terminal.c: New file.
13628         * lib/unictype/pr_soft_dotted.c: New file.
13629         * lib/unictype/pr_space.c: New file.
13630         * lib/unictype/pr_terminal_punctuation.c: New file.
13631         * lib/unictype/pr_test.c: New file.
13632         * lib/unictype/pr_titlecase.c: New file.
13633         * lib/unictype/pr_unassigned_code_value.c: New file.
13634         * lib/unictype/pr_unified_ideograph.c: New file.
13635         * lib/unictype/pr_uppercase.c: New file.
13636         * lib/unictype/pr_variation_selector.c: New file.
13637         * lib/unictype/pr_white_space.c: New file.
13638         * lib/unictype/pr_xid_continue.c: New file.
13639         * lib/unictype/pr_xid_start.c: New file.
13640         * lib/unictype/pr_zero_width.c: New file.
13641         * lib/unictype/scripts.c: New file.
13642         * lib/unictype/sy_c_ident.c: New file.
13643         * lib/unictype/sy_c_whitespace.c: New file.
13644         * lib/unictype/sy_java_ident.c: New file.
13645         * lib/unictype/sy_java_whitespace.c: New file.
13646
13647         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
13648         Unicode 5.0.0.
13649         * lib/unictype/blocks.h: Likewise.
13650         * lib/unictype/categ_C.h: Likewise.
13651         * lib/unictype/categ_Cc.h: Likewise.
13652         * lib/unictype/categ_Cf.h: Likewise.
13653         * lib/unictype/categ_Cn.h: Likewise.
13654         * lib/unictype/categ_Co.h: Likewise.
13655         * lib/unictype/categ_Cs.h: Likewise.
13656         * lib/unictype/categ_L.h: Likewise.
13657         * lib/unictype/categ_Ll.h: Likewise.
13658         * lib/unictype/categ_Lm.h: Likewise.
13659         * lib/unictype/categ_Lo.h: Likewise.
13660         * lib/unictype/categ_Lt.h: Likewise.
13661         * lib/unictype/categ_Lu.h: Likewise.
13662         * lib/unictype/categ_M.h: Likewise.
13663         * lib/unictype/categ_Mc.h: Likewise.
13664         * lib/unictype/categ_Me.h: Likewise.
13665         * lib/unictype/categ_Mn.h: Likewise.
13666         * lib/unictype/categ_N.h: Likewise.
13667         * lib/unictype/categ_Nd.h: Likewise.
13668         * lib/unictype/categ_Nl.h: Likewise.
13669         * lib/unictype/categ_No.h: Likewise.
13670         * lib/unictype/categ_P.h: Likewise.
13671         * lib/unictype/categ_Pc.h: Likewise.
13672         * lib/unictype/categ_Pd.h: Likewise.
13673         * lib/unictype/categ_Pe.h: Likewise.
13674         * lib/unictype/categ_Pf.h: Likewise.
13675         * lib/unictype/categ_Pi.h: Likewise.
13676         * lib/unictype/categ_Po.h: Likewise.
13677         * lib/unictype/categ_Ps.h: Likewise.
13678         * lib/unictype/categ_S.h: Likewise.
13679         * lib/unictype/categ_Sc.h: Likewise.
13680         * lib/unictype/categ_Sk.h: Likewise.
13681         * lib/unictype/categ_Sm.h: Likewise.
13682         * lib/unictype/categ_So.h: Likewise.
13683         * lib/unictype/categ_Z.h: Likewise.
13684         * lib/unictype/categ_Zl.h: Likewise.
13685         * lib/unictype/categ_Zp.h: Likewise.
13686         * lib/unictype/categ_Zs.h: Likewise.
13687         * lib/unictype/categ_of.h: Likewise.
13688         * lib/unictype/combining.h: Likewise.
13689         * lib/unictype/ctype_alnum.h: Likewise.
13690         * lib/unictype/ctype_alpha.h: Likewise.
13691         * lib/unictype/ctype_blank.h: Likewise.
13692         * lib/unictype/ctype_cntrl.h: Likewise.
13693         * lib/unictype/ctype_digit.h: Likewise.
13694         * lib/unictype/ctype_graph.h: Likewise.
13695         * lib/unictype/ctype_lower.h: Likewise.
13696         * lib/unictype/ctype_print.h: Likewise.
13697         * lib/unictype/ctype_punct.h: Likewise.
13698         * lib/unictype/ctype_space.h: Likewise.
13699         * lib/unictype/ctype_upper.h: Likewise.
13700         * lib/unictype/ctype_xdigit.h: Likewise.
13701         * lib/unictype/decdigit.h: Likewise.
13702         * lib/unictype/digit.h: Likewise.
13703         * lib/unictype/mirror.h: Likewise.
13704         * lib/unictype/numeric.h: Likewise.
13705         * lib/unictype/pr_alphabetic.h: Likewise.
13706         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
13707         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
13708         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
13709         * lib/unictype/pr_bidi_block_separator.h: Likewise.
13710         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
13711         * lib/unictype/pr_bidi_common_separator.h: Likewise.
13712         * lib/unictype/pr_bidi_control.h: Likewise.
13713         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
13714         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
13715         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
13716         * lib/unictype/pr_bidi_european_digit.h: Likewise.
13717         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
13718         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
13719         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
13720         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
13721         * lib/unictype/pr_bidi_pdf.h: Likewise.
13722         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
13723         * lib/unictype/pr_bidi_whitespace.h: Likewise.
13724         * lib/unictype/pr_combining.h: Likewise.
13725         * lib/unictype/pr_composite.h: Likewise.
13726         * lib/unictype/pr_currency_symbol.h: Likewise.
13727         * lib/unictype/pr_dash.h: Likewise.
13728         * lib/unictype/pr_decimal_digit.h: Likewise.
13729         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
13730         * lib/unictype/pr_deprecated.h: Likewise.
13731         * lib/unictype/pr_diacritic.h: Likewise.
13732         * lib/unictype/pr_extender.h: Likewise.
13733         * lib/unictype/pr_format_control.h: Likewise.
13734         * lib/unictype/pr_grapheme_base.h: Likewise.
13735         * lib/unictype/pr_grapheme_extend.h: Likewise.
13736         * lib/unictype/pr_grapheme_link.h: Likewise.
13737         * lib/unictype/pr_hex_digit.h: Likewise.
13738         * lib/unictype/pr_hyphen.h: Likewise.
13739         * lib/unictype/pr_id_continue.h: Likewise.
13740         * lib/unictype/pr_id_start.h: Likewise.
13741         * lib/unictype/pr_ideographic.h: Likewise.
13742         * lib/unictype/pr_ids_binary_operator.h: Likewise.
13743         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
13744         * lib/unictype/pr_ignorable_control.h: Likewise.
13745         * lib/unictype/pr_iso_control.h: Likewise.
13746         * lib/unictype/pr_join_control.h: Likewise.
13747         * lib/unictype/pr_left_of_pair.h: Likewise.
13748         * lib/unictype/pr_line_separator.h: Likewise.
13749         * lib/unictype/pr_logical_order_exception.h: Likewise.
13750         * lib/unictype/pr_lowercase.h: Likewise.
13751         * lib/unictype/pr_math.h: Likewise.
13752         * lib/unictype/pr_non_break.h: Likewise.
13753         * lib/unictype/pr_not_a_character.h: Likewise.
13754         * lib/unictype/pr_numeric.h: Likewise.
13755         * lib/unictype/pr_other_alphabetic.h: Likewise.
13756         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
13757         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
13758         * lib/unictype/pr_other_id_continue.h: Likewise.
13759         * lib/unictype/pr_other_id_start.h: Likewise.
13760         * lib/unictype/pr_other_lowercase.h: Likewise.
13761         * lib/unictype/pr_other_math.h: Likewise.
13762         * lib/unictype/pr_other_uppercase.h: Likewise.
13763         * lib/unictype/pr_paired_punctuation.h: Likewise.
13764         * lib/unictype/pr_paragraph_separator.h: Likewise.
13765         * lib/unictype/pr_pattern_syntax.h: Likewise.
13766         * lib/unictype/pr_pattern_white_space.h: Likewise.
13767         * lib/unictype/pr_private_use.h: Likewise.
13768         * lib/unictype/pr_punctuation.h: Likewise.
13769         * lib/unictype/pr_quotation_mark.h: Likewise.
13770         * lib/unictype/pr_radical.h: Likewise.
13771         * lib/unictype/pr_sentence_terminal.h: Likewise.
13772         * lib/unictype/pr_soft_dotted.h: Likewise.
13773         * lib/unictype/pr_space.h: Likewise.
13774         * lib/unictype/pr_terminal_punctuation.h: Likewise.
13775         * lib/unictype/pr_titlecase.h: Likewise.
13776         * lib/unictype/pr_unassigned_code_value.h: Likewise.
13777         * lib/unictype/pr_unified_ideograph.h: Likewise.
13778         * lib/unictype/pr_uppercase.h: Likewise.
13779         * lib/unictype/pr_variation_selector.h: Likewise.
13780         * lib/unictype/pr_white_space.h: Likewise.
13781         * lib/unictype/pr_xid_continue.h: Likewise.
13782         * lib/unictype/pr_xid_start.h: Likewise.
13783         * lib/unictype/pr_zero_width.h: Likewise.
13784         * lib/unictype/scripts.h: Likewise.
13785         * lib/unictype/scripts_byname.gperf: Likewise.
13786         * lib/unictype/sy_c_ident.h: Likewise.
13787         * lib/unictype/sy_c_whitespace.h: Likewise.
13788         * lib/unictype/sy_java_ident.h: Likewise.
13789         * lib/unictype/sy_java_whitespace.h: Likewise.
13790
13791         * lib/unictype/Makefile: New file.
13792         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
13793         glibc.
13794         * lib/unictype/3level.h: New file, copied from glibc.
13795         * lib/unictype/3levelbit.h: New file.
13796
13797 2007-11-11  Bruno Haible  <bruno@clisp.org>
13798
13799         * modules/gperf: New file.
13800         * modules/iconv_open (Depends-on): Add it.
13801         (Makefile.am): Remove the GPERF definition.
13802
13803 2007-11-11  Bruno Haible  <bruno@clisp.org>
13804
13805         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
13806         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
13807
13808 2007-11-11  Bruno Haible  <bruno@clisp.org>
13809
13810         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
13811         (usage): Remove function.
13812
13813 2007-11-11  Bruno Haible  <bruno@clisp.org>
13814
13815         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
13816         gl_FUNC_CEILF_LIBS.
13817         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
13818         gl_FUNC_CEIL_LIBS.
13819         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
13820         gl_FUNC_CEILL_LIBS.
13821         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
13822         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
13823         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
13824
13825 2007-11-11  Bruno Haible  <bruno@clisp.org>
13826
13827         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
13828         roundf were declared but do not exist on functions.
13829         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
13830         roundl were declared but do not exist on functions.
13831         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
13832         HAVE_FLOORL_AND_CEILL, respectively.
13833         Needed for Sun C on Solaris 10.
13834
13835 2007-11-11  Bruno Haible  <bruno@clisp.org>
13836
13837         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
13838         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
13839         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
13840         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
13841         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
13842         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
13843         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
13844         HAVE_DECL_ROUNDF.
13845         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
13846         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
13847         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
13848         of HAVE_DECL_ROUND*.
13849         * modules/math (Makefile.am): Update.
13850
13851 2007-11-10  Bruno Haible  <bruno@clisp.org>
13852
13853         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
13854         ptrdiff_t as m4/intl.m4.
13855
13856 2007-11-10  Jim Meyering  <meyering@redhat.com>
13857
13858         Avoid link failure for the argmatch test.
13859         * tests/test-argmatch.c (usage): Define function to avoid a link
13860         failure: argmatch_die requires a usage function.
13861
13862 2007-11-09  Bruno Haible  <bruno@clisp.org>
13863
13864         * doc/functions/snprintf.texi: Mention BeOS deficiency.
13865         * doc/functions/vsnprintf.texi: Likewise.
13866         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
13867         with a size argument < 2.
13868
13869 2007-11-09  Bruno Haible  <bruno@clisp.org>
13870
13871         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
13872         buffer. Fixes an inefficiency introduced on 2007-11-03.
13873
13874 2007-11-09  Bruno Haible  <bruno@clisp.org>
13875
13876         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
13877         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
13878
13879 2007-11-08  Jim Meyering  <meyering@redhat.com>
13880
13881         Change cache variable name prefix "jm_" to "gl_" everywhere.
13882         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
13883         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
13884         * m4/uptime.m4: s/gl_/jm_/
13885
13886 2007-11-07  Bruno Haible  <bruno@clisp.org>
13887
13888         Update to GNU gettext 0.17.
13889         * m4/intl.m4: Update to GNU gettext 0.17.
13890         * m4/po.m4: Likewise.
13891         * modules/gettext (Files): Remove m4/ulonglong.m4.
13892         (configure.ac): Require gettext infrastructure from version 0.17.
13893
13894 2007-11-06  Bruno Haible  <bruno@clisp.org>
13895
13896         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
13897         symbolic values are not defined in a public header.
13898         * lib/freadable.c (freadable) [QNX]: Likewise.
13899         * lib/freadahead.c (freadahead) [QNX]: Likewise.
13900         * lib/freading.c (freading) [QNX]: Likewise.
13901         * lib/fseterr.c (fseterr) [QNX]: Likewise.
13902         * lib/fwritable.c (fwritable) [QNX]: Likewise.
13903         * lib/fwriting.c (fwriting) [QNX]: Likewise.
13904         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
13905         Reported by Alain Magloire.
13906
13907         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
13908
13909 2007-11-05  Bruno Haible  <bruno@clisp.org>
13910
13911         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
13912         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
13913         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
13914         Reported by Eric Blake.
13915
13916 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13917             Bruno Haible  <bruno@clisp.org>
13918
13919         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
13920         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
13921         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
13922         (malloc): Undefine also before including <stdlib.h>.
13923         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
13924         Needed on OSF/1 4.0.
13925
13926 2007-11-05  Jim Meyering  <meyering@redhat.com>
13927
13928         git-version-gen: sync from coreutils.
13929         * build-aux/git-version-gen: Add comments.
13930         Change the first '-' to '.' in the snapshot version string,
13931         e.g., 6.9-377-08144 -> 6.9.377-08144
13932         Remove first parameter.
13933         Don't declare a version "-dirty" merely because a time
13934         stamp has changed.
13935
13936 2007-11-04  Bruno Haible  <bruno@clisp.org>
13937
13938         * lib/lock.h: Protect all macro definitions containing an 'if'
13939         statement through a "do { ... } while (0)".
13940         * lib/tls.h: Likewise.
13941
13942 2007-11-04  Bruno Haible  <bruno@clisp.org>
13943
13944         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
13945
13946 2007-11-04  Bruno Haible  <bruno@clisp.org>
13947
13948         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
13949         * modules/fprintf-posix (Depends-on): Add nocrash.
13950         * modules/snprintf-posix (Depends-on): Likewise.
13951         * modules/sprintf-posix (Depends-on): Likewise.
13952         * modules/vasnprintf-posix (Depends-on): Likewise.
13953         * modules/vasprintf-posix (Depends-on): Likewise.
13954         * modules/vfprintf-posix (Depends-on): Likewise.
13955         * modules/vsnprintf-posix (Depends-on): Likewise.
13956         * modules/vsprintf-posix (Depends-on): Likewise.
13957         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
13958         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
13959         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
13960         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
13961         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
13962         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
13963         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
13964
13965 2007-11-04  Bruno Haible  <bruno@clisp.org>
13966
13967         * modules/nocrash: New file.
13968         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
13969         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
13970
13971 2007-11-04  Bruno Haible  <bruno@clisp.org>
13972
13973         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
13974         precision handling.
13975         * tests/test-vasprintf-posix.c (test_function): Likewise.
13976         * tests/test-snprintf-posix.h (test_function): Likewise.
13977         * tests/test-sprintf-posix.h (test_function): Likewise.
13978
13979         Fix *printf behaviour for large precisions on mingw and BeOS.
13980         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
13981         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
13982         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
13983         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
13984         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
13985         gl_PRINTF_PRECISION and test its result. Invoke
13986         gl_PREREQ_VASNPRINTF_PRECISION.
13987         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
13988         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
13989         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
13990         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
13991         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
13992         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
13993         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
13994         * doc/functions/fprintf.texi: Update.
13995         * doc/functions/printf.texi: Update.
13996         * doc/functions/snprintf.texi: Update.
13997         * doc/functions/sprintf.texi: Update.
13998         * doc/functions/vfprintf.texi: Update.
13999         * doc/functions/vprintf.texi: Update.
14000         * doc/functions/vsnprintf.texi: Update.
14001         * doc/functions/vsprintf.texi: Update.
14002
14003 2007-11-04  Bruno Haible  <bruno@clisp.org>
14004
14005         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
14006
14007 2007-11-04  Bruno Haible  <bruno@clisp.org>
14008
14009         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
14010         Reported by Sylvain Beucler <beuc@gnu.org>.
14011
14012 2007-11-03  Bruno Haible  <bruno@clisp.org>
14013
14014         * tests/test-fprintf-posix2.sh: New file.
14015         * tests/test-fprintf-posix2.c: New file.
14016         * modules/fprintf-posix-tests (Files): Add them.
14017         (TESTS): Add test-fprintf-posix2.sh.
14018         (configure.ac): Check for getrlimit and setrlimit.
14019         (check_PROGRAMS): Add test-fprintf-posix2.
14020
14021         * tests/test-printf-posix2.sh: New file.
14022         * tests/test-printf-posix2.c: New file.
14023         * modules/printf-posix-tests (Files): Add them.
14024         (TESTS): Add test-printf-posix2.sh.
14025         (configure.ac): Check for getrlimit and setrlimit.
14026         (check_PROGRAMS): Add test-printf-posix2.
14027
14028         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
14029         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
14030         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
14031         (decode_double): New function, copied from decode_long_double.
14032         (scale10_round_decimal_decoded): New function, extracted from
14033         scale10_round_decimal_long_double.
14034         (scale10_round_decimal_long_double): Use it.
14035         (scale10_round_decimal_double): New function.
14036         (floorlog10): New function.
14037         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
14038         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
14039         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
14040         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
14041         gl_PRINTF_ENOMEM and test its result. Invoke
14042         gl_PREREQ_VASNPRINTF_ENOMEM.
14043         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
14044         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14045         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14046         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14047         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
14048         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14049         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14050         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
14051         * modules/snprintf-posix (Depends-on): Likewise.
14052         * modules/sprintf-posix (Depends-on): Likewise.
14053         * modules/vasnprintf-posix (Depends-on): Likewise.
14054         * modules/vasprintf-posix (Depends-on): Likewise.
14055         * modules/vfprintf-posix (Depends-on): Likewise.
14056         * modules/vsnprintf-posix (Depends-on): Likewise.
14057         * modules/vsprintf-posix (Depends-on): Likewise.
14058         * doc/functions/fprintf.texi: Update.
14059         * doc/functions/printf.texi: Update.
14060         * doc/functions/snprintf.texi: Update.
14061         * doc/functions/sprintf.texi: Update.
14062         * doc/functions/vfprintf.texi: Update.
14063         * doc/functions/vprintf.texi: Update.
14064         * doc/functions/vsnprintf.texi: Update.
14065         * doc/functions/vsprintf.texi: Update.
14066
14067 2007-11-03  Bruno Haible  <bruno@clisp.org>
14068
14069         * modules/frexp-nolibm-tests: New file.
14070
14071         * modules/frexp-nolibm: New file.
14072         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
14073
14074 2007-11-03  Bruno Haible  <bruno@clisp.org>
14075
14076         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
14077         value is C99 compliant.
14078         Needed for OSF/1 5.1.
14079
14080 2007-11-03  Bruno Haible  <bruno@clisp.org>
14081
14082         Fix out-of-memory handling of vasnprintf.
14083         * lib/printf-parse.c: Include <errno.h>.
14084         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
14085         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
14086         is already set.
14087
14088 2007-11-02  Eric Blake  <ebb9@byu.net>
14089
14090         Fix tests on cygwin.
14091         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
14092
14093 2007-11-01  Bruno Haible  <bruno@clisp.org>
14094
14095         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
14096         warning.
14097         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
14098         needed for POSIX compatibility.
14099
14100 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
14101
14102         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
14103         for compatibility with GNU.
14104
14105 2007-11-01  Bruno Haible  <bruno@clisp.org>
14106
14107         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
14108         (putenv): Renamed from rpl_putenv. Change argument type from
14109         'const char *' to 'char *'.
14110         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
14111         of defining putenv in config.h, just set REPLACE_PUTENV.
14112         * modules/putenv (Depends-on): Add stdlib.
14113         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
14114         (Include): Use <stdlib.h>.
14115         * lib/stdlib.in.h (putenv): New declaration.
14116         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
14117         REPLACE_PUTENV.
14118         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
14119         REPLACE_PUTENV.
14120         Needed for MacOS X 10.5.0.
14121         Reported by Peter O'Gorman <peter@pogma.com>.
14122
14123 2007-11-01  Jim Meyering  <meyering@redhat.com>
14124
14125         Treat an empty date string exactly like "0".
14126         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
14127         if the remaining date string (to be parsed) is empty, use "0".
14128         Reported by Mischa Molhoek and discussed in this thread:
14129         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
14130
14131 2007-10-31  Bruno Haible  <bruno@clisp.org>
14132
14133         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
14134         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
14135         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
14136         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
14137         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
14138         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
14139
14140 2007-10-31  Bruno Haible  <bruno@clisp.org>
14141
14142         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
14143         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
14144         (AC_TYPE_LONG_LONG_INT): Use it.
14145         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
14146         it as well.
14147         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
14148         to m4/longlong.m4.
14149         * modules/stdint (Files): Remove m4/ulonglong.m4.
14150         * modules/strtoull (Files): Use m4/longlong.m4 instead of
14151         m4/ulonglong.m4.
14152         * modules/strtoumax (Files): Likewise.
14153
14154 2007-10-30  Bruno Haible  <bruno@clisp.org>
14155
14156         * modules/xvasprintf-posix: New file.
14157         Suggested by Eric Blake.
14158
14159 2007-10-30  Bruno Haible  <bruno@clisp.org>
14160
14161         * modules/xprintf-posix-tests: New file.
14162         * tests/test-xprintf-posix.sh: New file.
14163         * tests/test-xprintf-posix.c: New file.
14164         * tests/test-xfprintf-posix.c: New file.
14165
14166         * modules/xprintf-posix: New file.
14167
14168 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14169
14170         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
14171         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
14172         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
14173
14174 2007-10-29  Bruno Haible  <bruno@clisp.org>
14175
14176         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
14177         contain the special marker '_cv_'.
14178         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
14179         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
14180         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
14181         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
14182         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
14183         Reported by Ralf Wildenhues.
14184
14185 2007-10-29  Bruno Haible  <bruno@clisp.org>
14186
14187         * gnulib-tool (func_import): When --lgpl is not specified, set
14188         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
14189         GPLv3.
14190         Reported by Simon Josefsson.
14191
14192 2007-10-28  Bruno Haible  <bruno@clisp.org>
14193
14194         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
14195         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
14196         HAVE_DECL_ISFINITE.
14197         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
14198         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
14199         HAVE_DECL_ISFINITE.
14200
14201 2007-10-28  Bruno Haible  <bruno@clisp.org>
14202
14203         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
14204         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
14205
14206 2007-10-28  Bruno Haible  <bruno@clisp.org>
14207
14208         Fix link errors with Sun C 5.0 on Solaris 10.
14209         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
14210         function is declared but not present in the compiler's libm.
14211         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
14212         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
14213         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
14214         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
14215         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
14216         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
14217         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
14218         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
14219         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
14220         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
14221         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
14222         HAVE_DECL_FLOORL.
14223
14224 2007-10-28  Bruno Haible  <bruno@clisp.org>
14225
14226         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
14227         gl_FUNC_FLOORL. Cache the result.
14228         (gl_FUNC_FLOORL): Use it.
14229         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
14230         gl_FUNC_CEILL. Cache the result.
14231         (gl_FUNC_CEILL): Use it.
14232
14233         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
14234         gl_FUNC_FLOOR. Cache the result.
14235         (gl_FUNC_FLOOR): Use it.
14236         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
14237         gl_FUNC_CEIL. Cache the result.
14238         (gl_FUNC_CEIL): Use it.
14239
14240         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
14241         gl_FUNC_FLOORF. Cache the result.
14242         (gl_FUNC_FLOORF): Use it.
14243         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
14244         gl_FUNC_CEILF. Cache the result.
14245         (gl_FUNC_CEILF): Use it.
14246
14247 2007-10-28  Bruno Haible  <bruno@clisp.org>
14248
14249         * gnulib-tool: Allow specifying the LGPL version number through
14250         --lgpl=2 or --lgpl=3.
14251         (func_usage): Document --lgpl with argument.
14252         Handle --lgpl=... arguments.
14253         (func_import): Recognize also gl_LGPL calls with an argument. When
14254         --lgpl=2 is used and the module's license is just LGPL, report an
14255         error. Set sed_transform_lib_file according to the lgpl variable. In
14256         the generated files, use --lgpl or gl_LGPL invocations with argument,
14257         if necessary.
14258         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
14259         an LGPv2+ license.
14260         * doc/gnulib-tool.texi (Modified imports): Update explanation of
14261         gl_LGPL macro.
14262
14263 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14264             Bruno Haible  <bruno@clisp.org>
14265
14266         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
14267         (u16_uctomb_aux): Likewise.
14268         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
14269         !HAVE_INLINE.
14270         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
14271
14272 2007-10-28  Bruno Haible  <bruno@clisp.org>
14273
14274         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
14275         Invoke AM_GETTEXT_OPTION if it exists.
14276         * modules/vasprintf: Likewise.
14277         * modules/verror: Likewise.
14278         * modules/xprintf: Likewise.
14279         * modules/xvasprintf: Likewise.
14280
14281 2007-10-27  Ben Pfaff  <blp@gnu.org>
14282
14283         * lib/math.in.h: Define isfinite macro and prototypes for
14284         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
14285         implementations.
14286         * m4/math_h.m4: New substitutions for isfinite module.
14287         * lib/isfinite.c: New file.
14288         * m4/isfinite.m4: New file.
14289         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
14290         * modules/isfinite: New file.
14291         * modules/isfinite-tests: New file.
14292         * tests/tests-isfinite.c: New file.
14293         * doc/functions/isfinite.texi: Mention isfinite module.
14294         * MODULES.html.sh: Mention new module.
14295
14296 2007-10-27  Ben Pfaff  <blp@gnu.org>
14297
14298         Ralf Wildenhues reported that Tru64 4.0D declares the round
14299         functions but does not have definitions.
14300         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
14301         cannot be found in any library, set the output variable to
14302         "missing" instead of "".
14303         * m4/round.m4: Also use our substitute if we cannot find round in
14304         any library, even if it is declared.
14305         * m4/roundf.m4: Likewise for roundf.
14306         * m4/roundl.m4: Likewise for roundl.
14307         * lib/math.in.h: Undefine roundf, round, roundl before defining
14308         their replacements, to allow for hypothetical systems where these
14309         may be defined as macros but not available in libraries.
14310
14311 2007-10-27  Bruno Haible  <bruno@clisp.org>
14312
14313         * doc/gnulib.texi: Invoke @firstparagraphindent.
14314         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
14315         changes in gnulib.
14316         (Source changes): New section.
14317
14318 2007-10-26  Bruno Haible  <bruno@clisp.org>
14319
14320         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
14321         borrowed from autoconf.
14322
14323 2007-10-26  Bruno Haible  <bruno@clisp.org>
14324
14325         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
14326         strerror returned the empty string. Needed on HP-UX 11.00.
14327
14328 2007-10-24  Micah Cowan  <micah@cowan.name>
14329
14330         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
14331         * build-aux/bootstrap: Remove support for now-unnecessary option,
14332         --cvs-user, and envvars CVS_USER, CVS_RSH.
14333
14334 2007-10-24  Jim Meyering  <meyering@redhat.com>
14335
14336         Avoid diagnostics from sha1sum when there is no cached checksum.
14337         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
14338         if the po.s1 file hasn't been created yet.
14339
14340         * build-aux/bootstrap: Sync from coreutils:
14341         2007-10-24  Jim Meyering  <meyering@redhat.com>
14342         Get gnulib from the git repository, not from an obsolete cvs one.
14343         * build-aux/bootstrap: Suggestion from Micah Cowan.
14344         2007-10-04  Jim Meyering  <jim@meyering.net>
14345         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
14346         (update_po_files): Work also when there are no .po files in po/.
14347
14348 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
14349
14350         * README: Append ".git" to git and cg examples.
14351         Problem reported by Benoit Sigoure.
14352
14353 2007-10-23  Micah Cowan  <micah@cowan.name>
14354
14355         * users.txt: Add wget.
14356
14357 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14358
14359         Fix linking of some unistdio tests on FreeBSD.
14360         * modules/unistdio/u16-vsnprintf-tests
14361         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
14362         * modules/unistdio/u16-vsprintf-tests
14363         (test_u16_vsnprintf1_LDADD): Likewise.
14364         * modules/unistdio/u32-vsnprintf-tests
14365         (test_u32_vsnprintf1_LDADD): Likewise.
14366         * modules/unistdio/u32-vsprintf-tests
14367         (test_u32_vsprintf1_LDADD): Likewise.
14368         * modules/unistdio/u8-vsnprintf-tests
14369         (test_u8_vsnprintf1_LDADD): Likewise.
14370         * modules/unistdio/u8-vsprintf-tests
14371         (test_u8_vsprintf1_LDADD): Likewise.
14372         * modules/unistdio/ulc-vsnprintf-tests
14373         (test_ulc_vsnprintf1_LDADD): Likewise.
14374         * modules/unistdio/ulc-vsprintf-tests
14375         (test_ulc_vsprintf1_LDADD): Likewise.
14376
14377         Fix linking of some uniconv tests on FreeBSD.
14378         * modules/uniconv/u16-conv-from-enc-tests
14379         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
14380         * modules/uniconv/u16-conv-to-enc-tests
14381         (test_u16_conv_to_enc_LDADD): Likewise.
14382         * modules/uniconv/u16-strconv-from-enc-tests
14383         (test_u16_strconv_from_enc_LDADD): Likewise.
14384         * modules/uniconv/u16-strconv-to-enc-tests
14385         (test_u16_strconv_to_enc_LDADD): Likewise.
14386         * modules/uniconv/u32-conv-from-enc-tests
14387         (test_u32_conv_from_enc_LDADD): Likewise.
14388         * modules/uniconv/u32-conv-to-enc-tests
14389         (test_u32_conv_to_enc_LDADD): Likewise.
14390         * modules/uniconv/u32-strconv-from-enc-tests
14391         (test_u32_strconv_from_enc_LDADD): Likewise.
14392         * modules/uniconv/u32-strconv-to-enc-tests
14393         (test_u32_strconv_to_enc_LDADD): Likewise.
14394         * modules/uniconv/u8-conv-from-enc-tests
14395         (test_u8_conv_from_enc_LDADD): Likewise.
14396         * modules/uniconv/u8-conv-to-enc-tests
14397         (test_u8_conv_to_enc_LDADD): Likewise.
14398         * modules/uniconv/u8-strconv-from-enc-tests
14399         (test_u8_strconv_from_enc_LDADD): Likewise.
14400         * modules/uniconv/u8-strconv-to-enc-tests
14401         (test_u8_strconv_to_enc_LDADD): Likewise.
14402
14403 2007-10-22  Bruno Haible  <bruno@clisp.org>
14404
14405         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
14406         size.
14407
14408 2007-10-22  Eric Blake  <ebb9@byu.net>
14409
14410         Tweak x*printf documentation.
14411         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
14412         variable name and comments.
14413         Suggested by Bruno Haible.
14414
14415 2007-10-22  Bruno Haible  <bruno@clisp.org>
14416
14417         * lib/acl.c (copy_acl): Fix file name in comment.
14418
14419 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
14420
14421         Fix Tru64 problem with stdbool.h.
14422         * lib/stdbool.in.h (false, true):
14423         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
14424         Don't declare as an enum in this situation; it runs afoul of Tru64.
14425         Problem reported by Steven M. Schweda in
14426         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
14427
14428 2007-10-22  Eric Blake  <ebb9@byu.net>
14429
14430         Also wrap vf?printf.
14431         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
14432         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
14433         (xvprintf, xvfprintf): New functions.
14434
14435 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14436
14437         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
14438         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
14439
14440         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
14441         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
14442
14443 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
14444
14445         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
14446         by Bruno Haible.
14447
14448 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14449
14450         * lib/getloadavg.c
14451         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
14452         Undef `sys' after including sys/table.h, for Tru64 4.0D.
14453
14454         * tests/test-i-ring.c: Work for C89.
14455
14456 2007-10-22  Bruno Haible  <bruno@clisp.org>
14457
14458         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
14459         -1u, in preprocessor expression, so that we don't test for the bug
14460         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
14461         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
14462
14463 2007-10-22  Eric Blake  <ebb9@byu.net>
14464
14465         * tests/test-yesno.sh: Silence stderr during test.
14466
14467 2007-10-22  Simon Josefsson  <simon@josefsson.org>
14468
14469         * modules/crypto/gc-camellia: New file.
14470
14471         * m4/gc-camellia.m4: New file.
14472
14473         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
14474
14475         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
14476
14477 2007-10-22  Simon Josefsson  <simon@josefsson.org>
14478
14479         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
14480         --help to stdout.  Reported by sms@antinode.org (Steven
14481         M. Schweda).
14482
14483 2007-10-22  Simon Josefsson  <simon@josefsson.org>
14484
14485         * users.txt: Fix link to libksba.
14486
14487 2007-10-21  Ben Pfaff  <blp@gnu.org>
14488
14489         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
14490         round.c roundf implementation that depends on floorf and ceilf to
14491         be tested unconditionally.
14492
14493 2007-10-21  Ben Pfaff  <blp@gnu.org>
14494
14495         * m4/check-libm-func.m4: Removed.
14496         * m4/check-math-lib.m4: New file.
14497         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
14498         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
14499         definition and lack of AC_LIBOBJ([roundf]).
14500         * m4/roundl.m4: Ditto, and similarly for roundl.
14501         * modules/round: Reference new m4 file.
14502         * modules/roundf: Ditto.
14503         * modules/roundl: Ditto.
14504         * tests/test-round2.c (main): Use ROUND instead of round.
14505         Bug report from Bruno Haible.
14506
14507 2007-10-21  Bruno Haible  <bruno@clisp.org>
14508
14509         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
14510         context.
14511
14512 2007-10-21  Bruno Haible  <bruno@clisp.org>
14513
14514         * tests/test-wcwidth.c (main): Allow negative result for some control
14515         characters.
14516
14517         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
14518         Needed on OSF/1 5.1.
14519
14520 2007-10-21  Bruno Haible  <bruno@clisp.org>
14521
14522         * tests/test-floorf1.c: Include isnanf.h.
14523         (main): Use isnanf() instead of isnan().
14524         * tests/test-ceilf1.c: Include isnanf.h.
14525         (main): Use isnanf() instead of isnan().
14526         * tests/test-truncf1.c: Include isnanf.h.
14527         (main): Use isnanf() instead of isnan().
14528         * tests/test-roundf1.c: Include isnanf.h.
14529         (main): Use isnanf() instead of isnan().
14530
14531 2007-10-21  Eric Blake  <ebb9@byu.net>
14532
14533         * users.txt: Update URL for m4.
14534
14535 2007-10-21  Bruno Haible  <bruno@clisp.org>
14536
14537         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
14538
14539 2007-10-21  Bruno Haible  <bruno@clisp.org>
14540
14541         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
14542         Git's management files if the CVS files are not present.
14543
14544 2007-10-20  Bruno Haible  <bruno@clisp.org>
14545
14546         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
14547         gcc-3.4.x.
14548
14549 2007-10-20  Ben Pfaff  <blp@gnu.org>
14550
14551         * lib/math.in.h: Declare round, roundf, roundl if we are providing
14552         implementations.
14553         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
14554         * lib/round.c: New file.
14555         * lib/roundf.c: New file.
14556         * lib/roundl.c: New file.
14557         * m4/round.m4: New file.
14558         * m4/roundf.m4: New file.
14559         * m4/roundl.m4: New file.
14560         * m4/check-libm-func-m4: New file.
14561         * modules/math: Replace round, roundf, roundl related @VARS@ in
14562         math.in.h.
14563         * modules/round: New file.
14564         * modules/round-tests: New file.
14565         * modules/roundf: New file.
14566         * modules/roundf-tests: New file.
14567         * modules/roundl: New file.
14568         * modules/roundl-tests: New file.
14569         * tests/test-round1.c: New file.
14570         * tests/test-round2.c: New file.
14571         * tests/test-roundf1.c: New file.
14572         * tests/test-roundf2.c: New file.
14573         * tests/test-roundl.c: New file.
14574         * doc/functions/round.texi: Mention round module.
14575         * doc/functions/roundf.texi: Mention roundf module.
14576         * doc/functions/roundl.texi: Mention roundl module.
14577         * MODULES.html.sh: Mention new modules.
14578         Thanks to Bruno Haible for suggestions.
14579
14580 2007-10-20  Jim Meyering  <meyering@redhat.com>
14581
14582         * lib/xprintf.c: Include <config.h> unconditionally.
14583
14584         Change xprintf's license to GPL.
14585         * modules/xprintf (License): s/LGPL/GPL/, since this module
14586         depends on modules (exit and exitfail) which are GPL.
14587         Suggestion from Bruno Haible.
14588
14589         xprintf fixes.
14590         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
14591         Use a clearer diagnostic.
14592         Patch from Bruno Haible.
14593
14594 2007-10-20  Bruno Haible  <bruno@clisp.org>
14595
14596         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
14597         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
14598         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14599
14600 2007-10-20  Bruno Haible  <bruno@clisp.org>
14601
14602         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
14603         precision in the comparison result > x - 1 or similar.
14604         * tests/test-ceilf2.c (correct_result_p): Likewise.
14605         * tests/test-truncf2.c (correct_result_p): Likewise.
14606         * tests/test-trunc2.c (correct_result_p): Likewise.
14607         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14608
14609 2007-10-20  Bruno Haible  <bruno@clisp.org>
14610
14611         * modules/ceil: New file.
14612         * m4/ceil.m4: New file.
14613         * doc/functions/ceil.texi: Mention the 'ceil' module.
14614
14615 2007-10-20  Bruno Haible  <bruno@clisp.org>
14616
14617         * modules/floor: New file.
14618         * m4/floor.m4: New file.
14619         * doc/functions/floor.texi: Mention the 'floor' module.
14620
14621 2007-10-20  Bruno Haible  <bruno@clisp.org>
14622
14623         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
14624         of %a.
14625         * modules/floorf-tests (Depends-on): Likewise.
14626         * modules/truncf-tests (Depends-on): Likewise.
14627         * modules/trunc-tests (Depends-on): Likewise.
14628         Reported by Ben Pfaff.
14629
14630 2007-10-19  Jim Meyering  <meyering@redhat.com>
14631
14632         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
14633         Don't bother testing specific errno values.  Just test ferror.
14634
14635         New module: xprintf
14636         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
14637
14638 2007-10-19  Bruno Haible  <bruno@clisp.org>
14639
14640         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
14641         syntax.
14642         * modules/javaexec (Makefile.am): Likewise.
14643         * modules/relocatable-prog (Makefile.am): Likewise.
14644         Suggested by Jim Meyering.
14645
14646 2007-10-18  Bruno Haible  <bruno@clisp.org>
14647
14648         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
14649         Reported by Jim Meyering.
14650
14651 2007-10-18  Eric Blake  <ebb9@byu.net>
14652
14653         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
14654
14655 2007-10-18  Bruno Haible  <bruno@clisp.org>
14656
14657         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
14658         the format string into writable memory. Needed in Fortify conditions.
14659
14660 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
14661             Bruno Haible  <bruno@clisp.org>
14662
14663         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
14664         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
14665         * modules/trim (Depends-on): Add mbchar.
14666         (configure.ac): Add gl_FUNC_MBRTOWC.
14667         (Makefile.am): Augment lib_SOURCES.
14668
14669 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
14670
14671         Modify glob.c to use fstatat and dirfd, to simplify it.
14672         Suggested by Eric Blake.
14673         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
14674         Don't include <stdbool.h>; not used.
14675         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
14676         (link_exists_p): Simplify implementation, since we can now assume
14677         dirfd and fstatat.
14678         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
14679
14680 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14681
14682         * gnulib-tool (func_get_dependencies): Fix sed script to
14683         match only tests.
14684
14685 2007-10-17  Bruno Haible  <bruno@clisp.org>
14686
14687         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
14688         allow locale names without encoding suffix.
14689         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
14690         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
14691
14692 2007-10-16  Bruno Haible  <bruno@clisp.org>
14693
14694         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
14695         * lib/getgroups.c (getgroups): Likewise.
14696         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
14697
14698 2007-10-16  Bruno Haible  <bruno@clisp.org>
14699
14700         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
14701         * modules/malloc-posix (License): Likewise.
14702         * modules/realloc-posix (License): Likewise.
14703         * modules/calloc-posix (License): Likewise.
14704         * modules/intprops (License): Change from GPL to LGPL, with
14705         Paul Eggert's approval.
14706
14707 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
14708
14709         Merge glibc changes into lib/glob.c.
14710
14711         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
14712         2007-10-15 04:59:03 UTC.  Here are the changes:
14713
14714         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
14715
14716         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
14717
14718         * lib/glob.c: Add some branch prediction throughout.
14719
14720         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
14721
14722         [BZ #5103]
14723         * lib/glob.c (glob): Recognize patterns starting \/.
14724
14725         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
14726
14727         [BZ #3996]
14728         * lib/glob.c (attribute_hidden): Define if not defined.
14729         (glob): Unescape dirname, filename or username when needed and not
14730         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
14731         is NULL.  Handle unescaped [ in pattern without closing ].
14732         Don't pass GLOB_CHECK down to recursive glob for directories.
14733         (__glob_pattern_type): New function.
14734         (__glob_pattern_p): Implement using __glob_pattern_type.
14735         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
14736         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
14737         Remove unreachable code.
14738
14739         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
14740
14741         * lib/glob.c (glob_in_dir): Add some comments and asserts to
14742         explain why there are no leaks.
14743
14744         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
14745
14746         [BZ #3253]
14747         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
14748         time, rather allocate increasingly bigger arrays of pointers, if
14749         possible with alloca, if too large with malloc.
14750
14751 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
14752
14753         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
14754         Problem reported by H.Merijn Brand in
14755         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
14756         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
14757         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
14758
14759 2007-10-15  Bruno Haible  <bruno@clisp.org>
14760
14761         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
14762         with explicit rpl_ prefix.
14763         * lib/fopen.c (fopen): Likewise.
14764         * lib/freopen.c (freopen): Likewise.
14765         * lib/iconv.c (iconv): Likewise.
14766         * lib/iconv_close.c (iconv_close): Likewise.
14767
14768 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14769
14770         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
14771
14772 2007-10-15  Bruno Haible  <bruno@clisp.org>
14773
14774         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
14775         <stddef.h> instead of <stdlib.h> since we only need NULL.
14776         Reported by Ben Pfaff <blp@cs.stanford.edu>.
14777
14778 2007-10-15  Bruno Haible  <bruno@clisp.org>
14779
14780         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
14781         Replace paragraph talking about LIBOBJS.
14782         Reported by Colin Watson <cjwatson@debian.org>.
14783
14784 2007-10-15  Bruno Haible  <bruno@clisp.org>
14785
14786         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
14787         <stdlib.h> before using NULL.
14788
14789 2007-10-15  Simon Josefsson  <simon@josefsson.org>
14790
14791         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
14792         Reported by Albert Chin <china@thewrittenword.com>.
14793
14794 2007-10-14  Bruno Haible  <bruno@clisp.org>
14795
14796         * modules/iconv_open-utf-tests: New file.
14797         * tests/test-iconv-utf.c: New file.
14798
14799         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
14800         * modules/iconv_open-utf: New file.
14801         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
14802         (iconv, iconv_close): New declarations.
14803         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
14804         be defined.
14805         (iconv_open): Add special handling of conversion between UTF-8 and
14806         UTF-{16,32}{BE,LE}.
14807         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
14808         * lib/iconv_close.c: New file.
14809         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
14810         gl_FUNC_ICONV_OPEN.
14811         (gl_FUNC_ICONV_OPEN): Use it.
14812         (gl_FUNC_ICONV_OPEN_UTF): New macro.
14813         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
14814         and REPLACE_ICONV_UTF.
14815         * modules/iconv_open (Depends-on): Add c-strcase.
14816         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
14817         ICONV_CONST.
14818         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
14819
14820 2007-10-13  Albert Chin  <china@thewrittenword.com>
14821             Bruno Haible  <bruno@clisp.org>
14822
14823         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
14824         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
14825
14826 2007-10-13  Bruno Haible  <bruno@clisp.org>
14827
14828         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
14829         defined, use the ISO C99 inline semantics.
14830         * lib/argp.h (ARGP_EI): Likewise.
14831
14832 2007-10-13  Bruno Haible  <bruno@clisp.org>
14833
14834         Handle 'inline' change in gcc 4.3.0.
14835         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
14836         argp_fmtstream_write, argp_fmtstream_set_lmargin,
14837         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
14838         argp_fmtstream_point): Disable 'extern' declaration if the function
14839         definition is going to be provided inline.
14840         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
14841         semantics, not the ISO C99 inline semantics.
14842         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
14843         'extern' declaration if the function definition is going to be provided
14844         inline.
14845         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
14846         the GNU C inline semantics, not the ISO C99 inline semantics. With
14847         GCC 4.2, avoid a warning.
14848
14849 2007-10-13  Bruno Haible  <bruno@clisp.org>
14850
14851         * lib/freading.h (freading): Enable the use of __freading for
14852         glibc >= 2.7.
14853         * lib/freading.c (freading): Likewise.
14854
14855 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
14856
14857         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
14858         "warning: C99 inline functions are not supported; using GNU89".
14859
14860 2007-10-12  Bruno Haible  <bruno@clisp.org>
14861
14862         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
14863         of 2.
14864         * tests/test-ceilf2.c: New file.
14865         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
14866
14867         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
14868         * modules/ceilf-tests: Update.
14869
14870 2007-10-12  Bruno Haible  <bruno@clisp.org>
14871
14872         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
14873         of 2.
14874         * tests/test-floorf2.c: New file.
14875         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
14876
14877         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
14878         * modules/floorf-tests: Update.
14879
14880 2007-10-12  Bruno Haible  <bruno@clisp.org>
14881
14882         * tests/test-trunc2.c: New file.
14883         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
14884
14885         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
14886         * modules/trunc-tests: Update.
14887
14888 2007-10-12  Bruno Haible  <bruno@clisp.org>
14889
14890         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
14891         of 2.
14892         * tests/test-truncf2.c: New file.
14893         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
14894
14895         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
14896         * modules/truncf-tests: Update.
14897
14898 2007-10-11  Eric Blake  <ebb9@byu.net>
14899
14900         Don't claim strerror is broken on Interix.
14901         * doc/functions/strerror.texi (strerror): Known broken systems are
14902         now Solaris 8, and not Interix.
14903         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
14904         Interix on cross-compile.
14905         Reported by Martin Koeppe in
14906         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
14907
14908 2007-10-11  Bruno Haible  <bruno@clisp.org>
14909
14910         * modules/i-ring-tests: New file.
14911         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
14912         instead of assert.
14913
14914 2007-10-11  Bruno Haible  <bruno@clisp.org>
14915
14916         * modules/filenamecat-tests: New file.
14917         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
14918         * lib/filenamecat.c: Remove test code.
14919
14920 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
14921
14922         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
14923
14924         * lib/strerror.c: Include <string.h> always, to test interface,
14925         and to remove the need for the dummy.
14926         Include intprops.h to compute width instead of doing it ourselves
14927         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
14928         (strerror): Define it to return NULL if there's no system strerror.
14929         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
14930         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
14931         ancient pre-strerror Unix systems well any more.  Saying "unknown
14932         system error" is enough.
14933         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
14934         simpler strerror.c implementation.
14935         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
14936         Simplify the tests to reflect the simpler strerror implementation.
14937         * modules/strerror (Depends-on): Add intprops.
14938
14939 2007-10-09  Eric Blake  <ebb9@byu.net>
14940
14941         Silence test-fpending.
14942         * modules/fpending-tests (Files): Add wrapper script.
14943         * tests/test-fpending.sh: New file.
14944
14945 2007-10-09  Bruno Haible  <bruno@clisp.org>
14946
14947         * MODULES.html.sh (func_module): Don't create a hyperlink for
14948         function names like 'printf_frexp'.
14949         (Misc): Add crc, memxor.
14950         (Characteristics of floating types): New section.
14951         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
14952         isnanf-nolibm, signbit, trunc, truncf, truncl.
14953         (Enhancements for ISO C 99 functions): New subsection Input/output.
14954         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
14955         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
14956         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
14957         (Compatibility checks for POSIX:2001 functions): Add clock-time.
14958         (Enhancements for POSIX:2001 functions): Add chdir-long.
14959         (File system functions): Add areadlink, chdir-safer, read-file.
14960         Remove cycle-check.
14961         (File system as inode set): New section.
14962         (Date and time): Add gethrxtime.
14963         (Multithreading): Add openmp.
14964         (Internationalization functions): Add localename.
14965         (Unicode string functions): Add unistr/u*-mbsnlen.
14966         (Support for maintaining and releasing projects): Add git-version-gen.
14967         (Lone files): Remove directories.
14968
14969 2007-10-08  Ben Pfaff  <blp@gnu.org>
14970
14971         * lib/xmalloca.h: Fix typo in comment.
14972
14973 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
14974
14975         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
14976         when avoiding problems with integer overflow.  Use a portable test
14977         instead.
14978
14979 2007-10-08  Simon Josefsson  <simon@josefsson.org>
14980
14981         * modules/dummy (License): Change to LGPLv2+.
14982         * modules/float (License): Likewise
14983         * modules/realloc (License): Likewise
14984         * modules/stdlib (License): Likewise
14985
14986 2007-10-07  Bruno Haible  <bruno@clisp.org>
14987
14988         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
14989         * floor.c (TWO_MANT_DIG): Likewise.
14990         * ceil.c (TWO_MANT_DIG): Likewise.
14991         Reported by Ben Pfaff.
14992
14993 2007-10-07  Bruno Haible  <bruno@clisp.org>
14994
14995         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
14996         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
14997         * lib/frexp.c (FUNC): Likewise.
14998         * lib/printf-frexp.h (printf_frexp): Likewise.
14999         * lib/printf-frexpl.h (printf_frexpl): Likewise.
15000         * lib/printf-frexp.c (FUNC): Likewise.
15001         Suggested by Jim Meyering.
15002
15003 2007-10-07  Jim Meyering  <meyering@redhat.com>
15004
15005         Make xnanosleep's integer overflow test more robust.
15006         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
15007         so that gcc-4.3.0 doesn't optimize away this test for overflow.
15008
15009 2007-10-07  Bruno Haible  <bruno@clisp.org>
15010
15011         * NEWS: Mention the license change.
15012
15013         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
15014         abbreviations in the modules files.
15015
15016         Change copyright notice from GPLv2+ to GPLv3+.
15017         * README: Change copyright notice.
15018         * MODULES.html.sh: Likewise.
15019         * build-aux/bootstrap.conf: Likewise.
15020         * build-aux/config.libpath: Likewise.
15021         * build-aux/csharpcomp.sh.in: Likewise.
15022         * build-aux/csharpexec.sh.in: Likewise.
15023         * build-aux/install-reloc: Likewise.
15024         * build-aux/javacomp.sh.in: Likewise.
15025         * build-aux/javaexec.sh.in: Likewise.
15026         * build-aux/ldd.sh.in: Likewise.
15027         * build-aux/reloc-ldflags: Likewise.
15028         * build-aux/relocatable.sh.in: Likewise.
15029         * build-aux/x-to-1.in: Likewise.
15030         * check-module: Likewise.
15031         * config/srclistvars.sh: Likewise.
15032         * gnulib-tool: Likewise.
15033         * lib/acl-internal.h: Likewise.
15034         * lib/acl.c: Likewise.
15035         * lib/acl.h: Likewise.
15036         * lib/acl_entries.c: Likewise.
15037         * lib/areadlink-with-size.c: Likewise.
15038         * lib/areadlink.c: Likewise.
15039         * lib/areadlink.h: Likewise.
15040         * lib/argmatch.c: Likewise.
15041         * lib/argmatch.h: Likewise.
15042         * lib/argp-ba.c: Likewise.
15043         * lib/argp-eexst.c: Likewise.
15044         * lib/argp-fmtstream.c: Likewise.
15045         * lib/argp-fmtstream.h: Likewise.
15046         * lib/argp-fs-xinl.c: Likewise.
15047         * lib/argp-help.c: Likewise.
15048         * lib/argp-namefrob.h: Likewise.
15049         * lib/argp-parse.c: Likewise.
15050         * lib/argp-pin.c: Likewise.
15051         * lib/argp-pv.c: Likewise.
15052         * lib/argp-pvh.c: Likewise.
15053         * lib/argp-xinl.c: Likewise.
15054         * lib/argp.h: Likewise.
15055         * lib/at-func.c: Likewise.
15056         * lib/atanl.c: Likewise.
15057         * lib/backupfile.c: Likewise.
15058         * lib/backupfile.h: Likewise.
15059         * lib/basename.c: Likewise.
15060         * lib/binary-io.h: Likewise.
15061         * lib/byteswap.in.h: Likewise.
15062         * lib/c-stack.c: Likewise.
15063         * lib/c-stack.h: Likewise.
15064         * lib/c-strcasestr.c: Likewise.
15065         * lib/c-strcasestr.h: Likewise.
15066         * lib/c-strstr.c: Likewise.
15067         * lib/c-strstr.h: Likewise.
15068         * lib/c-strtod.c: Likewise.
15069         * lib/calloc.c: Likewise.
15070         * lib/canon-host.c: Likewise.
15071         * lib/canon-host.h: Likewise.
15072         * lib/canonicalize-lgpl.c: Likewise.
15073         * lib/canonicalize.c: Likewise.
15074         * lib/canonicalize.h: Likewise.
15075         * lib/ceil.c: Likewise.
15076         * lib/ceilf.c: Likewise.
15077         * lib/ceill.c: Likewise.
15078         * lib/chdir-long.c: Likewise.
15079         * lib/chdir-long.h: Likewise.
15080         * lib/chdir-safer.c: Likewise.
15081         * lib/chdir-safer.h: Likewise.
15082         * lib/chown.c: Likewise.
15083         * lib/classpath.c: Likewise.
15084         * lib/classpath.h: Likewise.
15085         * lib/clean-temp.c: Likewise.
15086         * lib/clean-temp.h: Likewise.
15087         * lib/cloexec.c: Likewise.
15088         * lib/close-stream.c: Likewise.
15089         * lib/closein.c: Likewise.
15090         * lib/closein.h: Likewise.
15091         * lib/closeout.c: Likewise.
15092         * lib/closeout.h: Likewise.
15093         * lib/concat-filename.c: Likewise.
15094         * lib/copy-file.c: Likewise.
15095         * lib/copy-file.h: Likewise.
15096         * lib/count-one-bits.h: Likewise.
15097         * lib/crc.c: Likewise.
15098         * lib/crc.h: Likewise.
15099         * lib/creat-safer.c: Likewise.
15100         * lib/csharpcomp.c: Likewise.
15101         * lib/csharpcomp.h: Likewise.
15102         * lib/csharpexec.c: Likewise.
15103         * lib/csharpexec.h: Likewise.
15104         * lib/cycle-check.c: Likewise.
15105         * lib/cycle-check.h: Likewise.
15106         * lib/diacrit.c: Likewise.
15107         * lib/diacrit.h: Likewise.
15108         * lib/diffseq.h: Likewise.
15109         * lib/dirchownmod.c: Likewise.
15110         * lib/dirent.in.h: Likewise.
15111         * lib/dirfd.c: Likewise.
15112         * lib/dirfd.h: Likewise.
15113         * lib/dirname.c: Likewise.
15114         * lib/dirname.h: Likewise.
15115         * lib/dummy.c: Likewise.
15116         * lib/dup-safer.c: Likewise.
15117         * lib/dup2.c: Likewise.
15118         * lib/eealloc.h: Likewise.
15119         * lib/error.c: Likewise.
15120         * lib/error.h: Likewise.
15121         * lib/euidaccess.c: Likewise.
15122         * lib/exclude.c: Likewise.
15123         * lib/exclude.h: Likewise.
15124         * lib/execute.c: Likewise.
15125         * lib/execute.h: Likewise.
15126         * lib/exitfail.c: Likewise.
15127         * lib/exitfail.h: Likewise.
15128         * lib/expl.c: Likewise.
15129         * lib/fatal-signal.c: Likewise.
15130         * lib/fatal-signal.h: Likewise.
15131         * lib/fbufmode.c: Likewise.
15132         * lib/fbufmode.h: Likewise.
15133         * lib/fchdir.c: Likewise.
15134         * lib/fchmodat.c: Likewise.
15135         * lib/fchownat.c: Likewise.
15136         * lib/fcntl--.h: Likewise.
15137         * lib/fcntl-safer.h: Likewise.
15138         * lib/fcntl.in.h: Likewise.
15139         * lib/fd-safer.c: Likewise.
15140         * lib/fflush.c: Likewise.
15141         * lib/file-has-acl.c: Likewise.
15142         * lib/file-set.c: Likewise.
15143         * lib/file-type.c: Likewise.
15144         * lib/file-type.h: Likewise.
15145         * lib/fileblocks.c: Likewise.
15146         * lib/filemode.c: Likewise.
15147         * lib/filemode.h: Likewise.
15148         * lib/filename.h: Likewise.
15149         * lib/filenamecat.c: Likewise.
15150         * lib/filenamecat.h: Likewise.
15151         * lib/findprog.c: Likewise.
15152         * lib/findprog.h: Likewise.
15153         * lib/float.in.h: Likewise.
15154         * lib/floor.c: Likewise.
15155         * lib/floorf.c: Likewise.
15156         * lib/floorl.c: Likewise.
15157         * lib/fopen-safer.c: Likewise.
15158         * lib/fopen.c: Likewise.
15159         * lib/fpending.c: Likewise.
15160         * lib/fpending.h: Likewise.
15161         * lib/fprintf.c: Likewise.
15162         * lib/fprintftime.h: Likewise.
15163         * lib/fpucw.h: Likewise.
15164         * lib/fpurge.c: Likewise.
15165         * lib/fpurge.h: Likewise.
15166         * lib/freadable.c: Likewise.
15167         * lib/freadable.h: Likewise.
15168         * lib/freadahead.c: Likewise.
15169         * lib/freadahead.h: Likewise.
15170         * lib/freading.c: Likewise.
15171         * lib/freading.h: Likewise.
15172         * lib/free.c: Likewise.
15173         * lib/freopen.c: Likewise.
15174         * lib/frexp.c: Likewise.
15175         * lib/frexpl.c: Likewise.
15176         * lib/fseek.c: Likewise.
15177         * lib/fseterr.c: Likewise.
15178         * lib/fseterr.h: Likewise.
15179         * lib/fstatat.c: Likewise.
15180         * lib/fstrcmp.c: Likewise.
15181         * lib/fstrcmp.h: Likewise.
15182         * lib/fsusage.c: Likewise.
15183         * lib/fsusage.h: Likewise.
15184         * lib/ftell.c: Likewise.
15185         * lib/ftello.c: Likewise.
15186         * lib/fts-cycle.c: Likewise.
15187         * lib/fts.c: Likewise.
15188         * lib/fts_.h: Likewise.
15189         * lib/full-read.c: Likewise.
15190         * lib/full-read.h: Likewise.
15191         * lib/full-write.c: Likewise.
15192         * lib/full-write.h: Likewise.
15193         * lib/fwritable.c: Likewise.
15194         * lib/fwritable.h: Likewise.
15195         * lib/fwriteerror.c: Likewise.
15196         * lib/fwriteerror.h: Likewise.
15197         * lib/fwriting.c: Likewise.
15198         * lib/fwriting.h: Likewise.
15199         * lib/gcd.c: Likewise.
15200         * lib/gcd.h: Likewise.
15201         * lib/getcwd.c: Likewise.
15202         * lib/getdate.h: Likewise.
15203         * lib/getdate.y: Likewise.
15204         * lib/getdomainname.c: Likewise.
15205         * lib/getdomainname.h: Likewise.
15206         * lib/getgroups.c: Likewise.
15207         * lib/gethostname.c: Likewise.
15208         * lib/gethrxtime.c: Likewise.
15209         * lib/gethrxtime.h: Likewise.
15210         * lib/getloadavg.c: Likewise.
15211         * lib/getndelim2.c: Likewise.
15212         * lib/getndelim2.h: Likewise.
15213         * lib/getnline.c: Likewise.
15214         * lib/getnline.h: Likewise.
15215         * lib/getopt.c: Likewise.
15216         * lib/getopt.in.h: Likewise.
15217         * lib/getopt1.c: Likewise.
15218         * lib/getopt_int.h: Likewise.
15219         * lib/getpagesize.h: Likewise.
15220         * lib/getsubopt.c: Likewise.
15221         * lib/gettime.c: Likewise.
15222         * lib/getugroups.c: Likewise.
15223         * lib/getugroups.h: Likewise.
15224         * lib/getusershell.c: Likewise.
15225         * lib/gl_anyavltree_list1.h: Likewise.
15226         * lib/gl_anyavltree_list2.h: Likewise.
15227         * lib/gl_anyhash_list1.h: Likewise.
15228         * lib/gl_anyhash_list2.h: Likewise.
15229         * lib/gl_anylinked_list1.h: Likewise.
15230         * lib/gl_anylinked_list2.h: Likewise.
15231         * lib/gl_anyrbtree_list1.h: Likewise.
15232         * lib/gl_anyrbtree_list2.h: Likewise.
15233         * lib/gl_anytree_list1.h: Likewise.
15234         * lib/gl_anytree_list2.h: Likewise.
15235         * lib/gl_anytree_oset.h: Likewise.
15236         * lib/gl_anytreehash_list1.h: Likewise.
15237         * lib/gl_anytreehash_list2.h: Likewise.
15238         * lib/gl_array_list.c: Likewise.
15239         * lib/gl_array_list.h: Likewise.
15240         * lib/gl_array_oset.c: Likewise.
15241         * lib/gl_array_oset.h: Likewise.
15242         * lib/gl_avltree_list.c: Likewise.
15243         * lib/gl_avltree_list.h: Likewise.
15244         * lib/gl_avltree_oset.c: Likewise.
15245         * lib/gl_avltree_oset.h: Likewise.
15246         * lib/gl_avltreehash_list.c: Likewise.
15247         * lib/gl_avltreehash_list.h: Likewise.
15248         * lib/gl_carray_list.c: Likewise.
15249         * lib/gl_carray_list.h: Likewise.
15250         * lib/gl_linked_list.c: Likewise.
15251         * lib/gl_linked_list.h: Likewise.
15252         * lib/gl_linkedhash_list.c: Likewise.
15253         * lib/gl_linkedhash_list.h: Likewise.
15254         * lib/gl_list.c: Likewise.
15255         * lib/gl_list.h: Likewise.
15256         * lib/gl_oset.c: Likewise.
15257         * lib/gl_oset.h: Likewise.
15258         * lib/gl_rbtree_list.c: Likewise.
15259         * lib/gl_rbtree_list.h: Likewise.
15260         * lib/gl_rbtree_oset.c: Likewise.
15261         * lib/gl_rbtree_oset.h: Likewise.
15262         * lib/gl_rbtreehash_list.c: Likewise.
15263         * lib/gl_rbtreehash_list.h: Likewise.
15264         * lib/gl_sublist.c: Likewise.
15265         * lib/gl_sublist.h: Likewise.
15266         * lib/group-member.c: Likewise.
15267         * lib/group-member.h: Likewise.
15268         * lib/hard-locale.c: Likewise.
15269         * lib/hard-locale.h: Likewise.
15270         * lib/hash-pjw.c: Likewise.
15271         * lib/hash-pjw.h: Likewise.
15272         * lib/hash-triple.c: Likewise.
15273         * lib/hash.c: Likewise.
15274         * lib/hash.h: Likewise.
15275         * lib/human.c: Likewise.
15276         * lib/human.h: Likewise.
15277         * lib/i-ring.c: Likewise.
15278         * lib/i-ring.h: Likewise.
15279         * lib/idcache.c: Likewise.
15280         * lib/imaxabs.c: Likewise.
15281         * lib/imaxdiv.c: Likewise.
15282         * lib/inet_pton.c: Likewise.
15283         * lib/inet_pton.h: Likewise.
15284         * lib/intprops.h: Likewise.
15285         * lib/inttostr.c: Likewise.
15286         * lib/inttostr.h: Likewise.
15287         * lib/inttypes.in.h: Likewise.
15288         * lib/isapipe.c: Likewise.
15289         * lib/isdir.c: Likewise.
15290         * lib/isnan.c: Likewise.
15291         * lib/isnan.h: Likewise.
15292         * lib/isnanf.c: Likewise.
15293         * lib/isnanf.h: Likewise.
15294         * lib/isnanl-nolibm.h: Likewise.
15295         * lib/isnanl.c: Likewise.
15296         * lib/isnanl.h: Likewise.
15297         * lib/javacomp.c: Likewise.
15298         * lib/javacomp.h: Likewise.
15299         * lib/javaexec.c: Likewise.
15300         * lib/javaexec.h: Likewise.
15301         * lib/javaversion.c: Likewise.
15302         * lib/javaversion.h: Likewise.
15303         * lib/javaversion.java: Likewise.
15304         * lib/lbrkprop.h: Likewise.
15305         * lib/lchmod.h: Likewise.
15306         * lib/lchown.c: Likewise.
15307         * lib/ldexpl.c: Likewise.
15308         * lib/linebreak.c: Likewise.
15309         * lib/linebreak.h: Likewise.
15310         * lib/linebuffer.c: Likewise.
15311         * lib/linebuffer.h: Likewise.
15312         * lib/locale.in.h: Likewise.
15313         * lib/logl.c: Likewise.
15314         * lib/long-options.c: Likewise.
15315         * lib/long-options.h: Likewise.
15316         * lib/lstat.c: Likewise.
15317         * lib/lstat.h: Likewise.
15318         * lib/math.in.h: Likewise.
15319         * lib/mbchar.c: Likewise.
15320         * lib/mbchar.h: Likewise.
15321         * lib/mbfile.h: Likewise.
15322         * lib/mbiter.h: Likewise.
15323         * lib/mbscasecmp.c: Likewise.
15324         * lib/mbscasestr.c: Likewise.
15325         * lib/mbschr.c: Likewise.
15326         * lib/mbscspn.c: Likewise.
15327         * lib/mbslen.c: Likewise.
15328         * lib/mbsncasecmp.c: Likewise.
15329         * lib/mbsnlen.c: Likewise.
15330         * lib/mbspbrk.c: Likewise.
15331         * lib/mbspcasecmp.c: Likewise.
15332         * lib/mbsrchr.c: Likewise.
15333         * lib/mbssep.c: Likewise.
15334         * lib/mbsspn.c: Likewise.
15335         * lib/mbsstr.c: Likewise.
15336         * lib/mbstok_r.c: Likewise.
15337         * lib/mbswidth.c: Likewise.
15338         * lib/mbswidth.h: Likewise.
15339         * lib/mbuiter.h: Likewise.
15340         * lib/memcasecmp.c: Likewise.
15341         * lib/memcasecmp.h: Likewise.
15342         * lib/memchr.c: Likewise.
15343         * lib/memcmp.c: Likewise.
15344         * lib/memcoll.c: Likewise.
15345         * lib/memcoll.h: Likewise.
15346         * lib/memcpy.c: Likewise.
15347         * lib/memrchr.c: Likewise.
15348         * lib/mkancesdirs.c: Likewise.
15349         * lib/mkdir-p.c: Likewise.
15350         * lib/mkdir-p.h: Likewise.
15351         * lib/mkdir.c: Likewise.
15352         * lib/mkdirat.c: Likewise.
15353         * lib/mkdtemp.c: Likewise.
15354         * lib/mkstemp-safer.c: Likewise.
15355         * lib/mkstemp.c: Likewise.
15356         * lib/modechange.c: Likewise.
15357         * lib/modechange.h: Likewise.
15358         * lib/mountlist.c: Likewise.
15359         * lib/mountlist.h: Likewise.
15360         * lib/mpsort.c: Likewise.
15361         * lib/nanosleep.c: Likewise.
15362         * lib/obstack.c: Likewise.
15363         * lib/obstack.h: Likewise.
15364         * lib/open-safer.c: Likewise.
15365         * lib/open.c: Likewise.
15366         * lib/openat-die.c: Likewise.
15367         * lib/openat-priv.h: Likewise.
15368         * lib/openat-proc.c: Likewise.
15369         * lib/openat.c: Likewise.
15370         * lib/openat.h: Likewise.
15371         * lib/pagealign_alloc.c: Likewise.
15372         * lib/pagealign_alloc.h: Likewise.
15373         * lib/physmem.c: Likewise.
15374         * lib/physmem.h: Likewise.
15375         * lib/pipe-safer.c: Likewise.
15376         * lib/pipe.c: Likewise.
15377         * lib/pipe.h: Likewise.
15378         * lib/posixtm.c: Likewise.
15379         * lib/posixtm.h: Likewise.
15380         * lib/posixver.c: Likewise.
15381         * lib/printf-frexp.c: Likewise.
15382         * lib/printf-frexp.h: Likewise.
15383         * lib/printf-frexpl.c: Likewise.
15384         * lib/printf-frexpl.h: Likewise.
15385         * lib/printf.c: Likewise.
15386         * lib/progname.c: Likewise.
15387         * lib/progname.h: Likewise.
15388         * lib/progreloc.c: Likewise.
15389         * lib/putenv.c: Likewise.
15390         * lib/quote.c: Likewise.
15391         * lib/quote.h: Likewise.
15392         * lib/quotearg.c: Likewise.
15393         * lib/quotearg.h: Likewise.
15394         * lib/raise.c: Likewise.
15395         * lib/readline.c: Likewise.
15396         * lib/readline.h: Likewise.
15397         * lib/readlink.c: Likewise.
15398         * lib/readtokens.c: Likewise.
15399         * lib/readtokens.h: Likewise.
15400         * lib/readtokens0.c: Likewise.
15401         * lib/readtokens0.h: Likewise.
15402         * lib/readutmp.c: Likewise.
15403         * lib/readutmp.h: Likewise.
15404         * lib/realloc.c: Likewise.
15405         * lib/relocwrapper.c: Likewise.
15406         * lib/rename-dest-slash.c: Likewise.
15407         * lib/rename.c: Likewise.
15408         * lib/rmdir.c: Likewise.
15409         * lib/rpmatch.c: Likewise.
15410         * lib/safe-read.c: Likewise.
15411         * lib/safe-read.h: Likewise.
15412         * lib/safe-write.c: Likewise.
15413         * lib/safe-write.h: Likewise.
15414         * lib/same-inode.h: Likewise.
15415         * lib/same.c: Likewise.
15416         * lib/same.h: Likewise.
15417         * lib/save-cwd.c: Likewise.
15418         * lib/save-cwd.h: Likewise.
15419         * lib/savedir.c: Likewise.
15420         * lib/savedir.h: Likewise.
15421         * lib/savewd.c: Likewise.
15422         * lib/savewd.h: Likewise.
15423         * lib/search.in.h: Likewise.
15424         * lib/setenv.c: Likewise.
15425         * lib/setenv.h: Likewise.
15426         * lib/settime.c: Likewise.
15427         * lib/sh-quote.c: Likewise.
15428         * lib/sh-quote.h: Likewise.
15429         * lib/sig2str.c: Likewise.
15430         * lib/sig2str.h: Likewise.
15431         * lib/signal.in.h: Likewise.
15432         * lib/signbitd.c: Likewise.
15433         * lib/signbitf.c: Likewise.
15434         * lib/signbitl.c: Likewise.
15435         * lib/sigprocmask.c: Likewise.
15436         * lib/sincosl.c: Likewise.
15437         * lib/sleep.c: Likewise.
15438         * lib/sprintf.c: Likewise.
15439         * lib/sqrtl.c: Likewise.
15440         * lib/stat-time.h: Likewise.
15441         * lib/stdio--.h: Likewise.
15442         * lib/stdio-safer.h: Likewise.
15443         * lib/stdlib--.h: Likewise.
15444         * lib/stdlib-safer.h: Likewise.
15445         * lib/stdlib.in.h: Likewise.
15446         * lib/stpcpy.c: Likewise.
15447         * lib/stpncpy.c: Likewise.
15448         * lib/strchrnul.c: Likewise.
15449         * lib/strcspn.c: Likewise.
15450         * lib/strerror.c: Likewise.
15451         * lib/strftime.c: Likewise.
15452         * lib/strftime.h: Likewise.
15453         * lib/striconveh.c: Likewise.
15454         * lib/striconveh.h: Likewise.
15455         * lib/striconveha.c: Likewise.
15456         * lib/striconveha.h: Likewise.
15457         * lib/stripslash.c: Likewise.
15458         * lib/strnlen1.c: Likewise.
15459         * lib/strnlen1.h: Likewise.
15460         * lib/strtod.c: Likewise.
15461         * lib/strtoimax.c: Likewise.
15462         * lib/strtok_r.c: Likewise.
15463         * lib/strtol.c: Likewise.
15464         * lib/strtoll.c: Likewise.
15465         * lib/strtoul.c: Likewise.
15466         * lib/strtoull.c: Likewise.
15467         * lib/sysexits.in.h: Likewise.
15468         * lib/tempname.c: Likewise.
15469         * lib/tempname.h: Likewise.
15470         * lib/timespec.h: Likewise.
15471         * lib/tls.c: Likewise.
15472         * lib/tls.h: Likewise.
15473         * lib/tmpdir.c: Likewise.
15474         * lib/tmpdir.h: Likewise.
15475         * lib/tmpfile-safer.c: Likewise.
15476         * lib/tmpfile.c: Likewise.
15477         * lib/trigl.c: Likewise.
15478         * lib/trigl.h: Likewise.
15479         * lib/trim.c: Likewise.
15480         * lib/trim.h: Likewise.
15481         * lib/trunc.c: Likewise.
15482         * lib/truncf.c: Likewise.
15483         * lib/truncl.c: Likewise.
15484         * lib/tsearch.c: Likewise.
15485         * lib/unicodeio.c: Likewise.
15486         * lib/unicodeio.h: Likewise.
15487         * lib/unistd--.h: Likewise.
15488         * lib/unistd-safer.h: Likewise.
15489         * lib/unistdio/ulc-fprintf.c: Likewise.
15490         * lib/unistdio/ulc-vfprintf.c: Likewise.
15491         * lib/unlinkdir.c: Likewise.
15492         * lib/unlinkdir.h: Likewise.
15493         * lib/unlocked-io.h: Likewise.
15494         * lib/unsetenv.c: Likewise.
15495         * lib/userspec.c: Likewise.
15496         * lib/utime.c: Likewise.
15497         * lib/utimecmp.c: Likewise.
15498         * lib/utimecmp.h: Likewise.
15499         * lib/utimens.c: Likewise.
15500         * lib/verify.h: Likewise.
15501         * lib/verror.c: Likewise.
15502         * lib/verror.h: Likewise.
15503         * lib/version-etc-fsf.c: Likewise.
15504         * lib/version-etc.c: Likewise.
15505         * lib/version-etc.h: Likewise.
15506         * lib/vfprintf.c: Likewise.
15507         * lib/vprintf.c: Likewise.
15508         * lib/vsprintf.c: Likewise.
15509         * lib/w32spawn.h: Likewise.
15510         * lib/wait-process.c: Likewise.
15511         * lib/wait-process.h: Likewise.
15512         * lib/wcwidth.c: Likewise.
15513         * lib/write-any-file.c: Likewise.
15514         * lib/xalloc-die.c: Likewise.
15515         * lib/xalloc.h: Likewise.
15516         * lib/xasprintf.c: Likewise.
15517         * lib/xgetcwd.c: Likewise.
15518         * lib/xgetcwd.h: Likewise.
15519         * lib/xgetdomainname.c: Likewise.
15520         * lib/xgetdomainname.h: Likewise.
15521         * lib/xgethostname.c: Likewise.
15522         * lib/xmalloc.c: Likewise.
15523         * lib/xmalloca.c: Likewise.
15524         * lib/xmalloca.h: Likewise.
15525         * lib/xmemcoll.c: Likewise.
15526         * lib/xnanosleep.c: Likewise.
15527         * lib/xreadlink.c: Likewise.
15528         * lib/xreadlink.h: Likewise.
15529         * lib/xsetenv.c: Likewise.
15530         * lib/xsetenv.h: Likewise.
15531         * lib/xstriconv.c: Likewise.
15532         * lib/xstriconv.h: Likewise.
15533         * lib/xstrndup.c: Likewise.
15534         * lib/xstrndup.h: Likewise.
15535         * lib/xstrtod.c: Likewise.
15536         * lib/xstrtod.h: Likewise.
15537         * lib/xstrtol-error.c: Likewise.
15538         * lib/xstrtol.c: Likewise.
15539         * lib/xstrtol.h: Likewise.
15540         * lib/xtime.h: Likewise.
15541         * lib/xvasprintf.c: Likewise.
15542         * lib/xvasprintf.h: Likewise.
15543         * lib/yesno.c: Likewise.
15544         * lib/yesno.h: Likewise.
15545         * posix-modules: Likewise.
15546         * tests/test-alloca-opt.c: Likewise.
15547         * tests/test-arcfour.c: Likewise.
15548         * tests/test-arctwo.c: Likewise.
15549         * tests/test-argmatch.c: Likewise.
15550         * tests/test-argp-2.sh: Likewise.
15551         * tests/test-argp.c: Likewise.
15552         * tests/test-arpa_inet.c: Likewise.
15553         * tests/test-array_list.c: Likewise.
15554         * tests/test-array_oset.c: Likewise.
15555         * tests/test-atexit.c: Likewise.
15556         * tests/test-avltree_list.c: Likewise.
15557         * tests/test-avltree_oset.c: Likewise.
15558         * tests/test-avltreehash_list.c: Likewise.
15559         * tests/test-base64.c: Likewise.
15560         * tests/test-binary-io.c: Likewise.
15561         * tests/test-byteswap.c: Likewise.
15562         * tests/test-c-ctype.c: Likewise.
15563         * tests/test-c-strcasecmp.c: Likewise.
15564         * tests/test-c-strcasestr.c: Likewise.
15565         * tests/test-c-strncasecmp.c: Likewise.
15566         * tests/test-c-strstr.c: Likewise.
15567         * tests/test-canonicalize-lgpl.c: Likewise.
15568         * tests/test-canonicalize.c: Likewise.
15569         * tests/test-carray_list.c: Likewise.
15570         * tests/test-ceilf.c: Likewise.
15571         * tests/test-ceill.c: Likewise.
15572         * tests/test-count-one-bits.c: Likewise.
15573         * tests/test-crc.c: Likewise.
15574         * tests/test-dirname.c: Likewise.
15575         * tests/test-fbufmode.c: Likewise.
15576         * tests/test-fcntl.c: Likewise.
15577         * tests/test-fflush.c: Likewise.
15578         * tests/test-floorf.c: Likewise.
15579         * tests/test-floorl.c: Likewise.
15580         * tests/test-fopen.c: Likewise.
15581         * tests/test-fprintf-posix.c: Likewise.
15582         * tests/test-fprintf-posix.h: Likewise.
15583         * tests/test-fpurge.c: Likewise.
15584         * tests/test-freadable.c: Likewise.
15585         * tests/test-freadahead.c: Likewise.
15586         * tests/test-freading.c: Likewise.
15587         * tests/test-freopen.c: Likewise.
15588         * tests/test-frexp.c: Likewise.
15589         * tests/test-frexpl.c: Likewise.
15590         * tests/test-fseek.c: Likewise.
15591         * tests/test-fseeko.c: Likewise.
15592         * tests/test-fseterr.c: Likewise.
15593         * tests/test-fstrcmp.c: Likewise.
15594         * tests/test-ftell.c: Likewise.
15595         * tests/test-ftello.c: Likewise.
15596         * tests/test-fwritable.c: Likewise.
15597         * tests/test-fwriting.c: Likewise.
15598         * tests/test-getaddrinfo.c: Likewise.
15599         * tests/test-getpass.c: Likewise.
15600         * tests/test-gettimeofday.c: Likewise.
15601         * tests/test-hmac-md5.c: Likewise.
15602         * tests/test-hmac-sha1.c: Likewise.
15603         * tests/test-iconv.c: Likewise.
15604         * tests/test-iconvme.c: Likewise.
15605         * tests/test-inttypes.c: Likewise.
15606         * tests/test-isnan.c: Likewise.
15607         * tests/test-isnanf.c: Likewise.
15608         * tests/test-isnanl-nolibm.c: Likewise.
15609         * tests/test-isnanl.c: Likewise.
15610         * tests/test-isnanl.h: Likewise.
15611         * tests/test-ldexpl.c: Likewise.
15612         * tests/test-linked_list.c: Likewise.
15613         * tests/test-linkedhash_list.c: Likewise.
15614         * tests/test-locale.c: Likewise.
15615         * tests/test-localename.c: Likewise.
15616         * tests/test-lock.c: Likewise.
15617         * tests/test-lseek.c: Likewise.
15618         * tests/test-malloca.c: Likewise.
15619         * tests/test-math.c: Likewise.
15620         * tests/test-mbscasecmp.c: Likewise.
15621         * tests/test-mbscasestr1.c: Likewise.
15622         * tests/test-mbscasestr2.c: Likewise.
15623         * tests/test-mbscasestr3.c: Likewise.
15624         * tests/test-mbscasestr4.c: Likewise.
15625         * tests/test-mbschr.c: Likewise.
15626         * tests/test-mbscspn.c: Likewise.
15627         * tests/test-mbsncasecmp.c: Likewise.
15628         * tests/test-mbspbrk.c: Likewise.
15629         * tests/test-mbspcasecmp.c: Likewise.
15630         * tests/test-mbsrchr.c: Likewise.
15631         * tests/test-mbsspn.c: Likewise.
15632         * tests/test-mbsstr1.c: Likewise.
15633         * tests/test-mbsstr2.c: Likewise.
15634         * tests/test-mbsstr3.c: Likewise.
15635         * tests/test-md5.c: Likewise.
15636         * tests/test-memmem.c: Likewise.
15637         * tests/test-netinet_in.c: Likewise.
15638         * tests/test-open.c: Likewise.
15639         * tests/test-printf-frexp.c: Likewise.
15640         * tests/test-printf-frexpl.c: Likewise.
15641         * tests/test-printf-posix.c: Likewise.
15642         * tests/test-printf-posix.h: Likewise.
15643         * tests/test-rbtree_list.c: Likewise.
15644         * tests/test-rbtree_oset.c: Likewise.
15645         * tests/test-rbtreehash_list.c: Likewise.
15646         * tests/test-read-file.c: Likewise.
15647         * tests/test-rijndael.c: Likewise.
15648         * tests/test-search.c: Likewise.
15649         * tests/test-signbit.c: Likewise.
15650         * tests/test-sleep.c: Likewise.
15651         * tests/test-snprintf-posix.c: Likewise.
15652         * tests/test-snprintf-posix.h: Likewise.
15653         * tests/test-snprintf.c: Likewise.
15654         * tests/test-sprintf-posix.c: Likewise.
15655         * tests/test-sprintf-posix.h: Likewise.
15656         * tests/test-stat-time.c: Likewise.
15657         * tests/test-stdbool.c: Likewise.
15658         * tests/test-stdint.c: Likewise.
15659         * tests/test-stdio.c: Likewise.
15660         * tests/test-stdlib.c: Likewise.
15661         * tests/test-stpncpy.c: Likewise.
15662         * tests/test-strcasestr.c: Likewise.
15663         * tests/test-striconv.c: Likewise.
15664         * tests/test-striconveh.c: Likewise.
15665         * tests/test-striconveha.c: Likewise.
15666         * tests/test-string.c: Likewise.
15667         * tests/test-sys_select.c: Likewise.
15668         * tests/test-sys_socket.c: Likewise.
15669         * tests/test-sys_stat.c: Likewise.
15670         * tests/test-sys_time.c: Likewise.
15671         * tests/test-sysexits.c: Likewise.
15672         * tests/test-time.c: Likewise.
15673         * tests/test-tls.c: Likewise.
15674         * tests/test-trunc.c: Likewise.
15675         * tests/test-truncf.c: Likewise.
15676         * tests/test-truncl.c: Likewise.
15677         * tests/test-unistd.c: Likewise.
15678         * tests/test-vasnprintf-posix.c: Likewise.
15679         * tests/test-vasnprintf-posix2.c: Likewise.
15680         * tests/test-vasnprintf.c: Likewise.
15681         * tests/test-vasprintf-posix.c: Likewise.
15682         * tests/test-vasprintf.c: Likewise.
15683         * tests/test-verify.c: Likewise.
15684         * tests/test-vfprintf-posix.c: Likewise.
15685         * tests/test-vprintf-posix.c: Likewise.
15686         * tests/test-vsnprintf-posix.c: Likewise.
15687         * tests/test-vsnprintf.c: Likewise.
15688         * tests/test-vsprintf-posix.c: Likewise.
15689         * tests/test-wchar.c: Likewise.
15690         * tests/test-wctype.c: Likewise.
15691         * tests/test-wcwidth.c: Likewise.
15692         * tests/test-xstrtol.c: Likewise.
15693         * tests/test-xvasprintf.c: Likewise.
15694         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
15695         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
15696         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
15697         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
15698         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
15699         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
15700         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
15701         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
15702         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
15703         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
15704         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
15705         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
15706         * tests/uniname/test-uninames.c: Likewise.
15707         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
15708         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
15709         * tests/unistdio/test-u16-printf1.h: Likewise.
15710         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
15711         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
15712         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
15713         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
15714         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
15715         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
15716         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
15717         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
15718         * tests/unistdio/test-u32-printf1.h: Likewise.
15719         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
15720         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
15721         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
15722         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
15723         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
15724         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
15725         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
15726         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
15727         * tests/unistdio/test-u8-printf1.h: Likewise.
15728         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
15729         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
15730         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
15731         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
15732         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
15733         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
15734         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
15735         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
15736         * tests/unistdio/test-ulc-printf1.h: Likewise.
15737         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
15738         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
15739         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
15740         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
15741         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
15742         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
15743         * tests/uniwidth/test-u16-strwidth.c: Likewise.
15744         * tests/uniwidth/test-u16-width.c: Likewise.
15745         * tests/uniwidth/test-u32-strwidth.c: Likewise.
15746         * tests/uniwidth/test-u32-width.c: Likewise.
15747         * tests/uniwidth/test-u8-strwidth.c: Likewise.
15748         * tests/uniwidth/test-u8-width.c: Likewise.
15749         * tests/uniwidth/test-uc_width.c: Likewise.
15750         * config/srclist-update: Likewise.
15751         (fixlicense): Update to GPLv3+.
15752
15753         Change copyright notice from LGPLv2.1+ to LGPLv3+.
15754         * tests/test-tsearch.c: Change copyright notice.
15755
15756         Change copyright notice from LGPLv2.0+ to LGPLv3+.
15757         * lib/c-strcaseeq.h: Change copyright notice.
15758         * lib/streq.h: Likewise.
15759         * lib/uniconv.h: Likewise.
15760         * lib/uniconv/u-conv-from-enc.h: Likewise.
15761         * lib/uniconv/u-conv-to-enc.h: Likewise.
15762         * lib/uniconv/u-strconv-from-enc.h: Likewise.
15763         * lib/uniconv/u-strconv-to-enc.h: Likewise.
15764         * lib/uniconv/u16-conv-from-enc.c: Likewise.
15765         * lib/uniconv/u16-conv-to-enc.c: Likewise.
15766         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
15767         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
15768         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
15769         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
15770         * lib/uniconv/u32-conv-from-enc.c: Likewise.
15771         * lib/uniconv/u32-conv-to-enc.c: Likewise.
15772         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
15773         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
15774         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
15775         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
15776         * lib/uniconv/u8-conv-from-enc.c: Likewise.
15777         * lib/uniconv/u8-conv-to-enc.c: Likewise.
15778         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
15779         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
15780         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
15781         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
15782         * lib/uniname.h: Likewise.
15783         * lib/uniname/uniname.c: Likewise.
15784         * lib/unistdio.h: Likewise.
15785         * lib/unistdio/u-asnprintf.h: Likewise.
15786         * lib/unistdio/u-asprintf.h: Likewise.
15787         * lib/unistdio/u-printf-args.c: Likewise.
15788         * lib/unistdio/u-printf-args.h: Likewise.
15789         * lib/unistdio/u-printf-parse.h: Likewise.
15790         * lib/unistdio/u-snprintf.h: Likewise.
15791         * lib/unistdio/u-sprintf.h: Likewise.
15792         * lib/unistdio/u-vasprintf.h: Likewise.
15793         * lib/unistdio/u-vsnprintf.h: Likewise.
15794         * lib/unistdio/u-vsprintf.h: Likewise.
15795         * lib/unistdio/u16-asnprintf.c: Likewise.
15796         * lib/unistdio/u16-asprintf.c: Likewise.
15797         * lib/unistdio/u16-printf-parse.c: Likewise.
15798         * lib/unistdio/u16-snprintf.c: Likewise.
15799         * lib/unistdio/u16-sprintf.c: Likewise.
15800         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
15801         * lib/unistdio/u16-u16-asprintf.c: Likewise.
15802         * lib/unistdio/u16-u16-snprintf.c: Likewise.
15803         * lib/unistdio/u16-u16-sprintf.c: Likewise.
15804         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
15805         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
15806         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
15807         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
15808         * lib/unistdio/u16-vasnprintf.c: Likewise.
15809         * lib/unistdio/u16-vasprintf.c: Likewise.
15810         * lib/unistdio/u16-vsnprintf.c: Likewise.
15811         * lib/unistdio/u16-vsprintf.c: Likewise.
15812         * lib/unistdio/u32-asnprintf.c: Likewise.
15813         * lib/unistdio/u32-asprintf.c: Likewise.
15814         * lib/unistdio/u32-printf-parse.c: Likewise.
15815         * lib/unistdio/u32-snprintf.c: Likewise.
15816         * lib/unistdio/u32-sprintf.c: Likewise.
15817         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
15818         * lib/unistdio/u32-u32-asprintf.c: Likewise.
15819         * lib/unistdio/u32-u32-snprintf.c: Likewise.
15820         * lib/unistdio/u32-u32-sprintf.c: Likewise.
15821         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
15822         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
15823         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
15824         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
15825         * lib/unistdio/u32-vasnprintf.c: Likewise.
15826         * lib/unistdio/u32-vasprintf.c: Likewise.
15827         * lib/unistdio/u32-vsnprintf.c: Likewise.
15828         * lib/unistdio/u32-vsprintf.c: Likewise.
15829         * lib/unistdio/u8-asnprintf.c: Likewise.
15830         * lib/unistdio/u8-asprintf.c: Likewise.
15831         * lib/unistdio/u8-printf-parse.c: Likewise.
15832         * lib/unistdio/u8-snprintf.c: Likewise.
15833         * lib/unistdio/u8-sprintf.c: Likewise.
15834         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
15835         * lib/unistdio/u8-u8-asprintf.c: Likewise.
15836         * lib/unistdio/u8-u8-snprintf.c: Likewise.
15837         * lib/unistdio/u8-u8-sprintf.c: Likewise.
15838         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
15839         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
15840         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
15841         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
15842         * lib/unistdio/u8-vasnprintf.c: Likewise.
15843         * lib/unistdio/u8-vasprintf.c: Likewise.
15844         * lib/unistdio/u8-vsnprintf.c: Likewise.
15845         * lib/unistdio/u8-vsprintf.c: Likewise.
15846         * lib/unistdio/ulc-asnprintf.c: Likewise.
15847         * lib/unistdio/ulc-asprintf.c: Likewise.
15848         * lib/unistdio/ulc-printf-parse.c: Likewise.
15849         * lib/unistdio/ulc-snprintf.c: Likewise.
15850         * lib/unistdio/ulc-sprintf.c: Likewise.
15851         * lib/unistdio/ulc-vasnprintf.c: Likewise.
15852         * lib/unistdio/ulc-vasprintf.c: Likewise.
15853         * lib/unistdio/ulc-vsnprintf.c: Likewise.
15854         * lib/unistdio/ulc-vsprintf.c: Likewise.
15855         * lib/unistr.h: Likewise.
15856         * lib/unistr/u-cpy-alloc.h: Likewise.
15857         * lib/unistr/u-cpy.h: Likewise.
15858         * lib/unistr/u-endswith.h: Likewise.
15859         * lib/unistr/u-move.h: Likewise.
15860         * lib/unistr/u-set.h: Likewise.
15861         * lib/unistr/u-startswith.h: Likewise.
15862         * lib/unistr/u-stpcpy.h: Likewise.
15863         * lib/unistr/u-stpncpy.h: Likewise.
15864         * lib/unistr/u-strcat.h: Likewise.
15865         * lib/unistr/u-strcpy.h: Likewise.
15866         * lib/unistr/u-strcspn.h: Likewise.
15867         * lib/unistr/u-strdup.h: Likewise.
15868         * lib/unistr/u-strlen.h: Likewise.
15869         * lib/unistr/u-strncat.h: Likewise.
15870         * lib/unistr/u-strncpy.h: Likewise.
15871         * lib/unistr/u-strnlen.h: Likewise.
15872         * lib/unistr/u-strpbrk.h: Likewise.
15873         * lib/unistr/u-strspn.h: Likewise.
15874         * lib/unistr/u-strstr.h: Likewise.
15875         * lib/unistr/u-strtok.h: Likewise.
15876         * lib/unistr/u16-check.c: Likewise.
15877         * lib/unistr/u16-chr.c: Likewise.
15878         * lib/unistr/u16-cmp.c: Likewise.
15879         * lib/unistr/u16-cpy-alloc.c: Likewise.
15880         * lib/unistr/u16-cpy.c: Likewise.
15881         * lib/unistr/u16-endswith.c: Likewise.
15882         * lib/unistr/u16-mblen.c: Likewise.
15883         * lib/unistr/u16-mbsnlen.c: Likewise.
15884         * lib/unistr/u16-mbtouc-aux.c: Likewise.
15885         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
15886         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
15887         * lib/unistr/u16-mbtouc.c: Likewise.
15888         * lib/unistr/u16-mbtoucr.c: Likewise.
15889         * lib/unistr/u16-move.c: Likewise.
15890         * lib/unistr/u16-next.c: Likewise.
15891         * lib/unistr/u16-prev.c: Likewise.
15892         * lib/unistr/u16-set.c: Likewise.
15893         * lib/unistr/u16-startswith.c: Likewise.
15894         * lib/unistr/u16-stpcpy.c: Likewise.
15895         * lib/unistr/u16-stpncpy.c: Likewise.
15896         * lib/unistr/u16-strcat.c: Likewise.
15897         * lib/unistr/u16-strchr.c: Likewise.
15898         * lib/unistr/u16-strcmp.c: Likewise.
15899         * lib/unistr/u16-strcpy.c: Likewise.
15900         * lib/unistr/u16-strcspn.c: Likewise.
15901         * lib/unistr/u16-strdup.c: Likewise.
15902         * lib/unistr/u16-strlen.c: Likewise.
15903         * lib/unistr/u16-strmblen.c: Likewise.
15904         * lib/unistr/u16-strmbtouc.c: Likewise.
15905         * lib/unistr/u16-strncat.c: Likewise.
15906         * lib/unistr/u16-strncmp.c: Likewise.
15907         * lib/unistr/u16-strncpy.c: Likewise.
15908         * lib/unistr/u16-strnlen.c: Likewise.
15909         * lib/unistr/u16-strpbrk.c: Likewise.
15910         * lib/unistr/u16-strrchr.c: Likewise.
15911         * lib/unistr/u16-strspn.c: Likewise.
15912         * lib/unistr/u16-strstr.c: Likewise.
15913         * lib/unistr/u16-strtok.c: Likewise.
15914         * lib/unistr/u16-to-u32.c: Likewise.
15915         * lib/unistr/u16-to-u8.c: Likewise.
15916         * lib/unistr/u16-uctomb-aux.c: Likewise.
15917         * lib/unistr/u16-uctomb.c: Likewise.
15918         * lib/unistr/u32-check.c: Likewise.
15919         * lib/unistr/u32-chr.c: Likewise.
15920         * lib/unistr/u32-cmp.c: Likewise.
15921         * lib/unistr/u32-cpy-alloc.c: Likewise.
15922         * lib/unistr/u32-cpy.c: Likewise.
15923         * lib/unistr/u32-endswith.c: Likewise.
15924         * lib/unistr/u32-mblen.c: Likewise.
15925         * lib/unistr/u32-mbsnlen.c: Likewise.
15926         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
15927         * lib/unistr/u32-mbtouc.c: Likewise.
15928         * lib/unistr/u32-mbtoucr.c: Likewise.
15929         * lib/unistr/u32-move.c: Likewise.
15930         * lib/unistr/u32-next.c: Likewise.
15931         * lib/unistr/u32-prev.c: Likewise.
15932         * lib/unistr/u32-set.c: Likewise.
15933         * lib/unistr/u32-startswith.c: Likewise.
15934         * lib/unistr/u32-stpcpy.c: Likewise.
15935         * lib/unistr/u32-stpncpy.c: Likewise.
15936         * lib/unistr/u32-strcat.c: Likewise.
15937         * lib/unistr/u32-strchr.c: Likewise.
15938         * lib/unistr/u32-strcmp.c: Likewise.
15939         * lib/unistr/u32-strcpy.c: Likewise.
15940         * lib/unistr/u32-strcspn.c: Likewise.
15941         * lib/unistr/u32-strdup.c: Likewise.
15942         * lib/unistr/u32-strlen.c: Likewise.
15943         * lib/unistr/u32-strmblen.c: Likewise.
15944         * lib/unistr/u32-strmbtouc.c: Likewise.
15945         * lib/unistr/u32-strncat.c: Likewise.
15946         * lib/unistr/u32-strncmp.c: Likewise.
15947         * lib/unistr/u32-strncpy.c: Likewise.
15948         * lib/unistr/u32-strnlen.c: Likewise.
15949         * lib/unistr/u32-strpbrk.c: Likewise.
15950         * lib/unistr/u32-strrchr.c: Likewise.
15951         * lib/unistr/u32-strspn.c: Likewise.
15952         * lib/unistr/u32-strstr.c: Likewise.
15953         * lib/unistr/u32-strtok.c: Likewise.
15954         * lib/unistr/u32-to-u16.c: Likewise.
15955         * lib/unistr/u32-to-u8.c: Likewise.
15956         * lib/unistr/u32-uctomb.c: Likewise.
15957         * lib/unistr/u8-check.c: Likewise.
15958         * lib/unistr/u8-chr.c: Likewise.
15959         * lib/unistr/u8-cmp.c: Likewise.
15960         * lib/unistr/u8-cpy-alloc.c: Likewise.
15961         * lib/unistr/u8-cpy.c: Likewise.
15962         * lib/unistr/u8-endswith.c: Likewise.
15963         * lib/unistr/u8-mblen.c: Likewise.
15964         * lib/unistr/u8-mbsnlen.c: Likewise.
15965         * lib/unistr/u8-mbtouc-aux.c: Likewise.
15966         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
15967         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
15968         * lib/unistr/u8-mbtouc.c: Likewise.
15969         * lib/unistr/u8-mbtoucr.c: Likewise.
15970         * lib/unistr/u8-move.c: Likewise.
15971         * lib/unistr/u8-next.c: Likewise.
15972         * lib/unistr/u8-prev.c: Likewise.
15973         * lib/unistr/u8-set.c: Likewise.
15974         * lib/unistr/u8-startswith.c: Likewise.
15975         * lib/unistr/u8-stpcpy.c: Likewise.
15976         * lib/unistr/u8-stpncpy.c: Likewise.
15977         * lib/unistr/u8-strcat.c: Likewise.
15978         * lib/unistr/u8-strchr.c: Likewise.
15979         * lib/unistr/u8-strcmp.c: Likewise.
15980         * lib/unistr/u8-strcpy.c: Likewise.
15981         * lib/unistr/u8-strcspn.c: Likewise.
15982         * lib/unistr/u8-strdup.c: Likewise.
15983         * lib/unistr/u8-strlen.c: Likewise.
15984         * lib/unistr/u8-strmblen.c: Likewise.
15985         * lib/unistr/u8-strmbtouc.c: Likewise.
15986         * lib/unistr/u8-strncat.c: Likewise.
15987         * lib/unistr/u8-strncmp.c: Likewise.
15988         * lib/unistr/u8-strncpy.c: Likewise.
15989         * lib/unistr/u8-strnlen.c: Likewise.
15990         * lib/unistr/u8-strpbrk.c: Likewise.
15991         * lib/unistr/u8-strrchr.c: Likewise.
15992         * lib/unistr/u8-strspn.c: Likewise.
15993         * lib/unistr/u8-strstr.c: Likewise.
15994         * lib/unistr/u8-strtok.c: Likewise.
15995         * lib/unistr/u8-to-u16.c: Likewise.
15996         * lib/unistr/u8-to-u32.c: Likewise.
15997         * lib/unistr/u8-uctomb-aux.c: Likewise.
15998         * lib/unistr/u8-uctomb.c: Likewise.
15999         * lib/unitypes.h: Likewise.
16000         * lib/uniwidth.h: Likewise.
16001         * lib/uniwidth/cjk.h: Likewise.
16002         * lib/uniwidth/u16-strwidth.c: Likewise.
16003         * lib/uniwidth/u16-width.c: Likewise.
16004         * lib/uniwidth/u32-strwidth.c: Likewise.
16005         * lib/uniwidth/u32-width.c: Likewise.
16006         * lib/uniwidth/u8-strwidth.c: Likewise.
16007         * lib/uniwidth/u8-width.c: Likewise.
16008         * lib/uniwidth/width.c: Likewise.
16009
16010 2007-10-07  Bruno Haible  <bruno@clisp.org>
16011
16012         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
16013         The file is still under LGPL (see modules/inttypes).
16014
16015 2007-10-06  Bruno Haible  <bruno@clisp.org>
16016
16017         * modules/trunc (Dependencies): Add 'extensions'.
16018         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
16019         Reported by Ben Pfaff <blp@gnu.org>.
16020
16021 2007-10-06  Bruno Haible  <bruno@clisp.org>
16022
16023         * modules/freopen-tests: New file.
16024         * tests/test-freopen.c: New file.
16025
16026         * modules/fopen-tests: New file.
16027         * tests/test-fopen.c: New file.
16028
16029         * modules/fopen: New file.
16030         * lib/fopen.c: New file.
16031         * m4/fopen.m4: New file.
16032         * modules/freopen: New file.
16033         * lib/freopen.c: New file.
16034         * m4/freopen.m4: New file.
16035         * lib/stdio.in.h (fopen, freopen): New declarations.
16036         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
16037         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
16038         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
16039         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
16040         * doc/functions/fopen.texi: Mention the 'fopen' module.
16041         * doc/functions/freopen.texi: Mention the 'freopen' module.
16042
16043 2007-10-06  Bruno Haible  <bruno@clisp.org>
16044
16045         * modules/open-tests: New file.
16046         * tests/test-open.c: New file.
16047
16048         * modules/open: New file.
16049         * lib/open.c: New file.
16050         * m4/open.m4: New file.
16051         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
16052         lib/open.c does.
16053         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
16054         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
16055         macros.
16056         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
16057         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
16058         REPLACE_OPEN.
16059         * doc/functions/open.texi: Mention the 'open' module.
16060
16061 2007-10-04  Bruno Haible  <bruno@clisp.org>
16062
16063         * modules/ceill-tests: New file.
16064         * tests/test-ceill.c: New file.
16065
16066         * modules/ceill: New file.
16067         * lib/ceill.c: Replace entire file.
16068         * m4/ceill.m4: New file.
16069         * lib/math.in.h (ceill): Replace declaration.
16070         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
16071         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
16072         * doc/functions/ceill.texi: Mention the 'ceill' module.
16073         * modules/mathl (Files): Remove lib/ceill.c.
16074         (Depends-on): Add ceill.
16075
16076 2007-10-04  Bruno Haible  <bruno@clisp.org>
16077
16078         * modules/ceilf-tests: New file.
16079         * tests/test-ceilf.c: New file.
16080
16081         * modules/ceilf: New file.
16082         * lib/ceil.c: New file.
16083         * lib/ceilf.c: New file.
16084         * m4/ceilf.m4: New file.
16085         * lib/math.in.h (ceilf): New declaration.
16086         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
16087         HAVE_DECL_CEILF.
16088         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
16089         HAVE_DECL_CEILF.
16090         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
16091
16092 2007-10-04  Bruno Haible  <bruno@clisp.org>
16093
16094         * modules/floorl-tests: New file.
16095         * tests/test-floorl.c: New file.
16096
16097         * modules/floorl: New file.
16098         * lib/floorl.c: Replace entire file.
16099         * m4/floorl.m4: New file.
16100         * lib/math.in.h (floorl): Replace declaration.
16101         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
16102         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
16103         * doc/functions/floorl.texi: Mention the 'floorl' module.
16104         * modules/mathl (Files): Remove lib/floorl.c.
16105         (Depends-on): Add floorl.
16106
16107 2007-10-04  Bruno Haible  <bruno@clisp.org>
16108
16109         * modules/floorf-tests: New file.
16110         * tests/test-floorf.c: New file.
16111
16112         * modules/floorf: New file.
16113         * lib/floor.c: New file.
16114         * lib/floorf.c: New file.
16115         * m4/floorf.m4: New file.
16116         * lib/math.in.h (floorf): New declaration.
16117         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
16118         HAVE_DECL_FLOORF.
16119         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
16120         HAVE_DECL_FLOORF.
16121         * doc/functions/floorf.texi: Mention the 'floorf' module.
16122
16123 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
16124             Bruno Haible  <bruno@clisp.org>
16125
16126         Advertise for the Git server instead of the CVS server.
16127         * doc/gnulib-intro.texi (Steady Development): Mention the Git
16128         repository instead of the CVS one.
16129         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
16130         about all VCS systems generically.
16131         * doc/gnulib.texi (Introduction): Capitalize `Git'.
16132
16133 2007-10-04  Bruno Haible  <bruno@clisp.org>
16134
16135         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
16136         means.
16137         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
16138
16139 2007-10-04  Bruno Haible  <bruno@clisp.org>
16140
16141         * modules/truncl-tests: New file.
16142         * tests/test-truncl.c: New file.
16143
16144         * modules/truncl: New file.
16145         * lib/truncl.c: New file.
16146         * m4/truncl.m4: New file.
16147         * lib/math.in.h (truncl): New declaration.
16148         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
16149         HAVE_DECL_TRUNCL.
16150         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
16151         HAVE_DECL_TRUNCL.
16152         * doc/functions/truncl.texi: Mention the 'truncl' module.
16153
16154 2007-10-04  Bruno Haible  <bruno@clisp.org>
16155
16156         * modules/truncf-tests: New file.
16157         * tests/test-truncf.c: New file.
16158
16159         * modules/truncf: New file.
16160         * lib/trunc.c: Make paramerizable through USE_* macros.
16161         * lib/truncf.c: New file.
16162         * m4/truncf.m4: New file.
16163         * lib/math.in.h (truncf): New declaration.
16164         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
16165         HAVE_DECL_TRUNCF.
16166         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
16167         HAVE_DECL_TRUNCF.
16168         * doc/functions/truncf.texi: Mention the 'truncf' module.
16169
16170 2007-10-03  Bruno Haible  <bruno@clisp.org>
16171
16172         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
16173         augmentation also for tests modules.
16174         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
16175         * modules/atexit-tests (Makefile.am): Likewise.
16176         * modules/binary-io-tests (Makefile.am): Likewise.
16177         * modules/c-strcase-tests (Makefile.am): Likewise.
16178         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
16179         * modules/canonicalize-tests (Makefile.am): Likewise.
16180         * modules/closein-tests (Makefile.am): Likewise.
16181         * modules/fprintf-posix-tests (Makefile.am): Likewise.
16182         * modules/freadahead-tests (Makefile.am): Likewise.
16183         * modules/fseek-tests (Makefile.am): Likewise.
16184         * modules/fseeko-tests (Makefile.am): Likewise.
16185         * modules/ftell-tests (Makefile.am): Likewise.
16186         * modules/ftello-tests (Makefile.am): Likewise.
16187         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
16188         * modules/isnanl-tests (Makefile.am): Likewise.
16189         * modules/lseek-tests (Makefile.am): Likewise.
16190         * modules/mbscasecmp-tests (Makefile.am): Likewise.
16191         * modules/mbscasestr-tests (Makefile.am): Likewise.
16192         * modules/mbschr-tests (Makefile.am): Likewise.
16193         * modules/mbscspn-tests (Makefile.am): Likewise.
16194         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
16195         * modules/mbspbrk-tests (Makefile.am): Likewise.
16196         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
16197         * modules/mbsrchr-tests (Makefile.am): Likewise.
16198         * modules/mbsspn-tests (Makefile.am): Likewise.
16199         * modules/mbsstr-tests (Makefile.am): Likewise.
16200         * modules/printf-posix-tests (Makefile.am): Likewise.
16201         * modules/snprintf-posix-tests (Makefile.am): Likewise.
16202         * modules/sprintf-posix-tests (Makefile.am): Likewise.
16203         * modules/tsearch-tests (Makefile.am): Likewise.
16204         * modules/uniname/uniname-tests (Makefile.am): Likewise.
16205         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
16206         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
16207         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
16208         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
16209         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
16210         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
16211         * modules/vprintf-posix-tests (Makefile.am): Likewise.
16212         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
16213         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
16214         * modules/xstrtoimax-tests (Makefile.am): Likewise.
16215         * modules/xstrtol-tests (Makefile.am): Likewise.
16216         * modules/xstrtoumax-tests (Makefile.am): Likewise.
16217         * modules/yesno-tests (Makefile.am): Likewise.
16218
16219 2007-10-03  Bruno Haible  <bruno@clisp.org>
16220
16221         * modules/trunc-tests: New file.
16222         * tests/test-trunc.c: New file.
16223
16224         * modules/trunc: New file.
16225         * lib/trunc.c: New file.
16226         * m4/trunc.m4: New file.
16227         * lib/math.in.h (trunc): New declaration.
16228         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
16229         HAVE_DECL_TRUNC.
16230         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
16231         HAVE_DECL_TRUNC.
16232         * doc/functions/trunc.texi: Mention the 'trunc' module.
16233
16234 2007-10-03  Bruno Haible  <bruno@clisp.org>
16235
16236         * tests/test-fpending.c: New file, mostly copied
16237         from coreutils/lib/t-fpending.c.
16238         * modules/fpending-tests: New file.
16239
16240 2007-10-03  Bruno Haible  <bruno@clisp.org>
16241
16242         Port the stdio extensions to QNX (untested).
16243         * lib/fseterr.c (fseterr): Add support for QNX.
16244         * lib/fbufmode.c (fbufmode): Likewise.
16245         * lib/freadable.c (freadable): Likewise.
16246         * lib/fwritable.c (fwritable): Likewise.
16247         * lib/freading.c (freading): Likewise.
16248         * lib/fwriting.c (fwriting): Likewise.
16249         * lib/freadahead.c (freadahed): Likewise.
16250         * lib/fpurge.c (fpurge): Likewise.
16251         * lib/fseeko.c (rpl_fseeko): Likewise.
16252
16253 2007-10-03  Bruno Haible  <bruno@clisp.org>
16254             Jim Meyering  <jim@meyering.net>
16255             Eric Blake  <ebb9@byu.net>
16256
16257         * doc/relocatable.texi: Use @command instead of @program.
16258
16259 2007-10-02  Jim Meyering  <jim@meyering.net>
16260
16261         Perform one more "_.h" -> ".in.h" substitution.
16262         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
16263         instead of unistd_.h here, too.
16264
16265 2007-10-01  Bruno Haible  <bruno@clisp.org>
16266
16267         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
16268         Needed for the alloca-opt module.
16269
16270 2007-09-30  Bruno Haible  <bruno@clisp.org>
16271
16272         * lib/alloca.in.h: Renamed from lib/alloca_.h.
16273         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
16274         alloca_.h.
16275         * lib/argz.in.h: Renamed from lib/argz_.h.
16276         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
16277         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
16278         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
16279         byteswap_.h.
16280         * lib/dirent.in.h: Renamed from lib/dirent_.h.
16281         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
16282         dirent_.h.
16283         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
16284         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
16285         fcntl_.h.
16286         * lib/float.in.h: Renamed from lib/float_.h.
16287         * modules/float (Files, Makefile.am): Use float.in.h instead of
16288         float_.h.
16289         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
16290         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
16291         fnmatch_.h.
16292         * lib/getopt.in.h: Renamed from lib/getopt_.h.
16293         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
16294         getopt_.h.
16295         * lib/glob.in.h: Renamed from lib/glob_.h.
16296         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
16297         * lib/iconv.in.h: Renamed from lib/iconv_.h.
16298         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
16299         iconv_.h.
16300         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
16301         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
16302         inttypes_.h.
16303         * lib/locale.in.h: Renamed from lib/locale_.h.
16304         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
16305         locale_.h.
16306         * lib/math.in.h: Renamed from lib/math_.h.
16307         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
16308         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
16309         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
16310         of netinet_in_.h. Add dependency.
16311         * lib/poll.in.h: Renamed from lib/poll_.h.
16312         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
16313         * lib/search.in.h: Renamed from lib/search_.h.
16314         * modules/search (Files, Makefile.am): Use search.in.h instead of
16315         search_.h.
16316         * lib/signal.in.h: Renamed from lib/signal_.h.
16317         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
16318         _signal.h.
16319         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
16320         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
16321         stdbool_.h.
16322         * lib/stdint.in.h: Renamed from lib/stdint_.h.
16323         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
16324         stdint_.h.
16325         * lib/stdio.in.h: Renamed from lib/stdio_.h.
16326         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
16327         stdio_.h.
16328         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
16329         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
16330         stdlib_.h.
16331         * lib/string.in.h: Renamed from lib/string_.h.
16332         * modules/string (Files, Makefile.am): Use string.in.h instead of
16333         string_.h.
16334         * doc/gnulib-tool.texi (Initial import): Update.
16335         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
16336         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
16337         of sys_select_.h. Add dependency.
16338         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
16339         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
16340         of sys_socket_.h.
16341         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
16342         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
16343         sys_stat_.h.
16344         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
16345         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
16346         sys_time_.h.
16347         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
16348         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
16349         sysexits_.h.
16350         * lib/time.in.h: Renamed from lib/time_.h.
16351         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
16352         * lib/unistd.in.h: Renamed from lib/unistd_.h.
16353         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
16354         unistd_.h.
16355         * lib/wchar.in.h: Renamed from lib/wchar_.h.
16356         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
16357         wchar_.h.
16358         * lib/wctype.in.h: Renamed from lib/wctype_.h.
16359         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
16360         wctype_.h.
16361         * build-aux/bootstrap (slurp): Update.
16362         * lib/.cppi-disable: Update.
16363
16364 2007-09-30  Bruno Haible  <bruno@clisp.org>
16365
16366         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
16367         Needed on BeOS.
16368
16369 2007-09-30  Bruno Haible  <bruno@clisp.org>
16370
16371         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
16372
16373 2007-09-29  Bruno Haible  <bruno@clisp.org>
16374
16375         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
16376
16377 2007-09-29  Bruno Haible  <bruno@clisp.org>
16378
16379         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
16380         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
16381         * build-aux/install-reloc: Compile also areadlink.c.
16382         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
16383
16384 2007-09-29  Bruno Haible  <bruno@clisp.org>
16385
16386         * gnulib-tool (func_emit_initmacro_done): Indentation.
16387
16388 2007-09-29  Bruno Haible  <bruno@clisp.org>
16389
16390         * README: Add CVS checkout update instructions.
16391         Info from Bob Proulx <bob@proulx.com>.
16392
16393 2007-09-28  Eric Blake  <ebb9@byu.net>
16394
16395         Provide move-if-change.
16396         * build-aux/move-if-change: New file, based on best practice
16397         rather than any canonical upstream location.
16398
16399 2007-09-28  Jim Meyering  <jim@meyering.net>
16400
16401         Fix canonicalize loop-detection corner case.
16402         Do not attempt to stat the symlink values stored via seen_triple.
16403         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
16404         on linux-2.6.18, (but not 2.6.22).
16405         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
16406         triple_compare.  The former compares dev,ino,filename, while the latter
16407         would actually stat dirname(filename) when dev and ino were equal.
16408         * lib/hash-triple.c: Install <string.h>.
16409         (STREQ): Define.
16410         (triple_compare_ino_str): New function.
16411         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
16412
16413 2007-09-28  Eric Blake  <ebb9@byu.net>
16414
16415         Enforce that AC_REPLACE_FUNCS files exist.
16416         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
16417         override check for typos.
16418
16419         Fix test-closein on Solaris 10.
16420         * tests/test-closein.c (main): Don't assume stdin can be inherited
16421         closed on all systems.
16422         * tests/test-closein.sh: Likewise.
16423         Reported by Piotr Tarnowski.
16424
16425 2007-09-28  Jim Meyering  <jim@meyering.net>
16426
16427         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
16428
16429 2007-09-27  Jim Meyering  <jim@meyering.net>
16430
16431         canonicalize: Avoid a false-positive cycle failure.
16432         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
16433         Sort.  Remove cycle-check.
16434         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
16435         not cycle-check.h.
16436         (seen_triple): New function.
16437         (canonicalize_filename_mode): Use it instead of cycle-check.
16438         * tests/test-canonicalize.c: Add a test for this bug.
16439         * tests/test-canonicalize.sh: Set up and run the test.
16440
16441         New module, file-set, from coreutils.
16442         * modules/file-set: Define it.
16443         * lib/file-set.c, lib/file-set.h: Implement.
16444
16445         New module, hash-triple, from coreutils.
16446         * modules/hash-triple: Define it.
16447         * lib/hash-triple.c, lib/hash-triple.h: Implement.
16448
16449 2007-09-25  Eric Blake  <ebb9@byu.net>
16450
16451         Fix strerror on Interix.
16452         * lib/string_.h (strerror): Declare replacement.
16453         * doc/functions/strerror.texi (strerror): Document the Interix
16454         shortcoming.
16455         * modules/string (Makefile.am): Support new hooks.
16456         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
16457         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
16458         gl_FUNC_STRERROR_SEPARATE.
16459         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
16460         * lib/strerror.c (rpl_strerror): Provide replacement.
16461         * modules/strerror (Depends-on): Add string.
16462         (configure.ac): Detect use of module.
16463         * tests/test-strerror.c: New file.
16464         * modules/strerror-tests: New test module.
16465         * modules/argp (Depends-on): Add strerror.
16466         * modules/error (Depends-on): Likewise.
16467         Reported by Martin Koeppe.
16468
16469 2007-09-24  Bruno Haible  <bruno@clisp.org>
16470
16471         * README: Update git instructions.
16472
16473 2007-09-24  Eric Blake  <ebb9@byu.net>
16474
16475         Revert fpending breakage from 2007-09-08.
16476         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
16477         __fpending.c.
16478
16479 2007-09-24  Jim Meyering  <jim@meyering.net>
16480
16481         filenamecat.c: Add a test.
16482         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
16483         showing how the function works when DIR is the empty string.
16484
16485 2007-09-21  Simon Josefsson  <simon@josefsson.org>
16486
16487         * tests/test-canonicalize.sh: Turn on executable bit.
16488
16489 2007-09-19  Eric Blake  <ebb9@byu.net>
16490
16491         * README: Update CVS instructions.
16492
16493 2007-09-18  Bruno Haible  <bruno@clisp.org>
16494
16495         * modules/areadlink: New file.
16496         * lib/areadlink.h (areadlink): New declaration.
16497         * lib/areadlink.c: New file, based on lib/xreadlink.c.
16498
16499 2007-09-17  Jim Meyering  <jim@meyering.net>
16500
16501         * lib/savewd.c (ESTALE) [!defined]: Define.
16502         Reported to be required on Interix by Martin Koeppe.
16503
16504 2007-09-17  Bruno Haible  <bruno@clisp.org>
16505
16506         * gnulib-tool (func_version): Use $version.
16507
16508 2007-09-16  Bruno Haible  <bruno@clisp.org>
16509
16510         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
16511         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
16512         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
16513         Reported by Greg Schafer <gschafer@zip.com.au>.
16514
16515 2007-09-15  Bruno Haible  <bruno@clisp.org>
16516
16517         * gnulib-tool (sed): Try a little harder to make bash understand the
16518         alias.
16519         Reported by Bruce Korb <bruce.korb@gmail.com>.
16520
16521 2007-09-13  Eric Blake  <ebb9@byu.net>
16522
16523         * ChangeLog: Remove conflict markers.
16524
16525 2007-09-13  Simon Josefsson  <simon@josefsson.org>
16526
16527         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
16528         Reported by Bruno Haible <bruno@clisp.org>.
16529
16530 2007-09-12  Bruno Haible  <bruno@clisp.org>
16531
16532         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
16533         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
16534         is not defined.
16535
16536 2007-09-12  Eric Blake  <ebb9@byu.net>
16537
16538         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
16539         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
16540         Autoconf definition.
16541         * modules/euidaccess (Depends-on): Add extensions, for
16542         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
16543         * modules/fnmatch (Depends-on): Likewise.
16544         * modules/getaddrinfo (Depends-on): Likewise.
16545         * modules/getdelim (Depends-on): Likewise.
16546         * modules/getline (Depends-on): Likewise.
16547         * modules/getsubopt (Depends-on): Likewise.
16548         * modules/gettext (Depends-on): Likewise.
16549         * modules/group-member (Depends-on): Likewise.
16550         * modules/mbchar (Depends-on): Likewise.
16551         * modules/memmem (Depends-on): Likewise.
16552         * modules/mempcpy (Depends-on): Likewise.
16553         * modules/memrchr (Depends-on): Likewise.
16554         * modules/pagealign_alloc (Depends-on): Likewise.
16555         * modules/readutmp (Depends-on): Likewise.
16556         * modules/stpcpy (Depends-on): Likewise.
16557         * modules/stpncpy (Depends-on): Likewise.
16558         * modules/strchrnul (Depends-on): Likewise.
16559         * modules/strndup (Depends-on): Likewise.
16560         * modules/strsep (Depends-on): Likewise.
16561         * modules/strverscmp (Depends-on): Likewise.
16562         * modules/vasprintf (Depends-on): Likewise.
16563         * modules/wcwidth (Depends-on): Likewise.
16564         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
16565         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
16566         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
16567         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
16568         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
16569         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
16570         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
16571         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
16572         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
16573         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
16574         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
16575         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
16576         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
16577         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
16578         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
16579         * m4/readutmp.m4 (gl_READUTMP): Likewise.
16580         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
16581         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
16582         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
16583         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
16584         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
16585         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
16586         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
16587         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
16588         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
16589         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
16590         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
16591         so that lock.m4 can be used in gettext without extensions module.
16592
16593 2007-09-11  Bruno Haible  <bruno@clisp.org>
16594
16595         * m4/isc-posix.m4: Remove file.
16596         Suggested by Eric Blake.
16597
16598 2007-09-11  Eric Blake  <ebb9@byu.net>
16599
16600         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
16601
16602 2007-09-10  Bruno Haible  <bruno@clisp.org>
16603
16604         * posix-modules: Fix typo in error message.
16605         Reported by Matt <mkraai@beckman.com>.
16606
16607 2007-09-09  Bruno Haible  <bruno@clisp.org>
16608
16609         * doc/functions/getdelim.texi: Update list of platforms lacking the
16610         function.
16611         * doc/functions/getline.texi: Likewise.
16612
16613 2007-09-09  Jim Meyering  <jim@meyering.net>
16614
16615         * lib/hash.c (hash_initialize): Detect calloc failure.
16616         Reported by Bruno Haible.
16617
16618 2007-09-09  Bruno Haible  <bruno@clisp.org>
16619
16620         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
16621         malloc or realloc fails.
16622
16623 2007-09-09  Bruno Haible  <bruno@clisp.org>
16624
16625         * modules/getcwd (Depends-on): Add malloc-posix.
16626         * modules/glob (Depends-on): Likewise.
16627         * modules/putenv (Depends-on): Likewise.
16628         * modules/strdup (Depends-on): Likewise.
16629         * modules/getdelim (Depends-on): Add realloc-posix.
16630         * modules/read-file (Depends-on): Likewise.
16631
16632 2007-09-09  Bruno Haible  <bruno@clisp.org>
16633
16634         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
16635         (gl_FUNC_MALLOC_POSIX): Require it.
16636         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
16637         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
16638         * modules/realloc (Files): Add m4/malloc.m4.
16639         * modules/calloc (Files): Likewise.
16640
16641 2007-09-09  Bruno Haible  <bruno@clisp.org>
16642
16643         * modules/malloc-posix: New file.
16644         * modules/malloc (Depends-on): Add malloc-posix.
16645         * lib/malloc.c: Include errno.h.
16646         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
16647         and a POSIX-compatible malloc into a single function. Set ENOMEM
16648         when returning NULL.
16649         * m4/malloc.m4: New file.
16650         * doc/functions/malloc.texi: Mention the malloc-posix module.
16651         * lib/stdlib_.h (malloc): New declaration.
16652         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
16653         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
16654         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
16655         and HAVE_MALLOC_POSIX.
16656
16657 2007-09-09  Bruno Haible  <bruno@clisp.org>
16658
16659         * modules/realloc-posix: New file.
16660         * modules/realloc (Depends-on): Add realloc-posix.
16661         * lib/realloc.c: Include errno.h.
16662         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
16663         and a POSIX-compatible realloc into a single function. Set ENOMEM
16664         when returning NULL.
16665         * m4/realloc.m4: New file.
16666         * doc/functions/realloc.texi: Mention the realloc-posix module.
16667         * lib/stdlib_.h (realloc): New declaration.
16668         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
16669         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
16670         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
16671         and HAVE_REALLOC_POSIX.
16672
16673 2007-09-09  Bruno Haible  <bruno@clisp.org>
16674
16675         * modules/calloc-posix: New file.
16676         * modules/calloc (Depends-on): Add calloc-posix.
16677         * lib/calloc.c: Include errno.h.
16678         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
16679         and a POSIX-compatible calloc into a single function. Set ENOMEM
16680         when returning NULL.
16681         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
16682         * doc/functions/calloc.texi: Mention the calloc-posix module.
16683         * lib/stdlib_.h (calloc): New declaration.
16684         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
16685         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
16686         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
16687         and HAVE_CALLOC_POSIX.
16688
16689 2007-09-09  Bruno Haible  <bruno@clisp.org>
16690
16691         Allow for modules to show an arbitrary notice.
16692         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
16693         * gnulib-tool: New option --extract-notice.
16694         (func_usage): Document it.
16695         (sed_extract_prog): Update.
16696         (func_get_notice): New function.
16697         (func_modules_notice): New function.
16698         (func_import, func_create_testdir): Invoke it.
16699         Suggested by Jim Meyering.
16700
16701 2007-09-09  Bruno Haible  <bruno@clisp.org>
16702
16703         * gnulib-tool: New options --verbose, --quiet.
16704         (func_usage): Document them.
16705         (verbose): New variable.
16706         (func_execute_command): New function.
16707         (func_import): Don't show the module list and the file list if
16708         $verbose < 0.
16709         (func_create_testdir): Likewise. Use func_execute_command.
16710         (func_create_megatestdir): Use func_execute_command.
16711
16712 2007-09-08  Bruno Haible  <bruno@clisp.org>
16713
16714         * gnulib-tool (func_import): Prefer rsync over wget when available,
16715         for fetching the PO files.
16716
16717 2007-09-08  Bruno Haible  <bruno@clisp.org>
16718
16719         * posix-modules: New file. Portions copied from gnulib-tool.
16720         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
16721
16722 2007-09-08  Jim Meyering  <jim@meyering.net>
16723
16724         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
16725         * lib/fpending.h: Rename from __fpending.h.
16726         * lib/fpending.c: Rename from __fpending.c.
16727         Include "fpending.h", not "__fpending.h".
16728         * lib/__fpending.h, lib/__fpending.c: Remove files.
16729         * modules/fpending (Files): Reflect new file names.
16730         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
16731
16732 2007-09-08  Bruno Haible  <bruno@clisp.org>
16733
16734         * m4/inttypes-h.m4: Remove stub file.
16735
16736 2007-09-07  Simon Josefsson  <simon@josefsson.org>
16737
16738         * doc/headers/stdint.texi: Discuss #include_next issue.
16739
16740 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
16741
16742         * build-aux/bootstrap: Remove obsolete comment about wget --help.
16743
16744 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16745
16746         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
16747         in variable name.
16748
16749 2007-09-03  Jim Meyering  <jim@meyering.net>
16750
16751         New module: git-version-gen.
16752         * modules/git-version-gen: New file.
16753
16754         Import changes from coreutils for bootstrap script.
16755
16756         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
16757
16758         bootstrap: uses rsync to download the .po files
16759         * build-aux/bootstrap (po_download_command_format): New global.
16760         (download_po_files): Use rsync.
16761         (update_po_files): Don't remove .po files after download,
16762         so future rsync runs can take advantage of the copies.
16763
16764         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
16765
16766         Solve the unnecessary-.po-file-regeneration problem once and for all.
16767         * build-aux/bootstrap (download_po_files): New function, renamed from
16768         get_translations.  Now, downloads, but doesn't update LINGUAS.
16769         (update_po_files): New function.
16770
16771         bootstrap: Ignore more.
16772         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
16773         uniwidth to e.g., lib/.gitignore.
16774         (slurp): Handle the sys_stat_.h -> sys mapping, too.
16775
16776         * build-aux/bootstrap: New setting: vc_ignore.
16777         (insert_sorted_if_absent): Create $file if absent.
16778         Adapt to new, possibly empty, list: $vc_ignore.
16779
16780         bootstrap: generate more ignorable names
16781         * build-aux/bootstrap (slurp): When generating ignorable names,
16782         also map .sin to .sed, .gperf to .c, and .y to .c.
16783
16784 2007-09-03  Jim Meyering  <jim@meyering.net>
16785
16786         * build-aux/git-version-gen: New file, from coreutils.  For details, see
16787         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
16788
16789 2007-09-02  Bruno Haible  <bruno@clisp.org>
16790
16791         Fix mis-recognition of 'mcs' on QNX 6.
16792         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
16793         output contains the string "Mono".
16794         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
16795         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
16796
16797 2007-09-01  Bruno Haible  <bruno@clisp.org>
16798
16799         Fix collision between uniwidth/* and linebreak modules.
16800         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
16801         u32_width): Remove declarations.
16802         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
16803         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
16804         streq3, streq2, streq1, streq0): Remove functions.
16805         (STREQ): Remove macro.
16806         (is_cjk_encoding): Remove function.
16807         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
16808         (uc_width, u8_width, u16_width, u32_width): Remove functions.
16809         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
16810         * NEWS: Document the change.
16811
16812 2007-09-01  Bruno Haible  <bruno@clisp.org>
16813
16814         * lib/streq.h: Add double-inclusion guard.
16815
16816 2007-09-01  Karl Berry  <karl@gnu.org>
16817
16818         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
16819
16820 2007-08-28  Jim Meyering  <jim@meyering.net>
16821
16822         Rename mreadlink_with_size to areadlink_with_size.
16823         * NEWS: Document the change.
16824         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
16825         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
16826         * lib/mreadlink.h: Rename this to...
16827         * lib/areadlink.h: ...this.
16828         * modules/mreadlink-with-size: Rename this to...
16829         * modules/areadlink-with-size: ...this.
16830         * lib/canonicalize.c: Reflect the renaming.
16831         * modules/canonicalize: Likewise.
16832
16833 2007-08-26  Bruno Haible  <bruno@clisp.org>
16834
16835         * gnulib-tool (func_import): When deciding which files to remove,
16836         consider also dangling symbolic links.
16837         Reported by Eric Blake.
16838
16839 2007-08-26  Bruno Haible  <bruno@clisp.org>
16840
16841         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
16842
16843 2007-08-23  Simon Josefsson  <simon@josefsson.org>
16844
16845         * lib/readline.c: Don't include getline.h, the prototype is now
16846         found in stdio.h.
16847
16848 2007-08-23  Jim Meyering  <jim@meyering.net>
16849
16850         Getdelim touchup.
16851         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
16852         around the funlockfile call, since funlockfile never sets errno.
16853         Don't set errno upon failed realloc.
16854
16855 2007-08-22  Eric Blake  <ebb9@byu.net>
16856
16857         Getline touchups.
16858         * lib/getdelim.c (getdelim): Revert regression that required *n to
16859         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
16860         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
16861         getdelim, rather than whether implementation is missing.
16862         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
16863         * lib/stdio_.h (getline): Also declare if replacement is
16864         required.
16865         * doc/functions/getdelim.texi: New file.
16866         * doc/functions/getline.texi: Likewise.
16867         * doc/gnulib.texi (Function Substitutes): Add new files.
16868         Reported by Bruno Haible.
16869
16870 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
16871
16872         * users.txt: Add Guile.
16873
16874 2007-08-22  Eric Blake  <ebb9@byu.net>
16875
16876         * tests/test-getdelim.c (main): Use remove, not unlink.
16877         * tests/test-getline.c (main): Likewise.
16878
16879         Move getline and getdelim into stdio.h, per POSIX 200x.
16880         * modules/getline (Files): Remove getline.h.
16881         (Depends-on): Add stdio.
16882         (configure.ac): Add module indicator.
16883         * modules/getdelim (Files): Remove getdelim.h.
16884         (Depends-on): Add stdio.
16885         (configure.ac): Add module indicator.
16886         * modules/stdio (Makefile.am): Work with new indicators.
16887         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
16888         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
16889         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
16890         * lib/getdelim.h: Delete.
16891         * lib/getline.h: Delete.
16892         * lib/stdio_.h (getdelim, getline): Declare.
16893         * modules/getdelim-tests: New module.
16894         * modules/getline-tests: Likewise.
16895         * tests/test-getdelim.c: New file.
16896         * tests/test-getline.c: Likewise.
16897         * NEWS: Document the change.
16898         * lib/getline.c: Update choice of header.
16899         * lib/csharpcomp.c: Likewise.
16900         * lib/getpass.c: Likewise.
16901         * lib/javacomp.c: Likewise.
16902         * lib/javaversion.c: Likewise.
16903         * lib/yesno.c: Likewise.
16904         * lib/getdelim.c: Likewise.
16905         (getdelim): Set errno on failure, and avoid memory leak.
16906
16907 2007-08-19  Bruno Haible  <bruno@clisp.org>
16908
16909         * modules/closein (Depends-on): Add freadahead.
16910         * lib/closein.c: Include freadahead.h.
16911         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
16912         is zero.
16913
16914 2007-08-19  Bruno Haible  <bruno@clisp.org>
16915
16916         * modules/freadahead-tests: New file.
16917         * tests/test-freadahead.sh: New file.
16918         * tests/test-freadahead.c: New file.
16919
16920         * modules/freadahead: New file.
16921         * lib/freadahead.h: New file.
16922         * lib/freadahead.c: New file.
16923         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
16924         fbufmode, fpurge, freadable, fwritable.
16925
16926 2007-08-19  Eric Blake  <ebb9@byu.net>
16927
16928         Test yesno in combination with closein.
16929         * lib/yesno.c (yesno): Document use of stdin.
16930         * modules/yesno-tests (Files): New module.
16931         * tests/test-yesno.c (main): New file.
16932         * tests/test-yesno.sh: Likewise.
16933
16934 2007-08-19  Bruno Haible  <bruno@clisp.org>
16935
16936         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
16937         * lib/fseeko.c (rpl_fseeko): Likewise.
16938         * lib/fseterr.c (fseterr): Likewise.
16939
16940 2007-08-19  Bruno Haible  <bruno@clisp.org>
16941
16942         * tests/test-lseek.c (main): Disable a test for BeOS.
16943         * doc/functions/lseek.texi: Document the BeOS bug.
16944
16945 2007-08-19  Bruno Haible  <bruno@clisp.org>
16946             Eric Blake  <ebb9@byu.net>
16947
16948         * lib/lseek.c: Include <sys/stat.h>.
16949         (rpl_lseek): Add workaround code also for Unix platforms.
16950         Needed for BeOS.
16951         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
16952         * doc/functions/lseek.texi: Document BeOS definiency.
16953
16954 2007-08-18  Bruno Haible  <bruno@clisp.org>
16955
16956         * modules/fstrcmp-tests: New file.
16957         * tests/test-fstrcmp.c: New file.
16958
16959 2007-08-18  Bruno Haible  <bruno@clisp.org>
16960
16961         * modules/fstrcmp: New file, from GNU gettext with modifications.
16962         * lib/fstrcmp.h: New file, from GNU gettext.
16963         * lib/fstrcmp.c: New file, from GNU gettext.
16964         * MODULES.html.sh (String handling): Add fstrcmp.
16965
16966 2007-08-18  Bruno Haible  <bruno@clisp.org>
16967
16968         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
16969         'bool'.
16970         (diag, compareseq): Remove const from the ctxt argument.
16971         (USE_HEURISTIC): Undefine at the end.
16972
16973 2007-08-18  Jim Meyering  <jim@meyering.net>
16974
16975         New file: lib/idcache.h
16976         * NEWS: Mention the addition.
16977         * modules/idcache (Files): Add lib/idcache.h
16978         * lib/idcache.c: Include "idcache.h".
16979         Don't include <sys/types.h>.
16980         Add a FIXME comment.
16981         Move file-scoped "static" declarations to the top.
16982         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
16983
16984 2007-08-17  Bruno Haible  <bruno@clisp.org>
16985         and Paul Eggert  <eggert@cs.ucla.edu>
16986
16987         * MODULES.html.sh: Add diffseq.
16988         * modules/diffseq: New file.
16989         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
16990         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
16991
16992 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
16993
16994         Import changes from coreutils for bootstrap script.
16995
16996         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
16997
16998         * build-aux/bootstrap (slurp): Work even in environments where
16999         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
17000         current code does not slurp files whose names start with ".", and
17001         this looks like it might be a troublesome area.
17002
17003         2007-07-11  Jim Meyering  <jim@meyering.net>
17004
17005         If there's a GPL vN copyright comment, require that N == 3.
17006
17007         2007-07-08  Jim Meyering  <jim@meyering.net>
17008
17009         Run the coreutils-specific code only if tests/Makefile.am.in exists.
17010         * build-aux/bootstrap (mam_template): Move definition out of loop.
17011
17012         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
17013
17014         * build-aux/bootstrap (symlink_to_dir): Rename function from
17015         symlink_to_gnulib.  Add a directory parameter.  Update all
17016         callers.
17017         (cp_mark_as_generated): Also check for -- and link to -- files in
17018         gl/.
17019
17020         2007-07-08  Jim Meyering  <jim@meyering.net>
17021
17022         Adapt to deeper hierarchy in gnulib.
17023         * build-aux/bootstrap (symlink_to_dir): If the destination
17024         directory doesn't exist, create it. This is required at least for
17025         "lib/uniwidth/cjk.h".
17026
17027         2007-05-15  Jim Meyering  <jim@meyering.net>
17028
17029         * build-aux/bootstrap: Now that generated Makefile.am files
17030         are no longer under version control, they must be created at
17031         bootstrap time.
17032
17033 2007-08-14  Ben Pfaff  <blp@gnu.org>
17034
17035         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
17036
17037 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
17038
17039         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
17040         given the changes below.
17041         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
17042         even on hosts that have padding bits beyond the supported 64.
17043
17044 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
17045
17046         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
17047         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
17048         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
17049         depends on it.
17050         (xstrtol_error): Remove.
17051         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
17052         but with a different signature.
17053         (ATTRIBUTE_NORETURN, __attribute__): New macros.
17054         * lib/xstrtol-error.c: Include exitfail.h.
17055         (xstrtol_fatal): New function, with a different signature from the
17056         old xstrtol_error, so that the caller need not worry about passing
17057         in an exit status, or about storage management of the option argument.
17058         (xstrtol_error): Now a static function.  Redo signature to
17059         implement xstrtol_fatal.  Output the correct number of hyphens in
17060         front of the option so that the caller need not worry about
17061         storage management.
17062         (N_): New macro.
17063         (_): Remove; not used now.
17064         * modules/xstrtol: Depend on getopt.
17065         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
17066         of old STRTOL_FATAL_ERROR macro.
17067         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
17068         of test program.
17069         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
17070         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
17071
17072 2007-08-08  Eric Blake  <ebb9@byu.net>
17073
17074         * lib/xstrtol-error.c: Add missing include.
17075
17076         Move xstrtol messages into gnulib domain, when --pobase is used.
17077         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
17078         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
17079         * modules/xstrtol (Files): Distribute new file.
17080         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
17081         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
17082         * tests/test-xstrtol.c: ...into new file.
17083         * tests/test-xstrtoul.c: Also test xstrtoul.
17084         * tests/test-xstrtoimax.c: Also test xstrtoimax.
17085         * tests/test-xstrtoumax.c: Also test xstrtoumax.
17086         * tests/test-xstrtol.sh: Drive the tests.
17087         * tests/test-xstrtoimax.sh: Likewise.
17088         * tests/test-xstrtoumax.sh: Likewise.
17089         * modules/xstrtol-tests: New module.
17090         * modules/xstrtoimax-tests: Likewise.
17091         * modules/xstrtoumax-tests: Likewise.
17092
17093 2007-08-08  Jim Meyering  <jim@meyering.net>
17094
17095         New function: mfile_name_concat.
17096         * lib/filenamecat.c (mfile_name_concat): New function, just like
17097         file_name_concat, but return NULL upon failure rather than exiting
17098         with a diagnostic.
17099         * lib/filenamecat.h: Declare it.
17100
17101 2007-08-07  Bruno Haible  <bruno@clisp.org>
17102
17103         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
17104         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
17105         warning from gcc.
17106         Reported by Eric Blake.
17107
17108 2007-08-07  Simon Josefsson  <simon@josefsson.org>
17109
17110         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
17111         * modules/crypto/arcfour (License): Likewise.
17112         * modules/crypto/des-tests (License): Likewise.
17113         * modules/crypto/gc-arctwo-tests (License): Likewise.
17114         * modules/crypto/gc-des-tests (License): Likewise.
17115         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
17116         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
17117         * modules/crypto/gc-md2-tests (License): Likewise.
17118         * modules/crypto/gc-md4-tests (License): Likewise.
17119         * modules/crypto/gc-md5-tests (License): Likewise.
17120         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
17121         * modules/crypto/gc-rijndael-tests (License): Likewise.
17122         * modules/crypto/gc-sha1-tests (License): Likewise.
17123         * modules/crypto/gc-tests (License): Likewise.
17124         * modules/crypto/hmac-md5 (License): Likewise.
17125         * modules/crypto/hmac-sha1 (License): Likewise.
17126         * modules/crypto/md2-tests (License): Likewise.
17127         * modules/crypto/md4-tests (License): Likewise.
17128         * modules/crypto/md5 (License): Likewise.
17129         * modules/crypto/rijndael (License): Likewise.
17130         * modules/crypto/sha1 (License): Likewise.
17131         * modules/memxor (License): Likewise.
17132
17133 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
17134         and Bruno Haible  <bruno@clisp.org>
17135
17136         * NEWS: Describe interface changes to human, xstrtol.
17137         * lib/human.h: Include <xstrtol.h>.
17138         (human_options): Return enum strtol_error, not int.  Remove
17139         bool arg; take int * instead.
17140         * lib/human.c: Don't include "gettext.h".
17141         (_): Remove; no longer used.
17142         Don't include <xstrtol.h>, since human.h does it.
17143         (human_options): Adjust to abovementioned interface changes.
17144         Do not report error to stderr; that's now the caller's
17145         responsibility.
17146         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
17147         interface change.
17148         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
17149         Str, Argument_type_string.  All uses changed.  Put " argument"
17150         in diagnostics to make them clearer.  Change wording of suffix
17151         message for clarity.
17152         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
17153         Argument_type_string.
17154         (STRTOL_FATAL_WARN): Remove; no longer used.
17155         * modules/human (Depends-on): Remove gettext-h.
17156
17157 2007-08-06  Simon Josefsson  <simon@josefsson.org>
17158
17159         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
17160
17161 2007-07-31  Bruno Haible  <bruno@clisp.org>
17162
17163         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
17164         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
17165         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
17166
17167 2007-07-31  Bruno Haible  <bruno@clisp.org>
17168
17169         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
17170         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
17171
17172 2007-07-30  Bruno Haible  <bruno@clisp.org>
17173
17174         * modules/base64 (License): Use the synonymous term "LGPLv2+".
17175         * modules/c-ctype (License): Likewise.
17176         * modules/c-strcase (License): Likewise.
17177         * modules/check-version (License): Likewise.
17178         * modules/iconv (License): Likewise.
17179         * modules/iconv_open (License): Likewise.
17180         * modules/read-file (License): Likewise.
17181         * modules/striconv (License): Likewise.
17182         * modules/strverscmp (License): Likewise.
17183         * modules/vasprintf (License): Likewise.
17184         * modules/crypto/des (License): Likewise.
17185         * modules/crypto/gc (License): Likewise.
17186         * modules/crypto/gc-arcfour (License): Likewise.
17187         * modules/crypto/gc-arctwo (License): Likewise.
17188         * modules/crypto/gc-des (License): Likewise.
17189         * modules/crypto/gc-hmac-md5 (License): Likewise.
17190         * modules/crypto/gc-hmac-sha1 (License): Likewise.
17191         * modules/crypto/gc-md2 (License): Likewise.
17192         * modules/crypto/gc-md4 (License): Likewise.
17193         * modules/crypto/gc-md5 (License): Likewise.
17194         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
17195         * modules/crypto/gc-random (License): Likewise.
17196         * modules/crypto/gc-rijndael (License): Likewise.
17197         * modules/crypto/gc-sha1 (License): Likewise.
17198         * modules/crypto/md2 (License): Likewise.
17199         * modules/crypto/md4 (License): Likewise.
17200
17201 2007-07-30  Jim Meyering  <jim@meyering.net>
17202
17203         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
17204         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
17205         it has valid stat data.  This bug would cause du not to count the
17206         sizes of inaccessible directories.
17207         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
17208         in <http://bugzilla.redhat.com/250077>.
17209
17210 2007-07-25  Peter O'Gorman  <peter@pogma.com>
17211             Bruno Haible  <bruno@clisp.org>
17212
17213         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
17214         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
17215         #include_next, gives a diagnostic about it, but reports no error in
17216         the exit code.
17217         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
17218
17219 2007-07-24  Ben Pfaff  <blp@gnu.org>
17220
17221         Improve name: "count-one-bits" is better than "popcount".
17222         * MODULES.html.sh: Update name.
17223         * lib/popcount.h: Renamed lib/count-one-bits.h.
17224         (popcount): Renamed count_one_bits.
17225         (popcountl): Renamed count_one_bits_l.
17226         (popcountll): Renamed count_one_bits_ll.
17227         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
17228         * modules/popcount: Renamed module/count-one-bits.
17229         * modules/popcount-tests: Renamed module/count-one-bits-tests.
17230         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
17231
17232 2007-07-23  Ben Pfaff  <blp@gnu.org>
17233
17234         * lib/popcount.h (popcount32): Reduce size of constants, to allow
17235         better code generation, and add U to large constants to avoid
17236         warnings, in non-GCC case.
17237         Suggested by Bruno Haible.
17238
17239 2007-07-23  Ben Pfaff  <blp@gnu.org>
17240
17241         * lib/popcount.h: Use verify_true instead of if...abort.
17242         * modules/popcount: Depend on verify module.
17243         Suggested by Jim Meyering.
17244
17245 2007-07-23  Bruno Haible  <bruno@clisp.org>
17246
17247         * gnulib-tool (func_import): Create a .cvsignore file also when the
17248         directory is not yet in CVS but the toplevel directory is. When
17249         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
17250         Reported by Karl Berry.
17251
17252 2007-07-22  Ben Pfaff  <blp@gnu.org>
17253
17254         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
17255         case.
17256         Suggested by Eric Blake.
17257
17258 2007-07-22  Ben Pfaff  <blp@gnu.org>
17259
17260         New module: popcount.
17261         * MODULES.html.sh: Add popcount.
17262         * modules/popcount: New file.
17263         * modules/popcount-tests: New file.
17264         * tests/test-popcount.c: New file.
17265         * lib/popcount.h: New file.
17266         * m4/popcount.m4: New file.
17267
17268 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
17269
17270         * build-aux/announce-gen: Update to GPLv3.
17271
17272         * build-aux/config.guess: Update from config.
17273
17274 2007-07-21  Bruno Haible  <bruno@clisp.org>
17275
17276         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
17277         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
17278
17279 2007-07-20  Jim Meyering  <jim@meyering.net>
17280
17281         * check-module: Diagnose a self-dependency.
17282
17283 2007-07-19  Bruno Haible  <bruno@clisp.org>
17284
17285         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
17286         empty.
17287         Reported by Eric Blake.
17288
17289 2007-07-18  Bruno Haible  <bruno@clisp.org>
17290
17291         * gnulib-tool: New options --po-base, --po-domain.
17292         (func_usage): Document them.
17293         (pobase, po_domain): New variables.
17294         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
17295         DEFAULT_TEXT_DOMAIN.
17296         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
17297         (func_import): Consider pobase and po_domain. Create a po/ directory.
17298         (func_create_testdir): Set pobase and po_domain to empty.
17299         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
17300         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
17301
17302 2007-07-18  Bruno Haible  <bruno@clisp.org>
17303
17304         * gnulib-tool (func_get_automake_snippet): Synthesize also an
17305         EXTRA_DIST augmentation for files in build-aux/.
17306
17307 2007-07-16  Bruno Haible  <bruno@clisp.org>
17308
17309         * modules/lseek (License): Use the synonymous term "LGPLv2+".
17310         * modules/getdelim (License): Likewise.
17311
17312 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17313
17314         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
17315         * modules/d-type (License): Likewise.
17316         * modules/extensions (License): Likewise.
17317         * modules/fnmatch (License): Likewise.
17318         * modules/fseeko (License): Likewise.
17319         * modules/getaddrinfo (License): Likewise.
17320         * modules/getline (License): Likewise.
17321         * modules/getlogin_r (License): Likewise.
17322         * modules/getpass (License): Likewise.
17323         * modules/gettimeofday (License): Likewise.
17324         * modules/glob (License): Likewise.
17325         * modules/inet_ntop (License): Likewise.
17326         * modules/malloc (License): Likewise.
17327         * modules/malloca (License): Likewise.
17328         * modules/memmem (License): Likewise.
17329         * modules/mempcpy (License): Likewise.
17330         * modules/memset (License): Likewise.
17331         * modules/minmax (License): Likewise.
17332         * modules/mktime (License): Likewise.
17333         * modules/netinet_in (License): Likewise.
17334         * modules/pathmax (License): Likewise.
17335         * modules/poll (License): Likewise.
17336         * modules/regex (License): Likewise.
17337         * modules/snprintf (License): Likewise.
17338         * modules/stdbool (License): Likewise.
17339         * modules/stdint (License): Likewise.
17340         * modules/stdio (License): Likewise.
17341         * modules/strcase (License): Likewise.
17342         * modules/strcasestr (License): Likewise.
17343         * modules/strdup (License): Likewise.
17344         * modules/string (License): Likewise.
17345         * modules/strndup (License): Likewise.
17346         * modules/strnlen (License): Likewise.
17347         * modules/strpbrk (License): Likewise.
17348         * modules/strptime (License): Likewise.
17349         * modules/strsep (License): Likewise.
17350         * modules/sys_select (License): Likewise.
17351         * modules/sys_socket (License): Likewise.
17352         * modules/sys_stat (License): Likewise.
17353         * modules/sys_time (License): Likewise.
17354         * modules/time (License): Likewise.
17355         * modules/time_r (License): Likewise.
17356         * modules/timegm (License): Likewise.
17357         * modules/unistd (License): Likewise.
17358         * modules/vsnprintf (License): Likewise.
17359         * modules/wctype (License): Likewise.
17360
17361 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17362
17363         * modules/argz (License): LGPLv2+.
17364
17365 2007-07-15  Karl Berry  <karl@gnu.org>
17366
17367         * doc/gnulib.texi: revise node structure per new fdl.texi.
17368
17369 2007-07-14  Bruno Haible  <bruno@clisp.org>
17370
17371         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
17372         the output file.
17373         * lib/uniname/uninames.h: Regenerated.
17374
17375 2007-07-14  Karl Berry  <karl@gnu.org>
17376
17377         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
17378         omitting sectioning and index commands.
17379
17380 2007-07-13  Bruno Haible  <bruno@clisp.org>
17381
17382         New gnulib-tool option --more-symlinks.
17383         * gnulib-tool (func_usage): Document --more-symlinks.
17384         (do_copyrights): New variable.
17385         Recognize option --more-symlinks.
17386         (func_import): Don't add a copyright notice transform to
17387         sed_transform_lib_file if do_copyrights is empty.
17388
17389 2007-07-13  Bruno Haible  <bruno@clisp.org>
17390
17391         * lib/vasnprintf.c (decimal_point_char): Define also if
17392         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
17393         && !NEED_PRINTF_DIRECTIVE_A.
17394         Reported by Clemens Koller <clemens.koller@anagramm.de> via
17395         Gary V. Vaughan <gary@gnu.org>.
17396
17397 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
17398
17399         * lib/inttypes_.h: Undo previous change, since it was fixed
17400         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
17401
17402 2007-07-13  Bruno Haible  <bruno@clisp.org>
17403
17404         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
17405         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
17406
17407 2007-07-13  Jim Meyering  <jim@meyering.net>
17408
17409         df: Don't fail for Tru64's "file-on-file mount".
17410         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
17411         so we fall through and use statfs instead.  Details here:
17412         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
17413         Reported by Albert Chin.
17414
17415 2007-07-13  Bruno Haible  <bruno@clisp.org>
17416
17417         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
17418         * modules/configmake (License): Likewise.
17419         * modules/gettext (License): Likewise.
17420         * modules/gettext-h (License): Likewise.
17421         * modules/include_next (License): Likewise.
17422         * modules/link-warning (License): Likewise.
17423         * modules/localcharset (License): Likewise.
17424         * modules/localename (License): Likewise.
17425         * modules/lock (License): Likewise.
17426         * modules/relocatable-lib-lgpl (License): Likewise.
17427         * modules/size_max (License): Likewise.
17428         * modules/vasnprintf (License): Likewise.
17429         * modules/wchar (License): Likewise.
17430         * modules/xsize (License): Likewise.
17431
17432 2007-07-13  Bruno Haible  <bruno@clisp.org>
17433
17434         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
17435         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
17436
17437 2007-07-12  Bruno Haible  <bruno@clisp.org>
17438
17439         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
17440         in the modules files.
17441
17442 2007-07-11  Karl Berry  <karl@gnu.org>
17443
17444         * MODULES.html.sh (func_module): use
17445          sed -e '\|^'"${includefile}"'$|d'
17446          instead of /.../d, to avoid errors on $includefile's containing /.
17447
17448 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
17449
17450         * gnulib-tool (func_import): Avoid duplication of --avoid
17451         statements
17452         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
17453         names to `_' in variable names.
17454
17455 2007-07-10  Eric Blake  <ebb9@byu.net>
17456
17457         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
17458         * NEWS: Document this change.
17459
17460 2007-07-08  Bruno Haible  <bruno@clisp.org>
17461
17462         Update to Unicode 5.0.
17463         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
17464         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
17465         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
17466         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
17467         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
17468         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
17469         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
17470         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
17471         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
17472         U+10A3F, U+1D242..U+1D244.
17473         (nonspacing_table_ind): Update.
17474         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
17475         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
17476
17477 2007-07-08  Bruno Haible  <bruno@clisp.org>
17478
17479         Update to Unicode 5.0.
17480         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
17481         code transform. Extend the name index field of unicode_name_to_code and
17482         unicode_code_to_name from 16 to 24 bits.
17483         * lib/uniname/uniname.c (unicode_character_name,
17484         unicode_name_character): Add the range 0x12xxx to the code transform.
17485         * lib/uniname/uninames.h: Regenerated.
17486         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
17487
17488 2007-07-07  Bruno Haible  <bruno@clisp.org>
17489
17490         * modules/wcwidth-tests: New file.
17491         * tests/test-wcwidth.c: New file.
17492
17493         Work around MacOS X wcwidth() bug.
17494         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
17495         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
17496         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
17497         original wcwidth in non-UTF-8 locales.
17498         * modules/wcwidth (Depends-on): Add localcharset, streq,
17499         uniwidth/width.
17500         * doc/functions/wcwidth.texi: Update.
17501
17502 2007-07-07  Bruno Haible  <bruno@clisp.org>
17503
17504         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
17505         (wcwidth): New declaration.
17506         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
17507         macros.
17508         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
17509         here. Prepare for creating <wchar.h> unconditionally.
17510         * modules/wchar (Depends-on): Add link-warning.
17511         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
17512         REPLACE_WCWIDTH, and GL_LINK_WARNING.
17513         * lib/wcwidth.h: Remove file.
17514         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
17515         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
17516         * modules/wcwidth (Files): Remove lib/wcwidth.h.
17517         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
17518         (Include): Replace wcwidth.h with <wchar.h>.
17519         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
17520         * lib/mbchar.h: Don't include wcwidth.h.
17521         * lib/mbswidth.c: Likewise.
17522         * NEWS: Mention the change.
17523
17524 2007-07-07  Bruno Haible  <bruno@clisp.org>
17525
17526         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
17527         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
17528         definition with an external declaration.
17529         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
17530         defined as a function. Remove AC_C_INLINE requirement.
17531         * modules/wcwidth (Files): Add lib/wcwidth.c.
17532         (Makefile.am): Remove redundant statement.
17533
17534 2007-07-07  Bruno Haible  <bruno@clisp.org>
17535
17536         * MODULES.html.sh (Unicode string functions): Add the new modules.
17537
17538         * tests/uniwidth/test-u32-strwidth.c: New file.
17539         * modules/uniwidth/u32-strwidth-tests: New file.
17540
17541         * lib/uniwidth/u32-strwidth.c: New file.
17542         * modules/uniwidth/u32-strwidth: New file.
17543
17544         * tests/uniwidth/test-u16-strwidth.c: New file.
17545         * modules/uniwidth/u16-strwidth-tests: New file.
17546
17547         * lib/uniwidth/u16-strwidth.c: New file.
17548         * modules/uniwidth/u16-strwidth: New file.
17549
17550         * tests/uniwidth/test-u8-strwidth.c: New file.
17551         * modules/uniwidth/u8-strwidth-tests: New file.
17552
17553         * lib/uniwidth/u8-strwidth.c: New file.
17554         * modules/uniwidth/u8-strwidth: New file.
17555
17556         * tests/uniwidth/test-u32-width.c: New file.
17557         * modules/uniwidth/u32-width-tests: New file.
17558
17559         * lib/uniwidth/u32-width.c: New file.
17560         * modules/uniwidth/u32-width: New file.
17561
17562         * tests/uniwidth/test-u16-width.c: New file.
17563         * modules/uniwidth/u16-width-tests: New file.
17564
17565         * lib/uniwidth/u16-width.c: New file.
17566         * modules/uniwidth/u16-width: New file.
17567
17568         * tests/uniwidth/test-u8-width.c: New file.
17569         * modules/uniwidth/u8-width-tests: New file.
17570
17571         * lib/uniwidth/u8-width.c: New file.
17572         * modules/uniwidth/u8-width: New file.
17573
17574         * tests/uniwidth/test-uc_width.c: New file.
17575         * modules/uniwidth/width-tests: New file.
17576
17577         * lib/uniwidth/width.c: New file, from GNU libiconv.
17578         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
17579         * modules/uniwidth/width: New file.
17580
17581         * lib/uniwidth.h: New file, from GNU libiconv.
17582         * modules/uniwidth/base: New file.
17583
17584 2007-07-07  Bruno Haible  <bruno@clisp.org>
17585
17586         * lib/uniname.h: New file, from GNU gettext.
17587         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
17588         * lib/uniname/uninames.h: New file, from GNU gettext.
17589         * lib/uniname/uniname.c: New file, from GNU gettext.
17590         * tests/uniname/test-uninames.sh: New file.
17591         * tests/uniname/test-uninames.c: New file, from GNU gettext.
17592         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
17593         * modules/uniname/base: New file.
17594         * modules/uniname/uniname: New file.
17595         * modules/uniname/uniname-tests: New file.
17596         * MODULES.html.sh (Unicode string functions): Add the new modules.
17597
17598 2007-07-06  Bruno Haible  <bruno@clisp.org>
17599
17600         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
17601
17602 2007-07-06  Bruno Haible  <bruno@clisp.org>
17603
17604         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
17605         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
17606         includes <cygwin/sys_time.h> which includes <sys/select.h> which
17607         include <sys/time.h>.
17608         Reported by Eric Blake.
17609
17610 2007-07-06  Eric Blake  <ebb9@byu.net>
17611
17612         Fix testing canonicalize on cygwin.
17613         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
17614         Revert patch from 2007-06-19.
17615         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
17616         canonicalize module is also in use.
17617         * tests/test-canonicalize.c: New file.
17618         * tests/test-canonicalize.sh: Likewise.
17619         * modules/canonicalize-tests: Likewise.
17620
17621 2007-07-06  Jim Meyering  <jim@meyering.net>
17622
17623         * lib/getugroups.c (getugroups): Detect getgrent failure.
17624         Adjust comment to reflect reality: this function may return -1.
17625
17626 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
17627
17628         * build-aux/bootstrap (TP_URL,get_translations): Update to use
17629         the new TP address.
17630         (usage): Fix typo
17631         (gnulib_mk): New variable.
17632
17633 2007-07-05  Jim Meyering  <jim@meyering.net>
17634
17635         Don't let endgrent clobber errno, no matter how improbable.
17636         * lib/getugroups.c (getugroups): Save and restore errno around
17637         endgrent call.
17638
17639         Close the group DB even when failing with 2^31 or more members.
17640         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
17641
17642 2007-07-04  Jim Meyering  <jim@meyering.net>
17643
17644         * lib/getugroups.h: New file.
17645         * lib/getugroups.c: Include "getugroups.h".
17646         Remove uses of "register" keyword.
17647         Move local variable, "cp", down into scope where used.
17648         Give "username" parameter the "const" attribute.
17649         * modules/getugroups (Files): Add lib/getugroups.h
17650
17651 2007-07-04  Karl Berry  <karl@gnu.org>
17652
17653         * MODULES.html.sh (func_all_modules): Complete rename of
17654         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
17655
17656 2007-07-02  Bruno Haible  <bruno@clisp.org>
17657
17658         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
17659         mode, when inttypes.h comes from gnulib.
17660         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
17661
17662 2007-07-02  Simon Josefsson  <simon@josefsson.org>
17663
17664         * NEWS: Mention lgpl module name change.
17665
17666         * modules/lgpl-2.1: Renamed from lgpl.
17667
17668         * NEWS: Mention gpl module name change.
17669
17670         * modules/gpl-3.0: New file, based on gpl-2.0.
17671
17672         * modules/gpl-2.0: Renamed from gpl.
17673
17674         * modules/gpl: Fix filename, doc/gpl.texi is now found at
17675         doc/gpl-2.0.texi.
17676
17677 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
17678
17679         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
17680         #define __STDC_LIMIT_MACROS temporarily while including
17681         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
17682         Problem reported by Joel E. Denny in
17683         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
17684
17685 2007-07-01  Bruno Haible  <bruno@clisp.org>
17686
17687         * lib/unistdio.h: New file.
17688         * lib/unistdio/u-asnprintf.h: New file.
17689         * lib/unistdio/u-asprintf.h: New file.
17690         * lib/unistdio/u-printf-args.c: New file.
17691         * lib/unistdio/u-printf-args.h: New file.
17692         * lib/unistdio/u-printf-parse.h: New file.
17693         * lib/unistdio/u-snprintf.h: New file.
17694         * lib/unistdio/u-sprintf.h: New file.
17695         * lib/unistdio/u-vasprintf.h: New file.
17696         * lib/unistdio/u-vsnprintf.h: New file.
17697         * lib/unistdio/u-vsprintf.h: New file.
17698         * lib/unistdio/ulc-asnprintf.c: New file.
17699         * lib/unistdio/ulc-asprintf.c: New file.
17700         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
17701         * lib/unistdio/ulc-printf-parse.c: New file.
17702         * lib/unistdio/ulc-snprintf.c: New file.
17703         * lib/unistdio/ulc-sprintf.c: New file.
17704         * lib/unistdio/ulc-vasnprintf.c: New file.
17705         * lib/unistdio/ulc-vasprintf.c: New file.
17706         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
17707         * lib/unistdio/ulc-vsnprintf.c: New file.
17708         * lib/unistdio/ulc-vsprintf.c: New file.
17709         * lib/unistdio/u8-asnprintf.c: New file.
17710         * lib/unistdio/u8-asprintf.c: New file.
17711         * lib/unistdio/u8-printf-parse.c: New file.
17712         * lib/unistdio/u8-snprintf.c: New file.
17713         * lib/unistdio/u8-sprintf.c: New file.
17714         * lib/unistdio/u8-vasnprintf.c: New file.
17715         * lib/unistdio/u8-vasprintf.c: New file.
17716         * lib/unistdio/u8-vsnprintf.c: New file.
17717         * lib/unistdio/u8-vsprintf.c: New file.
17718         * lib/unistdio/u8-u8-asnprintf.c: New file.
17719         * lib/unistdio/u8-u8-asprintf.c: New file.
17720         * lib/unistdio/u8-u8-snprintf.c: New file.
17721         * lib/unistdio/u8-u8-sprintf.c: New file.
17722         * lib/unistdio/u8-u8-vasnprintf.c: New file.
17723         * lib/unistdio/u8-u8-vasprintf.c: New file.
17724         * lib/unistdio/u8-u8-vsnprintf.c: New file.
17725         * lib/unistdio/u8-u8-vsprintf.c: New file.
17726         * lib/unistdio/u16-asnprintf.c: New file.
17727         * lib/unistdio/u16-asprintf.c: New file.
17728         * lib/unistdio/u16-printf-parse.c: New file.
17729         * lib/unistdio/u16-snprintf.c: New file.
17730         * lib/unistdio/u16-sprintf.c: New file.
17731         * lib/unistdio/u16-vasnprintf.c: New file.
17732         * lib/unistdio/u16-vasprintf.c: New file.
17733         * lib/unistdio/u16-vsnprintf.c: New file.
17734         * lib/unistdio/u16-vsprintf.c: New file.
17735         * lib/unistdio/u16-u16-asnprintf.c: New file.
17736         * lib/unistdio/u16-u16-asprintf.c: New file.
17737         * lib/unistdio/u16-u16-snprintf.c: New file.
17738         * lib/unistdio/u16-u16-sprintf.c: New file.
17739         * lib/unistdio/u16-u16-vasnprintf.c: New file.
17740         * lib/unistdio/u16-u16-vasprintf.c: New file.
17741         * lib/unistdio/u16-u16-vsnprintf.c: New file.
17742         * lib/unistdio/u16-u16-vsprintf.c: New file.
17743         * lib/unistdio/u32-asnprintf.c: New file.
17744         * lib/unistdio/u32-asprintf.c: New file.
17745         * lib/unistdio/u32-printf-parse.c: New file.
17746         * lib/unistdio/u32-snprintf.c: New file.
17747         * lib/unistdio/u32-sprintf.c: New file.
17748         * lib/unistdio/u32-vasnprintf.c: New file.
17749         * lib/unistdio/u32-vasprintf.c: New file.
17750         * lib/unistdio/u32-vsnprintf.c: New file.
17751         * lib/unistdio/u32-vsprintf.c: New file.
17752         * lib/unistdio/u32-u32-asnprintf.c: New file.
17753         * lib/unistdio/u32-u32-asprintf.c: New file.
17754         * lib/unistdio/u32-u32-snprintf.c: New file.
17755         * lib/unistdio/u32-u32-sprintf.c: New file.
17756         * lib/unistdio/u32-u32-vasnprintf.c: New file.
17757         * lib/unistdio/u32-u32-vasprintf.c: New file.
17758         * lib/unistdio/u32-u32-vsnprintf.c: New file.
17759         * lib/unistdio/u32-u32-vsprintf.c: New file.
17760         * tests/unistdio/test-ulc-asnprintf1.c: New file.
17761         * tests/unistdio/test-ulc-asnprintf1.h: New file.
17762         * tests/unistdio/test-ulc-printf1.h: New file.
17763         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
17764         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
17765         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
17766         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
17767         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
17768         * tests/unistdio/test-ulc-vasprintf1.c: New file.
17769         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
17770         * tests/unistdio/test-ulc-vsprintf1.c: New file.
17771         * tests/unistdio/test-u8-asnprintf1.c: New file.
17772         * tests/unistdio/test-u8-asnprintf1.h: New file.
17773         * tests/unistdio/test-u8-printf1.h: New file.
17774         * tests/unistdio/test-u8-vasnprintf1.c: New file.
17775         * tests/unistdio/test-u8-vasnprintf2.c: New file.
17776         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
17777         * tests/unistdio/test-u8-vasnprintf3.c: New file.
17778         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
17779         * tests/unistdio/test-u8-vasprintf1.c: New file.
17780         * tests/unistdio/test-u8-vsnprintf1.c: New file.
17781         * tests/unistdio/test-u8-vsprintf1.c: New file.
17782         * tests/unistdio/test-u16-asnprintf1.c: New file.
17783         * tests/unistdio/test-u16-asnprintf1.h: New file.
17784         * tests/unistdio/test-u16-printf1.h: New file.
17785         * tests/unistdio/test-u16-vasnprintf1.c: New file.
17786         * tests/unistdio/test-u16-vasnprintf2.c: New file.
17787         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
17788         * tests/unistdio/test-u16-vasnprintf3.c: New file.
17789         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
17790         * tests/unistdio/test-u16-vasprintf1.c: New file.
17791         * tests/unistdio/test-u16-vsnprintf1.c: New file.
17792         * tests/unistdio/test-u16-vsprintf1.c: New file.
17793         * tests/unistdio/test-u32-asnprintf1.c: New file.
17794         * tests/unistdio/test-u32-asnprintf1.h: New file.
17795         * tests/unistdio/test-u32-printf1.h: New file.
17796         * tests/unistdio/test-u32-vasnprintf1.c: New file.
17797         * tests/unistdio/test-u32-vasnprintf2.c: New file.
17798         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
17799         * tests/unistdio/test-u32-vasnprintf3.c: New file.
17800         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
17801         * tests/unistdio/test-u32-vasprintf1.c: New file.
17802         * tests/unistdio/test-u32-vsnprintf1.c: New file.
17803         * tests/unistdio/test-u32-vsprintf1.c: New file.
17804         * modules/unistdio/base: New file.
17805         * modules/unistdio/u-printf-args: New file.
17806         * modules/unistdio/ulc-asnprintf: New file.
17807         * modules/unistdio/ulc-asprintf: New file.
17808         * modules/unistdio/ulc-fprintf: New file.
17809         * modules/unistdio/ulc-printf-parse: New file.
17810         * modules/unistdio/ulc-snprintf: New file.
17811         * modules/unistdio/ulc-sprintf: New file.
17812         * modules/unistdio/ulc-vasnprintf: New file.
17813         * modules/unistdio/ulc-vasprintf: New file.
17814         * modules/unistdio/ulc-vfprintf: New file.
17815         * modules/unistdio/ulc-vsnprintf: New file.
17816         * modules/unistdio/ulc-vsprintf: New file.
17817         * modules/unistdio/u8-asnprintf: New file.
17818         * modules/unistdio/u8-asprintf: New file.
17819         * modules/unistdio/u8-printf-parse: New file.
17820         * modules/unistdio/u8-snprintf: New file.
17821         * modules/unistdio/u8-sprintf: New file.
17822         * modules/unistdio/u8-vasnprintf: New file.
17823         * modules/unistdio/u8-vasprintf: New file.
17824         * modules/unistdio/u8-vsnprintf: New file.
17825         * modules/unistdio/u8-vsprintf: New file.
17826         * modules/unistdio/u8-u8-asnprintf: New file.
17827         * modules/unistdio/u8-u8-asprintf: New file.
17828         * modules/unistdio/u8-u8-snprintf: New file.
17829         * modules/unistdio/u8-u8-sprintf: New file.
17830         * modules/unistdio/u8-u8-vasnprintf: New file.
17831         * modules/unistdio/u8-u8-vasprintf: New file.
17832         * modules/unistdio/u8-u8-vsnprintf: New file.
17833         * modules/unistdio/u8-u8-vsprintf: New file.
17834         * modules/unistdio/u16-asnprintf: New file.
17835         * modules/unistdio/u16-asprintf: New file.
17836         * modules/unistdio/u16-printf-parse: New file.
17837         * modules/unistdio/u16-snprintf: New file.
17838         * modules/unistdio/u16-sprintf: New file.
17839         * modules/unistdio/u16-vasnprintf: New file.
17840         * modules/unistdio/u16-vasprintf: New file.
17841         * modules/unistdio/u16-vsnprintf: New file.
17842         * modules/unistdio/u16-vsprintf: New file.
17843         * modules/unistdio/u16-u16-asnprintf: New file.
17844         * modules/unistdio/u16-u16-asprintf: New file.
17845         * modules/unistdio/u16-u16-snprintf: New file.
17846         * modules/unistdio/u16-u16-sprintf: New file.
17847         * modules/unistdio/u16-u16-vasnprintf: New file.
17848         * modules/unistdio/u16-u16-vasprintf: New file.
17849         * modules/unistdio/u16-u16-vsnprintf: New file.
17850         * modules/unistdio/u16-u16-vsprintf: New file.
17851         * modules/unistdio/u32-asnprintf: New file.
17852         * modules/unistdio/u32-asprintf: New file.
17853         * modules/unistdio/u32-printf-parse: New file.
17854         * modules/unistdio/u32-snprintf: New file.
17855         * modules/unistdio/u32-sprintf: New file.
17856         * modules/unistdio/u32-vasnprintf: New file.
17857         * modules/unistdio/u32-vasprintf: New file.
17858         * modules/unistdio/u32-vsnprintf: New file.
17859         * modules/unistdio/u32-vsprintf: New file.
17860         * modules/unistdio/u32-u32-asnprintf: New file.
17861         * modules/unistdio/u32-u32-asprintf: New file.
17862         * modules/unistdio/u32-u32-snprintf: New file.
17863         * modules/unistdio/u32-u32-sprintf: New file.
17864         * modules/unistdio/u32-u32-vasnprintf: New file.
17865         * modules/unistdio/u32-u32-vasprintf: New file.
17866         * modules/unistdio/u32-u32-vsnprintf: New file.
17867         * modules/unistdio/u32-u32-vsprintf: New file.
17868         * modules/unistdio/ulc-asnprintf-tests: New file.
17869         * modules/unistdio/ulc-vasnprintf-tests: New file.
17870         * modules/unistdio/ulc-vasprintf-tests: New file.
17871         * modules/unistdio/ulc-vsnprintf-tests: New file.
17872         * modules/unistdio/ulc-vsprintf-tests: New file.
17873         * modules/unistdio/u8-asnprintf-tests: New file.
17874         * modules/unistdio/u8-vasnprintf-tests: New file.
17875         * modules/unistdio/u8-vasprintf-tests: New file.
17876         * modules/unistdio/u8-vsnprintf-tests: New file.
17877         * modules/unistdio/u8-vsprintf-tests: New file.
17878         * modules/unistdio/u16-asnprintf-tests: New file.
17879         * modules/unistdio/u16-vasnprintf-tests: New file.
17880         * modules/unistdio/u16-vasprintf-tests: New file.
17881         * modules/unistdio/u16-vsnprintf-tests: New file.
17882         * modules/unistdio/u16-vsprintf-tests: New file.
17883         * modules/unistdio/u32-asnprintf-tests: New file.
17884         * modules/unistdio/u32-vasnprintf-tests: New file.
17885         * modules/unistdio/u32-vasprintf-tests: New file.
17886         * modules/unistdio/u32-vsnprintf-tests: New file.
17887         * modules/unistdio/u32-vsprintf-tests: New file.
17888         * MODULES.html.sh (Unicode string functions): Add the new modules.
17889
17890 2007-07-01  Bruno Haible  <bruno@clisp.org>
17891
17892         * lib/sprintf.c (sprintf): Limit the available length estimation,
17893         to avoid address wraparound.
17894         * lib/vsprintf.c (vsprintf): Likewise.
17895         * modules/sprintf-posix (Dependencies): Add stdint.
17896         * modules/vsprintf-posix (Dependencies): Likewise.
17897
17898 2007-07-01  Bruno Haible  <bruno@clisp.org>
17899
17900         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
17901         Windows PATH as well. Conservative double-quoting. Comments.
17902
17903 2007-07-01  Bruno Haible  <bruno@clisp.org>
17904             Eric Blake  <ebb9@byu.net>
17905             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17906
17907         * gnulib-tool (self_abspathname): Fix algorithm to cope with
17908         empty components in $PATH, denoting '.'.
17909
17910 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17911
17912         * gnulib-tool: Fix indentation.
17913         (func_create_megatestdir): Likewise.
17914         Report by Bruno Haible.
17915
17916 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17917
17918         Sync from Automake.
17919         * build-aux/gnupload: Fix shell portability issues with for loops.
17920         Report by Karl Berry.
17921
17922 2007-06-29  Simon Josefsson  <simon@josefsson.org>
17923
17924         * build-aux/maint.mk (POURL): Use translationproject.org.
17925
17926 2007-06-27  Simon Josefsson  <simon@josefsson.org>
17927             Bruno Haible  <bruno@clisp.org>
17928
17929         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
17930         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
17931         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
17932         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
17933         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
17934
17935 2007-06-27  Bruno Haible  <bruno@clisp.org>
17936
17937         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
17938         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
17939
17940 2007-06-26  Karl Berry  <karl@gnu.org>
17941
17942         * MODULES.html.sh: remove xreadlink-with-size.
17943
17944 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
17945
17946         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
17947         method that I hope also handles the double-include problem noted
17948         by Bruno Haible in
17949         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
17950
17951 2007-06-23  Bruno Haible  <bruno@clisp.org>
17952
17953         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17954         Don't let the 'mostlyclean' target fail if the last subdirectory could
17955         not be removed.
17956         Reported by Karl Berry.
17957
17958 2007-06-23  Bruno Haible  <bruno@clisp.org>
17959
17960         * gnulib-tool (echo): Add a speedier workaround for ksh.
17961         * tests/test-echo.sh: Likewise.
17962
17963 2007-06-23  Bruno Haible  <bruno@clisp.org>
17964
17965         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
17966         * tests/test-echo.sh: Likewise.
17967
17968 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17969
17970         * gnulib-tool (IFS): Initialize early, so we don't set it to
17971         empty later.
17972         (self_abspathname): Rewrite algorithm to set it, reindent.
17973         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
17974         (func_create_megatestdir): Merge some sed scripts.
17975
17976 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
17977
17978         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
17979         exposed by Sun Studio 11 cc on Solaris 8.
17980
17981 2007-06-22  Bruno Haible  <bruno@clisp.org>
17982
17983         * gnulib-tool (echo): Ensure the echo primitive does not interpret
17984         backslashes.
17985         * tests/test-echo.sh: New file.
17986
17987 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17988
17989         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
17990         simplify `sed_replace_build_aux' scripts, they are portable but
17991         echoing them with `echo' is not.
17992         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
17993
17994 2007-06-21  Karl Berry  <karl@gnu.org>
17995
17996         * config/srclist.txt: guess we can't handle the licenses via
17997         srclist at the moment.
17998
17999 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
18000
18001         * MODULES.html.sh: Add include_next.
18002         * modules/include_next: New file.
18003
18004 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
18005
18006         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
18007         INCLUDE_NEXT.
18008         (gl_CHECK_NEXT_HEADERS): New macro.
18009         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
18010         the obsolescent gl_ABSOLUTE_HEADER.
18011         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
18012         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
18013         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
18014         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
18015         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
18016         * m4/math_h.m4 (gl_MATH_H): Likewise.
18017         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
18018         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
18019         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
18020         * m4/stdint.m4 (gl_STDINT_H): Likewise.
18021         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
18022         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
18023         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
18024         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
18025         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
18026         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
18027         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
18028         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
18029         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
18030         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
18031         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
18032         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
18033         * m4/inttypes.m4 (gl_INTTYPES_H): Define
18034         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
18035         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
18036         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
18037         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
18038         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
18039         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
18040         * lib/float_.h: Likewise.
18041         * lib/inttypes_.h: Likewise.
18042         * lib/math_.h: Likewise.
18043         * lib/search_.h: Likewise.
18044         * lib/signal_.h: Likewise.
18045         * lib/stdint_.h: Likewise.
18046         * lib/stdio_.h: Likewise.
18047         * lib/stdlib_.h: Likewise.
18048         * lib/string_.h: Likewise.
18049         * lib/sys_stat_.h: Likewise.
18050         * lib/sys_time_.h: Likewise.
18051         * lib/time_.h: Likewise.
18052         * lib/unistd_.h: Likewise.
18053         * lib/wchar_.h: Likewise.
18054         * lib/wctype_.h: Likewise.
18055         * lib/dirent_.h: Likewise.
18056         * lib/iconv_.h: Likewise.
18057         * lib/locale_.h: Likewise.
18058         * lib/netinet_in_.h: Likewise.
18059         * lib/sys_select_.h: Likewise.
18060         * lib/sys_socket_.h: Likewise.
18061         * lib/sysexits_.h: Likewise.
18062         * modules/fcntl (Depends-on): Depend on include_next, not
18063         absolute_header.
18064         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
18065         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
18066         * modules/fchdir: Likewise.
18067         * modules/float: Likewise.
18068         * modules/iconv_open: Likewise.
18069         * modules/inttypes: Likewise.
18070         * modules/locale: Likewise.
18071         * modules/math: Likewise.
18072         * modules/netinet_in: Likewise.
18073         * modules/search: Likewise.
18074         * modules/signal: Likewise.
18075         * modules/stdint: Likewise.
18076         * modules/stdio: Likewise.
18077         * modules/stdlib: Likewise.
18078         * modules/string: Likewise.
18079         * modules/sys_select: Likewise.
18080         * modules/sys_socket: Likewise.
18081         * modules/sys_stat: Likewise.
18082         * modules/sys_time: Likewise.
18083         * modules/sysexits: Likewise.
18084         * modules/time: Likewise.
18085         * modules/unistd: Likewise.
18086         * modules/wchar: Likewise.
18087         * modules/wctype: Likewise.
18088         * modules/sys_stat: Change maintainer to "all".
18089         * modules/unistd: Likewise.
18090
18091 2007-06-20  Karl Berry  <karl@gnu.org>
18092
18093         * config/srclist.txt: track www changes in license files.
18094
18095 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
18096
18097         * build-aux/bootstrap: Remove stray dot.
18098         Make sure build_aux settings are honored when linking
18099         gnulib_extra_files.
18100
18101 2007-06-19  Eric Blake  <ebb9@byu.net>
18102
18103         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
18104         Allow compilation on cygwin.
18105
18106 2007-06-19  Jim Meyering  <jim@meyering.net>
18107
18108         xreadlink-with-size: Remove module.  No longer used.
18109         Ex-callers now use xreadlink or mreadlink-with-size.
18110         * modules/xreadlink-with-size: Remove module.
18111         * lib/xreadlink-with-size.c: Remove file.
18112         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
18113         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
18114         just before the function definition *is* accurate.
18115
18116         Eliminate one way canonicalize_filename_mode could exit.
18117         * lib/canonicalize.c (canonicalize_filename_mode):
18118         Use mreadlink_with_size, not xreadlink_with_size.
18119
18120 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
18121
18122         Detect porting problems to FreeBSD/arm, which has time_t wider than
18123         long int.  Original problem reported for GNU diff by Xin Li in
18124         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
18125         * modules/getdate (Depends-on): Add intprops, verify.
18126         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
18127         is an integer type no wider than long int.
18128
18129 2007-06-18  Jim Meyering  <jim@meyering.net>
18130
18131         New module: mreadlink-with-size.
18132         * MODULES.html.sh: Add mreadlink-with-size.
18133         * modules/mreadlink-with-size: New module
18134         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
18135         not xreadlink-with-size.
18136         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
18137
18138 2007-06-16  Bruno Haible  <bruno@clisp.org>
18139
18140         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
18141         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
18142         Reported by Gary V. Vaughan <gary@gnu.org>.
18143
18144 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
18145
18146         Revamp lchown so that it lives in unistd.h where it belongs.
18147         * lib/lchown.h: Remove.
18148         * lib/dirchownmod.c: Don't include lib/lchown.h.
18149         * lib/fchownat.c: Likewise.
18150         * lib/openat.c: Likewise.
18151         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
18152         does not follow symlinks.
18153         (EOPNOTSUPP): Define if not defined.
18154         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
18155         is defined to 0.
18156         (lchown): New decl.
18157         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
18158         Do not check for lchown decl.
18159         Set REPLACE_LCHOWN.
18160         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
18161         REPLACE_LCHOWN.
18162         * modules/chown: Make it clear it follows symlinks.
18163         * modules/lchown: Make it clear it doesn't follow symlinks.
18164         (Files): Remove lib/lchown.h
18165         (Depends-on): Add unistd.
18166         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
18167         (Include): Include <unistd.h>, not "lchown.h".
18168         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
18169         REPLACE_LCHOWN.
18170
18171 2007-06-15  Jim Meyering  <jim@meyering.net>
18172
18173         Change license (GPL to LGPL) of fsusage and dependents.
18174         * modules/fsusage (License): Change to LGPL.
18175         * modules/full-read (License): Likewise.
18176         * modules/full-write (License): Likewise.
18177         * modules/safe-read (License): Likewise.
18178         * modules/safe-write (License): Likewise.
18179
18180 2007-06-14  Ben Pfaff  <blp@gnu.org>
18181
18182         Missing part of allocsa -> malloca transition.
18183         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
18184         gl_MALLOCA.
18185
18186 2007-06-12  Bruno Haible  <bruno@clisp.org>
18187
18188         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
18189         to ia64, x86_64, i386.
18190         Reported by Eric Blake.
18191
18192 2007-06-12  Bruno Haible  <bruno@clisp.org>
18193
18194         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
18195         cross-compiling to x86_64.
18196
18197 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
18198
18199         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
18200         glitch reported by Ralf Wildenhues in
18201         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
18202
18203         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
18204         Vin Shelton.
18205
18206 2007-06-11  Bruno Haible  <bruno@clisp.org>
18207
18208         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
18209         replacement string.
18210         Reported by Eric Blake.
18211
18212 2007-06-10  Bruno Haible  <bruno@clisp.org>
18213
18214         Prepare vasnprintf code for use with Unicode strings.
18215         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
18216         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
18217         TYPE_U32_STRING.
18218         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
18219         a_u32_string variants.
18220         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
18221         * lib/printf-args.c: Don't include config.h and the specification
18222         header if PRINTF_FETCHARGS is already defined.
18223         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
18224         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
18225         TYPE_U16_STRING, TYPE_U32_STRING.
18226         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
18227         u16_directive, u16_directives, u32_directive, u32_directives): New
18228         types.
18229         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
18230         New declarations.
18231         * lib/printf-parse.c: Don't include config.h and the specification
18232         header if PRINTF_PARSE is already defined. Eliminate the set of
18233         parameters for WIDE_CHAR_VERSION; the user of this file must provide
18234         them now. Include c-ctype.h.
18235         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
18236         directive and CHAR_T_ONLY_ASCII.
18237         * lib/vasnprintf.c: Don't include config.h and the specification header
18238         if VASNPRINTF is already defined.
18239         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
18240         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
18241         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
18242         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
18243         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
18244         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
18245         code accordingly.
18246         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
18247         pad_ourselves also in this case, with the 'c' and 's' directives, and
18248         with a different notion of "width".
18249         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
18250
18251 2007-06-10  Bruno Haible  <bruno@clisp.org>
18252
18253         * modules/unistr/u32-mbsnlen: New file.
18254         * lib/unistr/u32-mbsnlen.c: New file.
18255
18256         * modules/unistr/u16-mbsnlen: New file.
18257         * lib/unistr/u16-mbsnlen.c: New file.
18258
18259         * modules/unistr/u8-mbsnlen: New file.
18260         * lib/unistr/u8-mbsnlen.c: New file.
18261
18262         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
18263         declarations.
18264
18265 2007-06-10  Bruno Haible  <bruno@clisp.org>
18266
18267         * lib/string_.h (mbsnlen): New declaration.
18268         * lib/mbsnlen.c: New file.
18269         * m4/mbsnlen.m4: New file.
18270         * modules/mbsnlen: New file.
18271         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
18272         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
18273         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
18274
18275 2007-06-10  Bruno Haible  <bruno@clisp.org>
18276
18277         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
18278
18279 2007-06-10  Bruno Haible  <bruno@clisp.org>
18280
18281         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
18282         * lib/mbuiter.h: Likewise.
18283
18284 2007-06-10  Bruno Haible  <bruno@clisp.org>
18285
18286         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
18287         declaration.
18288
18289 2007-06-10  Karl Berry  <karl@gnu.org>
18290
18291         * config/srclist.txt: remove gettext entries, Bruno prefers
18292         to update individually.
18293
18294 2007-06-10  Bruno Haible  <bruno@clisp.org>
18295
18296         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
18297         'maxlen'. Ensure only length + width bytes are allocated, not
18298         length + 1 + width.
18299
18300 2007-06-09  Bruno Haible  <bruno@clisp.org>
18301
18302         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
18303         (CHAR_T): Remove macro.
18304         (VASNPRINTF): Update.
18305
18306 2007-06-09  Bruno Haible  <bruno@clisp.org>
18307
18308         * MODULES.html.sh (Unicode string functions): Add the new modules.
18309
18310         * modules/uniconv/u32-conv-to-enc: New file.
18311         * lib/uniconv/u32-conv-to-enc.c: New file.
18312         * modules/uniconv/u32-conv-to-enc-tests: New file.
18313         * tests/uniconv/test-u32-conv-to-enc.c: New file.
18314
18315         * modules/uniconv/u16-conv-to-enc: New file.
18316         * lib/uniconv/u16-conv-to-enc.c: New file.
18317         * lib/uniconv/u-conv-to-enc.h: New file.
18318         * modules/uniconv/u16-conv-to-enc-tests: New file.
18319         * tests/uniconv/test-u16-conv-to-enc.c: New file.
18320
18321         * modules/uniconv/u8-conv-to-enc: New file.
18322         * lib/uniconv/u8-conv-to-enc.c: New file.
18323         * modules/uniconv/u8-conv-to-enc-tests: New file.
18324         * tests/uniconv/test-u8-conv-to-enc.c: New file.
18325
18326         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
18327         u32_conv_to_encoding): New declarations.
18328
18329 2007-06-09  Bruno Haible  <bruno@clisp.org>
18330
18331         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
18332
18333 2007-06-09  Bruno Haible  <bruno@clisp.org>
18334
18335         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
18336         * modules/malloca: Renamed from modules/allocsa, updated.
18337         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
18338         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
18339         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
18340         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
18341         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
18342         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
18343         * modules/xmalloca: Renamed from modules/xallocsa, updated.
18344         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
18345         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
18346         * modules/c-strcasestr (Depends-on): Update.
18347         * lib/c-strcasestr.c: Update.
18348         * modules/c-strstr (Depends-on): Update.
18349         * lib/c-strstr.c: Update.
18350         * modules/canonicalize-lgpl (Depends-on): Update.
18351         * lib/canonicalize-lgpl.c: Update.
18352         * modules/clean-temp (Depends-on): Update.
18353         * lib/clean-temp.c: Update.
18354         * modules/csharpcomp (Depends-on): Update.
18355         * lib/csharpcomp.c: Update.
18356         * modules/csharpexec (Depends-on): Update.
18357         * lib/csharpexec.c: Update.
18358         * modules/javacomp (Depends-on): Update.
18359         * lib/javacomp.c: Update.
18360         * modules/javaexec (Depends-on): Update.
18361         * lib/javaexec.c: Update.
18362         * modules/mbscasestr (Depends-on): Update.
18363         * lib/mbscasestr.c: Update.
18364         * modules/mbsstr (Depends-on): Update.
18365         * lib/mbsstr.c: Update.
18366         * modules/setenv (Depends-on): Update.
18367         * lib/setenv.c: Update.
18368         * modules/strcasestr (Depends-on): Update.
18369         * lib/strcasestr.c: Update.
18370         * modules/striconveha (Depends-on): Update.
18371         * lib/striconveha.c: Update.
18372         * modules/relocatable-prog-wrapper (Files): Update.
18373         * lib/relocwrapper.c: Update.
18374         * build-aux/install-reloc: Update.
18375         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
18376
18377 2007-06-08  Bruno Haible  <bruno@clisp.org>
18378
18379         Port to uClibc.
18380         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
18381         * lib/fpurge.c (fpurge): Likewise.
18382         * lib/freading.c (freading): Likewise.
18383         * lib/fseeko.c (rpl_fseeko): Likewise.
18384         * lib/fseterr.c (fseterr): Likewise.
18385         * lib/fwriting.c (fwriting): Likewise.
18386         * tests/test-fflush.c (main): Avoid a failure on uClibc.
18387
18388 2007-06-08  Bruno Haible  <bruno@clisp.org>
18389
18390         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
18391         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
18392         * modules/gettext (Files): Add m4/intlmacosx.m4.
18393
18394 2007-06-07  Bruno Haible  <bruno@clisp.org>
18395
18396         * modules/localename-tests: New file.
18397         * tests/test-localename.c: New file.
18398
18399         New module 'localename'.
18400         * lib/localename.h: New file.
18401         * lib/localename.c: New file, from GNU gettext.
18402         * m4/localename.m4: New file.
18403         * modules/localename: New file.
18404
18405 2007-06-07  Bruno Haible  <bruno@clisp.org>
18406
18407         Work around the lack of <wchar.h> on some builds of uClibc.
18408         * doc/headers/wchar.texi: Update.
18409         * lib/wchar_.h: Include <wchar.h> only if it exists.
18410         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
18411         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
18412         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
18413         doesn't exist.
18414         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
18415         * modules/mbfile (Depends-on): Add wchar.
18416         * modules/mbiter (Depends-on): Likewise.
18417         * modules/mbuiter (Depends-on): Likewise.
18418         Reported by Simon Josefsson.
18419
18420 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
18421
18422         Work around problem reported by Steven M. Schweda in
18423         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
18424         Tru64 5.1B with the Compaq compiler environment installed declares
18425         an 'isblank' function but does not define it in the C library.
18426         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
18427         * lib/regex_internal.h (isblank): Likewise.
18428         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
18429         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
18430
18431 2007-06-05  Bruno Haible  <bruno@clisp.org>
18432
18433         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
18434         ia64.
18435         * modules/printf-safe: New file.
18436         * modules/fprintf-posix (Depends-on): Add printf-safe.
18437         * modules/printf-posix (Depends-on): Likewise.
18438         * modules/snprintf-posix (Depends-on): Likewise.
18439         * modules/sprintf-posix (Depends-on): Likewise.
18440         * modules/vasnprintf-posix (Depends-on): Likewise.
18441         * modules/vasprintf-posix (Depends-on): Likewise.
18442         * modules/vfprintf-posix (Depends-on): Likewise.
18443         * modules/vprintf-posix (Depends-on): Likewise.
18444         * modules/vsnprintf-posix (Depends-on): Likewise.
18445         * modules/vsprintf-posix (Depends-on): Likewise.
18446         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
18447         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
18448         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
18449         "no" on i386, x86_64, ia64.
18450         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
18451         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
18452         on i386, x86_64, ia64.
18453         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
18454         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
18455         on i386, x86_64, ia64.
18456         * tests/test-vasnprintf-posix.c: Include float.h.
18457         (LDBL80_WORDS): New macro.
18458         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
18459         on i386, x86_64, ia64.
18460         * tests/test-vasprintf-posix.c: Include float.h.
18461         (LDBL80_WORDS): New macro.
18462         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
18463         on i386, x86_64, ia64.
18464         * tests/test-snprintf-posix.c: Include float.h.
18465         * tests/test-sprintf-posix.c: Likewise.
18466         * tests/test-vsnprintf-posix.c: Likewise.
18467         * tests/test-vsprintf-posix.c: Likewise.
18468
18469 2007-06-05  Bruno Haible  <bruno@clisp.org>
18470
18471         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
18472         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
18473         non-IEEE numbers on i386, x86_64, ia64.
18474         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
18475         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
18476         * tests/test-isnanl.h: Include float.h.
18477         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
18478
18479 2007-06-05  Bruno Haible  <bruno@clisp.org>
18480
18481         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
18482         also the %a / %A. Handle the %a / %A code before this extra handling.
18483
18484 2007-06-05  Bruno Haible  <bruno@clisp.org>
18485
18486         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
18487         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
18488
18489 2007-06-05  Bruno Haible  <bruno@clisp.org>
18490
18491         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
18492         typo in variable name.
18493
18494 2007-06-05  Eric Blake  <ebb9@byu.net>
18495
18496         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
18497         Reported by Simon Josefsson.
18498
18499 2007-06-04  Bruno Haible  <bruno@clisp.org>
18500
18501         Avoid test failures on some PowerPC platforms.
18502         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
18503         Define differently for PowerPC.
18504         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
18505         Reported by Gary V. Vaughan <gary@gnu.org>.
18506
18507 2007-06-02  Bruno Haible  <bruno@clisp.org>
18508
18509         Fix test-stdint failure on FreeBSD/ia64.
18510         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
18511         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
18512         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
18513         * doc/headers/stdint.texi: Update.
18514
18515 2007-06-01  Bruno Haible  <bruno@clisp.org>
18516
18517         * tests/test-binary-io.c (main): Pass a third argument to open().
18518         Reported by Gary V. Vaughan <gary@gnu.org>.
18519
18520 2007-06-01  Bruno Haible  <bruno@clisp.org>
18521
18522         * doc/functions/frexpl.texi: Update for mingw.
18523
18524 2007-06-01  Bruno Haible  <bruno@clisp.org>
18525
18526         * tests/test-lseek.c (main): Disable test of errno for invalid third
18527         argument.
18528         * doc/functions/lseek.texi: Update.
18529         Reported by Gary V. Vaughan <gary@gnu.org>.
18530
18531 2007-05-28  Bruno Haible  <bruno@clisp.org>
18532
18533         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
18534
18535 2007-05-31  Eric Blake  <ebb9@byu.net>
18536
18537         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
18538         cross compiling.
18539
18540 2007-05-30  Eric Blake  <ebb9@byu.net>
18541         and Bruno Haible  <bruno@clisp.org>
18542
18543         Work around mingw test failures exposed by m4-1.4.9b.
18544         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
18545         * tests/test-unistd.c: Disable uid_t and git_t tests for the
18546         moment.
18547
18548 2007-05-30  Bruno Haible  <bruno@clisp.org>
18549
18550         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
18551         assuming that they are closed. Needed on HP-UX 11.
18552
18553 2007-05-29  Bruno Haible  <bruno@clisp.org>
18554
18555         Fix a problem with #include_next.
18556         * lib/dirent_.h: Split the double-inclusion guard.
18557         * lib/fcntl_.h: Likewise.
18558         * lib/float_.h: Likewise.
18559         * lib/iconv_.h: Likewise.
18560         * lib/inttypes_.h: Likewise.
18561         * lib/locale_.h: Likewise.
18562         * lib/math_.h: Likewise.
18563         * lib/netinet_in_.h: Likewise.
18564         * lib/search_.h: Likewise.
18565         * lib/signal_.h: Likewise.
18566         * lib/stdint_.h: Likewise.
18567         * lib/stdio_.h: Likewise.
18568         * lib/stdlib_.h: Likewise.
18569         * lib/string_.h: Likewise.
18570         * lib/sys_select_.h: Likewise.
18571         * lib/sys_socket_.h: Likewise.
18572         * lib/sys_stat_.h: Likewise.
18573         * lib/sys_time_.h: Likewise.
18574         * lib/sysexits_.h: Likewise.
18575         * lib/time_.h: Likewise.
18576         * lib/unistd_.h: Likewise.
18577         * lib/wchar_.h: Likewise.
18578         * lib/wctype_.h: Likewise.
18579
18580 2007-05-29  Bruno Haible  <bruno@clisp.org>
18581
18582         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
18583         for the moment.
18584
18585 2007-05-29  Bruno Haible  <bruno@clisp.org>
18586
18587         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
18588         invocation.
18589         Reported by Eric Blake.
18590
18591 2007-05-29  Bruno Haible  <bruno@clisp.org>
18592
18593         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
18594         compiling case.
18595
18596 2007-05-29  Eric Blake  <ebb9@byu.net>
18597             Bruno Haible  <bruno@clisp.org>
18598
18599         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
18600         cross compiles.
18601
18602 2007-05-28  Eric Blake  <ebb9@byu.net>
18603
18604         * modules/closein-tests (test_closein_LDADD): Support test on
18605         cygwin with libtool.
18606
18607 2007-05-28  Bruno Haible  <bruno@clisp.org>
18608
18609         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
18610         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
18611         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
18612         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
18613         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
18614         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
18615         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
18616         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
18617         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
18618
18619 2007-05-28  Eric Blake  <ebb9@byu.net>
18620
18621         Unconditionally include <config.h> in unit tests.
18622         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
18623         * tests/test-allocsa.c, tests/test-arcfour.c,
18624         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
18625         tests/test-array_list.c, tests/test-array_oset.c,
18626         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
18627         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
18628         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
18629         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
18630         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
18631         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
18632         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
18633         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
18634         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
18635         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
18636         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
18637         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
18638         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
18639         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
18640         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
18641         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
18642         test-md5.c, test-memmem.c, test-printf-posix.c,
18643         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
18644         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
18645         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
18646         test-strcasestr.c, test-striconv.c, test-striconveh.c,
18647         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
18648         test-vasnprintf-posix2.c, test-vasnprintf.c,
18649         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
18650         test-vfprintf-posix.c, test-vprintf-posix.c,
18651         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
18652         test-xvasprintf.c: Likewise.
18653
18654 2007-05-28  Bruno Haible  <bruno@clisp.org>
18655
18656         * gnulib-tool (func_import): Remember the --with-tests command-line
18657         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
18658         Reported by Eric Blake.
18659
18660 2007-05-28  Bruno Haible  <bruno@clisp.org>
18661
18662         * modules/ftell-tests: New file.
18663         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
18664         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
18665
18666         * lib/ftell.c: New file.
18667         * modules/ftell: New file.
18668         * m4/ftell.m4: New file.
18669         * doc/functions/ftell.texi: Update.
18670         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
18671         REPLACE_FTELL.
18672         * lib/stdio_.h (rpl_ftell): New declaration.
18673         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
18674         REPLACE_FTELL.
18675
18676 2007-05-28  Eric Blake  <ebb9@byu.net>
18677
18678         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
18679
18680 2007-05-28  Bruno Haible  <bruno@clisp.org>
18681
18682         * modules/fseek-tests: New file.
18683         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
18684         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
18685
18686         * lib/fseek.c: New file.
18687         * modules/fseek: New file.
18688         * m4/fseek.m4: New file.
18689         * doc/functions/fseek.texi: Update.
18690         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
18691         REPLACE_FSEEK.
18692         * lib/stdio_.h (rpl_fseek): New declaration.
18693         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
18694         REPLACE_FSEEK.
18695
18696 2007-05-28  Bruno Haible  <bruno@clisp.org>
18697
18698         * lib/stdio_.h (fflush): More comments.
18699
18700 2007-05-28  Bruno Haible  <bruno@clisp.org>
18701
18702         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
18703         runtime test.
18704
18705 2007-05-28  Eric Blake  <ebb9@byu.net>
18706
18707         Improve lseek module.
18708         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
18709         * lib/unistd_.h (lseek): Scale back link warning message.
18710         * tests/test-lseek.c: Beef up test.
18711         * tests/test-lseek.sh: Exercise more facets of lseek.
18712         Reported by Bruno Haible.
18713
18714 2007-05-28  Bruno Haible  <bruno@clisp.org>
18715
18716         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
18717         to define.
18718
18719 2007-05-27  Bruno Haible  <bruno@clisp.org>
18720
18721         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
18722
18723 2007-05-27  Bruno Haible  <bruno@clisp.org>
18724
18725         * modules/openmp: New file.
18726         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
18727         Noah Misch.
18728
18729 2007-05-26  Bruno Haible  <bruno@clisp.org>
18730
18731         * modules/chdir-long (Depends-on): Add fchdir.
18732         * modules/chdir-safer (Depends-on): Likewise.
18733         * modules/fts (Depends-on): Likewise.
18734         * modules/fts-lgpl (Depends-on): Likewise.
18735         * modules/openat (Depends-on): Likewise.
18736         * modules/savewd (Depends-on): Likewise.
18737
18738 2007-05-24  Eric Blake  <ebb9@byu.net>
18739
18740         Fix lseek on mingw.
18741         * modules/lseek: New module.
18742         * m4/lseek.m4: New file.
18743         * lib/lseek.c: New file.
18744         * modules/lseek-tests: New file.
18745         * tests/test-lseek.c: New file.
18746         * tests/test-lseek.sh: New file.
18747         * MODULES.html.sh: Document lseek module.
18748         * modules/fflush (Depends-on): Add lseek, fseeko.
18749         * modules/fseeko (Depends-on): Likewise.
18750         * modules/ftello (Depends-on): Likewise.
18751         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
18752         broken.
18753         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
18754         broken.
18755         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
18756         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
18757         * lib/ftello.c (rpl_ftello): Likewise.
18758         * tests/test-fseeko.c (main): Test this.
18759         * tests/test-fseeko.sh: Likewise.
18760         * tests/test-ftello.c (main): Likewise.
18761         * tests/test-ftello.sh: Likewise.
18762         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
18763         implies replacing fseek.
18764         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
18765         HAVE_FTELLO.
18766         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
18767         * modules/unistd (Makefile.am): Likewise.
18768         * lib/unistd_.h (lseek): Declare a replacement.
18769         * doc/functions/lseek.texi (lseek): Document this fix.
18770         * doc/functions/fseek.texi (fseek): Likewise.
18771         * doc/functions/ftell.texi (ftell): Likewise.
18772
18773 2007-05-24  Bruno Haible  <bruno@clisp.org>
18774
18775         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
18776         in the printed representation of a NaN.
18777         * tests/test-vasprintf-posix.c (test_function): Likewise.
18778         * tests/test-snprintf-posix.h (test_function): Likewise.
18779         * tests/test-sprintf-posix.h (test_function): Likewise.
18780         Reported by Eric Blake.
18781
18782 2007-05-23  Eric Blake  <ebb9@byu.net>
18783
18784         Fix fseeko/ftello on cygwin 1.5.24.
18785         * doc/functions/fseeko.texi (fseeko): Document the fix.
18786         * doc/functions/ftello.texi (ftello): Document the fix.
18787         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
18788         * doc/functions/stdout.text (stdout): New file.
18789         * doc/functions/stderr.text (stderr): New file.
18790         * doc/gnulib.texi (Function Substitutes): Use new files.
18791         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
18792         prior to 1.7.0.
18793         * tests/test-ftello.c (main): Likewise for ftello.
18794         * tests/test-fseeko.sh: New file.
18795         * tests/test-ftello.sh: New file.
18796         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
18797         with seekable stdin.
18798         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
18799         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
18800         (gl_REPLACE_FSEEKO): New macro.
18801         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
18802         * modules/fseeko (Files): Distribute fseeko.c.
18803         * modules/ftello (Files): Distribute ftello.c.
18804         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
18805         mode.
18806         * lib/ftello.c (rpl_ftello): New file.
18807         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
18808         fseeko, ftello.
18809         (gl_STDIN_LARGE_OFFSET): New macro.
18810         * modules/stdio (Makefile.am): Perform the replacement.
18811         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
18812
18813 2007-05-23  Bruno Haible  <bruno@clisp.org>
18814
18815         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
18816         GNULIB_POSIXCHECK is defined.
18817
18818 2007-05-21  Bruno Haible  <bruno@clisp.org>
18819
18820         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
18821         Check also the output for NaN arguments. When cross-compiling, guess
18822         no on IRIX.
18823         * lib/vasnprintf.c: Update comments.
18824         * tests/test-vasnprintf-posix.c (strisnan): New function.
18825         (test_function): Use it.
18826         * tests/test-vasprintf-posix.c (strisnan): New function.
18827         (test_function): Use it.
18828         * tests/test-snprintf-posix.h (strisnan): New function.
18829         (test_function): Use it.
18830         * tests/test-sprintf-posix.h (strisnan): New function.
18831         (test_function): Use it.
18832         Reported by Eric Blake.
18833
18834 2007-05-20  Bruno Haible  <bruno@clisp.org>
18835
18836         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
18837         numbers that fails on BeOS.
18838         * doc/functions/frexpl.texi: Update.
18839
18840 2007-05-20  Jim Meyering  <jim@meyering.net>
18841
18842         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
18843         forced upon us by glibc-2.6.
18844
18845 2007-05-20  Bruno Haible  <bruno@clisp.org>
18846
18847         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
18848         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
18849         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
18850         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
18851         NEED_PRINTF_INFINITE.
18852         (is_infinitel): New function.
18853         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
18854         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
18855         gl_PREREQ_VASNPRINTF_INFINITE.
18856         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
18857         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18858         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
18859         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
18860         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
18861         gl_PREREQ_VASNPRINTF_INFINITE.
18862         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18863         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18864         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18865         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18866         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18867         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18868         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18869         * doc/functions/fprintf.texi: Update.
18870         * doc/functions/printf.texi: Update.
18871         * doc/functions/snprintf.texi: Update.
18872         * doc/functions/sprintf.texi: Update.
18873         * doc/functions/vfprintf.texi: Update.
18874         * doc/functions/vprintf.texi: Update.
18875         * doc/functions/vsnprintf.texi: Update.
18876         * doc/functions/vsprintf.texi: Update.
18877
18878 2007-05-20  Bruno Haible  <bruno@clisp.org>
18879
18880         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
18881         was not found in libc.
18882         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
18883
18884 2007-05-20  Bruno Haible  <bruno@clisp.org>
18885
18886         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
18887         printed as "-nan" instead of "nan".
18888         * tests/test-vasprintf-posix.c (test_function): Likewise.
18889         * tests/test-snprintf-posix.h (test_function): Likewise.
18890         * tests/test-sprintf-posix.h (test_function): Likewise.
18891         Needed for HP-UX 11.
18892
18893 2007-05-20  Jim Meyering  <jim@meyering.net>
18894
18895         Fix buggy test for the fchownat-deref bug.
18896         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
18897         symlink required for the run-test.  Without it, this test would
18898         always declare that fchownat doesn't work, and client code would
18899         unnecessarily use the replacement function with fixed libc.
18900         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
18901         Reported by Greg Schafer.
18902
18903 2007-05-19  Bruno Haible  <bruno@clisp.org>
18904
18905         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
18906         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
18907         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
18908         Needed for IRIX 6.5 and Solaris 2.5.1.
18909
18910 2007-05-19  Bruno Haible  <bruno@clisp.org>
18911
18912         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
18913         (test_function): Skip tests involving -0.0 on platforms where
18914         -0.0 = 0.0.
18915         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
18916         (test_function): Skip tests involving -0.0 on platforms where
18917         -0.0 = 0.0.
18918         * tests/test-snprintf-posix.h (have_minus_zero): New function.
18919         (test_function): Skip tests involving -0.0 on platforms where
18920         -0.0 = 0.0.
18921         * tests/test-sprintf-posix.h (have_minus_zero): New function.
18922         (test_function): Skip tests involving -0.0 on platforms where
18923         -0.0 = 0.0.
18924         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
18925         tests.
18926         * tests/test-printf-posix.h (test_function): Likewise.
18927         * tests/test-printf-posix.output: Remove all -0.0 related results.
18928         Needed for IRIX 6.5.
18929
18930 2007-05-19  Bruno Haible  <bruno@clisp.org>
18931
18932         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
18933         printed as "nan0x7fffffff" instead of "nan".
18934         * tests/test-vasprintf-posix.c (test_function): Likewise.
18935         * tests/test-snprintf-posix.h (test_function): Likewise.
18936         * tests/test-sprintf-posix.h (test_function): Likewise.
18937         * tests/test-fprintf-posix.h (NaN): Remove macro.
18938         (test_function): Remove all NaN related tests.
18939         * tests/test-printf-posix.h (NaN): Remove macro.
18940         (test_function): Remove all NaN related tests.
18941         * tests/test-printf-posix.output: Remove all NaN related results.
18942         Needed for IRIX 6.5.
18943
18944 2007-05-19  Bruno Haible  <bruno@clisp.org>
18945
18946         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
18947         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
18948
18949 2007-05-19  Bruno Haible  <bruno@clisp.org>
18950
18951         * lib/float_.h: New file.
18952         * m4/float_h.m4: New file.
18953         * modules/float: New file.
18954         * modules/isnanl (Dependencies): Add float.
18955         * modules/isnanl-nolibm (Dependencies): Likewise.
18956         * modules/mathl (Dependencies): Likewise.
18957         * modules/printf-frexpl (Dependencies): Likewise.
18958         * modules/signbit (Dependencies): Likewise.
18959         * modules/vasnprintf (Dependencies): Likewise.
18960         * doc/headers/float.texi: Update.
18961
18962 2007-05-19  Jim Meyering  <jim@meyering.net>
18963
18964         * lib/utimens.c (gl_futimens): Rename from futimens,
18965         now that glibc-2.6 declares futimens.
18966         * lib/utimens.h: Likewise.
18967
18968 2007-05-19  Bruno Haible  <bruno@clisp.org>
18969
18970         Avoid test failures on mingw.
18971         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
18972         * tests/test-printf-posix.sh: Likewise.
18973         * tests/test-vfprintf-posix.sh: Likewise.
18974         * tests/test-vprintf-posix.sh: Likewise.
18975
18976 2007-05-19  Bruno Haible  <bruno@clisp.org>
18977
18978         Fix *printf result for NaN, Inf, -0.0 on mingw.
18979         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
18980         * lib/vasnprintf.c: Include math.h and isnan.h.
18981         (is_infinite_or_zero): New function.
18982         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
18983         values in the %f, %F, %e, %E, %g, %G directives.
18984         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
18985         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18986         gl_PRINTF_INFINITE and test its result. Invoke
18987         gl_PREREQ_VASNPRINTF_INFINITE.
18988         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18989         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18990         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18991         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18992         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18993         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18994         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18995         * doc/functions/fprintf.texi: Update.
18996         * doc/functions/printf.texi: Update.
18997         * doc/functions/snprintf.texi: Update.
18998         * doc/functions/sprintf.texi: Update.
18999         * doc/functions/vfprintf.texi: Update.
19000         * doc/functions/vprintf.texi: Update.
19001         * doc/functions/vsnprintf.texi: Update.
19002         * doc/functions/vsprintf.texi: Update.
19003
19004 2007-05-19  Bruno Haible  <bruno@clisp.org>
19005
19006         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
19007         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
19008         Instead of multiplying with 10^k, set extra_zeroes to k.
19009         (scale10_round_long_double): Remove function.
19010
19011 2007-05-18  Bruno Haible  <bruno@clisp.org>
19012
19013         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
19014         introduced on 2007-05-06.
19015
19016 2007-05-18  Bruno Haible  <bruno@clisp.org>
19017
19018         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
19019         %g directives.
19020         * tests/test-vasprintf-posix.c (test_function): Likewise.
19021         * tests/test-snprintf-posix.h (test_function): Likewise.
19022         * tests/test-sprintf-posix.h (test_function): Likewise.
19023
19024 2007-05-18  Bruno Haible  <bruno@clisp.org>
19025
19026         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
19027         (strmatch): New function.
19028         (test_function): Test the %f directive on numbers of various exponents.
19029         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
19030         (strmatch): New function.
19031         (test_function): Test the %f directive on numbers of various exponents.
19032         * tests/test-snprintf-posix.h (strmatch): New function.
19033         (test_function): Test the %f directive on numbers of various exponents.
19034         * tests/test-sprintf-posix.h (strmatch): New function.
19035         (test_function): Test the %f directive on numbers of various exponents.
19036         * tests/test-snprintf-posix.c (SIZEOF): New macro.
19037         * tests/test-sprintf-posix.c (SIZEOF): New macro.
19038         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
19039         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
19040
19041 2007-05-18  Bruno Haible  <bruno@clisp.org>
19042
19043         Add support for 'long double' number output.
19044         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
19045         * lib/vasnprintf.c: Include math.h and float+.h.
19046         (mp_limb_t): New type.
19047         (GMP_LIMB_BITS): New macro.
19048         (mp_twolimb_t): New type.
19049         (GMP_TWOLIMB_BITS): New macro.
19050         (mpn_t): New type.
19051         (multiply, divide, convert_to_decimal, decode_long_double,
19052         scale10_round_long_double, scale10_round_decimal_long_double,
19053         floorlog10l): New functions.
19054         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
19055         for the %f, %F, %e, %E, %g, %G directives.
19056         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
19057         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
19058         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
19059         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
19060         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
19061         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
19062         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
19063         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
19064         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
19065         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
19066         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
19067         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
19068         * modules/snprintf-posix (Depends-on): Likewise.
19069         * modules/sprintf-posix (Depends-on): Likewise.
19070         * modules/vasnprintf-posix (Depends-on): Likewise.
19071         * modules/vasprintf-posix (Depends-on): Likewise.
19072         * modules/vfprintf-posix (Depends-on): Likewise.
19073         * modules/vsnprintf-posix (Depends-on): Likewise.
19074         * modules/vsprintf-posix (Depends-on): Likewise.
19075         * modules/vasnprintf (Files): Add lib/float+.h.
19076         * doc/functions/fprintf.texi: Update.
19077         * doc/functions/printf.texi: Update.
19078         * doc/functions/snprintf.texi: Update.
19079         * doc/functions/sprintf.texi: Update.
19080         * doc/functions/vfprintf.texi: Update.
19081         * doc/functions/vprintf.texi: Update.
19082         * doc/functions/vsnprintf.texi: Update.
19083         * doc/functions/vsprintf.texi: Update.
19084
19085 2007-05-18  Bruno Haible  <bruno@clisp.org>
19086
19087         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
19088
19089 2007-05-18  Bruno Haible  <bruno@clisp.org>
19090
19091         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
19092         for printing 64-bit integers. Needed for mingw.
19093
19094 2007-05-18  Bruno Haible  <bruno@clisp.org>
19095
19096         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
19097         gl_FUNC_FREXPL_WORKS.
19098         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
19099
19100 2007-05-18  Bruno Haible  <bruno@clisp.org>
19101
19102         * modules/frexpl-nolibm-tests: New file.
19103
19104         * modules/frexpl-nolibm: New file.
19105         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
19106
19107 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
19108
19109         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
19110         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
19111         GCC 4.2, which otherwise issues a lot of warnings.
19112         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
19113         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
19114         Likewise.
19115         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
19116         * modules/iconv_open (iconv.h): Likewise.
19117         * modules/locale (locale.h): Likewise.
19118         * modules/netinet_in (netinet/in.h): Likewise.
19119         * modules/sys_select (sys_select.h): Likewise.
19120         * modules/sys_socket (sys/socket.h): Likewise.
19121         * modules/sys_stat (sys/stat.h): Likewise.
19122         * modules/sysexits (sysexits.h): Likewise.
19123         * modules/unistd (unistd.h): Likewise.
19124
19125 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19126
19127         * modules/closein-tests (Makefile.am): Distribute
19128         `test-closein.sh'.
19129
19130 2007-05-17  Bruno Haible  <bruno@clisp.org>
19131
19132         * tests/test-printf-posix.output: Renamed from
19133         tests/test-fprintf-posix.out.
19134         * modules/fprintf-posix-tests: Update.
19135         * modules/printf-posix-tests: Update.
19136         * modules/vfprintf-posix-tests: Update.
19137         * modules/vprintf-posix-tests: Update.
19138         * tests/test-fprintf-posix.sh: Update.
19139         * tests/test-printf-posix.sh: Update.
19140         * tests/test-vfprintf-posix.sh: Update.
19141         * tests/test-vprintf-posix.sh: Update.
19142         Reported by Ralf Wildenhues.
19143
19144 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
19145
19146         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
19147         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
19148         GCC 4.2, which otherwise issues a lot of warnings.
19149         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
19150         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
19151         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
19152         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
19153         it should no longer be needed.
19154         * lib/string_.h: Likewise.
19155         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
19156         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
19157         * modules/inttypes (inttypes.h): Likewise.
19158         * modules/math (math.h): Likewise.
19159         * modules/search (search.h): Likewise.
19160         * modules/signal (signal.h): Likewise.
19161         * modules/stdint (stdint.h): Likewise.
19162         * modules/stdio (stdio.h): Likewise.
19163         * modules/stdlib (stdlib.h): Likewise.
19164         * modules/string (string.h): Likewise.
19165         * modules/sys_time (sys/time.h): Likewise.
19166         * modules/time (time.h): Likewise.
19167         * modules/wchar (wchar.h): Likewise.
19168         * modules/wctype (wtype.h): Likewise.
19169
19170 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
19171
19172         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
19173
19174 2007-05-13  Bruno Haible  <bruno@clisp.org>
19175
19176         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
19177         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
19178         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
19179         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
19180         (gl_PREREQ_STRTOK_R): Don't require it here.
19181
19182 2007-05-13  Bruno Haible  <bruno@clisp.org>
19183
19184         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
19185         when used in C++ mode.
19186
19187 2007-05-12  Bruno Haible  <bruno@clisp.org>
19188
19189         * lib/linebuffer.h: Tweak doc.
19190         * lib/linebuffer.c: Likewise.
19191
19192 2007-05-12  James Youngman  <jay@gnu.org>
19193
19194         * lib/linebuffer.c (readlinebuffer_delim): New function,
19195         like readlinebuffer, but use a caller-specified delimiter.
19196         (readlinebuffer): Just call readlinebuffer_delim with '\n'
19197         as the delimiter.
19198         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
19199
19200 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
19201
19202         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
19203         * modules/openat (Files): Remove openat-die.c.
19204         (Depends-on): Add openat-die.
19205         * modules/openat-die: New module.
19206
19207 2007-05-06  Bruno Haible  <bruno@clisp.org>
19208
19209         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
19210         Update with info about Cygwin.
19211         * doc/functions/fprintf.texi: Update.
19212         * doc/functions/printf.texi: Update.
19213         * doc/functions/snprintf.texi: Update.
19214         * doc/functions/sprintf.texi: Update.
19215         * doc/functions/vfprintf.texi: Update.
19216         * doc/functions/vprintf.texi: Update.
19217         * doc/functions/vsnprintf.texi: Update.
19218         * doc/functions/vsprintf.texi: Update.
19219         Reported by Eric Blake.
19220
19221 2007-05-06  Bruno Haible  <bruno@clisp.org>
19222
19223         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
19224         padding ourselves for the floating-point directives.
19225         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
19226         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
19227         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
19228         gl_PRINTF_FLAG_ZERO and test its result. Invoke
19229         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
19230         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
19231         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
19232         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
19233         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
19234         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
19235         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
19236         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
19237         * tests/test-snprintf-posix.h (test_function): Also check the width
19238         and some flags in the %f directive.
19239         * tests/test-sprintf-posix.h (test_function): Likewise.
19240         * tests/test-vasnprintf-posix.c (test_function): Likewise.
19241         * tests/test-vasprintf-posix.c (test_function): Likewise.
19242         * doc/functions/fprintf.texi: Update.
19243         * doc/functions/printf.texi: Update.
19244         * doc/functions/snprintf.texi: Update.
19245         * doc/functions/sprintf.texi: Update.
19246         * doc/functions/vfprintf.texi: Update.
19247         * doc/functions/vprintf.texi: Update.
19248         * doc/functions/vsnprintf.texi: Update.
19249         * doc/functions/vsprintf.texi: Update.
19250
19251 2007-05-06  Bruno Haible  <bruno@clisp.org>
19252
19253         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
19254         pass the ' flag character to sprintf or snprintf.
19255         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
19256         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
19257         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
19258         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
19259         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
19260         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
19261         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
19262         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
19263         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
19264         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
19265         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
19266         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
19267         * tests/test-snprintf-posix.h (test_function): Also check the grouping
19268         flag.
19269         * tests/test-sprintf-posix.h (test_function): Likewise.
19270         * tests/test-vasnprintf-posix.c (test_function): Likewise.
19271         * tests/test-vasprintf-posix.c (test_function): Likewise.
19272         * doc/functions/fprintf.texi: Update.
19273         * doc/functions/printf.texi: Update.
19274         * doc/functions/snprintf.texi: Update.
19275         * doc/functions/sprintf.texi: Update.
19276         * doc/functions/vfprintf.texi: Update.
19277         * doc/functions/vprintf.texi: Update.
19278         * doc/functions/vsnprintf.texi: Update.
19279         * doc/functions/vsprintf.texi: Update.
19280
19281 2007-05-01  Bruno Haible  <bruno@clisp.org>
19282
19283         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
19284
19285 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
19286
19287         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
19288         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
19289
19290 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
19291
19292         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
19293         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
19294         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
19295
19296 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
19297
19298         * lib/argp-help.c (struct hol_entry): New member `ord'.
19299         (HOL_ENTRY_PTRCMP): Use ord for comparison
19300         (hol_sort): Initialize ord.
19301
19302 2007-05-01  Bruno Haible  <bruno@clisp.org>
19303
19304         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
19305         Reported by Eric Blake.
19306         * doc/gnulib.texi (Function Substitutes): Update.
19307
19308 2007-05-01  Bruno Haible  <bruno@clisp.org>
19309
19310         * doc/functions.texi: Remove file, now redundant through
19311         doc/functions/*.texi.
19312
19313 2007-05-01  Bruno Haible  <bruno@clisp.org>
19314
19315         * modules/argp (Depends-on): Add sleep.
19316
19317 2007-05-01  Bruno Haible  <bruno@clisp.org>
19318
19319         * modules/sleep-tests: New file.
19320         * tests/test-sleep.c: New file.
19321
19322         * modules/sleep: New file.
19323         * lib/sleep.c: New file.
19324         * m4/sleep.m4: New file.
19325         * lib/unistd_.h (sleep): New declaration.
19326         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
19327         HAVE_SLEEP.
19328         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
19329         * doc/functions/sleep.texi: Document the sleep module.
19330
19331 2007-05-01  Bruno Haible  <bruno@clisp.org>
19332
19333         * lib/sigprocmask.h: Remove file.
19334         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
19335         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
19336         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
19337         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
19338         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
19339         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
19340         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
19341         HAVE_SIGSET_T as a shell variable.
19342         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
19343         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
19344         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
19345         (Depends-on): Add signal. Remove verify.
19346         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
19347         (Include): Mention <signal.h> instead of sigprocmask.h.
19348         * NEWS: Mention the change.
19349         * lib/fatal-signal.c: Don't include sigprocmask.h.
19350
19351 2007-05-01  Bruno Haible  <bruno@clisp.org>
19352
19353         * modules/signal: New file.
19354         * lib/signal_.h: New file.
19355         * m4/signal_h.m4: New file.
19356
19357 2007-05-01  Bruno Haible  <bruno@clisp.org>
19358
19359         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
19360         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
19361         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
19362         HAVE_WCTYPE_CTMP_BUG into wctype.h.
19363
19364 2007-05-01  Bruno Haible  <bruno@clisp.org>
19365
19366         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
19367         configure time.
19368         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
19369         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
19370         * modules/sys_stat (Makefile.am): Substitute their values into
19371         sys/stat.h.
19372
19373 2007-05-01  Bruno Haible  <bruno@clisp.org>
19374
19375         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
19376         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
19377         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
19378
19379 2007-05-01  Bruno Haible  <bruno@clisp.org>
19380
19381         * doc/header/assert.texi: Undo last change: don't mention the gnulib
19382         'assert' module here.
19383
19384 2007-05-01  Bruno Haible  <bruno@clisp.org>
19385
19386         * doc/functions/*.texi: New files.
19387         * doc/functions/google-ranking.txt: New file.
19388         * doc/gnulib.texi (Function Substitutes): New chapter.
19389         (ctime, inet_ntoa): Remove sections.
19390         * doc/ctime.texi: Remove file.
19391         * doc/inet_ntoa.texi: Remove file.
19392         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
19393         dependencies.
19394         (%.info): New rule, specifying a --reference-limit.
19395
19396 2007-05-01  Bruno Haible  <bruno@clisp.org>
19397
19398         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
19399
19400 2007-05-01  Bruno Haible  <bruno@clisp.org>
19401
19402         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
19403         the portability of 'mkdir' to mingw systems.
19404
19405 2007-05-01  Bruno Haible  <bruno@clisp.org>
19406
19407         * doc/headers/google-ranking.txt: New file.
19408
19409 2007-04-30  Eric Blake  <ebb9@byu.net>
19410
19411         Prefer fseeko to fseek.
19412         * modules/getpass (Depends-on): Add fseeko.
19413         * lib/getpass.c (getpass): Use fseeko, not fseek.
19414
19415 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
19416
19417         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
19418         assumes the sorting is stable, while most qsort implementations
19419         are not.  Use argument addresses to ensure they never compare as
19420         equal.
19421
19422         * tests/test-argp-2.sh (usage-indent test): Fix output
19423         (func_compare): Restore diff options
19424         * tests/test-argp.c: Restore #include "progname.h"
19425
19426 2007-04-29  Bruno Haible  <bruno@clisp.org>
19427
19428         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
19429         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
19430         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
19431         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
19432         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
19433         (configure.ac): Define CHECK_SNPRINTF_POSIX.
19434         (TESTS, check_PROGRAMS): Add test-snprintf.
19435         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
19436         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
19437         (TESTS, check_PROGRAMS): Add test-vsnprintf.
19438         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
19439         assertions that fail on HP-UX, OSF/1, or IRIX.
19440         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
19441
19442 2007-04-29  Bruno Haible  <bruno@clisp.org>
19443
19444         * MODULES.html.sh (posix_functions): Remove 'contents'.
19445
19446 2007-04-29  Karl Berry  <karl@gnu.org>
19447
19448         * config/srclist.txt (gendocs_template_min): new entry.
19449
19450 2007-04-29  Bruno Haible  <bruno@clisp.org>
19451
19452         Work around fpurge bug on BSD systems.
19453         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
19454         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
19455         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
19456         fpurge to rpl_fpurge if the system already has this function.
19457         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
19458         the case where the system already has this function. Correct invariants
19459         on BSD systems.
19460         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
19461         BSD systems.
19462
19463 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
19464
19465         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
19466         proposed by Sven Verdoolaege.
19467
19468         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
19469         options.
19470         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
19471         (usage and help tests): Update
19472
19473 2007-04-29  Bruno Haible  <bruno@clisp.org>
19474
19475         * tests/test-fflush.c (main): Use a file of size 17, not 10.
19476         Print more information in case of failure. Disable a test on BeOS.
19477
19478 2007-04-29  Bruno Haible  <bruno@clisp.org>
19479
19480         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
19481         This helps debugging on systems on which no gdb is available.
19482
19483 2007-04-29  Bruno Haible  <bruno@clisp.org>
19484
19485         * lib/freading.h: Improve comments.
19486         * lib/fwriting.h: Likewise.
19487         * tests/test-freading.c (main): Don't check freading immediately after
19488         repositioning. Needed for glibc.
19489
19490 2007-04-29  Bruno Haible  <bruno@clisp.org>
19491
19492         * lib/freading.c (freading): Trivial simplification.
19493
19494 2007-04-28  Bruno Haible  <bruno@clisp.org>
19495
19496         * tests/test-fwriting.c (main): Also test the interaction between
19497         fflush and fwriting.
19498         * modules/fwriting-tests (Depends-on): Add fflush.
19499
19500         * tests/test-freading.c (main): Also test the interaction between
19501         fflush and freading.
19502         * modules/freading-tests (Depends-on): Add fflush.
19503
19504 2007-04-28  Bruno Haible  <bruno@clisp.org>
19505
19506         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
19507         fseeko and ftello.
19508         Suggested by Eric Blake.
19509
19510 2007-04-28  Jim Meyering  <jim@meyering.net>
19511
19512         Avoid false-negative in gl_STDINT_H's C99 conformance test.
19513         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
19514         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
19515
19516 2007-04-27  Eric Blake  <ebb9@byu.net>
19517
19518         * doc/headers/assert.texi (assert.h): Document assert module use.
19519
19520 2007-04-27  Bruno Haible  <bruno@clisp.org>
19521
19522         * doc/headers/*.texi: New files.
19523         * doc/gnulib.texi (Header File Substitutes): New chapter.
19524         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
19525         dependencies.
19526         (standards.info ,standards.html, standards.dvi): Update dependencies.
19527         (mostlyclean, clean): New targets.
19528
19529 2007-04-27  Bruno Haible  <bruno@clisp.org>
19530
19531         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
19532         * modules/sysexits (Files, Makefile.am): Update.
19533
19534         * lib/sys_socket_.h: Renamed from lib/socket_.h.
19535         * modules/sys_socket (Files, Makefile.am): Update.
19536
19537         * lib/sys_stat_.h: Renamed from lib/stat_.h.
19538         * modules/sys_stat (Files, Makefile.am): Update.
19539
19540 2007-04-27  Eric Blake  <ebb9@byu.net>
19541
19542         * lib/freading.h: Improve comments.
19543         * lib/fwriting.h: Likewise.
19544         * lib/fflush.c: Likewise.
19545
19546         Fix closein for mingw.
19547         * modules/closein-tests: Add tests for closein.
19548         * tests/test-closein.c: New file.
19549         * tests/test-closein.sh: Likewise.
19550         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
19551         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
19552
19553 2007-04-27  Bruno Haible  <bruno@clisp.org>
19554
19555         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
19556         version is < 6.
19557         * lib/math_.h [__DECC]: Likewise.
19558         * lib/stdio_.h [__DECC]: Likewise.
19559         * lib/stdlib_.h [__DECC]: Likewise.
19560         * lib/string_.h [__DECC]: Likewise.
19561         * lib/time_.h [__DECC]: Likewise.
19562         * lib/wchar_.h [__DECC]: Likewise.
19563         * lib/wctype_.h [__DECC]: Likewise.
19564
19565 2007-04-27  Bruno Haible  <bruno@clisp.org>
19566
19567         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
19568
19569 2007-04-27  Bruno Haible  <bruno@clisp.org>
19570
19571         * lib/fflush.c: Add comments.
19572         * modules/fpurge-tests (Depends-on): Add fflush.
19573         * modules/freadable-tests (Depends-on): Likewise.
19574         * modules/fwritable-tests (Depends-on): Likewise.
19575
19576 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
19577
19578         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
19579         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
19580         Report by Bruno Haible <bruno@clisp.org>.
19581
19582 2007-04-26  Eric Blake  <ebb9@byu.net>
19583
19584         Fix fflush on mingw.
19585         * modules/fflush (Depends-on): Add freading.
19586         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
19587         but unread data.
19588
19589 2007-04-26  Eric Blake  <ebb9@byu.net>
19590         and Bruno Haible  <bruno@clisp.org>
19591
19592         Implement freading and fwriting.
19593         * lib/freading.c: New file.
19594         * lib/freading.h: Likewise.
19595         * m4/freading.m4: Likewise.
19596         * modules/freading: Likewise.
19597         * modules/freading-tests: Likewise.
19598         * tests/test-freading.c: Likewise.
19599         * lib/fwriting.c: New file.
19600         * lib/fwriting.h: Likewise.
19601         * m4/fwriting.m4: Likewise.
19602         * modules/fwriting: Likewise.
19603         * modules/fwriting-tests: Likewise.
19604         * tests/test-fwriting.c: Likewise.
19605         * MODULES.html.sh (File stream based Input/Output): Mention them.
19606
19607 2007-04-26  Bruno Haible  <bruno@clisp.org>
19608
19609         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
19610         'long' when we assume it.
19611         Suggested by Eric Blake.
19612
19613 2007-04-26  Bruno Haible  <bruno@clisp.org>
19614
19615         Ensure fseeko, ftello are declared on glibc systems.
19616         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
19617         * modules/fseeko (configure.ac-early): Likewise.
19618         * modules/ftello (configure.ac-early): Likewise.
19619         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
19620         AC_FUNC_FSEEKO for this.
19621         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
19622         (gl_CHECK_FSEEKO): Remove macro.
19623
19624 2007-04-26  Bruno Haible  <bruno@clisp.org>
19625
19626         * tests/test-fflush.c (main): Also check the ftell result after
19627         fflush and fseek/fseeko.
19628         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
19629         file descriptor position cache in the stream.
19630         * lib/fseeko.c (rpl_fseeko): Likewise.
19631
19632 2007-04-26  Bruno Haible  <bruno@clisp.org>
19633
19634         * modules/fflush-tests (Depends-on): Add fseeko.
19635
19636 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
19637             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19638
19639         * lib/argz_.h: ensure error_t definition is obtained in same
19640         mechanism system argz.h would have.
19641         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
19642         argz facilities are known bad.  Err on the side of caution if
19643         cross-compiling.
19644
19645 2007-04-25  Eric Blake  <ebb9@byu.net>
19646
19647         * lib/fpurge.c (includes): Use stdlib.h for free.
19648         * tests/test-fflush.c (main): Also test fflush-fseeko.
19649
19650 2007-04-25  Bruno Haible  <bruno@clisp.org>
19651
19652         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
19653         * lib/fseeko.c: New file.
19654         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
19655         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
19656         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
19657         gl_FUNC_FSEEKO.
19658         (gl_FUNC_FSEEKO): Invoke it.
19659         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
19660         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
19661         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
19662
19663 2007-04-25  Bruno Haible  <bruno@clisp.org>
19664
19665         * modules/fflush (Depends-on): Add ftello.
19666
19667 2007-04-25  Bruno Haible  <bruno@clisp.org>
19668
19669         * modules/ftello-tests: New file.
19670         * tests/test-ftello.c: New file.
19671
19672         * modules/ftello: New file.
19673         * m4/ftello.m4: New file.
19674         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
19675         HAVE_FTELLO.
19676         * lib/stdio_.h (ftello): New declaration.
19677         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
19678         HAVE_FTELLO.
19679
19680 2007-04-25  Bruno Haible  <bruno@clisp.org>
19681
19682         * modules/fseeko-tests: New file.
19683         * tests/test-fseeko.c: New file.
19684
19685         * modules/fseeko: New file.
19686         * m4/fseeko.m4: New file.
19687         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
19688         HAVE_FSEEKO.
19689         * lib/stdio_.h (fseeko): New declaration.
19690         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
19691         HAVE_FSEEKO.
19692
19693 2007-04-25  Bruno Haible  <bruno@clisp.org>
19694
19695         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
19696
19697 2007-04-25  Bruno Haible  <bruno@clisp.org>
19698
19699         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
19700         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
19701         * tests/test-unistd.c: Likewise.
19702         * tests/test-fcntl.c: Likewise.
19703
19704 2007-04-23  Eric Blake  <ebb9@byu.net>
19705
19706         * lib/fflush.c: Fix missing include.
19707         Reported by Bruno Haible.
19708
19709 2007-04-23  Bruno Haible  <bruno@clisp.org>
19710
19711         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
19712         Reported by Eric Blake.
19713
19714 2007-04-23  Bruno Haible  <bruno@clisp.org>
19715
19716         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
19717
19718 2007-04-23  Bruno Haible  <bruno@clisp.org>
19719
19720         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
19721
19722 2007-04-23  Bruno Haible  <bruno@clisp.org>
19723
19724         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
19725         Needed on HP-UX 11.
19726
19727 2007-04-16  Eric Blake  <ebb9@byu.net>
19728
19729         Make fflush rely on fpurge.
19730         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
19731         open coding all variants.
19732         * modules/fflush (Depends-on): Add fpurge and unistd.
19733         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
19734         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
19735
19736         Fix --with-tests compilation on cygwin.
19737         * modules/argmatch-tests (Makefile.am): List gnulib library first
19738         in LDADD.
19739         * modules/argp-tests (Makefile.am): Likewise.
19740         * modules/array-list-tests (Makefile.am): Likewise.
19741         * modules/array-oset-tests (Makefile.am): Likewise.
19742         * modules/avltree-list-tests (Makefile.am): Likewise.
19743         * modules/avltree-oset-tests (Makefile.am): Likewise.
19744         * modules/avltreehash-list-tests (Makefile.am): Likewise.
19745         * modules/carray-list-tests (Makefile.am): Likewise.
19746         * modules/dirname-tests (Makefile.am): Likewise.
19747         * modules/frexp-tests (Makefile.am): Likewise.
19748         * modules/isnanl-tests (Makefile.am): Likewise.
19749         * modules/linked-list-tests (Makefile.am): Likewise.
19750         * modules/linkedhash-list-tests (Makefile.am): Likewise.
19751         * modules/lock-tests (Makefile.am): Likewise.
19752         * modules/rbtree-list-tests (Makefile.am): Likewise.
19753         * modules/rbtree-oset-tests (Makefile.am): Likewise.
19754         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
19755         * modules/tls-tests (Makefile.am): Likewise.
19756         * modules/tsearch-tests (Makefile.am): Likewise.
19757         * modules/xvasprintf-tests (Makefile.am): Likewise.
19758
19759         Fix fpurge for cygwin.
19760         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
19761         value.
19762         * modules/fpurge-tests (Depends-on): Clean up trash.
19763
19764 2007-04-16  Simon Josefsson  <simon@josefsson.org>
19765
19766         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
19767
19768         * m4/autobuild.m4: Re-indent.
19769
19770 2007-04-13  Bruno Haible  <bruno@clisp.org>
19771
19772         * modules/fpurge-tests: New file.
19773         * tests/test-fpurge.c: New file.
19774
19775         * modules/fpurge: New file.
19776         * lib/fpurge.h: New file.
19777         * lib/fpurge.c: New file.
19778         * m4/fpurge.m4: New file.
19779
19780 2007-04-13  Bruno Haible  <bruno@clisp.org>
19781
19782         * modules/fbufmode-tests: New file.
19783         * tests/test-fbufmode.c: New file.
19784
19785         * modules/fbufmode: New file.
19786         * lib/fbufmode.h: New file.
19787         * lib/fbufmode.c: New file.
19788         * m4/fbufmode.m4: New file.
19789
19790 2007-04-13  Bruno Haible  <bruno@clisp.org>
19791
19792         * modules/fwritable-tests: New file.
19793         * tests/test-fwritable.c: New file.
19794
19795         * modules/fwritable: New file.
19796         * lib/fwritable.h: New file.
19797         * lib/fwritable.c: New file.
19798         * m4/fwritable.m4: New file.
19799
19800 2007-04-13  Bruno Haible  <bruno@clisp.org>
19801
19802         * modules/freadable-tests: New file.
19803         * tests/test-freadable.c: New file.
19804
19805         * modules/freadable: New file.
19806         * lib/freadable.h: New file.
19807         * lib/freadable.c: New file.
19808         * m4/freadable.m4: New file.
19809
19810 2007-04-13  Bruno Haible  <bruno@clisp.org>
19811
19812         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
19813         MOSTLYCLEANFILES.
19814
19815 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19816
19817         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
19818         gzip bootstrap.conf to avoid dragging in i18n machinery.
19819         (gnulib_tool_option): Use it.
19820
19821 2007-04-13  Bruno Haible  <bruno@clisp.org>
19822
19823         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
19824         %F directives.
19825         * tests/test-vasprintf-posix.c (test_function): Likewise.
19826         * tests/test-snprintf-posix.h (test_function): Likewise.
19827         * tests/test-sprintf-posix.h (test_function): Likewise.
19828         * tests/test-fprintf-posix.h (test_function): Likewise.
19829         * tests/test-printf-posix.h (test_function): Likewise.
19830         * tests/test-fprintf-posix.out: Likewise.
19831
19832 2007-04-13  Bruno Haible  <bruno@clisp.org>
19833
19834         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
19835         * modules/tls-tests (configure.ac): Likewise.
19836         Reported by Arto C. Nirkko <anirkko@insel.ch>.
19837
19838 2007-04-13  Bruno Haible  <bruno@clisp.org>
19839
19840         * lib/tls.c (glthread_tls_get): Fix return type.
19841         Patch by Arto C. Nirkko <anirkko@insel.ch>.
19842
19843 2007-04-12  Eric Blake  <ebb9@byu.net>
19844
19845         * modules/gettime (Depends-on): Remove gettime.
19846         Reported by Dmitry V. Levin.
19847
19848 2007-04-12  Bruno Haible  <bruno@clisp.org>
19849
19850         * modules/fflush (Include): Mention <stdio.h>.
19851         * modules/strtoimax (Include): Mention <inttypes.h>.
19852         * modules/strtoumax (Include): Likewise.
19853
19854 2007-04-12  Eric Blake  <ebb9@byu.net>
19855
19856         * .cvsignore: New file.
19857         * .gitignore: Likewise.
19858
19859 2007-04-12  Bruno Haible  <bruno@clisp.org>
19860
19861         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
19862         not before, since $(LDADD) often contains libgnu.a.
19863         * modules/striconv-tests (test_striconv_LDADD): Likewise.
19864         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
19865         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
19866         Needed on Cygwin.
19867
19868 2007-04-12  Eric Blake  <ebb9@byu.net>
19869
19870         Work around glibc's failure to flush stdin on fclose.
19871         * lib/closein.c (close_stdin): Flush stdin before closing.
19872
19873         Work around glibc's failure to reset seekable stdin on exit.
19874         * modules/closein: New module.
19875         * lib/closein.c: New file.
19876         * lib/closein.h: Likewise.
19877         * m4/closein.m4: Likewise.
19878         * MODULES.html.sh (File stream based Input/Output): Document it.
19879
19880 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19881
19882         * gnulib-tool: Rename generated 'autobuild' script to
19883         'do-autobuild' in --create-megatestdir output.
19884
19885         * doc/gnulib.texi (Build robot for gnulib): Fix.
19886
19887 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19888
19889         * modules/sysexits (Depends-on): Add absolute-header.
19890
19891 2007-04-12  Eric Blake  <ebb9@byu.net>
19892
19893         No need to preserve errno on success.
19894         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
19895         Reported by Bruno Haible.
19896
19897 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19898
19899         * MODULES.html.sh (Support for maintaining and releasing
19900         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
19901
19902 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19903
19904         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
19905
19906 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19907
19908         * modules/autobuild: New module.
19909
19910         * m4/autobuild.m4: New file.
19911
19912 2007-04-11  Bruno Haible  <bruno@clisp.org>
19913
19914         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
19915         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
19916         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
19917         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
19918         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
19919         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19920         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19921         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
19922         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19923         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19924         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
19925         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19926         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19927         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
19928         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19929         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19930         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
19931         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19932         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19933         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
19934         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19935         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19936         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
19937         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19938         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19939         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
19940         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19941         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19942         Reported by Eric Blake.
19943
19944 2007-04-11  Bruno Haible  <bruno@clisp.org>
19945
19946         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
19947
19948 2007-04-10  Bruno Haible  <bruno@clisp.org>
19949
19950         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
19951         for NaN and Infinity. Needed on FreeBSD 6.1.
19952         * tests/test-vasnprintf-posix.c (test_function): Undo last change
19953         regarding results for "%010a" of Infinity and NaN.
19954         * tests/test-vasprintf-posix.c (test_function): Likewise.
19955         * tests/test-snprintf-posix.h (test_function): Likewise.
19956         * tests/test-sprintf-posix.h (test_function): Likewise.
19957         * tests/test-fprintf-posix.h (test_function): Likewise.
19958         * tests/test-printf-posix.h (test_function): Likewise.
19959         * tests/test-fprintf-posix.out: Likewise.
19960
19961 2007-04-10  Bruno Haible  <bruno@clisp.org>
19962
19963         * modules/locale-tests: New file.
19964         * tests/test-locale.c: New file.
19965
19966         * modules/locale: New file.
19967         * lib/locale_.h: New file.
19968         * m4/locale_h.m4: New file.
19969
19970 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
19971             Bruno Haible  <bruno@clisp.org>
19972
19973         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
19974         be determined, test for availability of the copysignf, copysign,
19975         copysignl functions.
19976         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
19977         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
19978         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
19979
19980 2007-04-09  Eric Blake  <ebb9@byu.net>
19981
19982         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
19983         * modules/stdio (Makefile.am): Support fflush.
19984         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
19985         * modules/fflush: New file.
19986         * lib/fflush.c: Likewise.
19987         * m4/fflush.m4: Likewise.
19988         * modules/fflush-tests: New test.
19989         * tests/test-fflush.c: Likewise.
19990         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
19991
19992 2007-04-06  Bruno Haible  <bruno@clisp.org>
19993
19994         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
19995         (VASNPRINTF): Use signbit for faster determination whether to print a
19996         minus sign.
19997         * modules/vasnprintf (Files): Remove lib/float+.h.
19998         * modules/fprintf-posix (Depends-on): Add signbit.
19999         * modules/snprintf-posix (Depends-on): Likewise.
20000         * modules/sprintf-posix (Depends-on): Likewise.
20001         * modules/vasnprintf-posix (Depends-on): Likewise.
20002         * modules/vasprintf-posix (Depends-on): Likewise.
20003         * modules/vfprintf-posix (Depends-on): Likewise.
20004         * modules/vsnprintf-posix (Depends-on): Likewise.
20005         * modules/vsprintf-posix (Depends-on): Likewise.
20006
20007 2007-04-06  Bruno Haible  <bruno@clisp.org>
20008
20009         * tests/test-frexp.c (main): Test also the sign bit of zero results.
20010         * tests/test-frexpl.c (main): Likewise.
20011         * tests/test-ldexpl.c (main): Likewise.
20012         * modules/frexp-tests (Depends-on): Add signbit.
20013         * modules/frexpl-tests (Depdends-on): Likewise.
20014         * modules/ldexpl-tests (Depdends-on): Likewise.
20015
20016 2007-04-06  Bruno Haible  <bruno@clisp.org>
20017
20018         * modules/signbit-tests: New file.
20019         * tests/test-signbit.c: New file.
20020
20021         * modules/signbit: New file.
20022         * lib/signbitf.c: New file.
20023         * lib/signbitd.c: New file.
20024         * lib/signbitl.c: New file.
20025         * m4/signbit.m4: New file.
20026         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
20027         (signbit): New macro.
20028         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
20029         REPLACE_SIGNBIT.
20030         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
20031         REPLACE_FREXPL into math.h.
20032
20033 2007-04-06  Bruno Haible  <bruno@clisp.org>
20034
20035         * modules/isnanf-nolibm-tests: New file.
20036         * tests/test-isnanf.c: New file.
20037
20038         * modules/isnanf-nolibm: New file.
20039         * lib/isnanf.h: New file.
20040         * lib/isnanf.c: New file.
20041         * lib/isnan.c: Consider the USE_FLOAT macro.
20042         * m4/isnanf.m4: New file.
20043
20044 2007-04-06  Bruno Haible  <bruno@clisp.org>
20045
20046         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
20047         (Link): New section.
20048
20049         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
20050
20051 2007-04-06  Bruno Haible  <bruno@clisp.org>
20052
20053         Assume the 'long double' type.
20054         * m4/longdouble.m4: Remove file.
20055         * config/srclist.txt: Don't mention longdouble.m4.
20056         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
20057         * lib/float+.h: Likewise.
20058         * lib/frexp.c: Likewise.
20059         * lib/printf-args.h: Likewise.
20060         * lib/printf-args.c: Likewise.
20061         * lib/printf-frexp.c: Likewise.
20062         * lib/printf-parse.c: Likewise.
20063         * lib/vasnprintf.c: Likewise.
20064         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
20065         * m4/intl.m4: Likewise.
20066         * m4/isnanl.m4: Likewise.
20067         * m4/printf.m4: Likewise.
20068         * m4/printf-frexpl.m4: Likewise.
20069         * m4/vasnprintf.m4: Likewise.
20070         * modules/allocsa (Files): Remove m4/longdouble.m4.
20071         * modules/gettext (Files): Likewise.
20072         * modules/relocatable-prog-wrapper (Files): Likewise.
20073         * modules/vasnprintf (Files): Likewise.
20074         * modules/isnanl (Files): Likewise.
20075         (Include): Simplify.
20076         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
20077         (Include): Simplify.
20078         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
20079         (Include): Simplify.
20080         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
20081         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
20082         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
20083         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
20084         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
20085         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
20086         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
20087         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
20088         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
20089         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
20090         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
20091         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
20092         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
20093         * tests/test-isnanl.c: Likewise.
20094         * tests/test-snprintf-posix.h: Likewise.
20095         * tests/test-sprintf-posix.h: Likewise.
20096         * tests/test-vasnprintf-posix.c: Likewise.
20097         * tests/test-vasnprintf-posix2.c: Likewise.
20098         * tests/test-vasprintf-posix.c: Likewise.
20099
20100 2007-04-06  Bruno Haible  <bruno@clisp.org>
20101
20102         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
20103         * lib/math_.h [__DECC]: Include the overridden include file through
20104         #include_next, outside the double-inclusion guard.
20105         * lib/stdio_.h [__DECC]: Likewise.
20106         * lib/stdlib_.h [__DECC]: Likewise.
20107         * lib/string_.h [__DECC]: Likewise.
20108         * lib/time_.h [__DECC]: Likewise.
20109         * lib/wchar_.h [__DECC]: Likewise.
20110         * lib/wctype_.h [__DECC]: Likewise.
20111         * lib/inttypes_.h [__DECC]: Likewise.
20112         Reported by Albert Chin <china@thewrittenword.com> in
20113         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
20114
20115 2007-04-04  Eric Blake  <ebb9@byu.net>
20116
20117         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
20118         1.5.x.
20119
20120 2007-04-04  Bruno Haible  <bruno@clisp.org>
20121
20122         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
20123         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
20124
20125 2007-04-04  Bruno Haible  <bruno@clisp.org>
20126
20127         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
20128         results for "%010a" of Infinity and NaN.
20129         * tests/test-vasprintf-posix.c (test_function): Likewise.
20130         * tests/test-snprintf-posix.h (test_function): Likewise.
20131         * tests/test-sprintf-posix.h (test_function): Likewise.
20132         * tests/test-fprintf-posix.h (test_function): Remove these tests.
20133         * tests/test-printf-posix.h (test_function): Likewise.
20134         * tests/test-fprintf-posix.out: Update.
20135         Needed for FreeBSD 6.1.
20136
20137 2007-04-04  Bruno Haible  <bruno@clisp.org>
20138
20139         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
20140         directly used by the gnulib modules nor by gnulib-tool.
20141
20142 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
20143
20144         * DEPENDENCIES: Give overall description of version dependency
20145         desirability.  Use more-typical names for apps.
20146         Add shell, coreutils, diffutils, grep, tar, gzip.
20147
20148 2007-04-04  Simon Josefsson  <simon@josefsson.org>
20149
20150         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
20151
20152 2007-04-04  Karl Berry  <karl@gnu.org>
20153
20154         * MODULES.html.sh (func_module): missing '.
20155
20156 2007-04-03  Bruno Haible  <bruno@clisp.org>
20157
20158         * modules/argmatch-tests (Makefile.am): New variable
20159         test_argmatch_LDADD.
20160         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
20161         * modules/array-list-tests (Makefile.am): New variable
20162         test_array_list_LDADD.
20163         * modules/array-oset-tests (Makefile.am): New variable
20164         test_array_oset_LDADD.
20165         * modules/avltree-list-tests (Makefile.am): New variable
20166         test_avltree_list_LDADD.
20167         * modules/avltree-oset-tests (Makefile.am): New variable
20168         test_avltree_oset_LDADD.
20169         * modules/avltreehash-list-tests (Makefile.am): New variable
20170         test_avltreehash_list_LDADD.
20171         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
20172         test_canonicalize_lgpl_LDADD.
20173         * modules/carray-list-tests (Makefile.am): New variable
20174         test_carray_list_LDADD.
20175         * modules/dirname-tests (Makefile.am): New variable
20176         test_dirname_LDADD.
20177         * modules/linked-list-tests (Makefile.am): New variable
20178         test_linked_list_LDADD.
20179         * modules/linkedhash-list-tests (Makefile.am): New variable
20180         test_linkedhash_list_LDADD.
20181         * modules/rbtree-list-tests (Makefile.am): New variable
20182         test_rbtree_list_LDADD.
20183         * modules/rbtree-oset-tests (Makefile.am): New variable
20184         test_rbtree_oset_LDADD.
20185         * modules/rbtreehash-list-tests (Makefile.am): New variable
20186         test_rbtreehash_list_LDADD.
20187         * modules/xvasprintf-tests (Makefile.am): New variable
20188         test_xvasprintf_LDADD.
20189         Reported by Eric Blake.
20190
20191 2007-04-03  Eric Blake  <ebb9@byu.net>
20192
20193         * DEPENDENCIES: Weaken m4 requirements.
20194
20195 2007-04-03  Bruno Haible  <bruno@clisp.org>
20196
20197         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
20198         * modules/isnanl-tests (configure.ac): Likewise.
20199
20200 2007-04-03  Ben Pfaff  <blp@gnu.org>
20201
20202         * modules/iconv_open: Add $(srcdir)/ to source directory
20203         references in Makefile fragments that call gperf, to fix VPATH
20204         builds.
20205
20206 2007-04-03  Bruno Haible  <bruno@clisp.org>
20207
20208         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
20209         * lib/ldexpl.c: Undo last change.
20210
20211 2007-04-03  Bruno Haible  <bruno@clisp.org>
20212
20213         * modules/printf-frexpl (Depends-on): Undo last change.
20214         (Files): Add m4/ldexpl.m4.
20215
20216 2007-04-03  Bruno Haible  <bruno@clisp.org>
20217
20218         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
20219         * modules/isnanl (Link): New section.
20220
20221         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
20222         * modules/frexp (Link): New section.
20223
20224         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
20225         * modules/frexpl (Link): New section.
20226
20227         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
20228         * modules/ldexpl (Link): New section.
20229
20230 2007-04-03  Bruno Haible  <bruno@clisp.org>
20231
20232         * modules/TEMPLATE-EXTENDED: New file.
20233         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
20234
20235 2007-04-03  Bruno Haible  <bruno@clisp.org>
20236
20237         * DEPENDENCIES: New file.
20238         Suggested by Simon Josefsson.
20239
20240 2007-04-03  Bruno Haible  <bruno@clisp.org>
20241
20242         * doc/gnulib.texi: Escape @.
20243
20244 2007-04-03  James Youngman  <jay@gnu.org>
20245         and Paul Eggert  <eggert@cs.ucla.edu>
20246
20247         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
20248         birthtime on all systems that have birthtime, not just those which
20249         use st_birthtimensec rather than st_birthtim.  Putting zero in
20250         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
20251         that the birth time is not available for files on an NFS mount.
20252
20253 2007-04-03  Simon Josefsson  <simon@josefsson.org>
20254
20255         * modules/memxor: Move back from crypto/, suggested by Bruno.
20256         * modules/crypto/hmac-sha1: Fix memxor dependency.
20257
20258         * modules/crypto/gc: Moved from ../.
20259
20260 2007-04-02  Eric Blake  <ebb9@byu.net>
20261
20262         * lib/ldexpl.c (includes): Avoid libm.
20263
20264         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
20265
20266 2007-04-02  Bruno Haible  <bruno@clisp.org>
20267
20268         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
20269         on IRIX.
20270
20271 2007-04-02  Bruno Haible  <bruno@clisp.org>
20272
20273         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
20274         x86 or x86_64 platforms running MacOS X.
20275         Reported by Ryan Schmidt <@ryandesign.com>.
20276
20277 2007-04-02  Bruno Haible  <bruno@clisp.org>
20278
20279         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
20280         i386.
20281
20282 2007-04-01  Simon Josefsson  <simon@josefsson.org>
20283
20284         * modules/crypto/arcfour: Moved from ../.
20285         * modules/crypto/arcfour-tests: Moved from ../.
20286         * modules/crypto/arctwo: Moved from ../.
20287         * modules/crypto/arctwo-tests: Moved from ../.
20288         * modules/crypto/des: Moved from ../.
20289         * modules/crypto/des-tests: Moved from ../.
20290         * modules/crypto/gc-arcfour: Moved from ../.
20291         * modules/crypto/gc-arcfour-tests: Moved from ../.
20292         * modules/crypto/gc-arctwo: Moved from ../.
20293         * modules/crypto/gc-arctwo-tests: Moved from ../.
20294         * modules/crypto/gc-des: Moved from ../.
20295         * modules/crypto/gc-des-tests: Moved from ../.
20296         * modules/crypto/gc-hmac-md5: Moved from ../.
20297         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
20298         * modules/crypto/gc-hmac-sha1: Moved from ../.
20299         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
20300         * modules/crypto/gc-md2: Moved from ../.
20301         * modules/crypto/gc-md2-tests: Moved from ../.
20302         * modules/crypto/gc-md4: Moved from ../.
20303         * modules/crypto/gc-md4-tests: Moved from ../.
20304         * modules/crypto/gc-md5: Moved from ../.
20305         * modules/crypto/gc-md5-tests: Moved from ../.
20306         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
20307         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
20308         * modules/crypto/gc-random: Moved from ../.
20309         * modules/crypto/gc-rijndael: Moved from ../.
20310         * modules/crypto/gc-rijndael-tests: Moved from ../.
20311         * modules/crypto/gc-sha1: Moved from ../.
20312         * modules/crypto/gc-sha1-tests: Moved from ../.
20313         * modules/crypto/gc-tests: Moved from ../.
20314         * modules/crypto/hmac-md5: Moved from ../.
20315         * modules/crypto/hmac-md5-tests: Moved from ../.
20316         * modules/crypto/hmac-sha1: Moved from ../.
20317         * modules/crypto/hmac-sha1-tests: Moved from ../.
20318         * modules/crypto/md2: Moved from ../.
20319         * modules/crypto/md2-tests: Moved from ../.
20320         * modules/crypto/md4: Moved from ../.
20321         * modules/crypto/md4-tests: Moved from ../.
20322         * modules/crypto/md5: Moved from ../.
20323         * modules/crypto/md5-tests: Moved from ../.
20324         * modules/crypto/memxor: Moved from ../.
20325         * modules/crypto/rijndael: Moved from ../.
20326         * modules/crypto/rijndael-tests: Moved from ../.
20327         * modules/crypto/sha1: Moved from ../.
20328
20329 2007-03-30  James Youngman  <jay@gnu.org>
20330
20331         * tests/test-stat-time.c (prepare_test): use chmod() rather than
20332         rename() to change the ctime of a file (because ctime is unaffected
20333         by rename on jfs2 on AIX 5.1).
20334         (main): Start by doing cleanup, in case a previous run failed leaving
20335         test files behind.
20336
20337 2007-03-31  Bruno Haible  <bruno@clisp.org>
20338
20339         Support old proprietary implementations of iconv.
20340         * modules/iconv_open: New file.
20341         * lib/iconv_.h: New file.
20342         * m4/iconv_h.m4: New file.
20343         * lib/iconv_open.c: New file.
20344         * lib/iconv_open-aix.gperf: New file.
20345         * lib/iconv_open-hpux.gperf: New file.
20346         * lib/iconv_open-irix.gperf: New file.
20347         * lib/iconv_open-osf.gperf: New file.
20348         * m4/iconv_open.m4: New file.
20349         * modules/linebreak (Depends-on): Add iconv_open.
20350         * modules/striconv (Depends-on): Likewise.
20351         * modules/striconveh (Depends-on): Likewise.
20352         * modules/unicodeio (Depends-on): Likewise.
20353         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
20354         (iconv_t)(-1).
20355         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
20356         conversion if cd is (iconv_t)(-1).
20357         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
20358         is not possible.
20359
20360 2007-03-31  Bruno Haible  <bruno@clisp.org>
20361
20362         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
20363         work on Solaris either. Protect also second use of "autodetect_jp".
20364
20365 2007-03-31  Bruno Haible  <bruno@clisp.org>
20366
20367         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
20368         the function is not present.
20369
20370 2007-03-31  Bruno Haible  <bruno@clisp.org>
20371
20372         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
20373         the function is not present.
20374
20375 2007-03-31  Bruno Haible  <bruno@clisp.org>
20376
20377         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
20378         a bug in HP-UX iconv_open().
20379
20380 2007-03-31  Bruno Haible  <bruno@clisp.org>
20381
20382         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
20383         (Mathematics <math.h>): New section, add fpieee.
20384         (Input/output <stdio.h>): Add fseterr.
20385         (Mathematics <math.h>): New section, add printf-frexp.
20386         (Container data structures): Add sublist.
20387         (Core language properties): Add fpucw, inline.
20388         (Functions for greatest-width integer types <inttypes.h>): Add
20389         imaxabs, imaxdiv, inttypes.
20390         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
20391         isnanl-nolibm, ldexp.
20392         (Mathematics <math.h>): New section, add printf-frexpl.
20393         (Support for systems lacking POSIX:2001): Add fprintf-posix,
20394         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
20395         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
20396         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
20397         (Unicode string functions): Add unistr/u*-mbtoucr.
20398         (Java): Add javacomp-script, javaexec-script.
20399         (C#): Add csharpcomp-script, csharpexec-script.
20400         (Support for building libraries and executables): Add havelib,
20401         relocatable-*.
20402         (Support for maintaining and releasing projects): Renamed from
20403         'Support for maintaining and release projects'. Add announce-gen.
20404
20405 2007-03-31  Bruno Haible  <bruno@clisp.org>
20406
20407         * README: Talk primarily about git.
20408         (git and CVS): Renamed from CVS.
20409         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
20410         gnulib is available through git.
20411         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
20412
20413 2007-03-30  Bruno Haible  <bruno@clisp.org>
20414
20415         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
20416         * lib/poll_.h: Likewise.
20417         * lib/stat_.h: Likewise.
20418         * lib/sys_time_.h: Likewise.
20419         * lib/sysexit_.h: Likewise.
20420         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
20421         * lib/stdbool_.h: Likewise.
20422         * lib/byteswap_.h: Add double-inclusion guard.
20423
20424 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
20425
20426         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
20427
20428 2007-03-30  Karl Berry  <karl@gnu.org>
20429
20430         * config/srclist-update: double space after USA in the license
20431         substitution, since that's how it's usually (?) written.
20432
20433 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
20434
20435         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
20436         reported by Bruno Haible.
20437
20438 2007-03-29  Bruno Haible  <bruno@clisp.org>
20439
20440         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
20441         a bug in AIX iconv().
20442
20443 2007-03-29  Bruno Haible  <bruno@clisp.org>
20444
20445         * modules/ldexpl-tests: New file.
20446         * tests/test-ldexpl.c: New file.
20447
20448 2007-03-29  Bruno Haible  <bruno@clisp.org>
20449
20450         * lib/ldexpl.c: Include fpucw.h.
20451         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
20452         multiplication.
20453         * modules/ldexpl (Depends-on): Add fpucw.
20454
20455 2007-03-29  Bruno Haible  <bruno@clisp.org>
20456
20457         * modules/ldexpl: New file.
20458         * m4/ldexpl.m4: New file.
20459         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
20460         set.
20461         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
20462         REPLACE_LDEXPL.
20463         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
20464         REPLACE_LDEXPL.
20465         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
20466         gl_FUNC_LDEXPL_WORKS.
20467         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
20468         * modules/mathl (Files): Remove lib/ldexpl.c.
20469         (Depends-on): Add ldexpl.
20470
20471 2007-03-29  Bruno Haible  <bruno@clisp.org>
20472
20473         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
20474
20475 2007-03-29  Bruno Haible  <bruno@clisp.org>
20476
20477         * tests/test-striconveh.c (main): Don't assume that a direct conversion
20478         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
20479         and possibly also HP-UX.
20480         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
20481         work on AIX, IRIX, HP-UX, OSF/1.
20482         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
20483         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
20484         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
20485         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
20486         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
20487         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
20488
20489 2007-03-29  Bruno Haible  <bruno@clisp.org>
20490
20491         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
20492
20493 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
20494
20495         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
20496         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
20497
20498 2007-03-29  Eric Blake  <ebb9@byu.net>
20499
20500         * lib/acl-internal.h: Remove redundant include.
20501         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
20502         Cygwin when a file is locked.
20503
20504 2007-03-29  Bruno Haible  <bruno@clisp.org>
20505
20506         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
20507         file.
20508         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
20509
20510 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
20511
20512         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
20513         try to remove a parent directory if the child couldn't be removed
20514         (except for the first rmdir, which could fail because the child
20515         doesn't exist).  Problem reported by Jeff Blaine in
20516         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
20517
20518 2007-03-28  Bruno Haible  <bruno@clisp.org>
20519
20520         * lib/striconveh.c (utf8conv_carefully): New function.
20521         (mem_cd_iconveh_internal): Invoke it.
20522
20523 2007-03-28  Bruno Haible  <bruno@clisp.org>
20524
20525         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
20526         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
20527         input.
20528         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
20529         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
20530         unistr/u8-uctomb.
20531
20532 2007-03-28  Bruno Haible  <bruno@clisp.org>
20533
20534         * modules/unistr/u8-mbtoucr: New file.
20535         * lib/unistr/u8-mbtoucr.c: New file.
20536         * modules/unistr/u16-mbtoucr: New file.
20537         * lib/unistr/u16-mbtoucr.c: New file.
20538         * modules/unistr/u16-mbtoucr: New file.
20539         * lib/unistr/u16-mbtoucr.c: New file.
20540         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
20541
20542 2007-03-27  Simon Josefsson  <simon@josefsson.org>
20543             Bruno Haible  <bruno@clisp.org>
20544
20545         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
20546         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
20547         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
20548
20549         * m4/stdio_h.m4: Add stubs for vasprintf too.
20550
20551         * modules/stdio: Support vasprintf in sed command.
20552
20553         * modules/vasprintf: Depend on stdio for prototypes.  Remove
20554         vasprintf.h.  Add stdio module indicator.
20555
20556         * lib/stdio_.h: Declare asprintf and vasprintf, based on
20557         vasprintf.h.
20558
20559         * lib/vasprintf.h: File removed.
20560
20561         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
20562         * lib/vasprintf.c: Ditto.
20563         * lib/xvasprintf.c: Ditto.
20564         * tests/test-vasprintf-posix.c: Ditto.
20565         * tests/test-vasprintf.c: Ditto.
20566
20567 2007-03-27  Bruno Haible  <bruno@clisp.org>
20568
20569         Make vasnprintf multithread-safe.
20570         * lib/vasnprintf.c (decimal_point_char): New function.
20571         (VASNPRINTF): Use it.
20572         Suggested by Simon Josefsson.
20573
20574 2007-03-27  Eric Blake  <ebb9@byu.net>
20575
20576         Support sub-second birthtime on cygwin.
20577         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
20578         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
20579         (get_stat_birthtime): Also work with st_birthtim.
20580
20581 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
20582
20583         * lib/stat-time.h (USE_BIRTHTIME): Remove.
20584         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
20585         (get_stat_birthtime_ns): Do not try to use "spare" fields.
20586         (get_stat_birthtime_ns): Simplify compile-time tests.
20587         (get_stat_birthtime): Change the API to look like
20588         get_stat_mtime etc., except return a negative tv_nsec on error.
20589         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
20590         Don't check for "spare" fields.
20591         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
20592         or for struct stat.st_birthtime, as these tests aren't used.
20593         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
20594
20595 2007-03-27  Bruno Haible  <bruno@clisp.org>
20596
20597         * lib/stat-time.h: Include <sys/stat.h>.
20598
20599 2007-03-27  James Youngman  <jay@gnu.org>
20600
20601         * lib/stat-time.h (get_stat_birthtime): New function for
20602           retrieving st_birthtime as provided by UFS2 (hence *BSD).
20603         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
20604           and its variants.
20605         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
20606         * modules/stat-time-test: New file.
20607         * tests/test-stat-time.c: New test, devised by Bruno Haible.
20608
20609 2007-03-26  Bruno Haible  <bruno@clisp.org>
20610
20611         Better support of signalling NaNs.
20612         * lib/atanl.c: Include isnanl.h.
20613         (atanl): Perform test for NaN at the beginning of the function and
20614         through a call to isnanl.
20615         * lib/cosl.c: Include isnanl.h.
20616         (cosl): Perform test for NaN at the beginning of the function and
20617         through a call to isnanl.
20618         * lib/ldexpl.c: Include isnanl.h.
20619         (ldexpl): Perform test for NaN through a call to isnanl.
20620         * lib/logl.c: Include isnanl.h.
20621         (logl): Perform test for NaN at the beginning of the function and
20622         through a call to isnanl.
20623         * lib/sinl.c: Include isnanl.h.
20624         (sinl): Perform test for NaN at the beginning of the function and
20625         through a call to isnanl.
20626         * lib/sqrtl.c: Include isnanl.h.
20627         (sqrtl): Perform test for NaN at the beginning of the function and
20628         through a call to isnanl.
20629         * lib/tanl.c: Include isnanl.h.
20630         (tanl): Perform test for NaN at the beginning of the function and
20631         through a call to isnanl.
20632         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
20633         * modules/mathl (Depends-on): Add isnanl.
20634
20635 2007-03-26  Eric Blake  <ebb9@byu.net>
20636
20637         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
20638         regression in logic sense of previous patch.
20639
20640 2007-03-26  Bruno Haible  <bruno@clisp.org>
20641
20642         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
20643         unportable shell command "if ! ...".
20644         Reported by Ralf Wildenhues.
20645
20646 2007-03-25  Bruno Haible  <bruno@clisp.org>
20647
20648         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
20649         <sysexits.h> file, and only add EX_CONFIG.
20650         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
20651         absolute file name and whether it is sufficient. Substitute also
20652         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
20653         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
20654         ABSOLUTE_SYSEXITS_H into sysexits.h.
20655
20656 2007-03-25  Bruno Haible  <bruno@clisp.org>
20657
20658         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
20659         hints is NULL.
20660
20661 2007-03-25  Bruno Haible  <bruno@clisp.org>
20662
20663         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
20664         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
20665
20666 2007-03-25  Bruno Haible  <bruno@clisp.org>
20667
20668         * lib/vasnprintf.c: Include langinfo.h.
20669         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
20670         multithread-safe.
20671         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
20672         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
20673         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
20674         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
20675         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
20676         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
20677         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
20678         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
20679         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
20680         Reported by Simon Josefsson.
20681
20682 2007-03-25  Bruno Haible  <bruno@clisp.org>
20683
20684         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
20685         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
20686         * modules/vasnprintf (Depends-on): Add stdint.
20687
20688 2007-03-25  Bruno Haible  <bruno@clisp.org>
20689
20690         * modules/fpieee: New file.
20691         * m4/fpieee.m4: New file.
20692         * modules/isnan-nolibm (Depends-on): Add fpieee.
20693         * modules/isnanl-nolibm (Depends-on): Add fpieee.
20694         * modules/isnanl (Depends-on): Add fpieee.
20695
20696 2007-03-25  Bruno Haible  <bruno@clisp.org>
20697
20698         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
20699
20700 2007-03-25  Bruno Haible  <bruno@clisp.org>
20701
20702         Avoid test failures on IRIX 6.5.
20703         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
20704         (main): Use it.
20705         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
20706         macros.
20707         (main): Use them.
20708
20709 2007-03-25  Bruno Haible  <bruno@clisp.org>
20710
20711         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
20712         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
20713         exists but doesn't work.
20714         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
20715         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
20716         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
20717         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
20718
20719 2007-03-25  Bruno Haible  <bruno@clisp.org>
20720
20721         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
20722         returns inf. Needed on IRIX 6.5.
20723
20724 2007-03-25  Bruno Haible  <bruno@clisp.org>
20725
20726         * tests/test-frexpl.c: Include isnanl-nolibm.h.
20727         (main): Use isnanl instead of x != x idiom.
20728         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
20729
20730         * tests/test-frexp.c: Include isnan.h.
20731         (main): Use isnan instead of x != x idiom.
20732         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
20733
20734 2007-03-25  Bruno Haible  <bruno@clisp.org>
20735
20736         * tests/test-frexp.c (NaN): New function/macro.
20737         (main): Use it instead of 0.0 / 0.0.
20738         * tests/test-isnan.c (NaN): New function/macro.
20739         (main): Use it instead of 0.0 / 0.0.
20740         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
20741         (test_function): Use it instead of 0.0 / 0.0.
20742         * tests/test-vasprintf-posix.c (NaN): New function/macro.
20743         (test_function): Use it instead of 0.0 / 0.0.
20744         * tests/test-snprintf-posix.h (NaN): New function/macro.
20745         (test_function): Use it instead of 0.0 / 0.0.
20746         * tests/test-sprintf-posix.h (NaN): New function/macro.
20747         (test_function): Use it instead of 0.0 / 0.0.
20748         * tests/test-fprintf-posix.h (NaN): New function/macro.
20749         (test_function): Use it instead of 0.0 / 0.0.
20750         * tests/test-printf-posix.h (NaN): New function/macro.
20751         (test_function): Use it instead of 0.0 / 0.0.
20752
20753         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
20754
20755 2007-03-25  Bruno Haible  <bruno@clisp.org>
20756
20757         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
20758
20759 2007-03-25  Bruno Haible  <bruno@clisp.org>
20760
20761         * lib/regexec.c (merge_state_with_log): Make static.
20762
20763 2007-03-25  Bruno Haible  <bruno@clisp.org>
20764
20765         * lib/trigl.c (kernel_rem_pio2): Make static.
20766
20767 2007-03-25  Bruno Haible  <bruno@clisp.org>
20768
20769         * lib/sincosl.c (sincosl_table): Make static.
20770
20771 2007-03-25  Bruno Haible  <bruno@clisp.org>
20772
20773         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
20774         if the compiler does not support C99.
20775
20776 2007-03-25  Bruno Haible  <bruno@clisp.org>
20777
20778         * modules/time (Makefile.am): Ensure all rule action lines start with a
20779         tab.
20780
20781 2007-03-24  Bruno Haible  <bruno@clisp.org>
20782
20783         * modules/tsearch-tests: New file.
20784         * tests/test-tsearch.sh: New file.
20785         * tests/test-tsearch.c: New file, mostly copied from glibc.
20786
20787         * modules/search-tests: New file.
20788         * tests/test-search.c: New file.
20789
20790         * modules/search: New file.
20791         * lib/search_.h: New file, incorporating lib/tsearch.h.
20792         * m4/search_h.m4: New file.
20793         * lib/tsearch.h: Remove file.
20794         * lib/tsearch.c: Include search.h instead of tsearch.h.
20795         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
20796         HAVE_TSEARCH.
20797         * modules/tsearch (Files): Remove lib/tsearch.h.
20798         (Depends-on): Add search.
20799         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
20800         (Include): Change tsearch.h into search.h.
20801
20802 2007-03-24  Bruno Haible  <bruno@clisp.org>
20803
20804         * modules/fpucw: New file.
20805         * lib/fpucw.h: New file.
20806         * lib/frexp.c: Include fpucw.h.
20807         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
20808         (FUNC): Use them.
20809         * lib/printf-frexp.c: Include fpucw.h.
20810         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
20811         (FUNC): Use them.
20812         * lib/vasnprintf.c: Include fpucw.h.
20813         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
20814         'long double' calculations.
20815         * tests/test-frexpl.c: Include fpucw.h.
20816         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
20817         * tests/test-printf-frexpl.c: Include fpucw.h.
20818         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
20819         * modules/frexpl (Depends-on): Add fpucw.
20820         * modules/printf-frexpl (Depends-on): Likewise.
20821         * modules/fprintf-posix (Depends-on): Likewise.
20822         * modules/snprintf-posix (Depends-on): Likewise.
20823         * modules/sprintf-posix (Depends-on): Likewise.
20824         * modules/vasnprintf-posix (Depends-on): Likewise.
20825         * modules/vasprintf-posix (Depends-on): Likewise.
20826         * modules/vfprintf-posix (Depends-on): Likewise.
20827         * modules/vsnprintf-posix (Depends-on): Likewise.
20828         * modules/vsprintf-posix (Depends-on): Likewise.
20829         * modules/frexpl-tests (Depends-on): Likewise.
20830         * modules/printf-frexpl-tests (Depends-on): Likewise.
20831
20832 2007-03-24  Bruno Haible  <bruno@clisp.org>
20833
20834         * lib/float+.h: New file.
20835         * lib/isnan.c: Include float+.h.
20836         (SIZE): New macro.
20837         (FUNC): Compare only SIZE bytes of the value.
20838         * lib/vasnprintf.c: Include float+.h.
20839         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
20840         SIZEOF_LDBL or SIZEOF_DBL bytes.
20841         * modules/isnan-nolibm (Files): Add lib/float+.h.
20842         * modules/isnanl-nolibm (Files): Add lib/float+.h.
20843         * modules/isnanl (Files): Add lib/float+.h.
20844         * modules/vasnprintf (Files): Add lib/float+.h.
20845
20846 2007-03-24  Bruno Haible  <bruno@clisp.org>
20847
20848         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
20849         include isnanl-nolibm.h.
20850
20851 2007-03-24  Bruno Haible  <bruno@clisp.org>
20852
20853         * tests/test-read-file.c (main): Don't produce spurious output for
20854         expected situations. Make the test fail if it encountered unexpected
20855         results.
20856
20857 2007-03-24  Bruno Haible  <bruno@clisp.org>
20858
20859         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
20860         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
20861
20862 2007-03-24  Bruno Haible  <bruno@clisp.org>
20863
20864         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
20865
20866 2007-03-24  Bruno Haible  <bruno@clisp.org>
20867
20868         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
20869         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
20870
20871         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
20872         * modules/utf8-ucs4: Turn into a symbolic link to module
20873         unistr/u8-mbtouc.
20874
20875         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
20876         utf8-ucs4-unsafe.
20877         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
20878         unistr/u8-mbtouc-unsafe.
20879
20880         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
20881         * modules/utf16-ucs4: Turn into a symbolic link to module
20882         unistr/u16-mbtouc.
20883
20884         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
20885         utf16-ucs4-unsafe.
20886         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
20887         unistr/u16-mbtouc-unsafe.
20888
20889         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
20890         * modules/ucs4-utf8: Turn into a symbolic link to module
20891         unistr/u8-ubtomb.
20892
20893         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
20894         * modules/ucs4-utf16: Turn into a symbolic link to module
20895         unistr/u16-ubtomb.
20896
20897 2007-03-24  Bruno Haible  <bruno@clisp.org>
20898
20899         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
20900         Enable the function only if HAVE_INLINE.
20901         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
20902         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
20903         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
20904         Enable the function only if HAVE_INLINE.
20905         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
20906         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
20907         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
20908         Enable the function only if HAVE_INLINE.
20909         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
20910         Enable the function only if HAVE_INLINE.
20911         * modules/utf8-ucs4: Update.
20912         * modules/utf8-ucs4-unsafe: Update.
20913         * modules/utf16-ucs4: Update.
20914         * modules/utf16-ucs4-unsafe: Update.
20915         * modules/ucs4-utf8: Update.
20916         * modules/ucs4-utf16: Update.
20917
20918 2007-03-24  Bruno Haible  <bruno@clisp.org>
20919
20920         * lib/utf8-ucs4.h: Remove file.
20921         * lib/utf8-ucs4-unsafe.h: Remove file.
20922         * lib/utf16-ucs4.h: Remove file.
20923         * lib/utf16-ucs4-unsafe.h: Remove file.
20924         * lib/ucs4-utf8.h: Remove file.
20925         * lib/ucs4-utf16.h: Remove file.
20926         * lib/unistr.h: Include their previous contents.
20927         * m4/utf-ucs4.m4: Remove file.
20928         * m4/ucs4-utf.m4: Remove file.
20929         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
20930         (Depends-on): Add unistr/base.
20931         (configure.ac): Remove gl_UTF_UCS4.
20932         (Makefile.am): Update.
20933         (Include): Change to unistr.h.
20934         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
20935         (Depends-on): Add unistr/base.
20936         (configure.ac): Remove gl_UTF_UCS4.
20937         (Makefile.am): Update.
20938         (Include): Change to unistr.h.
20939         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
20940         (Depends-on): Add unistr/base.
20941         (configure.ac): Remove gl_UTF_UCS4.
20942         (Makefile.am): Update.
20943         (Include): Change to unistr.h.
20944         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
20945         (Depends-on): Add unistr/base.
20946         (configure.ac): Remove gl_UTF_UCS4.
20947         (Makefile.am): Update.
20948         (Include): Change to unistr.h.
20949         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
20950         (Depends-on): Add unistr/base.
20951         (configure.ac): Remove gl_UCS4_UTF.
20952         (Makefile.am): Update.
20953         (Include): Change to unistr.h.
20954         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
20955         (Depends-on): Add unistr/base.
20956         (configure.ac): Remove gl_UCS4_UTF.
20957         (Makefile.am): Update.
20958         (Include): Change to unistr.h.
20959         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
20960         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
20961         utf8-ucs4-unsafe.h.
20962         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
20963         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
20964         utf16-ucs4-unsafe.h.
20965         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
20966         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
20967         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
20968         * lib/unistr/u8-strchr.c: Likewise.
20969         * lib/unistr/u8-strrchr.c: Likewise.
20970         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
20971         * lib/unistr/u16-strchr.c: Likewise.
20972         * lib/unistr/u16-strrchr.c: Likewise.
20973         * lib/striconveh.c: Update.
20974         * lib/linebreak.c: Update.
20975
20976 2007-03-24  Bruno Haible  <bruno@clisp.org>
20977
20978         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
20979         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
20980
20981 2007-03-22  Bruno Haible  <bruno@clisp.org>
20982
20983         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
20984
20985 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
20986
20987         * MODULES.html.sh (File system functions): New module write-any-file.
20988         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
20989         * m4/write-any-file.m4: New files.
20990
20991 2007-03-23  Eric Blake  <ebb9@byu.net>
20992
20993         * gnulib-tool: Rearrange space-tab sequences, since some editors
20994         like to eat them.
20995
20996 2007-03-23  Eric Blake  <ebb9@byu.net>
20997
20998         * lib/version-etc.c (version_etc_va): Update license wording to
20999         be more concise.  Recommended by Richard Stallman.
21000
21001 2007-03-22  Bruno Haible  <bruno@clisp.org>
21002
21003         * lib/poll.c (MSG_PEEK): New fallback definition.
21004
21005 2007-03-22  Bruno Haible  <bruno@clisp.org>
21006
21007         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
21008         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
21009         (main): Update.
21010         Fixes a compilation error on BeOS.
21011
21012 2007-03-22  Bruno Haible  <bruno@clisp.org>
21013
21014         * modules/frexpl-tests: New file.
21015         * tests/test-frexpl.c: New file.
21016
21017         * modules/frexpl: New file.
21018         * m4/frexpl.m4: New file.
21019         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
21020         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
21021         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
21022         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
21023         (Depends-on): Add frexpl. Remove isnanl-nolibm.
21024         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
21025
21026 2007-03-22  Bruno Haible  <bruno@clisp.org>
21027
21028         * lib/frexpl.c: Share code with lib/frexp.c.
21029         * modules/mathl (Files): Add lib/frexp.c.
21030         (Depends-on): Add isnanl-nolibm.
21031
21032 2007-03-22  Bruno Haible  <bruno@clisp.org>
21033
21034         * modules/printf-frexp (Files): Add m4/frexp.m4.
21035         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
21036         only if the found frexp function actually works.
21037
21038 2007-03-22  Bruno Haible  <bruno@clisp.org>
21039
21040         * lib/frexp.c: Remove older implementation that uses divisions.
21041
21042 2007-03-21  Bruno Haible  <bruno@clisp.org>
21043
21044         * modules/frexp-tests: New file.
21045         * tests/test-frexp.c: New file.
21046
21047         * modules/frexp: New file.
21048         * lib/frexp.c: New file.
21049         * m4/frexp.m4: New file.
21050         * lib/math_.h (frexp): New declaration.
21051         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
21052         REPLACE_FREXP.
21053         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
21054
21055 2007-03-21  Bruno Haible  <bruno@clisp.org>
21056
21057         * modules/isnanl-tests: New file.
21058         * tests/test-isnanl.c: New file.
21059
21060         * modules/isnanl: New file.
21061         * lib/isnanl.h: New file.
21062         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
21063         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
21064         gl_FUNC_ISNANL_WORKS.
21065         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
21066         New macros.
21067
21068 2007-03-21  Bruno Haible  <bruno@clisp.org>
21069
21070         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
21071         lib/isnanl.h.
21072         (Include): Update.
21073         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
21074         * lib/vasnprintf.c: Update.
21075         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
21076         tests/test-isnanl.h, remove tests/test-isnanl.c.
21077         (Makefile.am): Update.
21078         * tests/test-isnanl-nolibm.c: New file.
21079         * tests/test-isnanl.h: New file.
21080         * tests/test-isnanl.c: Remove file.
21081
21082 2007-03-21  Jim Meyering  <jim@meyering.net>
21083
21084         When trying to open ".", treat ESTALE like EACCES.
21085         * lib/savewd.c (savewd_save): Resort to forking not just upon
21086         failure with EACCES, but also when errno is ESTALE.
21087
21088 2007-03-20  Bruno Haible  <bruno@clisp.org>
21089
21090         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
21091         Needed on AIX 5.1. Reported by Matthew Woehlke.
21092
21093 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
21094
21095         Suggestions by Bruno Haible:
21096         * lib/acl-internal.h: Include "gettext.h" rather than rolling
21097         our own.
21098         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
21099         * modules/acl (Depends-on): Add gettext.
21100
21101 2007-03-19  Bruno Haible  <bruno@clisp.org>
21102
21103         * modules/iconvme: Remove file.
21104         * lib/iconvme.h: Remove file.
21105         * lib/iconvme.c: Remove file.
21106         * m4/iconvme.m4: Remove file.
21107
21108 2007-03-19  Bruno Haible  <bruno@clisp.org>
21109
21110         * doc/relocatable-maint.texi: Break long shell script line.
21111         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
21112
21113 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
21114
21115         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
21116         handle file_has_acl.
21117         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
21118         * lib/acl.c: Move header inclusions and related macro defns into
21119         lib/acl-internal.h.
21120         (S_ISLNK): Remove defn, since that's now done for us.
21121         (file_has_acl): Move to lib/file-has-acl.c.
21122         Call acl_trivial if available.  This is the crucial part of the fix.
21123         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
21124         shared within the library.  Rewrite a bit, partly to make it compatible
21125         with the GNU coding style.
21126         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
21127         Remove unnecessary double-quotes.
21128         Don't test for acl_to_text; the build will catch that.
21129         Replace acl_entries if it doesn't exist and it is needed.
21130         Check for -lsec and acl_trivial (as used on Solaris 10).
21131         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
21132         lib/file-has-acl.c.
21133         (Depends-on): Add sys_stat, for S_ISLNK.
21134
21135 2007-03-19  Ben Pfaff  <blp@gnu.org>
21136
21137         * doc/gnulib.texi: Fix typos.
21138         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
21139
21140 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
21141
21142         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
21143         If size is zero here, buf must be zero.
21144
21145 2007-03-19  Simon Josefsson  <simon@josefsson.org>
21146
21147         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
21148         <bruno@clisp.org>.
21149
21150 2007-03-18  Bruno Haible  <bruno@clisp.org>
21151
21152         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
21153         Suggested by Eric Blake.
21154
21155 2007-03-18  Ben Pfaff  <blp@gnu.org>
21156
21157         * doc/relocatable.texi: Recommend using as prefix a directory
21158         that does not exist and will never be created.  Based on
21159         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
21160         and others.
21161
21162 2007-03-17  Bruno Haible  <bruno@clisp.org>
21163
21164         * lib/fchownat.c: Include lchown.h.
21165
21166 2007-03-17  Bruno Haible  <bruno@clisp.org>
21167
21168         Fix endless loop when the given allocated size was > INT_MAX.
21169         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
21170         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
21171         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
21172         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
21173         * lib/sprintf.c (sprintf): Likewise.
21174
21175 2007-03-17  Bruno Haible  <bruno@clisp.org>
21176
21177         * tests/test-argp-2.sh (func_compare): Output a context diff.
21178
21179 2007-03-17  Bruno Haible  <bruno@clisp.org>
21180
21181         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
21182         locale's decimal-point character.
21183
21184 2007-03-17  Bruno Haible  <bruno@clisp.org>
21185
21186         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
21187         before comparing it. Needed because on some platforms (e.g. x86) a
21188         'long double' occupies less bytes than sizeof (long double).
21189
21190 2007-03-17  Bruno Haible  <bruno@clisp.org>
21191
21192         * tests/test-crc.c (main): Make printf statements 64-bit clean.
21193         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
21194         * tests/test-getaddrinfo.c (simple): Likewise.
21195         * tests/test-read-file.c (main): Likewise.
21196
21197 2007-03-17  Bruno Haible  <bruno@clisp.org>
21198
21199         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
21200
21201 2007-03-17  Bruno Haible  <bruno@clisp.org>
21202
21203         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
21204         unused variable.
21205
21206 2007-03-17  Bruno Haible  <bruno@clisp.org>
21207
21208         * tests/test-c-strcasecmp.c: Include c-strcase.h.
21209         * tests/test-c-strncasecmp.c: Likewise.
21210
21211 2007-03-17  Bruno Haible  <bruno@clisp.org>
21212
21213         * modules/stdlib (Depends-on): Add unistd.
21214         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
21215         Needed for MacOS X 10.3.
21216
21217 2007-03-17  Bruno Haible  <bruno@clisp.org>
21218
21219         * lib/unistr/u-strdup.h: Include <stdlib.h>.
21220
21221 2007-03-17  Bruno Haible  <bruno@clisp.org>
21222
21223         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
21224
21225 2007-03-17  Bruno Haible  <bruno@clisp.org>
21226
21227         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
21228         to reflect files copied from gnulib (with or without modifications).
21229         Suggested by Jim Meyering.
21230
21231 2007-03-17  Eric Blake  <ebb9@byu.net>
21232
21233         * NEWS: Document stdlib change from 2007-02-18.
21234
21235 2007-03-17  Jim Meyering  <jim@meyering.net>
21236
21237         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
21238         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
21239         someone uses a name containing shell meta-characters.
21240         Reported by Alfred M. Szmidt.
21241
21242         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
21243
21244 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
21245
21246         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
21247         and copy gettext configuration files only if configure.ac contains
21248         a use of AM_GNU_GETTEXT_VERSION.
21249
21250 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
21251
21252         * build-aux/bootstrap (gnulib_name): New variable.
21253         (gnulib_tool_options): Use it.
21254
21255 2007-03-13  Simon Josefsson  <simon@josefsson.org>
21256
21257         * tests/test-des.c: Use new namespace.
21258
21259 2007-03-15  Bruno Haible  <bruno@clisp.org>
21260
21261         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
21262         Reported by James Youngman <jay@gnu.org>.
21263
21264 2007-03-15  Bruno Haible  <bruno@clisp.org>
21265
21266         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
21267         declared prototype. Needed with cc on OSF/1 5.1.
21268
21269 2007-03-15  Bruno Haible  <bruno@clisp.org>
21270
21271         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
21272         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
21273         (struct gl_list_implementation): Add dispose_fn argument to the
21274         'create_empty', 'create' methods.
21275         (struct gl_list_impl_base): Add field 'dispose_fn'.
21276         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
21277         argument.
21278         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
21279         dispose_fn argument.
21280         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
21281         dispose_fn on the dropped values.
21282         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
21283         dispose_fn argument.
21284         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
21285         dropped values.
21286         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
21287         (gl_tree_remove_node): Call dispose_fn on the dropped value.
21288         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
21289         (gl_tree_remove_node): Call dispose_fn on the dropped value.
21290         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
21291         argument.
21292         (gl_tree_list_free): Call dispose_fn on the dropped values.
21293         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
21294         the dropped values.
21295         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
21296         Add dispose_fn argument.
21297         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
21298         Call dispose_fn on the dropped values.
21299         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
21300         Add dispose_fn argument.
21301         (gl_sublist_create): Initialize the 'dispose_fn' field.
21302         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
21303         * tests/test-array_list.c (main): Update.
21304         * tests/test-carray_list.c (main): Update.
21305         * tests/test-avltree_list.c (main): Update.
21306         * tests/test-rbtree_list.c (main): Update.
21307         * tests/test-avltreehash_list.c (main): Update.
21308         * tests/test-rbtreehash_list.c (main): Update.
21309         * tests/test-linked_list.c (main): Update.
21310         * tests/test-linkedhash_list.c (main): Update.
21311         * tests/test-array_oset.c (main): Update.
21312
21313 2007-03-15  Bruno Haible  <bruno@clisp.org>
21314
21315         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
21316         (gl_oset_create_empty): Add dispose_fn argument.
21317         (struct gl_oset_implementation): Add dispose_fn argument to
21318         'create_empty' method.
21319         (struct gl_oset_impl_base): Add dispose_fn field.
21320         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
21321         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
21322         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
21323         values.
21324         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
21325         (gl_tree_oset_free): Call dispose_fn on the dropped values.
21326         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
21327         dropped value.
21328         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
21329         dropped value.
21330         * tests/test-array_oset.c (main): Update.
21331         * tests/test-avltree_oset.c (main): Update.
21332         * tests/test-rbtree_oset.c (main): Update.
21333         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
21334
21335 2007-03-13  Bruno Haible  <bruno@clisp.org>
21336
21337         * tests/test-stdbool.c (i): Update after last patch.
21338
21339 2007-03-12  Bruno Haible  <bruno@clisp.org>
21340
21341         * lib/quotearg.c: Include <wctype.h> early, before the definition of
21342         the iswprint macro. Needed on Solaris 2.5.1.
21343
21344 2007-03-12  Bruno Haible  <bruno@clisp.org>
21345
21346         * tests/test-printf-frexp.c (main): Declare x as volatile.
21347
21348 2007-03-12  Simon Josefsson  <simon@josefsson.org>
21349
21350         * doc/gnulib.texi (Build robot for gnulib): New section.
21351
21352 2007-03-12  Jim Meyering  <jim@meyering.net>
21353
21354         * build-aux/bootstrap: New file.
21355         * build-aux/bootstrap.conf: New file, from coreutils.
21356
21357 2007-03-11  Bruno Haible  <bruno@clisp.org>
21358
21359         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
21360
21361 2007-03-12  Simon Josefsson  <simon@josefsson.org>
21362
21363         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
21364         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
21365         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
21366
21367 2007-03-11  Bruno Haible  <bruno@clisp.org>
21368
21369         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
21370         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
21371
21372 2007-03-11  Bruno Haible  <bruno@clisp.org>
21373
21374         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
21375         formula. Needed for SunPRO C 5.0.
21376
21377 2007-03-11  Bruno Haible  <bruno@clisp.org>
21378
21379         * modules/long-options (Depends-on): Add getopt.
21380
21381 2007-03-11  Bruno Haible  <bruno@clisp.org>
21382
21383         * modules/modechange (Depends-on): Add stdbool.
21384
21385 2007-03-11  Bruno Haible  <bruno@clisp.org>
21386
21387         * modules/i-ring (Depends-on): Add stdbool.
21388
21389 2007-03-11  Bruno Haible  <bruno@clisp.org>
21390
21391         * modules/gc-des (Depends-on): Add stdbool.
21392
21393 2007-03-11  Bruno Haible  <bruno@clisp.org>
21394
21395         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
21396
21397 2007-03-11  Bruno Haible  <bruno@clisp.org>
21398
21399         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
21400
21401 2007-03-11  Bruno Haible  <bruno@clisp.org>
21402
21403         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
21404
21405 2007-03-11  Bruno Haible  <bruno@clisp.org>
21406
21407         * lib/vasnprintf.c (sprintf): Undefine.
21408
21409 2007-03-11  Bruno Haible  <bruno@clisp.org>
21410
21411         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
21412         initializers in SunPRO C and Compaq C compilers.
21413
21414 2007-03-11  Bruno Haible  <bruno@clisp.org>
21415
21416         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
21417         decrementing code ANSI C compliant.
21418
21419 2007-03-11  Bruno Haible  <bruno@clisp.org>
21420
21421         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
21422         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
21423
21424 2007-03-11  Bruno Haible  <bruno@clisp.org>
21425
21426         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
21427         <stdbool.h> substitute doesn't pass.
21428
21429 2007-03-11  Bruno Haible  <bruno@clisp.org>
21430
21431         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
21432
21433 2007-03-11  Bruno Haible  <bruno@clisp.org>
21434
21435         * gnulib-tool (func_create_megatestdir): Create also an autobuild
21436         script, for submission to autobuild.josefsson.org.
21437
21438 2007-03-10  Bruno Haible  <bruno@clisp.org>
21439
21440         * modules/canonicalize-lgpl-tests: New file.
21441         * tests/test-canonicalize-lgpl.sh: New file.
21442         * tests/test-canonicalize-lgpl.c: New file.
21443
21444         * modules/c-strcase-tests: New file.
21445         * tests/test-c-strcase.sh: New file.
21446         * tests/test-c-strcasecmp.c: New file.
21447         * tests/test-c-strncasecmp.c: New file.
21448
21449         * modules/atexit-tests: New file.
21450         * tests/test-atexit.sh: New file.
21451         * tests/test-atexit.c: New file.
21452
21453 2007-03-10  Bruno Haible  <bruno@clisp.org>
21454
21455         * tests/test-binary-io.sh: Use temporary filenames that are not so
21456         likely to clash with those of other tests (in a parallel make).
21457         * tests/test-binary-io.c: Likewise.
21458
21459 2007-03-10  Bruno Haible  <bruno@clisp.org>
21460
21461         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
21462         fallback; use #error instead.
21463         Suggested by Simon Josefsson.
21464
21465 2007-03-10  Bruno Haible  <bruno@clisp.org>
21466
21467         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
21468         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
21469         first and the last.
21470
21471 2007-03-10  Bruno Haible  <bruno@clisp.org>
21472
21473         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
21474
21475 2007-03-10  Bruno Haible  <bruno@clisp.org>
21476
21477         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
21478         "make distcheck".
21479         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
21480         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
21481         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
21482
21483 2007-03-10  Bruno Haible  <bruno@clisp.org>
21484
21485         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
21486         variable.
21487         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
21488         variable.
21489
21490 2007-03-09  Eric Blake  <ebb9@byu.net>
21491         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
21492
21493         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
21494         types are not being provided by gnulib.
21495         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
21496         types are supported.
21497
21498 2007-03-10  Bruno Haible  <bruno@clisp.org>
21499
21500         * lib/stdio_.h (__attribute__): New macro.
21501         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
21502         vsprintf): Specify __attribute__ __format__ for GCC.
21503         Suggested by Eric Blake.
21504
21505 2007-03-09  Bruno Haible  <bruno@clisp.org>
21506
21507         * modules/printf-posix-tests: New file.
21508         * tests/test-printf-posix.sh: New file.
21509         * tests/test-printf-posix.c: New file.
21510
21511         * modules/printf-posix: New file.
21512         * lib/printf.c: New file.
21513         * m4/printf-posix-rpl.m4: New file.
21514         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
21515         REPLACE_PRINTF.
21516         * lib/stdio_.h (printf): New declaration.
21517         (format, __format__, ____printf____, ____scanf____, ____strftime____,
21518         ____strfmon____): New macros.
21519         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
21520         REPLACE_PRINTF.
21521
21522 2007-03-09  Bruno Haible  <bruno@clisp.org>
21523
21524         * tests/test-vasnprintf-posix2.sh: New file.
21525         * tests/test-vasnprintf-posix2.c: New file.
21526         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
21527         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
21528         (Makefile.am): Activate test-vasnprintf-posix2.sh.
21529
21530         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
21531         a locale dependent decimal point, rather than always '.'.
21532
21533 2007-03-09  Eric Blake  <ebb9@byu.net>
21534
21535         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
21536         spite of platforms like Tandem/NSK that define it to -1.
21537
21538 2007-03-08  Bruno Haible  <bruno@clisp.org>
21539
21540         * modules/vprintf-posix-tests: New file.
21541         * tests/test-vprintf-posix.sh: New file.
21542         * tests/test-vprintf-posix.c: New file.
21543         * tests/test-printf-posix.h: New file.
21544
21545         * modules/vprintf-posix: New file.
21546         * lib/vprintf.c: New file.
21547         * m4/vprintf-posix.m4: New file.
21548         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
21549         REPLACE_VPRINTF.
21550         * lib/stdio_.h (vprintf): New declaration.
21551         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
21552         REPLACE_VPRINTF.
21553
21554 2007-03-08  Bruno Haible  <bruno@clisp.org>
21555
21556         * modules/fprintf-posix-tests: New file.
21557         * tests/test-fprintf-posix.sh: New file.
21558         * tests/test-fprintf-posix.c: New file.
21559
21560         * modules/fprintf-posix: New file.
21561         * lib/fprintf.c: New file.
21562         * m4/fprintf-posix.m4: New file.
21563         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
21564         REPLACE_FPRINTF.
21565         * lib/stdio_.h (fprintf): New declaration.
21566         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
21567         REPLACE_FPRINTF.
21568
21569 2007-03-08  Bruno Haible  <bruno@clisp.org>
21570
21571         * modules/vfprintf-posix-tests: New file.
21572         * tests/test-vfprintf-posix.sh: New file.
21573         * tests/test-vfprintf-posix.c: New file.
21574         * tests/test-fprintf-posix.h: New file.
21575         * tests/test-fprintf-posix.out: New file.
21576
21577         * modules/vfprintf-posix: New file.
21578         * lib/vfprintf.c: New file.
21579         * m4/vfprintf-posix.m4: New file.
21580         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
21581         REPLACE_VFPRINTF.
21582         * lib/stdio_.h (vfprintf): New declaration.
21583         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
21584         REPLACE_VFPRINTF.
21585
21586 2007-03-08  Bruno Haible  <bruno@clisp.org>
21587
21588         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
21589
21590 2007-03-08  Bruno Haible  <bruno@clisp.org>
21591
21592         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
21593         instead of 'expr' invocations.
21594         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
21595         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
21596         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
21597         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
21598         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
21599         Suggested by Paul Eggert.
21600
21601 2007-03-08  Bruno Haible  <bruno@clisp.org>
21602
21603         * modules/fseterr-tests: New file.
21604         * tests/test-fseterr.c: New file.
21605
21606         * modules/fseterr: New file.
21607         * lib/fseterr.h: New file.
21608         * lib/fseterr.c: New file.
21609
21610 2007-03-08  Bruno Haible  <bruno@clisp.org>
21611
21612         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
21613         * lib/getopt_.h: Likewise.
21614         * lib/mbswidth.h: Likewise.
21615         * lib/setenv.h: Likewise.
21616         * lib/vasnprintf.h: Likewise.
21617         * lib/vasprintf.h: Likewise.
21618         * lib/verror.h: Likewise.
21619         * lib/xsetenv.h: Likewise.
21620         * lib/xvasprintf.h: Likewise.
21621
21622 2007-03-08  Jim Meyering  <jim@meyering.net>
21623
21624         * users.txt: Add parted.
21625
21626         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
21627
21628 2007-03-07  Bruno Haible  <bruno@clisp.org>
21629
21630         * m4/printf.m4: Make the shell script snippets copy&pastable.
21631
21632 2007-03-02  Bruno Haible  <bruno@clisp.org>
21633
21634         * lib/netinet_in_.h: New file.
21635         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
21636         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
21637         * modules/netinet_in (Files): Add lib/netinet_in_.h.
21638         (Depends-on): Add absolute-header.
21639         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
21640         into netinet/in.h.
21641
21642 2007-03-03  Bruno Haible  <bruno@clisp.org>
21643
21644         * lib/sys_select_.h: New file.
21645         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
21646         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
21647         * modules/sys_select (Files): Add lib/sys_select_.h.
21648         (Depends-on): Add absolute-header.
21649         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
21650         into sys/select.h.
21651
21652 2007-03-02  Bruno Haible  <bruno@clisp.org>
21653
21654         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
21655         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
21656         values.
21657         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
21658         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
21659         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
21660         * modules/sys_socket (Depends-on): Add absolute-header.
21661         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
21662         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
21663         (Include): Remove requirement of inclusion of <sys/types.h>.
21664
21665 2007-03-02  Bruno Haible  <bruno@clisp.org>
21666
21667         * lib/byteswap_.h (bswap_32): Fix formula.
21668
21669 2007-03-06  Bruno Haible  <bruno@clisp.org>
21670
21671         * modules/sprintf-posix-tests: New file.
21672         * tests/test-sprintf-posix.c: New file.
21673
21674         * modules/sprintf-posix: New file.
21675         * lib/sprintf.c: New file.
21676         * m4/sprintf-posix.m4: New file.
21677         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
21678         REPLACE_SPRINTF.
21679         * lib/stdio_.h (sprintf): New declaration.
21680         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
21681         REPLACE_SPRINTF.
21682
21683 2007-03-06  Bruno Haible  <bruno@clisp.org>
21684
21685         * modules/vsprintf-posix-tests: New file.
21686         * tests/test-vsprintf-posix.c: New file.
21687         * tests/test-sprintf-posix.h: New file.
21688
21689         * modules/vsprintf-posix: New file.
21690         * lib/vsprintf.c: New file.
21691         * m4/vsprintf-posix.m4: New file.
21692         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
21693         REPLACE_VSPRINTF.
21694         * lib/stdio_.h (vsprintf): New declaration.
21695         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
21696         REPLACE_VSPRINTF.
21697
21698 2007-03-06  Bruno Haible  <bruno@clisp.org>
21699
21700         * modules/vsnprintf (Depend-on): Remove minmax.
21701
21702 2007-03-06  Bruno Haible  <bruno@clisp.org>
21703
21704         * modules/snprintf-posix-tests: New file.
21705         * tests/test-snprintf-posix.c: New file.
21706
21707         * modules/snprintf-posix: New file.
21708         * m4/snprintf-posix.m4: New file.
21709         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
21710         gl_FUNC_SNPRINTF.
21711         (gl_FUNC_SNPRINTF): Invoke it.
21712         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
21713         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
21714         is set.
21715         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
21716
21717 2007-03-06  Bruno Haible  <bruno@clisp.org>
21718
21719         * modules/vsnprintf-posix-tests: New file.
21720         * tests/test-vsnprintf-posix.c: New file.
21721         * tests/test-snprintf-posix.h: New file.
21722
21723         * modules/vsnprintf-posix: New file.
21724         * m4/vsnprintf-posix.m4: New file.
21725         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
21726         gl_FUNC_VSNPRINTF.
21727         (gl_FUNC_VSNPRINTF): Invoke it.
21728         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
21729         * lib/stdio_.h (vsnprintf): Define as a replacement if
21730         REPLACE_VSNPRINTF is set.
21731         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
21732
21733 2007-03-06  Bruno Haible  <bruno@clisp.org>
21734
21735         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
21736         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
21737
21738 2007-03-06  Bruno Haible  <bruno@clisp.org>
21739
21740         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
21741         (asinl): Declare also if HAVE_DECL_ASINL is set.
21742         (atanl): Declare also if HAVE_DECL_ATANL is set.
21743         (ceill): Declare also if HAVE_DECL_CEILL is set.
21744         (cosl): Declare also if HAVE_DECL_COSL is set.
21745         (expl): Declare also if HAVE_DECL_EXPL is set.
21746         (floorl): Declare also if HAVE_DECL_FLOORL is set.
21747         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
21748         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
21749         (logl): Declare also if HAVE_DECL_LOGL is set.
21750         (sinl): Declare also if HAVE_DECL_SINL is set.
21751         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
21752         (tanl): Declare also if HAVE_DECL_TANL is set.
21753         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
21754         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
21755         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
21756         declaration of frexpl, ldexpl.
21757         * modules/printf-frexpl (Depends-on): Add math.
21758         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
21759
21760 2007-03-05  Bruno Haible  <bruno@clisp.org>
21761
21762         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
21763         frexpl and ldexpl are declared.
21764         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
21765
21766 2007-03-05  Bruno Haible  <bruno@clisp.org>
21767
21768         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
21769         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
21770
21771 2007-03-05  Bruno Haible  <bruno@clisp.org>
21772
21773         * lib/stdio_.h: Include <stddef.h>.
21774
21775 2007-03-05  Bruno Haible  <bruno@clisp.org>
21776
21777         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
21778
21779 2007-03-05  Bruno Haible  <bruno@clisp.org>
21780
21781         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
21782         NetBSD 4, from Ralf Wildenhues.
21783
21784 2007-03-04  Bruno Haible  <bruno@clisp.org>
21785
21786         * lib/vasprintf.h: Update #if logic for the case when the functions
21787         exist but are overridden.
21788
21789 2007-03-04  Bruno Haible  <bruno@clisp.org>
21790
21791         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
21792         implementations: glibc-2.4 and MacOS X 10.3.
21793         * tests/test-vasnprintf-posix.c (test_function): Test also the case
21794         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
21795         * tests/test-vasprintf-posix.c (test_function): Likewise.
21796
21797 2007-03-04  Bruno Haible  <bruno@clisp.org>
21798
21799         * modules/vasprintf-posix-tests: New file.
21800         * tests/test-vasprintf-posix.c: New file.
21801
21802         * modules/vasprintf-posix: New file.
21803         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
21804         defined.
21805         * m4/vasprintf-posix.m4: New file.
21806         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
21807         gl_FUNC_VASPRINTF.
21808         (gl_FUNC_VASPRINTF): Invoke it.
21809         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
21810         here.
21811         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
21812
21813 2007-03-04  Bruno Haible  <bruno@clisp.org>
21814
21815         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
21816         REPLACE_GETTIMEOFDAY.
21817         * modules/sys_time (Makefile.am): Likewise.
21818         * m4/sys_time_h.m4: Likewise.
21819         * m4/gettimeofday.m4: Likewise.
21820
21821 2007-03-04  Bruno Haible  <bruno@clisp.org>
21822
21823         * modules/vasnprintf-posix-tests: New file.
21824         * tests/test-vasnprintf-posix.c: New file.
21825
21826         * modules/vasnprintf-posix: New file.
21827         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
21828         printf-frexpl.h.
21829         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
21830         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
21831         REPLACE_VASNPRINTF is defined.
21832         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
21833         gl_FUNC_VASNPRINTF.
21834         (gl_FUNC_VASNPRINTF): Invoke it.
21835         * m4/vasnprintf-posix.m4: New file.
21836         * m4/printf.m4: New file.
21837
21838 2007-03-04  Bruno Haible  <bruno@clisp.org>
21839
21840         Compile progreloc.c only if --enable-relocatable is specified.
21841         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
21842         if --enable-relocatable was specified.
21843         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
21844         lib_SOURCES.
21845
21846 2007-03-04  Jim Meyering  <jim@meyering.net>
21847
21848         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
21849         Use it consistently, rather than enumerating errno constants.
21850
21851 2007-03-04  Bruno Haible  <bruno@clisp.org>
21852
21853         * modules/xvasprintf-tests: New file.
21854         * tests/test-xvasprintf.c: New file.
21855
21856         * modules/vasprintf-tests: New file.
21857         * tests/test-vasprintf.c: New file.
21858
21859         * modules/vasnprintf-tests: New file.
21860         * tests/test-vasnprintf.c: New file.
21861
21862         * modules/vsnprintf-tests: New file.
21863         * tests/test-vsnprintf.c: New file.
21864
21865         * modules/snprintf-tests: New file.
21866         * tests/test-snprintf.c: New file.
21867
21868 2007-03-04  Bruno Haible  <bruno@clisp.org>
21869
21870         Compile relocatable.c only if --enable-relocatable is specified.
21871         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
21872         gl_RELOCATABLE_LIBRARY.
21873         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
21874         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
21875         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
21876         gl_RELOCATABLE_LIBRARY.
21877         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
21878         (Makefile.am): Remove lib_SOURCES.
21879         * modules/relocatable-lib-lgpl (configure.ac): Invoke
21880         gl_RELOCATABLE_LIBRARY.
21881         (Makefile.am): Remove lib_SOURCES.
21882         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
21883         always.
21884         * modules/relocatable-prog-wrapper (configure.ac): Invoke
21885         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
21886
21887 2007-03-04  Bruno Haible  <bruno@clisp.org>
21888
21889         * modules/argmatch-tests: New file.
21890         * tests/test-argmatch.c: New file.
21891
21892         * tests/test-allocsa.c (main): Halve the number of loop runs.
21893
21894         * modules/alloca-opt-tests: New file.
21895         * tests/test-alloca-opt.c: New file.
21896
21897 2007-03-04  Jim Meyering  <jim@meyering.net>
21898
21899         Work around difference between Linux ACLs and Solaris 10 ZFS.
21900         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
21901         for EINVAL.
21902
21903 2007-03-03  Bruno Haible  <bruno@clisp.org>
21904
21905         * modules/relocatable-prog (Depends-on): Add back progreloc's
21906         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
21907
21908 2007-03-03  Bruno Haible  <bruno@clisp.org>
21909
21910         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
21911         * modules/relocatable-lib: New file.
21912
21913 2007-03-03  Bruno Haible  <bruno@clisp.org>
21914
21915         * modules/relocatable-prog: Renamed from modules/relocatable.
21916         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
21917
21918 2007-03-03  Bruno Haible  <bruno@clisp.org>
21919
21920         * modules/relocatable-script (Files): Add doc/relocatable.texi,
21921         m4/relocatable-lib.m4.
21922         (Depends-on): Remove 'relocatable'.
21923         (configure.ac): Add gl_RELOCATABLE_NOP.
21924
21925 2007-03-03  Bruno Haible  <bruno@clisp.org>
21926
21927         * modules/relocatable-prog-wrapper: New file.
21928         * modules/relocatable (Depends-on): Add it. Remove all other
21929         dependencies except progname.
21930         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
21931
21932         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
21933         (gl_FUNC_STRERROR): Nop.
21934         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
21935
21936         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
21937         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
21938
21939         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
21940         (gl_FUNC_READLINK): Update.
21941
21942         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
21943
21944 2007-03-03  Bruno Haible  <bruno@clisp.org>
21945
21946         * lib/xreadlink.c: Include <unistd.h> unconditionally.
21947         * modules/xreadlink (Depends-on): Add unistd.
21948         * modules/xreadlink-with-size (Depends-on): Likewise.
21949
21950 2007-03-03  Bruno Haible  <bruno@clisp.org>
21951
21952         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
21953         extracted from gt_FUNC_SETENV.
21954         (gt_FUNC_SETENV): Remove macro.
21955         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
21956         remove gt_FUNC_SETENV.
21957
21958 2007-03-03  Bruno Haible  <bruno@clisp.org>
21959
21960         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
21961         ENABLE_RELOCATABLE here.
21962         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
21963
21964 2007-03-03  Bruno Haible  <bruno@clisp.org>
21965
21966         * modules/rbtreehash-list-tests (Depends-on): Add progname.
21967         * tests/test-rbtreehash_list.c: Include progname.h.
21968         (main): Call set_program_name.
21969
21970         * modules/rbtree-oset-tests (Depends-on): Add progname.
21971         * tests/test-rbtree_oset.c: Include progname.h.
21972         (main): Call set_program_name.
21973
21974         * modules/rbtree-list-tests (Depends-on): Add progname.
21975         * tests/test-rbtree_list.c: Include progname.h.
21976         (main): Call set_program_name.
21977
21978         * modules/linked-list-tests (Depends-on): Add progname.
21979         * tests/test-linked_list.c: Include progname.h.
21980         (main): Call set_program_name.
21981
21982 2007-03-03  Bruno Haible  <bruno@clisp.org>
21983
21984         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
21985         All uses of __restrict changed to _Restrict_.
21986         * lib/glob_.h (__restrict): Remove macro.
21987
21988 2007-03-02  Bruno Haible  <bruno@clisp.org>
21989
21990         * modules/gettext (configure.ac): Require gettext infrastructure
21991         from version 0.16.1.
21992
21993 2007-03-02  Bruno Haible  <bruno@clisp.org>
21994
21995         * modules/linkedhash-list-tests (Depends-on): Add progname.
21996         * tests/test-linkedhash_list.c: Include progname.h.
21997         (main): Call set_program_name.
21998
21999         * modules/carray-list-tests (Depends-on): Add progname.
22000         * tests/test-carray_list.c: Include progname.h.
22001         (main): Call set_program_name.
22002
22003         * modules/avltreehash-list-tests (Depends-on): Add progname.
22004         * tests/test-avltreehash_list.c: Include progname.h.
22005         (main): Call set_program_name.
22006
22007         * modules/avltree-oset-tests (Depends-on): Add progname.
22008         * tests/test-avltree_oset.c: Include progname.h.
22009         (main): Call set_program_name.
22010
22011         * modules/avltree-list-tests (Depends-on): Add progname.
22012         * tests/test-avltree_list.c: Include progname.h.
22013         (main): Call set_program_name.
22014
22015         * modules/array-oset-tests (Depends-on): Add progname.
22016         * tests/test-array_oset.c: Include progname.h.
22017         (main): Call set_program_name.
22018
22019         * modules/array-list-tests (Depends-on): Add progname.
22020         * tests/test-array_list.c: Include progname.h.
22021         (main): Call set_program_name.
22022
22023         * modules/argp-tests (Depends-on): Add progname.
22024         * tests/test-argp.c: Include argp.h first. Include progname.h.
22025         (main): Call set_program_name.
22026
22027 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
22028
22029         * doc/gnulib-tool.texi (Initial import): Reword description of
22030         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
22031         limited effect even if defined after the first system include.
22032
22033 2007-03-01  Bruno Haible  <bruno@clisp.org>
22034
22035         * build-aux/config.libpath: Update to libtool-1.5.22.
22036         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
22037
22038 2007-03-01  Bruno Haible  <bruno@clisp.org>
22039
22040         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
22041         foo_CFLAGS.
22042         Reported by Ralf Wildenhues.
22043
22044 2007-03-01  Bruno Haible  <bruno@clisp.org>
22045
22046         * build-aux/install-reloc: Remove object files left over by some
22047         compilers.
22048         Reported by Ralf Wildenhues.
22049
22050 2007-03-01  Bruno Haible  <bruno@clisp.org>
22051
22052         * build-aux/install-reloc: Break long lines.
22053
22054 2007-03-01  Bruno Haible  <bruno@clisp.org>
22055
22056         * doc/relocatable.texi: Document that it may not work on OpenBSD.
22057         Reported by Ralf Wildenhues.
22058
22059 2007-03-01  Bruno Haible  <bruno@clisp.org>
22060
22061         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
22062         include ordering constraints.
22063
22064 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
22065
22066         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
22067         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
22068         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
22069         as another example.
22070         * lib/time_.h: Fix misspelling.
22071         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
22072         Require gl_HEADER_TIME_H_DEFAULTS.
22073         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
22074         * m4/time_r.m4 (gl_TIME_R): Likewise.
22075         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
22076
22077 2007-03-01  Bruno Haible  <bruno@clisp.org>
22078
22079         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
22080         * m4/utimens.m4 (gl_UTIMENS): Likewise.
22081
22082 2007-03-01  Jim Meyering  <jim@meyering.net>
22083
22084         * modules/xreadlink (Maintainer): Add my name.
22085         * modules/xreadlink-with-size (Depends-on): Alphabetize.
22086
22087 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
22088             Bruno Haible  <bruno@clisp.org>
22089
22090         * build-aux/install-reloc: Compile also c-ctype.c.
22091         * build-aux/relocatable.sh.in: New file.
22092         * doc/relocatable.texi: New file.
22093         * doc/relocatable-maint.texi: New file.
22094         * doc/gnulib.texi: Include relocatable-maint.texi.
22095         * lib/progreloc.c: Include unistd.h unconditionally.
22096         * lib/relocwrapper.c: Include unistd.h unconditionally.
22097         Include c-ctype.h.
22098         (add_dotbin): Use c_tolower.
22099         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
22100         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
22101         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
22102         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
22103         to m4/relocatable-lib.m4.
22104         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
22105         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
22106         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
22107         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
22108         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
22109         * modules/relocatable: New file.
22110         * modules/relocatable-lib: New file.
22111         * modules/relocatable-script: New file.
22112
22113 2007-02-28  Bruno Haible  <bruno@clisp.org>
22114
22115         Import --enable-relocatable infrastructure.
22116         * build-aux/config.libpath: New file, from GNU gettext.
22117         * build-aux/install-reloc: New file, from GNU gettext.
22118         * build-aux/reloc-ldflags: New file, from GNU gettext.
22119         * lib/relocatable.h: New file, from GNU gettext.
22120         * lib/relocatable.c: New file, from GNU gettext.
22121         * lib/relocwrapper.c: New file, from GNU gettext.
22122         * m4/relocatable.m4: New file, from GNU gettext.
22123
22124 2007-02-28  Bruno Haible  <bruno@clisp.org>
22125
22126         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
22127
22128         * modules/xreadlink: New file, from GNU gettext with modifications.
22129         * lib/xreadlink.c: New file, from GNU gettext.
22130         * lib/xreadlink.h: Add comments.
22131         (xreadlink): New declaration.
22132
22133         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
22134         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
22135         lib/xreadlink-with-size.c.
22136         (configure.ac): Remove gl_XREADLINK invocation.
22137         (Makefile.am): Augment lib_SOURCES.
22138         * m4/xreadlink.m4: Remove file.
22139         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
22140         (xreadlink_with_size): Renamed from xreadink.
22141         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
22142         * modules/canonicalize (Depends-on): Replace xreadlink with
22143         xreadlink-with-size.
22144         * lib/canonicalize.c (canonicalize_filename_mode): Update.
22145
22146 2007-02-25  Jim Meyering  <jim@meyering.net>
22147
22148         * build-aux/announce-gen: When complaining about excess arguments,
22149         list them.
22150
22151 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
22152
22153         * README: Document signed integer overflow situation more
22154         accurately.
22155
22156 2007-02-25  Bruno Haible  <bruno@clisp.org>
22157
22158         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
22159         'a' or 'A' conversion.
22160
22161 2007-02-25  Bruno Haible  <bruno@clisp.org>
22162
22163         * modules/filename: Renamed from modules/pathname.
22164         (Files): Replace lib/pathname.h with lib/filename.h. Replace
22165         lib/concatpath.c with lib/concat-filename.c.
22166         (Makefile.am): Update.
22167         (Include): Replace pathname.h with filename.h.
22168         * lib/filename.h: Renamed from lib/pathname.h.
22169         (concatenated_filename): Renamed from concatenated_pathname.
22170         * lib/concat-filename.c: Renamed from lib/concatpath.c.
22171         (concatenated_filename): Renamed from concatenated_pathname.
22172         * lib/findprog.c: Include filename.h instead of pathname.h.
22173         (find_in_path): Update.
22174         * lib/javacomp.c: Include filename.h instead of pathname.h.
22175         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
22176         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
22177         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
22178         is_oldgcj_14_13_usable, is_javac_usable): Update.
22179         * lib/javaexec.c: Include filename.h instead of pathname.h.
22180         (execute_java_class): Update.
22181         * modules/findprog: Update.
22182         * modules/javacomp: Update.
22183         * modules/javaexec: Update.
22184         * MODULES.html.sh (File system functions): Add 'filename', remove
22185         'pathname'.
22186
22187 2007-02-25  Bruno Haible  <bruno@clisp.org>
22188
22189         * modules/printf-frexpl-tests: New file.
22190         * tests/test-printf-frexpl.c: New file.
22191
22192         * modules/printf-frexpl: New file.
22193         * lib/printf-frexpl.h: New file.
22194         * lib/printf-frexpl.c: New file.
22195         * m4/printf-frexpl.m4: New file.
22196
22197 2007-02-25  Bruno Haible  <bruno@clisp.org>
22198
22199         * modules/printf-frexp-tests: New file.
22200         * tests/test-printf-frexp.c: New file.
22201
22202         * modules/printf-frexp: New file.
22203         * lib/printf-frexp.h: New file.
22204         * lib/printf-frexp.c: New file.
22205         * m4/printf-frexp.m4: New file.
22206
22207 2007-02-25  Bruno Haible  <bruno@clisp.org>
22208
22209         Assume automake >= 1.10 for the tests.
22210         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
22211         * modules/arctwo-tests: Likewise.
22212         * modules/argp-tests: Likewise.
22213         * modules/avltree-list-tests: Likewise.
22214         * modules/avltree-oset-tests: Likewise.
22215         * modules/avltreehash-list-tests: Likewise.
22216         * modules/carray-list-tests: Likewise.
22217         * modules/crc-tests: Likewise.
22218         * modules/des-tests: Likewise.
22219         * modules/gc-arcfour-tests: Likewise.
22220         * modules/gc-arctwo-tests: Likewise.
22221         * modules/gc-des-tests: Likewise.
22222         * modules/gc-hmac-md5-tests: Likewise.
22223         * modules/gc-hmac-sha1-tests: Likewise.
22224         * modules/gc-md2-tests: Likewise.
22225         * modules/gc-md4-tests: Likewise.
22226         * modules/gc-md5-tests: Likewise.
22227         * modules/gc-pbkdf2-sha1-tests: Likewise.
22228         * modules/gc-rijndael-tests: Likewise.
22229         * modules/gc-sha1-tests: Likewise.
22230         * modules/gc-tests: Likewise.
22231         * modules/getaddrinfo-tests: Likewise.
22232         * modules/hmac-md5-tests: Likewise.
22233         * modules/hmac-sha1-tests: Likewise.
22234         * modules/linked-list-tests: Likewise.
22235         * modules/linkedhash-list-tests: Likewise.
22236         * modules/lock-tests: Likewise.
22237         * modules/md2-tests: Likewise.
22238         * modules/md4-tests: Likewise.
22239         * modules/md5-tests: Likewise.
22240         * modules/rbtree-list-tests: Likewise.
22241         * modules/rbtree-oset-tests: Likewise.
22242         * modules/rbtreehash-list-tests: Likewise.
22243         * modules/read-file-tests: Likewise.
22244         * modules/rijndael-tests: Likewise.
22245         * modules/stdint-tests: Likewise.
22246         * modules/tls-tests: Likewise.
22247
22248 2007-02-24  Bruno Haible  <bruno@clisp.org>
22249
22250         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
22251         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
22252         function; instead check whether isnan with a double argument links.
22253         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
22254         function; instead check whether isnan with a 'long double' argument
22255         links.
22256         Reported by Eric Blake <ebb9@byu.net>.
22257
22258 2007-02-24  Bruno Haible  <bruno@clisp.org>
22259
22260         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
22261         defined.
22262         * lib/isnanl.c: Remove all code. Just include isnan.c.
22263         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
22264
22265 2007-02-25  Jim Meyering  <jim@meyering.net>
22266
22267         Avoid conflicting types for 'unsetenv' on FreeBSD.
22268         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
22269         conflicting with FreeBSD's (5.0 and 6.1) function declaration
22270         in stdlib.h.
22271
22272 2007-02-24  Bruno Haible  <bruno@clisp.org>
22273
22274         * modules/isnanl-nolibm-tests: New file.
22275         * tests/test-isnanl.c: New file.
22276
22277         * modules/isnanl-nolibm: New file.
22278         * lib/isnanl.h: New file.
22279         * lib/isnanl.c: New file.
22280         * m4/isnanl.m4: New file.
22281
22282 2007-02-24  Bruno Haible  <bruno@clisp.org>
22283
22284         * modules/isnan-nolibm-tests: New file.
22285         * tests/test-isnan.c: New file.
22286
22287         * modules/isnan-nolibm: New file.
22288         * lib/isnan.h: New file.
22289         * lib/isnan.c: New file.
22290         * m4/isnan.m4: New file.
22291
22292 2007-02-24  Bruno Haible  <bruno@clisp.org>
22293
22294         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
22295         assume that an exponent fits in 20 bits.
22296
22297 2007-02-24  Jim Meyering  <jim@meyering.net>
22298
22299         * m4/regex.m4: Update the description of the configure-time option,
22300         --without-included-regex, to state accurately what the defaults are,
22301         and perhaps to give people an idea why using this option is risky.
22302
22303 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
22304
22305         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
22306         loops on small arguments.  This attempts to avoid the problem
22307         Bruno Haible reported for AIX 4.3.2 in
22308         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
22309
22310 2007-02-23  Bruno Haible  <bruno@clisp.org>
22311
22312         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
22313         Needed for help2man.
22314
22315 2007-02-23  Karl Berry  <karl@gnu.org>
22316
22317         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
22318         exists, foo.h should be cvs-ignored, not committed.
22319
22320 2007-02-23  Eric Blake  <ebb9@byu.net>
22321
22322         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
22323         * lib/stat-time.h (includes): Likewise.
22324         * lib/utimecmp.c (includes): Likewise.
22325         * lib/utimens.h (includes): Likewise.
22326         * lib/getdate.y (includes): Also include "timespec.h" for use
22327         internal to the module.
22328         * modules/utimens (Depends-on): Revert yesterday's patch.
22329         * modules/nanosleep (Depends-on): Add missing dependency.
22330
22331 2007-02-22  Bruno Haible  <bruno@clisp.org>
22332
22333         * lib/glob.c: Don't include getlogin_r.h.
22334
22335 2007-02-22  Jim Meyering  <jim@meyering.net>
22336
22337         * modules/utimens (Depends-on): Add timespec, required for
22338         utimens.h's inclusion of timespec.h.
22339
22340 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
22341
22342         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
22343         long unreadable paths in GNU/Linux.  Problem reported by Andreas
22344         Schwab in
22345         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
22346         I'll try to think of a better way to fix the Solaris problem.
22347
22348         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
22349         like glibc; on Solaris 10, it fails with errno == EINVAL.
22350         POSIX says the behavior is unspecified if the first argument is NULL,
22351         so play it safe and never pass NULL to the system getcwd.
22352
22353 2007-02-21  Jim Meyering  <jim@meyering.net>
22354
22355         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
22356         of gettimeofday.  It would conflict with the one now always
22357         provided via sys_time_.h.  Reported by Matthew Woehlke, as
22358         an IRIX 6.5 build failure.
22359
22360 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
22361
22362         Minor fixups to port to Solaris 10 with Sun C 5.8.
22363         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
22364         * modules/getcwd (Depends-on): Add dirfd.
22365         * lib/putenv.c (putenv): #undef it.
22366         (rpl_putenv): New decl.
22367         (malloc, free): Include <stdlib.h> rather than prototyping separately.
22368
22369 2007-02-20  Bruno Haible  <bruno@clisp.org>
22370
22371         * modules/stdio-tests: New file.
22372         * tests/test-stdio.c: New file.
22373
22374         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
22375         (Depends-on): Add stdio.
22376         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
22377         (Include): Use <stdio.h> instead of vsnprintf.h.
22378         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
22379         HAVE_DECL_VSNPRINTF.
22380         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
22381
22382         * modules/snprintf (Files): Remove lib/snprintf.h.
22383         (Depends-on): Add stdio.
22384         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
22385         (Include): Use <stdio.h> instead of snprintf.h.
22386         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
22387         HAVE_DECL_SNPRINTF.
22388         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
22389         * lib/getaddrinfo.c: Likewise.
22390
22391         * modules/stdio: New file.
22392         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
22393         * lib/snprintf.h: Remove file.
22394         * lib/vsnprintf.h: Remove file.
22395         * lib/.cppi-disable: Remove snprintf.h.
22396         * m4/stdio_h.m4: New file.
22397         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
22398
22399 2007-02-20  Jim Meyering  <jim@meyering.net>
22400
22401         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
22402         used by e.g., mingw.  From Bruno Haible.
22403
22404 2007-02-19  Bruno Haible  <bruno@clisp.org>
22405
22406         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
22407         warnings.
22408         Reported by Ben Pfaff <blp@cs.stanford.edu>.
22409
22410 2007-02-19  Bruno Haible  <bruno@clisp.org>
22411
22412         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
22413         from mingw users.
22414
22415 2007-02-19  Bruno Haible  <bruno@clisp.org>
22416
22417         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
22418         warnings.
22419         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
22420
22421 2007-02-19  Jim Meyering  <jim@meyering.net>
22422
22423         Don't use FD after a successful "fdopendir (fd)".
22424         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
22425         Reset it by calling dirfd on the just-obtained DIR*.
22426
22427         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
22428         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
22429
22430 2007-02-18  Bruno Haible  <bruno@clisp.org>
22431
22432         * lib/readlink.c: Include <unistd.h>.
22433         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
22434         HAVE_READLINK.
22435         * modules/readlink (Depends-on): Add unistd.
22436         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22437         (Include): Add <unistd.h>.
22438
22439         * lib/getlogin_r.h: Remove file.
22440         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
22441         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
22442         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
22443         HAVE_DECL_GETLOGIN_R.
22444         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
22445         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22446         (Include): Use <unistd.h> instead of getlogin_r.h.
22447
22448         * lib/getcwd.h: Remove file.
22449         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
22450         * lib/xgetcwd.c: Likewise.
22451         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
22452         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
22453         * modules/getcwd (Files): Remove lib/getcwd.h.
22454         (Depends-on): Add unistd.
22455         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22456         (Include): Use <unistd.h> instad of getcwd.h.
22457
22458         * lib/ftruncate.c: Include <unistd.h> first.
22459         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
22460         Set HAVE_FTRUNCATE.
22461         * modules/ftruncate (Depends-on): Add unistd.
22462         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22463
22464         * lib/fchdir.c: Include <unistd.h> first.
22465         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
22466         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
22467         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
22468         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22469         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
22470
22471         * lib/dup2.c: Include <unistd.h> first.
22472         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
22473         HAVE_DUP2.
22474         * modules/dup2 (Depends-on): Add unistd.
22475         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22476
22477         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
22478         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
22479         REPLACE_CHOWN. Don't define chown as a macro here.
22480         * modules/chown (Depends-on): Add unistd.
22481         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22482
22483         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
22484         Add definition for GL_LINK_WARNING.
22485         (chown, dup2): New declarations.
22486         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
22487         link warning.
22488         (ftruncate): New declaration.
22489         (getcwd): New declaration, taken from old getcwd.h.
22490         (getlogin_r): New declaration, taken from old getlogin_r.h.
22491         (readlink): New declaration.
22492         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
22493         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
22494         (gl_PREREQ_UNISTD): Remove macro.
22495         (gl_UNISTD_MODULE_INDICATOR): New macro.
22496         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
22497         many new variables. Don't set UNISTD_H.
22498         * modules/unistd (Description): Change.
22499         (Depends-on): Add link-warning.
22500         (configure.ac): Update.
22501         (Makefile.am): Create unistd.h always. Substitute many new variables
22502         into it.
22503
22504 2007-02-18  Bruno Haible  <bruno@clisp.org>
22505
22506         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
22507         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
22508         HAVE_GETSUBOPT.
22509         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
22510         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
22511         * lib/getsubopt.h: Remove file.
22512         * modules/getsubopt (Files): Remove lib/getsubopt.h.
22513         (Depends-on): Add stdlib.
22514         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
22515         (Includes): Use <stdlib.h> instead of getsubopt.h.
22516         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
22517         Set HAVE_GETSUBOPT.
22518         * lib/getsubopt.c: Don't include getsubopt.h.
22519
22520 2007-02-18  Bruno Haible  <bruno@clisp.org>
22521
22522         * modules/fchdir (Depends-on): Add dup2.
22523
22524 2007-02-18  Bruno Haible  <bruno@clisp.org>
22525
22526         * lib/stdlib_.h: Handle glibc's special invocation convention
22527         specially.
22528
22529 2007-02-18  Bruno Haible  <bruno@clisp.org>
22530
22531         * modules/stdlib-tests: New file.
22532         * tests/test-stdlib.c: New file.
22533
22534         * modules/mkstemp (Files): Remove lib/mkstemp.h.
22535         (Depends-on): Add stdlib.
22536         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
22537         (Includes): Use <stdlib.h> instead of mkstemp.h.
22538         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
22539         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
22540         * lib/mkstemp.c: Don't include mkstemp.h.
22541         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
22542         * lib/stdlib--.h: Don't include mkstemp.h.
22543
22544         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
22545         (Depends-on): Add stdlib.
22546         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
22547         (Includes): Use <stdlib.h> instead of mkdtemp.h.
22548         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
22549         HAVE_MKDTEMP.
22550         * lib/mkdtemp.c: Don't include mkdtemp.h.
22551         * lib/clean-temp.c: Don't include mkdtemp.h.
22552
22553         * modules/exit (Files): Remove lib/exit.h.
22554         (Depends-on): Add stdlib.
22555         (Makefile.am): Remove lib_SOURCES.
22556         (Include): Use <stdlib.h> instead of exit.h.
22557         * lib/argmatch.c: Don't include exit.h.
22558         * lib/execute.c: Likewise.
22559         * lib/pagealign_alloc.c: Likewise.
22560         * lib/pipe.c: Likewise.
22561         * lib/wait-process.c: Likewise.
22562         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
22563         * lib/exitfail.c: Likewise.
22564         * lib/savewd.c: Likewise.
22565         * lib/xsetenv.c: Likewise.
22566
22567         * modules/stdlib: New file.
22568         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
22569         and extra comments about mkstemp().
22570         * lib/exit.h: Remove file.
22571         * lib/mkdtemp.h: Remove file.
22572         * lib/mkstemp.h: Remove file.
22573         * m4/stdlib_h.m4: New file.
22574         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
22575
22576 2007-02-18  Bruno Haible  <bruno@clisp.org>
22577
22578         * modules/math-tests: New file.
22579         * tests/test-math.c: New file.
22580
22581         * modules/math: New file.
22582         * modules/mathl (Files): Remove lib/mathl.h.
22583         (Depends-on): Add math.
22584         (Makefile.am): Don't mention mathl.h.
22585         (Include): Use <math.h> instead of mathl.h.
22586         * lib/math_.h: New file.
22587         * lib/mathl.h: Remove file.
22588         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
22589         mathl.h.
22590         * lib/asinl.c: Likewise.
22591         * lib/atanl.c: Likewise.
22592         * lib/ceill.c: Likewise.
22593         * lib/cosl.c: Likewise.
22594         * lib/expl.c: Likewise.
22595         * lib/floorl.c: Likewise.
22596         * lib/frexpl.c: Likewise.
22597         * lib/ldexpl.c: Likewise.
22598         * lib/logl.c: Likewise.
22599         * lib/sincosl.c: Likewise.
22600         * lib/sinl.c: Likewise.
22601         * lib/sqrtl.c: Likewise.
22602         * lib/tanl.c: Likewise.
22603         * lib/trigl.c: Likewise.
22604         * m4/math_h.m4: New file.
22605         * MODULES.html.sh (Mathematics): Add math.
22606
22607 2007-02-17  Bruno Haible  <bruno@clisp.org>
22608
22609         * modules/wctype-tests: New file.
22610         * tests/test-wctype.c: New file.
22611
22612         * modules/wchar-tests: New file.
22613         * tests/test-wchar.c: New file.
22614
22615         * modules/unistd-tests: New file.
22616         * tests/test-unistd.c: New file.
22617
22618         * modules/time-tests: New file.
22619         * tests/test-time.c: New file.
22620
22621         * modules/sysexits-tests: New file.
22622         * tests/test-sysexits.c: New file.
22623
22624         * modules/sys_time-tests: New file.
22625         * tests/test-sys_time.c: New file.
22626
22627         * modules/sys_stat-tests: New file.
22628         * tests/test-sys_stat.c: New file.
22629
22630         * modules/sys_socket-tests: New file.
22631         * tests/test-sys_socket.c: New file.
22632
22633         * modules/sys_select-tests: New file.
22634         * tests/test-sys_select.c: New file.
22635
22636         * modules/string-tests: New file.
22637         * tests/test-string.c: New file.
22638
22639         * modules/stdbool-tests: New file.
22640         * tests/test-stdbool.c: New file.
22641
22642         * modules/netinet_in-tests: New file.
22643         * tests/test-netinet_in.c: New file.
22644
22645         * modules/inttypes-tests: New file.
22646         * tests/test-inttypes.c: New file.
22647
22648         * modules/fcntl-tests: New file.
22649         * tests/test-fcntl.c: New file.
22650
22651         * modules/byteswap-tests: New file.
22652         * tests/test-byteswap.c: New file.
22653
22654         * modules/arpa_inet-tests: New file.
22655         * tests/test-arpa_inet.c: New file.
22656
22657 2007-02-17  Bruno Haible  <bruno@clisp.org>
22658
22659         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
22660         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
22661         if the corresponding module is not enabled. Emit link warnings if
22662         the function is used nevertheless.
22663         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
22664         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
22665         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
22666         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
22667         * modules/inttypes (Depends-on): Add link-warning.
22668         (Makefile.am): Copy the contents of build-aux/link-warning.h into
22669         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
22670         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
22671         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
22672         * modules/imaxdiv (configure.ac): Likewise.
22673         * modules/strtoimax (configure.ac): Likewise.
22674         * modules/strtoumax (configure.ac): Likewise.
22675
22676 2007-02-17  Bruno Haible  <bruno@clisp.org>
22677
22678         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
22679         gl_STRING_MODULE_INDICATOR_DEFAULTS.
22680         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
22681         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
22682
22683 2007-02-17  Bruno Haible  <bruno@clisp.org>
22684
22685         * modules/link-warning: New file.
22686         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
22687         * lib/string_.h (GL_LINK_WARNING): Remove definition.
22688         * modules/string (Depends-on): Add link-warning.
22689         (Makefile.am): Copy the contents of build-aux/link-warning.h into
22690         string.h.
22691         * MODULES.html.sh (Support for building libraries and executables): Add
22692         link-warning.
22693
22694 2007-02-17  Bruno Haible  <bruno@clisp.org>
22695
22696         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
22697         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
22698         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
22699         long lines.
22700
22701 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
22702             Bruno Haible  <bruno@clisp.org>
22703
22704         * modules/tmpfile: New file.
22705         * lib/tmpfile.c: New file.
22706         * m4/tmpfile.m4: New file.
22707         * MODULES.html.sh (func_all_modules): New section "Input/output".
22708
22709 2007-02-15  Bruno Haible  <bruno@clisp.org>
22710
22711         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
22712         (supports_delete_on_close): New function.
22713         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
22714
22715 2007-02-14  Bruno Haible  <bruno@clisp.org>
22716
22717         * modules/mbspcasecmp-tests: New file.
22718         * tests/test-mbspcasecmp.sh: New file.
22719         * tests/test-mbspcasecmp.c: New file.
22720
22721         New module mbspcasecmp.
22722         * modules/mbspcasecmp: New file.
22723         * lib/mbspcasecmp.c: New file.
22724         * lib/string_.h (strncasecmp): Change warning message.
22725         (mbspcasecmp): New declaration.
22726         * m4/mbspcasecmp.m4: New file.
22727         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22728         GNULIB_MBSPCASECMP.
22729         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
22730         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
22731
22732 2007-02-14  Bruno Haible  <bruno@clisp.org>
22733
22734         * modules/mbsncasecmp-tests: New file.
22735         * tests/test-mbsncasecmp.sh: New file.
22736         * tests/test-mbsncasecmp.c: New file.
22737
22738         New module mbsncasecmp.
22739         * modules/mbsncasecmp: New file.
22740         * lib/mbsncasecmp.c: New file.
22741         * lib/string_.h (mbsncasecmp): New declaration.
22742         * m4/mbsncasecmp.m4: New file.
22743         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22744         GNULIB_MBSNCASECMP.
22745         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
22746         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
22747
22748 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
22749
22750         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
22751         Verify that it doesn't overlap with our flags.
22752         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
22753         do not have the desired effect in multibyte locales; instead, use
22754         mbscasecmp.
22755         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
22756         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
22757         we don't require GNU fnmatch ourselves (if our users require it, they
22758         should do so explicitly).
22759
22760         Fix regex code so it doesn't rely on strcasecmp.
22761         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
22762         Otherwise, include gnulib's langinfo.h.
22763         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
22764         undesirable behavior in non-C locales.  Instead, rely on localecharset.
22765         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
22766         * modules/regex (FILES): Remove m4/codeset.m4.
22767         (Depends-on): Add localcharset.  Remove strcase.
22768
22769 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22770
22771         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
22772         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
22773
22774 2007-02-13  Bruno Haible  <bruno@clisp.org>
22775
22776         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
22777         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
22778
22779 2007-02-12  Bruno Haible  <bruno@clisp.org>
22780
22781         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
22782         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
22783         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
22784         time warning rather than a link error.
22785
22786 2007-02-12  Bruno Haible  <bruno@clisp.org>
22787
22788         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
22789         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
22790         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
22791
22792 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
22793
22794         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
22795         args, not 2.
22796
22797 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
22798
22799         New module 'time', so that apps can include <time.h> as per
22800         POSIX and GNU instead of separate include files like time_r.h
22801         and timegm.h.  This implementation tries out a simpler approach
22802         for replacing decls in standard include files (as compared to
22803         the string module), somewhat as an experiment.
22804
22805         * config/srclist.txt: Comment out mktime.c for now.
22806         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
22807         since it doesn't apply any more.  Use generic wording instead.
22808         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
22809         'time'.
22810         * lib/time_.h, m4/time_h.m4, modules/time: New files.
22811         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
22812         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
22813         Don't include <sys/types.h>; no longer needed since we assume C89.
22814         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
22815         * lib/strftime.c: Likewise.
22816         * lib/time_r.c: Likewise.
22817         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
22818         * lib/nanosleep.c: Include <time.h> first, to check interface.
22819         * lib/strptime.c: Likewise.
22820         * lib/time_r.c: Likewise.
22821         * lib/timegm.c: Likewise.
22822         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
22823         needed.
22824         * lib/timegm.c: Don't include timegm.h; no longer needed.
22825         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
22826         time.h now handles any problems in that area.
22827         (struct timespec, nanosleep): Remove; time.h now arranges for these.
22828         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
22829         that time.h defines struct timespec.
22830         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
22831         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
22832         handles that.
22833         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
22834         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
22835         needed.  Set REPLACE_LOCALTIME.
22836         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
22837         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
22838         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
22839         nanosleep; time_h.m4 now does that.  Don't require
22840         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
22841         module handles this now.
22842         * modules/getdate (Depends-on): Remove timespec.  Add time.
22843         * modules/nanosleep (Depends-on): Likewise.
22844         * modules/stat-time (Depends-on): Likewise.
22845         * modules/nanosleep (Include): Include time.h, not timespec.h.
22846         * modules/strptime (Files): Remove lib/strptime.h.
22847         (Depends-on): Add extensions, time.
22848         (Include): Include time.h, not strptime.h.
22849         * modules/time_r (Files): Remove lib/time_r.h.
22850         (Depends-on): Add time.
22851         (Include): Include time.h, not time_r.h.
22852         * modules/timegm: Likewise.
22853         * modules/timespec (Description): Now does timespec-related decls
22854         of our own, instead of struct timespec itself.
22855         (Depends-on): Add time; remove extensions.
22856         (Maintainer): Add self.
22857         * modules/utimecmp (Depends-on): Add time; remove timespec.
22858         * modules/utimens (Depends-on): Likewise.
22859         * modules/xnanosleep (Depends-on): Likewise.
22860
22861 2007-02-11  Bruno Haible  <bruno@clisp.org>
22862
22863         * lib/c-strstr.c: Include allocsa.h.
22864         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
22865         * lib/c-strcasestr.c: Include allocsa.h.
22866         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
22867         * lib/strcasestr.c: Include allocsa.h.
22868         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
22869         * lib/mbsstr.c: Include allocsa.h.
22870         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
22871         allocsa/freesa instead of malloc/free.
22872         * lib/mbscasestr.c: Include allocsa.h.
22873         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
22874         allocsa/freesa instead of malloc/free.
22875         * modules/c-strstr (Depends-on): Add allocsa.
22876         * modules/c-strcasestr (Depends-on): Likewise.
22877         * modules/strcasestr (Depends-on): Likewise.
22878         * modules/mbsstr (Depends-on): Likewise.
22879         * modules/mbscasestr (Depends-on): Likewise.
22880
22881 2007-02-11  Bruno Haible  <bruno@clisp.org>
22882
22883         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
22884
22885         * modules/mbsspn-tests: New file.
22886         * tests/test-mbsspn.sh: New file.
22887         * tests/test-mbsspn.c: New file.
22888
22889 2007-02-11  Bruno Haible  <bruno@clisp.org>
22890
22891         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
22892
22893         * modules/mbspbrk-tests: New file.
22894         * tests/test-mbspbrk.sh: New file.
22895         * tests/test-mbspbrk.c: New file.
22896
22897 2007-02-11  Bruno Haible  <bruno@clisp.org>
22898
22899         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
22900         unneeded cast.
22901
22902         * modules/mbscspn-tests: New file.
22903         * tests/test-mbscspn.sh: New file.
22904         * tests/test-mbscspn.c: New file.
22905
22906 2007-02-11  Bruno Haible  <bruno@clisp.org>
22907
22908         * modules/mbscasecmp-tests: New file.
22909         * tests/test-mbscasecmp.sh: New file.
22910         * tests/test-mbscasecmp.c: New file.
22911
22912 2007-02-11  Bruno Haible  <bruno@clisp.org>
22913
22914         Ensure O(n) worst-case complexity of mbscasestr.
22915         * lib/mbscasestr.c: Include stdbool.h.
22916         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
22917         functions.
22918         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
22919         the bookkeeping indicates that it's worth it.
22920         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
22921
22922         * modules/mbscasestr-tests: New file.
22923         * tests/test-mbscasestr1.c: New file.
22924         * tests/test-mbscasestr2.sh: New file.
22925         * tests/test-mbscasestr2.c: New file.
22926         * tests/test-mbscasestr3.sh: New file.
22927         * tests/test-mbscasestr3.c: New file.
22928         * tests/test-mbscasestr4.sh: New file.
22929         * tests/test-mbscasestr4.c: New file.
22930         * m4/locale-tr.m4: New file.
22931
22932 2007-02-11  Bruno Haible  <bruno@clisp.org>
22933
22934         Ensure O(n) worst-case complexity of mbsstr.
22935         * lib/mbsstr.c: Include stdbool.h.
22936         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
22937         functions.
22938         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
22939         bookkeeping indicates that it's worth it.
22940         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
22941
22942         * modules/mbsstr-tests: New file.
22943         * tests/test-mbsstr1.c: New file.
22944         * tests/test-mbsstr2.sh: New file.
22945         * tests/test-mbsstr2.c: New file.
22946         * tests/test-mbsstr3.sh: New file.
22947         * tests/test-mbsstr3.c: New file.
22948         * m4/locale-fr.m4: New file.
22949
22950 2007-02-11  Bruno Haible  <bruno@clisp.org>
22951
22952         * lib/mbsrchr.c (mbsrchr): Fix bug.
22953
22954         * modules/mbsrchr-tests: New file.
22955         * tests/test-mbsrchr.sh: New file.
22956         * tests/test-mbsrchr.c: New file.
22957
22958 2007-02-11  Bruno Haible  <bruno@clisp.org>
22959
22960         * lib/mbschr.c (mbschr): Fix bug.
22961
22962         * modules/mbschr-tests: New file.
22963         * tests/test-mbschr.sh: New file.
22964         * tests/test-mbschr.c: New file.
22965         * m4/locale-zh.m4: New file.
22966
22967 2007-02-11  Bruno Haible  <bruno@clisp.org>
22968
22969         Support for copying multibyte string iterators.
22970         * lib/mbiter.h: Include <string.h>.
22971         (mbiter_multi_copy): New function.
22972         (mbi_copy): New macro.
22973         * lib/mbuiter.h: Include <string.h>.
22974         (mbuiter_multi_copy): New function.
22975         (mbui_copy): New macro.
22976
22977 2007-02-11  Bruno Haible  <bruno@clisp.org>
22978
22979         New module mbslen.
22980         * modules/mbslen: New file.
22981         * lib/mbslen.c: New file.
22982         * lib/string_.h (mbslen): New declaration.
22983         * m4/mbslen.m4: New file.
22984         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22985         GNULIB_MBSLEN.
22986         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
22987         * MODULES.html.sh (Internationalization functions): Add mbslen.
22988
22989 2007-02-11  Bruno Haible  <bruno@clisp.org>
22990
22991         Ensure O(n) worst-case complexity of strcasestr substitute.
22992         * lib/strcasestr.c: Include stdbool.h.
22993         (knuth_morris_pratt): New function.
22994         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
22995         bookkeeping indicates that it's worth it.
22996         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
22997
22998         * modules/strcasestr-tests: New file.
22999         * tests/test-strcasestr.c: New file.
23000
23001 2007-02-11  Bruno Haible  <bruno@clisp.org>
23002
23003         Ensure O(n) worst-case complexity of c_strcasestr.
23004         * lib/c-strcasestr.c: Include stdbool.h, string.h.
23005         (knuth_morris_pratt): New function.
23006         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
23007         the bookkeeping indicates that it's worth it.
23008         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
23009
23010         * modules/c-strcasestr-tests: New file.
23011         * tests/test-c-strcasestr.c: New file.
23012
23013 2007-02-11  Bruno Haible  <bruno@clisp.org>
23014
23015         Ensure O(n) worst-case complexity of c_strstr.
23016         * lib/c-strstr.c: Include stdbool.h, string.h.
23017         (knuth_morris_pratt): New function.
23018         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
23019         bookkeeping indicates that it's worth it.
23020         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
23021
23022         * lib/c-strstr.c: Complete rewrite for maintainability.
23023
23024         * modules/c-strstr-tests: New file.
23025         * tests/test-c-strstr.c: New file.
23026
23027 2007-02-11  Bruno Haible  <bruno@clisp.org>
23028
23029         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
23030         5.2.1 and earlier, whereby \055 was treated just like the range
23031         delimiter '-'.
23032         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
23033
23034 2007-02-08  Bruno Haible  <bruno@clisp.org>
23035
23036         * modules/regex (Depends-on): Add stdbool.
23037         Reported by Dalibor Topic <robilad@kaffe.org>.
23038
23039 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
23040
23041         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
23042         Prefer returning from main to exiting from it.
23043         Remove unnecessary parens after sizeof.
23044
23045 2007-02-05  Bruno Haible  <bruno@clisp.org>
23046
23047         New module mbssep.
23048         * modules/mbssep: New file.
23049         * lib/mbssep.c: New file.
23050         * lib/string_.h (strsep): Add a conditional link warning.
23051         (mbssep): New declaration.
23052         * m4/mbssep.m4: New file.
23053         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23054         GNULIB_MBSSEP.
23055         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
23056         * MODULES.html.sh (Internationalization functions): Add mbssep.
23057
23058 2007-02-05  Bruno Haible  <bruno@clisp.org>
23059
23060         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
23061         Optimize search in case of 1 delimiter.
23062
23063 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
23064
23065         * lib/acl.h: Include sys/types.h before sys/acl.h.
23066
23067 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
23068
23069         Merge upstream fix for glibc bugzilla #3957:
23070
23071         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
23072
23073         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
23074         bit for RE_HAT_LISTS_NOT_NEWLINE.
23075         (build_charclass_op): Remove bogus comment.
23076
23077 2007-02-05  Simon Josefsson  <simon@josefsson.org>
23078
23079         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
23080
23081 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
23082
23083         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
23084         * lib/memmem.c [!defined _LIBC]: Include config.h.
23085
23086 2007-02-04  Bruno Haible  <bruno@clisp.org>
23087
23088         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
23089         warning message.
23090
23091 2007-02-04  Bruno Haible  <bruno@clisp.org>
23092
23093         New module mbstok_r.
23094         * modules/mbstok_r: New file.
23095         * lib/mbstok_r.c: New file.
23096         * lib/string_.h (strtok_r): Change argument names to match the
23097         comments. Add a conditional link warning.
23098         (mbstok_r): New declaration.
23099         * m4/mbstok_r.m4: New file.
23100         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23101         GNULIB_MBSTOK_R.
23102         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
23103         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
23104
23105 2007-02-04  Bruno Haible  <bruno@clisp.org>
23106
23107         New module mbsspn.
23108         * modules/mbsspn: New file.
23109         * lib/mbsspn.c: New file.
23110         * lib/string_.h (strspn): Add a conditional link warning.
23111         (mbsspn): New declaration.
23112         * m4/mbsspn.m4: New file.
23113         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23114         GNULIB_MBSSPN.
23115         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
23116         * MODULES.html.sh (Internationalization functions): Add mbsspn.
23117
23118 2007-02-04  Bruno Haible  <bruno@clisp.org>
23119
23120         New module mbspbrk.
23121         * modules/mbspbrk: New file.
23122         * lib/mbspbrk.c: New file.
23123         * lib/string_.h (strpbrk): Add a conditional link warning.
23124         (mbspbrk): New declaration.
23125         * m4/mbspbrk.m4: New file.
23126         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23127         GNULIB_MBSPBRK.
23128         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
23129         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
23130
23131 2007-02-04  Bruno Haible  <bruno@clisp.org>
23132
23133         New module mbscspn.
23134         * modules/mbscspn: New file.
23135         * lib/mbscspn.c: New file.
23136         * lib/string_.h (strcspn): Add a conditional link warning.
23137         (mbscspn): New declaration.
23138         * m4/mbscspn.m4: New file.
23139         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23140         GNULIB_MBSCSPN.
23141         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
23142         * MODULES.html.sh (Internationalization functions): Add mbscspn.
23143
23144 2007-02-04  Bruno Haible  <bruno@clisp.org>
23145
23146         New module mbscasestr, reduced goal of strcasestr.
23147         * modules/mbscasestr: New file.
23148         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
23149         (mbscasestr): Renamed from strcasestr.
23150         * lib/strcasestr.c: Don't include mbuiter.h.
23151         (strcasestr): Remove support for multibyte locales.
23152         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
23153         Change the conditional link warning.
23154         (mbscasestr): New declaration.
23155         * m4/mbscasestr.m4: New file.
23156         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
23157         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
23158         REPLACE_STRCASESTR.
23159         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
23160         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
23161         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
23162         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
23163         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
23164         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
23165         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
23166         (Depends-on): Remove mbuiter.
23167         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
23168
23169 2007-02-04  Bruno Haible  <bruno@clisp.org>
23170
23171         Simplify handling of strncasecmp.
23172         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
23173         the conditional link warning.
23174         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
23175         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
23176         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
23177         * modules/strcase (configure.ac): Don't invoke
23178         gl_STRING_MODULE_INDICATOR.
23179         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
23180
23181 2007-02-04  Bruno Haible  <bruno@clisp.org>
23182
23183         New module mbscasecmp, reduced goal of strcasecmp.
23184         * modules/mbscasecmp: New file.
23185         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
23186         (mbscasecmp): Renamed from strcasecmp.
23187         * lib/strcasecmp.c: Don't include mbuiter.h.
23188         (strcasecmp): Remove support for multibyte locales.
23189         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
23190         Change the conditional link warning.
23191         (mbscasecmp): New declaration.
23192         * m4/mbscasecmp.m4: New file.
23193         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
23194         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
23195         REPLACE_STRCASECMP.
23196         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
23197         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23198         GNULIB_MBSCASECMP.
23199         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
23200         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
23201         * modules/strcase (Files): Remove m4/mbrtowc.m4.
23202         (Depends-on): Remove mbuiter.
23203         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
23204
23205 2007-02-04  Bruno Haible  <bruno@clisp.org>
23206
23207         New module mbsstr. Remove module strstr.
23208         * modules/mbsstr: New file.
23209         * modules/strstr: Remove file.
23210         * lib/mbsstr.c: Renamed from lib/strstr.c.
23211         (mbsstr): Renamed from strstr.
23212         * lib/string_.h (strstr): Remove declaration. Change the conditional
23213         link warning.
23214         (mbsstr): New declaration.
23215         * m4/mbsstr.m4: New file.
23216         * m4/strstr.m4: Remove file.
23217         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
23218         REPLACE_STRSTR.
23219         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
23220         Don't initialize GNULIB_STRSTR.
23221         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
23222         substitute GNULIB_STRSTR and REPLACE_STRSTR.
23223         * MODULES.html.sh (Internationalization functions): Add mbsstr.
23224         (Support for systems lacking ANSI C 89): Remove strstr.
23225
23226 2007-02-04  Bruno Haible  <bruno@clisp.org>
23227
23228         New module mbsrchr.
23229         * modules/mbsrchr: New file.
23230         * lib/mbsrchr.c: New file.
23231         * lib/string_.h (strrchr): Add a conditional link warning.
23232         (mbsrchr): New declaration.
23233         * m4/mbsrchr.m4: New file.
23234         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23235         GNULIB_MBSRCHR.
23236         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
23237         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
23238
23239 2007-02-04  Bruno Haible  <bruno@clisp.org>
23240
23241         New module mbschr.
23242         * modules/mbschr: New file.
23243         * lib/mbschr.c: New file.
23244         * lib/string_.h (strchr): Add a conditional link warning.
23245         (mbschr): New declaration.
23246         * m4/mbschr.m4: New file.
23247         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23248         GNULIB_MBSCHR.
23249         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
23250         * MODULES.html.sh (Internationalization functions): Add mbschr.
23251
23252 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
23253
23254         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
23255
23256         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
23257
23258 2007-02-04  Bruno Haible  <bruno@clisp.org>
23259
23260         New module description section 'configure.ac-early'.
23261         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
23262         (func_get_autoconf_early_snippet): New function.
23263         (func_import, func_create_testdir): Use it. Remove special cases for
23264         modules 'extensions' and 'lock'.
23265         * modules/extensions (configure.ac-early): Require
23266         gl_USE_SYSTEM_EXTENSIONS.
23267         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
23268
23269 2007-02-04  Bruno Haible  <bruno@clisp.org>
23270
23271         Make use of gcj-4.3's -fsource and -ftarget option.
23272         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
23273         and if so try the options -fsource and -ftarget.
23274         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
23275         source_version, ftarget_option, target_version arguments.
23276         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
23277         (is_envjavac_oldgcj_14_14_usable): Renamed from
23278         is_envjavac_gcj_14_14_usable.
23279         (is_envjavac_oldgcj_14_13_usable): Renamed from
23280         is_envjavac_gcj_14_13_usable.
23281         (is_gcj_present): Update.
23282         (is_gcj_43, is_gcj43_usable): New functions.
23283         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
23284         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
23285         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
23286         try the options -fsource and -ftarget.
23287
23288 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23289
23290         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
23291         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
23292         larger value.
23293
23294 2007-02-03  Jim Meyering  <jim@meyering.net>
23295
23296         Give tools a better chance to allocate space for very large buffers.
23297         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
23298
23299         Make pwd and readlink work also when run with an unreadable parent dir
23300         on systems with openat support.
23301         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
23302         provided getcwd function, even when we have openat support.
23303         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
23304
23305 2007-02-02  Bruno Haible  <bruno@clisp.org>
23306
23307         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
23308         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
23309         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
23310         portability problems if one of these functions is only used on specific
23311         platforms.
23312         Reported by Paul Eggert.
23313
23314 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
23315
23316         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
23317         is causing more trouble than it's curing.
23318         * lib/regex_internal.h (__mempcpy): Remove.
23319         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
23320         (and make the code a tad smaller to boot).
23321         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
23322
23323 2007-02-02  Jim Meyering  <jim@meyering.net>
23324
23325         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
23326         section, not in the Makefile.am: one.
23327
23328 2007-02-02  Eric Blake  <ebb9@byu.net>
23329
23330         * lib/strchrnul.c: Always include config.h first.
23331
23332         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
23333         gnulib strstr is not necessary here.
23334
23335 2007-02-02  Simon Josefsson  <simon@josefsson.org>
23336
23337         * m4/socklen.m4: Fix typo.
23338
23339 2007-02-02  Eric Blake  <ebb9@byu.net>
23340
23341         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
23342         * modules/netinet_in (Makefile.am): Likewise.
23343
23344 2007-02-01  Bruno Haible  <bruno@clisp.org>
23345
23346         * lib/string_.h (GL_LINK_WARNING): New macro.
23347         (strcasecmp, strstr, strcasestr): If provided by the system,
23348         conditionally define as a macro that leads to a warning instead of to
23349         an error.
23350         (strncasecmp): Conditionally define as a macro that leads to a warning.
23351
23352 2007-02-01  Karl Berry  <karl@gnu.org>
23353
23354         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
23355
23356 2007-02-01  Bruno Haible  <bruno@clisp.org>
23357
23358         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
23359         renamings.
23360
23361 2007-02-01  Eric Blake  <ebb9@byu.net>
23362
23363         * modules/regex (Depends-on): Revert dependence on mempcpy.
23364         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
23365         module's definition of mempcpy.
23366         Reported by Paul Eggert.
23367
23368 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
23369
23370         * lib/string_.h: If the gnulib module XYZ is not present, undefine
23371         the symbol XYZ before redefining it.  This fixes a problem with
23372         programs that don't use XYZ, when compiled on systems that define
23373         XYZ to something else.
23374
23375 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
23376
23377         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
23378         occurs when "mkdir -m foo" creates a setgid directory that is (1)
23379         writeable to group or other and (2) is intended to have a special
23380         mode bit that is set or cleared.  In such a case, the directory
23381         should be neither group- nor other-writeable until the special
23382         mode bits are right.
23383
23384 2007-01-31  Eric Blake  <ebb9@byu.net>
23385
23386         * modules/mountlist (Depends-on): Add strstr.
23387
23388         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
23389         bug.
23390         * modules/string (Makefile.am): Remove redundant replacement.
23391         * modules/regex (Depends-on): Add mempcpy.
23392
23393 2007-01-31  Bruno Haible  <bruno@clisp.org>
23394
23395         New module description field 'Link'.
23396         * gnulib-tool (func_usage): Document --extract-link-directive.
23397         (sed_extract_prog): Recognize 'Link' directive.
23398         (func_get_link_directive): New function.
23399         (func_import): Show summary of link directives.
23400         Handle --extract-link-directive option.
23401         * modules/acl (Link): New section.
23402         * modules/clock-time (Link): New section.
23403         * modules/euidaccess (Link): New section.
23404         * modules/gettext (Link): New section.
23405         * modules/iconv (Link): New section.
23406         * modules/lock (Link): New section.
23407         * modules/nanosleep (Link): New section.
23408         * modules/readline (Link): New section.
23409
23410 2007-01-27  Bruno Haible  <bruno@clisp.org>
23411
23412         Enforce the use of gnulib modules for unportable <string.h> functions.
23413         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
23414         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
23415         (gl_HEADER_STRING_H_BODY): Require it.
23416         * lib/string_.h: If the gnulib module XYZ is not present, redefine
23417         the symbol XYZ to one that gives a link error.
23418         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
23419         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
23420         * modules/mempcpy (configure.ac): Likewise.
23421         * modules/memrchr (configure.ac): Likewise.
23422         * modules/stpcpy (configure.ac): Likewise.
23423         * modules/stpncpy (configure.ac): Likewise.
23424         * modules/strcase (configure.ac): Likewise.
23425         * modules/strcasestr (configure.ac): Likewise.
23426         * modules/strchrnul (configure.ac): Likewise.
23427         * modules/strdup (configure.ac): Likewise.
23428         * modules/strndup (configure.ac): Likewise.
23429         * modules/strnlen (configure.ac): Likewise.
23430         * modules/strpbrk (configure.ac): Likewise.
23431         * modules/strsep (configure.ac): Likewise.
23432         * modules/strstr (configure.ac): Likewise.
23433         * modules/strtok_r (configure.ac): Likewise.
23434
23435 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
23436
23437         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
23438
23439 2007-01-30  Jim Meyering  <jim@meyering.net>
23440
23441         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
23442
23443 2007-01-29  Bruno Haible  <bruno@clisp.org>
23444
23445         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
23446         * lib/execute.c: Likewise.
23447         * lib/pipe.c: Likewise.
23448         * lib/printf-args.h: Likewise.
23449         * lib/printf-args.c: Likewise.
23450         * lib/printf-parse.c: Likewise.
23451         * lib/vasnprintf.c: Likewise.
23452
23453 2007-01-29  Eric Blake  <ebb9@byu.net>
23454
23455         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
23456         declaration.
23457
23458 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
23459
23460         * lib/strptime.h (strptime): Use 'restrict' for args where
23461         POSIX requires this.
23462         * lib/strptime.c (strptime): Likewise.
23463         Change license notice from LGPL to GPL, since gnulib-tool will
23464         change this as needed.
23465         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
23466         defined.
23467         Include "strptime.h" first, to check interface.
23468         Do not #undef _LIBC and _NL_CURRENT.
23469         Do not include <stdlib.h>; no longer needed.
23470         Include "time_r.h" and declare ptime_locale_status
23471         only if _LIBC is not defined.
23472         (__P): Remove unused macro.
23473         (match_string): Bring back glibc version, but use it only if _LIBC
23474         is defined.
23475         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
23476         Remove unnecessary assertion and abort() call.
23477         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
23478         * m4/strptime.m4: Fix serial number comment.
23479         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
23480         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
23481         (Depends-on): Add time_r.
23482
23483 2007-01-29  Bruno Haible  <bruno@clisp.org>
23484
23485         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23486         strptime.
23487         * modules/strptime (Depends-on): Add stdbool.
23488         * lib/strptime.h: Include <time.h> always. Add comments.
23489
23490 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23491
23492         * modules/strptime: New file.
23493         * lib/strptime.h: New file.
23494         * lib/strptime.c: New file.
23495         * m4/strptime.m4: New file.
23496
23497 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
23498
23499         * MODULES.html.sh: New module mpsort.
23500         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
23501
23502         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
23503         a circularity problem with HP-UX ia64 reported by Bob Proulx in
23504         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
23505         All uses changed.
23506         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
23507         All uses changed.
23508         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
23509         to _Restrict_.
23510         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
23511         the parameter matches the prototype.
23512
23513 2007-01-28  Jim Meyering  <jim@meyering.net>
23514
23515         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
23516         sys/time.h here, reverting that part of the previous patch:
23517         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
23518
23519 2007-01-28  Bruno Haible  <bruno@clisp.org>
23520
23521         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
23522         value of $(SYS_TIME_H).
23523         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
23524         remove it conditionally, too. [added by Jim Meyering]
23525         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
23526         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
23527         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
23528         GETTIMEOFDAY_REPLACEMENT to 1.
23529
23530 2007-01-28  Bruno Haible  <bruno@clisp.org>
23531
23532         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
23533         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
23534         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
23535         Set UNISTD_H instead of UNISTD_H2.
23536         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
23537
23538 2007-01-28  Bruno Haible  <bruno@clisp.org>
23539
23540         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
23541         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
23542
23543 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23544
23545         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
23546         (func_create_testdir): Ensure C locale for `grep' and `tr'
23547         character ranges.
23548         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
23549         ACLOCAL_AMFLAGS parsing state machine.
23550
23551 2007-01-27  Bruno Haible  <bruno@clisp.org>
23552
23553         * modules/unistr/base: Update.
23554
23555 2007-01-27  Bruno Haible  <bruno@clisp.org>
23556
23557         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
23558         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
23559         * modules/unistr/u32-mbtouc-unsafe: Renamed from
23560         modules/unistr/u32-mbtouc.
23561         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
23562         * lib/unistr.h: Update.
23563         * lib/linebreak.c: Update.
23564         * modules/unistr/u32-mbtouc: Renamed from
23565         modules/unistr/u32-mbtouc-safe.
23566         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
23567         * lib/unistr.h: Update.
23568         * lib/unistr/u32-to-u8.c: Update.
23569         * lib/unistr/u32-to-u16.c: Update.
23570
23571 2007-01-27  Bruno Haible  <bruno@clisp.org>
23572
23573         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
23574         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
23575         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
23576         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
23577         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
23578         * modules/unistr/u16-mbtouc-unsafe: Renamed from
23579         modules/unistr/u16-mbtouc.
23580         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
23581         * lib/unistr.h: Update.
23582         * lib/linebreak.c: Update.
23583         * modules/linebreak: Update.
23584         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
23585         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
23586         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
23587         * modules/unistr/u16-mbtouc: Renamed from
23588         modules/unistr/u16-mbtouc-safe.
23589         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
23590         * lib/unistr.h: Update.
23591         * lib/unistr/u16-to-u8.c: Update.
23592         * modules/unistr/u16-to-u8: Update.
23593         * lib/unistr/u16-to-u32.c: Update.
23594         * modules/unistr/u16-to-u32: Update.
23595
23596 2007-01-27  Bruno Haible  <bruno@clisp.org>
23597
23598         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
23599         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
23600         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
23601         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
23602         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
23603         * modules/unistr/u8-mbtouc-unsafe: Renamed from
23604         modules/unistr/u8-mbtouc.
23605         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
23606         * lib/unistr.h: Update.
23607         * lib/striconveh.c: Update.
23608         * modules/striconveh: Update.
23609         * lib/linebreak.c: Update.
23610         * modules/linebreak: Update.
23611         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
23612         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
23613         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
23614         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
23615         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
23616         * lib/unistr.h: Update.
23617         * lib/striconveh.c: Update.
23618         * modules/striconveh: Update.
23619         * lib/unistr/u8-to-u16.c: Update.
23620         * modules/unistr/u8-to-u16: Update.
23621         * lib/unistr/u8-to-u32.c: Update.
23622         * modules/unistr/u8-to-u32: Update.
23623
23624 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23625
23626         Sync from Libtool.
23627         * lib/argz.c: Do not include strings.h nor memory.h, include
23628         string.h unconditionally.  Patch by Simon Josefsson.
23629
23630 2007-01-27  Bruno Haible  <bruno@clisp.org>
23631
23632         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
23633         from gl_HEADER_STRING_H_BODY.
23634         (gl_HEADER_STRING_H_BODY): Require it.
23635         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
23636         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
23637         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
23638         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
23639         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
23640         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
23641         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
23642         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
23643         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
23644         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
23645         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
23646         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
23647         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
23648         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
23649         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
23650
23651 2007-01-27  Bruno Haible  <bruno@clisp.org>
23652
23653         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
23654         check_PROGRAMS into noinst_PROGRAMS.
23655         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
23656         check_PROGRAMS in this case.
23657         (func_import): Set for_test to false.
23658         (func_create_testdir): Set for_test to true.
23659
23660 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
23661             Bruno Haible  <bruno@clisp.org>
23662
23663         * modules/strcasestr (Files): Remove lib/strcasestr.h.
23664         (Depends-on): Add string.
23665         (Includes): Use <string.h> instead of strcasestr.h.
23666         * modules/string (Makefile.am): Also substitute the value of
23667         REPLACE_STRCASESTR.
23668         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
23669         assume strcasestr is declared in <string.h> not <strings.h>. Also
23670         set REPLACE_STRCASESTR.
23671         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
23672         REPLACE_STRCASESTR.
23673         * lib/strcasestr.h: Remove file.
23674         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
23675         * lib/string_.h (strcasestr): New declaration.
23676
23677 2007-01-27  Bruno Haible  <bruno@clisp.org>
23678
23679         * lib/string_.h: Use 'extern'.
23680
23681 2007-01-27  Jim Meyering  <jim@meyering.net>
23682
23683         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
23684         of set-but-not-used local, "q".
23685
23686         * lib/mempcpy.c: Include <config.h> before <string.h>.
23687         This fixes a compilation error on HP-UX, due to the system's
23688         "restrict"-using mempcpy prototype.
23689
23690 2007-01-26  Bruno Haible  <bruno@clisp.org>
23691
23692         Small optimization.
23693         * lib/javacomp.c: Include c-strstr.h.
23694          (is_envjavac_gcj): Use c_strstr instead of strstr.
23695         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
23696
23697 2007-01-26  Bruno Haible  <bruno@clisp.org>
23698
23699         * MODULES.html.sh (Unicode string functions): Add the new modules.
23700
23701         * modules/uniconv/u32-strconv-to-locale: New file.
23702         * lib/uniconv/u32-strconv-to-locale.c: New file.
23703
23704         * modules/uniconv/u16-strconv-to-locale: New file.
23705         * lib/uniconv/u16-strconv-to-locale.c: New file.
23706
23707         * modules/uniconv/u8-strconv-to-locale: New file.
23708         * lib/uniconv/u8-strconv-to-locale.c: New file.
23709
23710         * modules/uniconv/u32-strconv-from-locale: New file.
23711         * lib/uniconv/u32-strconv-from-locale.c: New file.
23712
23713         * modules/uniconv/u16-strconv-from-locale: New file.
23714         * lib/uniconv/u16-strconv-from-locale.c: New file.
23715
23716         * modules/uniconv/u8-strconv-from-locale: New file.
23717         * lib/uniconv/u8-strconv-from-locale.c: New file.
23718
23719         * modules/uniconv/u32-strconv-to-enc: New file.
23720         * lib/uniconv/u32-strconv-to-enc.c: New file.
23721         * modules/uniconv/u32-strconv-to-enc-tests: New file.
23722         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
23723
23724         * modules/uniconv/u16-strconv-to-enc: New file.
23725         * lib/uniconv/u16-strconv-to-enc.c: New file.
23726         * lib/uniconv/u-strconv-to-enc.h: New file.
23727         * modules/uniconv/u16-strconv-to-enc-tests: New file.
23728         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
23729
23730         * modules/uniconv/u8-strconv-to-enc: New file.
23731         * lib/uniconv/u8-strconv-to-enc.c: New file.
23732         * modules/uniconv/u8-strconv-to-enc-tests: New file.
23733         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
23734
23735         * modules/uniconv/u32-strconv-from-enc: New file.
23736         * lib/uniconv/u32-strconv-from-enc.c: New file.
23737         * modules/uniconv/u32-strconv-from-enc-tests: New file.
23738         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
23739
23740         * modules/uniconv/u16-strconv-from-enc: New file.
23741         * lib/uniconv/u16-strconv-from-enc.c: New file.
23742         * modules/uniconv/u16-strconv-from-enc-tests: New file.
23743         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
23744
23745         * modules/uniconv/u8-strconv-from-enc: New file.
23746         * lib/uniconv/u8-strconv-from-enc.c: New file.
23747         * lib/uniconv/u-strconv-from-enc.h: New file.
23748         * modules/uniconv/u8-strconv-from-enc-tests: New file.
23749         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
23750
23751         * modules/uniconv/u32-conv-from-enc: New file.
23752         * lib/uniconv/u32-conv-from-enc.c: New file.
23753         * modules/uniconv/u32-conv-from-enc-tests: New file.
23754         * tests/uniconv/test-u32-conv-from-enc.c: New file.
23755
23756         * modules/uniconv/u16-conv-from-enc: New file.
23757         * lib/uniconv/u16-conv-from-enc.c: New file.
23758         * lib/uniconv/u-conv-from-enc.h: New file.
23759         * modules/uniconv/u16-conv-from-enc-tests: New file.
23760         * tests/uniconv/test-u16-conv-from-enc.c: New file.
23761
23762         * modules/uniconv/u8-conv-from-enc: New file.
23763         * lib/uniconv/u8-conv-from-enc.c: New file.
23764         * modules/uniconv/u8-conv-from-enc-tests: New file.
23765         * tests/uniconv/test-u8-conv-from-enc.c: New file.
23766
23767         * modules/uniconv/base: New file.
23768         * lib/uniconv.h: New file.
23769
23770 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
23771
23772         * doc/gnulib-tool.texi (Initial import): Update to match current
23773         behavior with strdup module.
23774         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
23775         * lib/memmem.h: Remove; all uses removed.  This is now done
23776         by <string.h>.
23777         * lib/mempcpy.h: Likewise.
23778         * lib/memrchr.h: Likewise.
23779         * lib/stpcpy.h: Likewise.
23780         * lib/stpncpy.h: Likewise.
23781         * lib/strcase.h: Likewise.
23782         * lib/strchrnul.h: Likewise.
23783         * lib/strdup.h: Likewise.
23784         * lib/strndup.h: Likewise.
23785         * lib/strnlen.h: Likewise.
23786         * lib/strpbrk.h: Likewise.
23787         * lib/strsep.h: Likewise.
23788         * lib/strstr.h: Likewise.
23789         * lib/strtok_r.h: Likewise.
23790         * lib/string_.h: New file.
23791         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
23792         Rely on <string.h> instead.
23793         * lib/canon-host.c: Likewise.
23794         * lib/chdir-long.c: Likewise.
23795         * lib/concatpath.c: Likewise.
23796         * lib/exclude.c: Likewise.
23797         * lib/fchdir.c: Likewise.
23798         * lib/getaddrinfo.c: Likewise.
23799         * lib/getcwd.c: Likewise.
23800         * lib/getsubopt.c: Likewise.
23801         * lib/glob.c: Likewise.
23802         * lib/hard-locale.c: Likewise.
23803         * lib/iconvme.c: Likewise.
23804         * lib/javacomp.c: Likewise.
23805         * lib/mempcpy.c: Likewise.
23806         * lib/memrchr.c: Likewise.
23807         * lib/regex_internal.h: Likewise.
23808         * lib/stpncpy.c: Likewise.
23809         * lib/strcasecmp.c: Likewise.
23810         * lib/strchrnul.c: Likewise.
23811         * lib/strdup.c: Likewise.
23812         * lib/striconv.c: Likewise.
23813         * lib/striconveh.c: Likewise.
23814         * lib/striconveha.c: Likewise.
23815         * lib/strncasecmp.c: Likewise.
23816         * lib/strndup.c: Likewise.
23817         * lib/strnlen.c: Likewise.
23818         * lib/strsep.c: Likewise.
23819         * lib/strstr.c: Likewise.
23820         * lib/strtok_r.c: Likewise.
23821         * lib/userspec.c: Likewise.
23822         * lib/w32spawn.h: Likewise.
23823         * lib/xstrndup.c: Likewise.
23824         * lib/mountlist.c (strstr): Remove decl.
23825         * m4/string_h.m4: New file.
23826         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
23827         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
23828         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
23829         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
23830         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
23831         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
23832         Set REPLACE_STRCASECMP if necessary.
23833         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
23834         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
23835         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
23836         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
23837         HAVE_DECL_STRDUP if necessary.
23838         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
23839         since gl_FUNC_STRNDUP does that now.
23840         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
23841         Check for decl here...
23842         (gl_PREREQ_STRNLEN): ... not here.
23843         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
23844         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
23845         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
23846         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
23847         necessary.
23848         * modules/string: New file.
23849         * modules/memmem (Files): Remove special-purpose include file.
23850         (Depends-on): Add string.
23851         (Include): Include <string.h>, not the removed file.
23852         * modules/mempcpy: Likewise.
23853         * modules/memrchr: Likewise.
23854         * modules/stpcpy: Likewise.
23855         * modules/stpncpy: Likewise.
23856         * modules/strcase: Likewise.
23857         * modules/strchrnul: Likewise.
23858         * modules/strdup: Likewise.
23859         * modules/strndup: Likewise.
23860         * modules/strnlen: Likewise.
23861         * modules/strpbrk: Likewise.
23862         * modules/strsep: Likewise.
23863         * modules/strstr: Likewise.
23864         * modules/strtok_r: Likewise.
23865         * tests/test-dirname.c: Don't include "strdup.h", since
23866         <string.h> now suffices.
23867         * tests/test-memmem.c: Don't include "memmem.h", since
23868         <string.h> now suffices.
23869
23870 2007-01-25  Bruno Haible  <bruno@clisp.org>
23871
23872         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
23873         *resultp is 0.
23874
23875         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
23876         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
23877         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
23878         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
23879
23880         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
23881         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
23882         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
23883         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
23884         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
23885         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
23886
23887 2007-01-24  Bruno Haible  <bruno@clisp.org>
23888
23889         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
23890         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
23891         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
23892         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
23893         gl_FUNC_FTS_CORE.
23894         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
23895         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
23896         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
23897         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
23898         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
23899         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
23900         gl_FUNC_FCHOWNAT.
23901         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
23902         gl_FUNC_STRFTIME.
23903         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
23904         Reported by Ralf Wildenhues.
23905
23906 2007-01-24  Bruno Haible  <bruno@clisp.org>
23907
23908         Drop AC_REQUIRE calls that are redundant with the module dependencies.
23909         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
23910         gl_GETADDRINFO.
23911         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
23912         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
23913         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
23914
23915 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
23916
23917         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
23918         Don't use 'exit'; just return from 'main'.
23919         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
23920
23921         * lib/fnmatch_.h: Readjust white space and comments to match
23922         glibc, to avoid spurious diffs.
23923
23924 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23925
23926         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
23927         2004-12-01 change by Jakub Jelinek, since this code won't compile
23928         if !LIBC.  Problem reported by Bob Proulx.
23929
23930 2007-01-23  Bruno Haible  <bruno@clisp.org>
23931
23932         * lib/striconveh.c: Include c-strcaseeq.h.
23933         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
23934         * modules/striconveh (Depends-on): Add c-strcaseeq.
23935
23936 2007-01-23  Bruno Haible  <bruno@clisp.org>
23937
23938         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
23939
23940         * modules/c-strcaseeq: New file.
23941         * lib/c-strcaseeq.h: New file.
23942
23943         * modules/streq: New file.
23944         * lib/streq.h: New file.
23945
23946 2007-01-23  Bruno Haible  <bruno@clisp.org>
23947
23948         * modules/striconveha-tests: New file.
23949         * tests/test-striconveha.c: New file.
23950
23951         * lib/striconveha.h: Include <stdbool.h>.
23952         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
23953         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
23954         (mem_iconveha_notranslit): Renamed from mem_iconveha.
23955         (mem_iconveha): New function.
23956         (str_iconveha_notranslit): Renamed from str_iconveha.
23957         (str_iconveha): New function.
23958         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
23959         c-strcase.
23960
23961 2007-01-23  Bruno Haible  <bruno@clisp.org>
23962
23963         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
23964         encodings without forgiving before trying any encoding with handler.
23965         (str_iconveha): Try all encodings without forgiving before trying any
23966         encoding with handler.
23967
23968 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23969
23970         Import the following changes from libc.
23971
23972         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
23973
23974         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
23975
23976         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
23977
23978         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
23979         normal_bracket label.
23980
23981         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
23982
23983         [BZ #361]
23984         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
23985         to normal_bracket after fetching the next character.
23986
23987 2007-01-22  Bruno Haible  <bruno@clisp.org>
23988
23989         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
23990         argument.
23991         * lib/striconveh.c (iconv_carefully_1): New function.
23992         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
23993         argument.
23994         (str_cd_iconveh): Update.
23995         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
23996         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
23997         * tests/test-striconveh.c (MAGIC): New macro.
23998         (new_offsets): New function.
23999         (main): Test call with and without offsets.
24000
24001 2007-01-22  Bruno Haible  <bruno@clisp.org>
24002
24003         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
24004         * modules/sys_select (Makefile.am): Likewise.
24005         * modules/sys_socket (Makefile.am): Likewise.
24006         * modules/sys_time (Makefile.am): Likewise.
24007
24008 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
24009
24010         * modules/gettimeofday (License): Change from GPL to LGPL, since
24011         gettimeofday is a library function.
24012
24013 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24014
24015         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
24016
24017 2007-01-21  Bruno Haible  <bruno@clisp.org>
24018
24019         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
24020
24021 2007-01-21  Bruno Haible  <bruno@clisp.org>
24022
24023         * modules/striconveha: New file.
24024         * lib/striconveha.h: New file.
24025         * lib/striconveha.c: New file.
24026         * MODULES.html.sh (Internationalization functions): Add striconveha.
24027         * lib/striconv.c (str_iconv): Optimize the case of an empty input
24028         string.
24029         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
24030
24031 2007-01-21  Bruno Haible  <bruno@clisp.org>
24032
24033         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
24034         * lib/striconveh.c (str_iconveh): Likewise.
24035
24036 2007-01-21  Bruno Haible  <bruno@clisp.org>
24037
24038         * lib/striconveh.h (mem_iconveh): New declaration.
24039         * lib/striconveh.c (mem_iconveh): New function.
24040         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
24041
24042 2007-01-21  Bruno Haible  <bruno@clisp.org>
24043
24044         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
24045
24046         * lib/striconveh.h (mem_cd_iconveh): Change specification.
24047         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
24048         original result buffer.
24049         (str_cd_iconveh): Update.
24050         * tests/test-striconveh.c (main): Update.
24051
24052         * lib/striconv.h (mem_cd_iconv): Change specification.
24053         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
24054         result buffer.
24055         (str_cd_iconv): Update.
24056         * tests/test-striconv.c (main): Update.
24057
24058 2007-01-21  Bruno Haible  <bruno@clisp.org>
24059
24060         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
24061
24062 2007-01-20  Jim Meyering  <jim@meyering.net>
24063
24064         * lib/userspec.c (parse_with_separator): If a user or group string
24065         starts with "+", skip the corresponding name-to-ID look-up, since
24066         such a look-up must fail: user and group names may not include "+".
24067
24068 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
24069
24070         * lib/poll.c: Include sys/time.h and time.h unconditionally,
24071         since we now assume the sys_time module.
24072         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
24073         check for sys/time.h; no longer needed.
24074         * modules/poll (Depends-on): Depend on sys_time.
24075
24076 2007-01-18  Bruno Haible  <bruno@clisp.org>
24077
24078         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
24079         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
24080
24081         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
24082         gettimeofday.
24083
24084         * tests/test-gettimeofday.c: Include <time.h>.
24085         (dummy): Remove variable.
24086
24087         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
24088         gl_HEADER_SYS_TIME_H.
24089         (gl_HEADER_SYS_TIME_H): New macro.
24090
24091         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
24092         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
24093         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
24094         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
24095         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
24096         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
24097         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
24098         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
24099         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
24100         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
24101         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
24102
24103         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
24104         last change; it caused a compilation error when cross-compiling to
24105         Cygwin.
24106
24107 2007-01-18  Jim Meyering  <jim@meyering.net>
24108
24109         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
24110         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
24111         than the race-prone "test -d sys || mkdir sys".
24112         (configure.ac): Use AC_PROG_MKDIR_P.
24113         * modules/sys_select: Likewise.
24114         * modules/sys_socket: Likewise.
24115         * modules/sys_time: Likewise.
24116
24117 2007-01-18  Eric Blake  <ebb9@byu.net>
24118
24119         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
24120         replace gettimeofday.
24121         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
24122         name, to avoid infinite recursion.
24123
24124 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
24125
24126         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
24127         module sys_time.
24128         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
24129         assume timespec.h defines struct timeval.
24130         * lib/settime.c: Likewise.
24131         * lib/utimens.c: Likewise.
24132         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
24133         since we now assume the gettimeofday module.
24134         * lib/tempname.c (__gen_tempname): Likewise.
24135         * lib/gettimeofday.h: Remove.
24136         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
24137         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
24138         Include <time.h>, for 'time()'.
24139         (localtime_buffer_addr): Also use this workaround if
24140         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
24141         to simplify the uses.  All uses changed.
24142         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
24143         that #undef is inside {}, and 'const' follows type name consistently.
24144         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
24145         (gettimeofday): Do not use the maximum possible value for
24146         tv->tv_usec, since that might break usages other than ls.c.
24147         Instead, we'll leave ls.c alone.  This undoes today's patch
24148         by Bruno.  Add a compile-time warning for 1s-clock resolution;
24149         we've never observed the problem but might as well keep the
24150         canary.
24151         * lib/nanosleep.c: Include timespec.h first, for interface check.
24152         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
24153         now assume the sys_time module.
24154         * lib/tempname.c: Likewise.
24155         * lib/timespec.h: Likewise.
24156         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
24157         needed.
24158         * lib/strftime.c: Likewise.
24159         * lib/timespec.h: Likewise.
24160         * lib/posixtm.c: Include posixtm.h first, for interface check.
24161         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
24162         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
24163         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
24164         * lib/sys_time_.h: New file.
24165         * lib/timespec.h (struct timespec): Use long int, not long.
24166         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
24167         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
24168         Remove obsolescent call to AC_HEADER_TIME.
24169         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
24170         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
24171         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
24172         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
24173         Likewise.
24174         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
24175         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
24176         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
24177         into the sys_time module.  Check for gettimeofday just once.
24178         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
24179         for gettimeofday signature to just check the signature.  Merely
24180         compile it, since linking doesn't test signature.  Improve test for
24181         whether gettimeofday.o is actually needed.
24182         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
24183         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
24184         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
24185         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
24186         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
24187         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
24188         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
24189         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
24190         than worrying about sys/time.h.
24191         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
24192         Don't bother worrying about TIME_WITH_SYS_TIME.
24193         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
24194         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
24195         * m4/sys_time_h.m4: New file.
24196         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
24197         Don't include sys/time.h.  Return from main rather than exiting.
24198         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
24199         all uses changed.
24200         * modules/gethrxtime (Depends-on): Add sys_time.
24201         * modules/gettime (Depends-on): Likewise.
24202         * modules/gettimeofday (Depends-on): Likewise.
24203         * modules/nanosleep (Depends-on): Likewise.
24204         * modules/settime (Depends-on): Likewise.
24205         * modules/tempname (Depends-on): Likewise.
24206         * modules/utimens (Depends-on): Likewise.
24207         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
24208         (Include:) Change back to <sys/time.h>.
24209         (Maintainer:) Add self.
24210         * modules/sys_time: New file.
24211         * modules/tempname (Depends-on): Add gettimeofday.
24212         * tests/test-gettimeofday.c: Include <sys/time.h>
24213         rather than gettimeofday.h.
24214
24215 2007-01-17  Bruno Haible  <bruno@clisp.org>
24216
24217         * gnulib-tool (func_get_license): Revert last patch. Instead, let
24218         the license default to GPL.
24219         (func_create_testdir): Don't complain if a module is LGPL and its
24220         tests module depends on GPLed modules.
24221
24222 2007-01-17  Bruno Haible  <bruno@clisp.org>
24223
24224         * lib/gettimeofday.c (gettimeofday): Add code for the case
24225         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
24226         maximum possible value for tv->tv_usec, rather than the minimum one.
24227
24228 2005-10-08  Martin Lambers  <marlam@marlam.de>
24229 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
24230 2007-01-16  Bruno Haible  <bruno@clisp.org>
24231
24232         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
24233         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
24234         gl_FUNC_GETTIMEOFDAY.
24235         (Include): Add gettimeofday.h.
24236         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
24237         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
24238         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
24239         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
24240         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
24241         * lib/gettimeofday.h: New file.
24242         * lib/gettimeofday.c: Include <sys/timeb.h>.
24243         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
24244         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
24245         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
24246         fall back on time().
24247
24248         * tests/test-gettimeofday.c: New file.
24249         * modules/gettimeofday-tests: New file.
24250
24251 2007-01-16  Eric Blake  <ebb9@byu.net>
24252
24253         * modules/fnmatch (Depends-on): Depend on wchar.
24254         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
24255         * m4/fnmatch.m4: Likewise.
24256         * modules/mbchar (Makefile.am): Assume <wchar.h>.
24257         * m4/mbchar.m4: Likewise.
24258         * modules/mbswidth (Depends-on): Depend on wchar.
24259         * lib/mbswidth.c: Assume <wchar.h>.
24260         * m4/mbswidth.m4: Likewise.
24261         * modules/quotearg (Depends-on): Depend on wchar.
24262         * lib/quotearg.c: Assume <wchar.h>.
24263         * m4/quotearg.m4: Likewise.
24264         * modules/regex (Depends-on): Depend on wchar.
24265         * lib/regex_internal.h: Assume <wchar.h>.
24266         * m4/regex.m4: Likewise.
24267         * modules/stdint (Depends-on): Depend on wchar.
24268         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
24269         * m4/stdint.m4: Likewise.
24270         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
24271         * modules/strftime (Depends-on): Depend on wchar.
24272         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
24273         * modules/strtol (Depends-on): Depend on wchar.
24274         * lib/strtol.c: Assume <wchar.h>.
24275         * modules/wcwidth (Depends-on): Depend on wchar.
24276         * lib/wcwidth.h: Assume <wchar.h>.
24277         * m4/wcwidth.m4: Likewise.
24278
24279 2007-01-16  Bruno Haible  <bruno@clisp.org>
24280
24281         * modules/csharpexec-script: New, created from...
24282         * modules/csharpexec: ... this.
24283
24284 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
24285
24286         * modules/javaexec-script: New, created from...
24287         * modules/javaexec: ... this.
24288
24289 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24290
24291         * modules/poll (Dependencies): Add sys_select.
24292
24293 2007-01-15  Jim Meyering  <jim@meyering.net>
24294
24295         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
24296         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
24297         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
24298         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
24299
24300 2007-01-15  Bruno Haible  <bruno@clisp.org>
24301
24302         * modules/striconveh: New file.
24303         * lib/striconveh.h: New file.
24304         * lib/striconveh.c: New file.
24305         * MODULES.html.sh (Internationalization functions): Add striconveh.
24306
24307         * modules/striconveh-tests: New file.
24308         * tests/test-striconveh.c: New file.
24309
24310 2007-01-15  Bruno Haible  <bruno@clisp.org>
24311
24312         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
24313         not from GNU libiconv or GNU libc.
24314
24315 2007-01-15  Bruno Haible  <bruno@clisp.org>
24316
24317         * doc/gnulib-intro.texi (Copyright): Explain the different license
24318         terms for module descriptions, autoconf macros, tests, documentation.
24319
24320 2007-01-14  Bruno Haible  <bruno@clisp.org>
24321
24322         * modules/striconv-tests: New file.
24323         * tests/test-striconv.c: New file.
24324
24325 2007-01-14  Bruno Haible  <bruno@clisp.org>
24326
24327         * modules/iconv-tests: New file.
24328         * tests/test-iconv.c: New file.
24329
24330 2007-01-14  Bruno Haible  <bruno@clisp.org>
24331
24332         * gnulib-tool (func_get_license): For test modules, use the license of
24333         the main module.
24334
24335 2007-01-14  Bruno Haible  <bruno@clisp.org>
24336
24337         * modules/iconv (Include): Clarify that <iconv.h> can only be included
24338         if iconv is found to exist.
24339
24340 2007-01-14  Bruno Haible  <bruno@clisp.org>
24341
24342         * modules/c-ctype-tests: New file.
24343         * tests/test-c-ctype.c: New file.
24344
24345 2007-01-14  Bruno Haible  <bruno@clisp.org>
24346
24347         * modules/binary-io-tests: New file.
24348         * tests/test-binary-io.sh: New file.
24349         * tests/test-binary-io.c: New file.
24350
24351 2007-01-14  Bruno Haible  <bruno@clisp.org>
24352
24353         * modules/array-oset-tests: New file.
24354         * tests/test-array_oset.c: New file.
24355
24356 2007-01-14  Bruno Haible  <bruno@clisp.org>
24357
24358         * modules/array-list-tests: New file.
24359         * tests/test-array_list.c: New file.
24360
24361 2007-01-14  Bruno Haible  <bruno@clisp.org>
24362
24363         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
24364         and make.
24365         Reported by Simon Josefsson in
24366         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
24367
24368 2007-01-14  Bruno Haible  <bruno@clisp.org>
24369
24370         * modules/allocsa-tests: New file.
24371         * tests/test-allocsa.c: New file.
24372
24373 2007-01-14  Bruno Haible  <bruno@clisp.org>
24374
24375         * modules/fchdir (Depends-on): Add absolute-header.
24376         * modules/unistd (Depends-on): Likewise.
24377
24378 2006-12-30  Bruno Haible  <bruno@clisp.org>
24379
24380         * modules/fchdir: New file.
24381         * modules/unistd (Files): Add lib/unistd_.h.
24382         (Makefile.am): Generate unistd.h from unistd_.h.
24383         * lib/fchdir.c: New file.
24384         * lib/dirent_.h: New file.
24385         * lib/unistd_.h: New file.
24386         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
24387         * m4/fchdir.m4: New file.
24388         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
24389         (gl_HEADER_UNISTD): Invoke it.
24390         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
24391         function.
24392         * lib/backupfile.c (opendir, closedir): Undefine.
24393         * lib/chown.c (open, close): Undefine.
24394         * lib/clean-temp.c (open, close): Undefine.
24395         * lib/copy-file.c (open, close): Undefine.
24396         * lib/execute.c (open, close): Undefine.
24397         * lib/fsusage.c (open, close): Undefine.
24398         * lib/gc-gnulib.c (open, close): Undefine.
24399         * lib/getcwd.c (opendir, closedir): Undefine.
24400         * lib/glob.c (opendir, closedir): Undefine.
24401         * lib/javacomp.c (open, close): Undefine.
24402         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
24403         * lib/openat-proc.c (open, close): Undefine.
24404         * lib/pagealign_alloc.c (open, close): Undefine.
24405         * lib/pipe.c (open, close): Undefine.
24406         * lib/progreloc.c (open, close): Undefine.
24407         * lib/savedir.c (opendir, closedir): Undefine.
24408         * lib/utime.c (open, close): Undefine.
24409         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
24410
24411 2007-01-10  Bruno Haible  <bruno@clisp.org>
24412
24413         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
24414
24415 2007-01-12  Eric Blake  <ebb9@byu.net>
24416
24417         Provide a robust <wchar.h>.  Further simplifications are now
24418         possible in other modules, but not included here.
24419         * modules/wchar: New module.
24420         * m4/wchar.m4: New file.
24421         * lib/wchar_.h: Likewise.
24422         * modules/mbchar (Depends-on): Depend on wchar, as the first use
24423         of the new module.
24424         * MODULES.html.sh (Extended multibyte and wide character utilities):
24425         New section.
24426
24427 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
24428
24429         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
24430         to a reasonable default for memory allocation.
24431         (xreadlink): Don't allocate a huge buffer, to work around a buggy
24432         file system that reports garbage st_size values for symlinks.
24433         Problem reported by Liyang Hu.
24434
24435 2007-01-11  Simon Josefsson  <simon@josefsson.org>
24436
24437         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
24438         Emacs .#* auto-save files).
24439
24440 2007-01-11  Bruno Haible  <bruno@clisp.org>
24441
24442         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
24443         directory.
24444
24445 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
24446
24447         Use @...@ consistently in lib/wctype_.h.
24448         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
24449         on it being set to 1 or 0.
24450         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
24451         go back to AC_SUBSTing it.
24452         * modules/wctype (Makefile.am): Undo previous change.
24453
24454 2007-01-10  Eric Blake  <ebb9@byu.net>
24455
24456         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
24457         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
24458         * modules/wctype (Makefile.am): Likewise.
24459         Reported by Chris McGuire.
24460
24461 2007-01-10  Jim Meyering  <jim@meyering.net>
24462
24463         fts.c: a small readability/maintainability improvement
24464         * lib/fts.c (fts_read): Make this code slightly more readable and
24465         maintainable by hoisting the "sp->fts_cur = p" assignments to
24466         immediately follow the statements that set P.  Derived from
24467         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
24468
24469 2007-01-10  Eric Blake  <ebb9@byu.net>
24470
24471         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
24472         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
24473         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
24474         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
24475         Reported by Chris McGuire.
24476
24477 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24478
24479         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
24480         in sed script.
24481
24482 2007-01-09  Bruno Haible  <bruno@clisp.org>
24483
24484         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
24485         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
24486         variables.
24487         (func_module): Use them.
24488
24489 2007-01-09  Bruno Haible  <bruno@clisp.org>
24490
24491         * modules/unistr/base: New file.
24492         * lib/unistr.h: New file.
24493
24494         * modules/unistr/u8-to-u16: New file.
24495         * lib/unistr/u8-to-u16.c: New file.
24496
24497         * modules/unistr/u8-to-u32: New file.
24498         * lib/unistr/u8-to-u32.c: New file.
24499
24500         * modules/unistr/u16-to-u8: New file.
24501         * lib/unistr/u16-to-u8.c: New file.
24502
24503         * modules/unistr/u16-to-u32: New file.
24504         * lib/unistr/u16-to-u32.c: New file.
24505
24506         * modules/unistr/u32-to-u8: New file.
24507         * lib/unistr/u32-to-u8.c: New file.
24508
24509         * modules/unistr/u32-to-u16: New file.
24510         * lib/unistr/u32-to-u16.c: New file.
24511
24512         * modules/unistr/u8-check: New file.
24513         * modules/unistr/u16-check: New file.
24514         * modules/unistr/u32-check: New file.
24515         * lib/unistr/u8-check.c: New file.
24516         * lib/unistr/u16-check.c: New file.
24517         * lib/unistr/u32-check.c: New file.
24518
24519         * modules/unistr/u8-chr: New file.
24520         * modules/unistr/u16-chr: New file.
24521         * modules/unistr/u32-chr: New file.
24522         * lib/unistr/u8-chr.c: New file.
24523         * lib/unistr/u16-chr.c: New file.
24524         * lib/unistr/u32-chr.c: New file.
24525
24526         * modules/unistr/u8-cmp: New file.
24527         * modules/unistr/u16-cmp: New file.
24528         * modules/unistr/u32-cmp: New file.
24529         * lib/unistr/u8-cmp.c: New file.
24530         * lib/unistr/u16-cmp.c: New file.
24531         * lib/unistr/u32-cmp.c: New file.
24532
24533         * modules/unistr/u8-cpy: New file.
24534         * modules/unistr/u16-cpy: New file.
24535         * modules/unistr/u32-cpy: New file.
24536         * lib/unistr/u8-cpy.c: New file.
24537         * lib/unistr/u16-cpy.c: New file.
24538         * lib/unistr/u32-cpy.c: New file.
24539         * lib/unistr/u-cpy.h: New file.
24540
24541         * modules/unistr/u8-cpy-alloc: New file.
24542         * modules/unistr/u16-cpy-alloc: New file.
24543         * modules/unistr/u32-cpy-alloc: New file.
24544         * lib/unistr/u8-cpy-alloc.c: New file.
24545         * lib/unistr/u16-cpy-alloc.c: New file.
24546         * lib/unistr/u32-cpy-alloc.c: New file.
24547         * lib/unistr/u-cpy-alloc.h: New file.
24548
24549         * modules/unistr/u8-endswith: New file.
24550         * modules/unistr/u16-endswith: New file.
24551         * modules/unistr/u32-endswith: New file.
24552         * lib/unistr/u8-endswith.c: New file.
24553         * lib/unistr/u16-endswith.c: New file.
24554         * lib/unistr/u32-endswith.c: New file.
24555         * lib/unistr/u-endswith.h: New file.
24556
24557         * modules/unistr/u8-mblen: New file.
24558         * modules/unistr/u16-mblen: New file.
24559         * modules/unistr/u32-mblen: New file.
24560         * lib/unistr/u8-mblen.c: New file.
24561         * lib/unistr/u16-mblen.c: New file.
24562         * lib/unistr/u32-mblen.c: New file.
24563
24564         * modules/unistr/u8-mbtouc: New file.
24565         * modules/unistr/u16-mbtouc: New file.
24566         * modules/unistr/u32-mbtouc: New file.
24567         * lib/unistr/u8-mbtouc.c: New file.
24568         * lib/unistr/u16-mbtouc.c: New file.
24569         * lib/unistr/u32-mbtouc.c: New file.
24570
24571         * modules/unistr/u8-mbtouc-safe: New file.
24572         * modules/unistr/u16-mbtouc-safe: New file.
24573         * modules/unistr/u32-mbtouc-safe: New file.
24574         * lib/unistr/u8-mbtouc-safe.c: New file.
24575         * lib/unistr/u16-mbtouc-safe.c: New file.
24576         * lib/unistr/u32-mbtouc-safe.c: New file.
24577
24578         * modules/unistr/u8-move: New file.
24579         * modules/unistr/u16-move: New file.
24580         * modules/unistr/u32-move: New file.
24581         * lib/unistr/u8-move.c: New file.
24582         * lib/unistr/u16-move.c: New file.
24583         * lib/unistr/u32-move.c: New file.
24584         * lib/unistr/u-move.h: New file.
24585
24586         * modules/unistr/u8-next: New file.
24587         * modules/unistr/u16-next: New file.
24588         * modules/unistr/u32-next: New file.
24589         * lib/unistr/u8-next.c: New file.
24590         * lib/unistr/u16-next.c: New file.
24591         * lib/unistr/u32-next.c: New file.
24592
24593         * modules/unistr/u8-prev: New file.
24594         * modules/unistr/u16-prev: New file.
24595         * modules/unistr/u32-prev: New file.
24596         * lib/unistr/u8-prev.c: New file.
24597         * lib/unistr/u16-prev.c: New file.
24598         * lib/unistr/u32-prev.c: New file.
24599
24600         * modules/unistr/u8-set: New file.
24601         * modules/unistr/u16-set: New file.
24602         * modules/unistr/u32-set: New file.
24603         * lib/unistr/u8-set.c: New file.
24604         * lib/unistr/u16-set.c: New file.
24605         * lib/unistr/u32-set.c: New file.
24606         * lib/unistr/u-set.h: New file.
24607
24608         * modules/unistr/u8-startswith: New file.
24609         * modules/unistr/u16-startswith: New file.
24610         * modules/unistr/u32-startswith: New file.
24611         * lib/unistr/u8-startswith.c: New file.
24612         * lib/unistr/u16-startswith.c: New file.
24613         * lib/unistr/u32-startswith.c: New file.
24614         * lib/unistr/u-startswith.h: New file.
24615
24616         * modules/unistr/u8-stpcpy: New file.
24617         * modules/unistr/u16-stpcpy: New file.
24618         * modules/unistr/u32-stpcpy: New file.
24619         * lib/unistr/u8-stpcpy.c: New file.
24620         * lib/unistr/u16-stpcpy.c: New file.
24621         * lib/unistr/u32-stpcpy.c: New file.
24622         * lib/unistr/u-stpcpy.h: New file.
24623
24624         * modules/unistr/u8-stpncpy: New file.
24625         * modules/unistr/u16-stpncpy: New file.
24626         * modules/unistr/u32-stpncpy: New file.
24627         * lib/unistr/u8-stpncpy.c: New file.
24628         * lib/unistr/u16-stpncpy.c: New file.
24629         * lib/unistr/u32-stpncpy.c: New file.
24630         * lib/unistr/u-stpncpy.h: New file.
24631
24632         * modules/unistr/u8-strcat: New file.
24633         * modules/unistr/u16-strcat: New file.
24634         * modules/unistr/u32-strcat: New file.
24635         * lib/unistr/u8-strcat.c: New file.
24636         * lib/unistr/u16-strcat.c: New file.
24637         * lib/unistr/u32-strcat.c: New file.
24638         * lib/unistr/u-strcat.h: New file.
24639
24640         * modules/unistr/u8-strchr: New file.
24641         * modules/unistr/u16-strchr: New file.
24642         * modules/unistr/u32-strchr: New file.
24643         * lib/unistr/u8-strchr.c: New file.
24644         * lib/unistr/u16-strchr.c: New file.
24645         * lib/unistr/u32-strchr.c: New file.
24646
24647         * modules/unistr/u8-strcmp: New file.
24648         * modules/unistr/u16-strcmp: New file.
24649         * modules/unistr/u32-strcmp: New file.
24650         * lib/unistr/u8-strcmp.c: New file.
24651         * lib/unistr/u16-strcmp.c: New file.
24652         * lib/unistr/u32-strcmp.c: New file.
24653
24654         * modules/unistr/u8-strcpy: New file.
24655         * modules/unistr/u16-strcpy: New file.
24656         * modules/unistr/u32-strcpy: New file.
24657         * lib/unistr/u8-strcpy.c: New file.
24658         * lib/unistr/u16-strcpy.c: New file.
24659         * lib/unistr/u32-strcpy.c: New file.
24660         * lib/unistr/u-strcpy.h: New file.
24661
24662         * modules/unistr/u8-strcspn: New file.
24663         * modules/unistr/u16-strcspn: New file.
24664         * modules/unistr/u32-strcspn: New file.
24665         * lib/unistr/u8-strcspn.c: New file.
24666         * lib/unistr/u16-strcspn.c: New file.
24667         * lib/unistr/u32-strcspn.c: New file.
24668         * lib/unistr/u-strcspn.h: New file.
24669
24670         * modules/unistr/u8-strdup: New file.
24671         * modules/unistr/u16-strdup: New file.
24672         * modules/unistr/u32-strdup: New file.
24673         * lib/unistr/u8-strdup.c: New file.
24674         * lib/unistr/u16-strdup.c: New file.
24675         * lib/unistr/u32-strdup.c: New file.
24676         * lib/unistr/u-strdup.h: New file.
24677
24678         * modules/unistr/u8-strlen: New file.
24679         * modules/unistr/u16-strlen: New file.
24680         * modules/unistr/u32-strlen: New file.
24681         * lib/unistr/u8-strlen.c: New file.
24682         * lib/unistr/u16-strlen.c: New file.
24683         * lib/unistr/u32-strlen.c: New file.
24684         * lib/unistr/u-strlen.h: New file.
24685
24686         * modules/unistr/u8-strmblen: New file.
24687         * modules/unistr/u16-strmblen: New file.
24688         * modules/unistr/u32-strmblen: New file.
24689         * lib/unistr/u8-strmblen.c: New file.
24690         * lib/unistr/u16-strmblen.c: New file.
24691         * lib/unistr/u32-strmblen.c: New file.
24692
24693         * modules/unistr/u8-strmbtouc: New file.
24694         * modules/unistr/u16-strmbtouc: New file.
24695         * modules/unistr/u32-strmbtouc: New file.
24696         * lib/unistr/u8-strmbtouc.c: New file.
24697         * lib/unistr/u16-strmbtouc.c: New file.
24698         * lib/unistr/u32-strmbtouc.c: New file.
24699
24700         * modules/unistr/u8-strncat: New file.
24701         * modules/unistr/u16-strncat: New file.
24702         * modules/unistr/u32-strncat: New file.
24703         * lib/unistr/u8-strncat.c: New file.
24704         * lib/unistr/u16-strncat.c: New file.
24705         * lib/unistr/u32-strncat.c: New file.
24706         * lib/unistr/u-strncat.h: New file.
24707
24708         * modules/unistr/u8-strncmp: New file.
24709         * modules/unistr/u16-strncmp: New file.
24710         * modules/unistr/u32-strncmp: New file.
24711         * lib/unistr/u8-strncmp.c: New file.
24712         * lib/unistr/u16-strncmp.c: New file.
24713         * lib/unistr/u32-strncmp.c: New file.
24714
24715         * modules/unistr/u8-strncpy: New file.
24716         * modules/unistr/u16-strncpy: New file.
24717         * modules/unistr/u32-strncpy: New file.
24718         * lib/unistr/u8-strncpy.c: New file.
24719         * lib/unistr/u16-strncpy.c: New file.
24720         * lib/unistr/u32-strncpy.c: New file.
24721         * lib/unistr/u-strncpy.h: New file.
24722
24723         * modules/unistr/u8-strnlen: New file.
24724         * modules/unistr/u16-strnlen: New file.
24725         * modules/unistr/u32-strnlen: New file.
24726         * lib/unistr/u8-strnlen.c: New file.
24727         * lib/unistr/u16-strnlen.c: New file.
24728         * lib/unistr/u32-strnlen.c: New file.
24729         * lib/unistr/u-strnlen.h: New file.
24730
24731         * modules/unistr/u8-strpbrk: New file.
24732         * modules/unistr/u16-strpbrk: New file.
24733         * modules/unistr/u32-strpbrk: New file.
24734         * lib/unistr/u8-strpbrk.c: New file.
24735         * lib/unistr/u16-strpbrk.c: New file.
24736         * lib/unistr/u32-strpbrk.c: New file.
24737         * lib/unistr/u-strpbrk.h: New file.
24738
24739         * modules/unistr/u8-strrchr: New file.
24740         * modules/unistr/u16-strrchr: New file.
24741         * modules/unistr/u32-strrchr: New file.
24742         * lib/unistr/u8-strrchr.c: New file.
24743         * lib/unistr/u16-strrchr.c: New file.
24744         * lib/unistr/u32-strrchr.c: New file.
24745
24746         * modules/unistr/u8-strspn: New file.
24747         * modules/unistr/u16-strspn: New file.
24748         * modules/unistr/u32-strspn: New file.
24749         * lib/unistr/u8-strspn.c: New file.
24750         * lib/unistr/u16-strspn.c: New file.
24751         * lib/unistr/u32-strspn.c: New file.
24752         * lib/unistr/u-strspn.h: New file.
24753
24754         * modules/unistr/u8-strstr: New file.
24755         * modules/unistr/u16-strstr: New file.
24756         * modules/unistr/u32-strstr: New file.
24757         * lib/unistr/u8-strstr.c: New file.
24758         * lib/unistr/u16-strstr.c: New file.
24759         * lib/unistr/u32-strstr.c: New file.
24760         * lib/unistr/u-strstr.h: New file.
24761
24762         * modules/unistr/u8-strtok: New file.
24763         * modules/unistr/u16-strtok: New file.
24764         * modules/unistr/u32-strtok: New file.
24765         * lib/unistr/u8-strtok.c: New file.
24766         * lib/unistr/u16-strtok.c: New file.
24767         * lib/unistr/u32-strtok.c: New file.
24768         * lib/unistr/u-strtok.h: New file.
24769
24770         * modules/unistr/u8-uctomb: New file.
24771         * modules/unistr/u16-uctomb: New file.
24772         * modules/unistr/u32-uctomb: New file.
24773         * lib/unistr/u8-uctomb.c: New file.
24774         * lib/unistr/u16-uctomb.c: New file.
24775         * lib/unistr/u32-uctomb.c: New file.
24776
24777         * MODULES.html.sh (Unicode string functions): Add the new modules.
24778
24779 2007-01-08  Bruno Haible  <bruno@clisp.org>
24780
24781         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
24782         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
24783         subdirectories.
24784
24785 2007-01-08  Karl Berry  <karl@gnu.org>
24786
24787         * doc/error.texi: mention that main() fns must set program_name
24788         when progname is used.
24789
24790 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
24791
24792         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
24793         WCTYPE_H is empty, for the benefit of builds from non-distclean
24794         directories.  Problem reported by Eric Blake in
24795         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
24796
24797 2007-01-08  Bruno Haible  <bruno@clisp.org>
24798
24799         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
24800         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
24801         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
24802         PROVIDE_CANONICALIZE_FILENAME_MODE.
24803         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
24804
24805 2007-01-08  Bruno Haible  <bruno@clisp.org>
24806
24807         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
24808         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
24809         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
24810         * lib/fts.c: Likewise.
24811         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
24812
24813 2006-12-25  Bruno Haible  <bruno@clisp.org>
24814
24815         * modules/utf8-ucs4-safe: New file.
24816         * lib/utf8-ucs4-safe.h: New file.
24817         * lib/unistr/utf8-ucs4-safe.c: New file.
24818
24819         * modules/utf16-ucs4-safe: New file.
24820         * lib/utf16-ucs4-safe.h: New file.
24821         * lib/unistr/utf16-ucs4-safe.c: New file.
24822
24823         * MODULES.html.sh (Unicode string functions): Add the new modules.
24824
24825 2007-01-08  Bruno Haible  <bruno@clisp.org>
24826
24827         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
24828         (Depends-on): Add unitypes.
24829         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
24830         (u8_mbtouc_aux): Move out to separate file.
24831         (u8_mbtouc): Use ucs4_t, uint8_t types.
24832         * lib/unistr/utf8-ucs4.c: New file.
24833
24834         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
24835         (Depends-on): Add unitypes.
24836         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
24837         (u16_mbtouc_aux): Move out to separate file.
24838         (u16_mbtouc): Use ucs4_t, uint16_t types.
24839         * lib/unistr/utf16-ucs4.c: New file.
24840
24841         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
24842         (Depends-on): Add unitypes.
24843         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
24844         (u8_uctomb_aux): Move out to separate file.
24845         (u8_uctomb): Use ucs4_t, uint8_t types.
24846         * lib/unistr/ucs4-utf8.c: New file.
24847
24848         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
24849         (Depends-on): Add unitypes.
24850         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
24851         (u16_uctomb_aux): Move out to separate file.
24852         (u16_uctomb): Use ucs4_t, uint16_t types.
24853         * lib/unistr/ucs4-utf16.c: New file.
24854
24855 2006-12-25  Bruno Haible  <bruno@clisp.org>
24856
24857         * modules/unitypes: New file.
24858         * lib/unitypes.h: New file.
24859         * MODULES.html.sh (func_all_modules): New section "Unicode string
24860         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
24861         this section. Add unitypes.
24862
24863 2007-01-08  Bruno Haible  <bruno@clisp.org>
24864
24865         Avoid variable names that conflict with those from libtool.
24866         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
24867         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
24868         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
24869         library_names_spec to acl_library_names_spec, hardcode_* to
24870         acl_hardcode_*.
24871         Reported by Ralf Wildenhues.
24872
24873 2007-01-08  Bruno Haible  <bruno@clisp.org>
24874
24875         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
24876         definition.
24877         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
24878         definition.
24879         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
24880         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
24881         definition.
24882         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
24883         definition.
24884         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
24885         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
24886         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
24887         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
24888         definition.
24889         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
24890         definition.
24891         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
24892         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
24893         GC_USE_<algorithm>.
24894         * lib/gc-libgcrypt.c: Likewise.
24895         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
24896         * modules/gc-arctwo (configure.ac): Likewise.
24897         * modules/gc-des (configure.ac): Likewise.
24898         * modules/gc-hmac-md5 (configure.ac): Likewise.
24899         * modules/gc-hmac-sha1 (configure.ac): Likewise.
24900         * modules/gc-md2 (configure.ac): Likewise.
24901         * modules/gc-md4 (configure.ac): Likewise.
24902         * modules/gc-md5 (configure.ac): Likewise.
24903         * modules/gc-random (configure.ac): Likewise.
24904         * modules/gc-rijndael (configure.ac): Likewise.
24905         * modules/gc-sha1 (configure.ac): Likewise.
24906
24907 2007-01-08  Bruno Haible  <bruno@clisp.org>
24908
24909         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
24910         macro definition.
24911         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
24912         definition.
24913         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
24914         definition.
24915         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
24916         * modules/fcntl-safer (configure.ac): Likewise.
24917         * modules/fopen-safer (configure.ac): Likewise.
24918         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
24919         GNULIB_FWRITEERROR macro definition.
24920
24921 2007-01-08  Bruno Haible  <bruno@clisp.org>
24922
24923         * m4/gnulib-common.m4: New file.
24924         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
24925         (func_get_filelist): Add m4/gnulib-common.m4.
24926
24927 2007-01-08  Bruno Haible  <bruno@clisp.org>
24928
24929         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
24930         command.
24931
24932 2007-01-08  Jim Meyering  <jim@meyering.net>
24933
24934         Use a more robust test for a "can't happen" condition.
24935         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
24936         narrowed the st_size value.  Presuming the "can't happen" condition
24937         is true, that narrowing could conceivably convert an invalid st_size
24938         value into a valid one.  Instead, use a change based on Matthew
24939         Woehlke's original patch.
24940
24941         Slight readability improvement: use an assert-like macro
24942         in place of literal "abort ()" uses.
24943         * lib/fts.c (fts_assert): Define.
24944         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
24945         Use this macro instead of a bare 'abort'.
24946
24947 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
24948
24949         Don't worry about using IRIX 5.3's wctype.h broken definitions;
24950         simply work around them.
24951         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
24952         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
24953         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
24954         declaring.
24955         Don't bother to define as macros, since the standard doesn't require it.
24956         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
24957         longer worry about IRIX 5.3.
24958         (HAVE_WCTYPE_CTMP_BUG): Remove.
24959
24960 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24961
24962         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
24963         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
24964         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
24965         Problems reported by Georg Schwarz for IRIX 5.3.
24966
24967         * gnulib-tool (autoconf_minversion): Take the maximum version number
24968         found, not the minimum.  Problem reported by James Youngman.
24969
24970 2007-01-03  Karl Berry  <karl@gnu.org>
24971
24972         * doc/error.texi: new file, explaining interaction with progname.
24973         * doc/gnulib.texi: include it.  Update copyright.
24974
24975 2007-01-03  Simon Josefsson  <simon@josefsson.org>
24976
24977         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
24978         AC_CANONICAL_HOST, to improve autobuild outputs.
24979
24980 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
24981             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
24982
24983         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
24984         sockets, server sockets, and other file descriptors.  Count errors
24985         to compute the return value.  Reorder the code a bit to be easier
24986         to follow.  Don't set event bits that were not requested (except
24987         POLLERR and POLLHUP).
24988
24989 2007-01-01  Bruno Haible  <bruno@clisp.org>
24990
24991         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
24992
24993 2007-01-03  Jim Meyering  <jim@meyering.net>
24994
24995         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
24996
24997 2007-01-02  Bruno Haible  <bruno@clisp.org>
24998
24999         * modules/settime (Include): Require timespec.h.
25000         * modules/nanosleep (Include): Likewise.
25001
25002 2007-01-01  Bruno Haible  <bruno@clisp.org>
25003
25004         * gnulib-tool (func_emit_copyright_notice): Bump year.
25005         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
25006
25007 2007-01-01  Bruno Haible  <bruno@clisp.org>
25008
25009         Improve support for OpenBSD.
25010         * build-aux/config.rpath (libname_spec): Export.
25011         (library_names_spec): New variable. Export.
25012         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
25013         library_names_spec from the config.rpath output. Locate shared library
25014         through the name pattern in library_names_spec.
25015
25016 2007-01-01  Eric Blake  <ebb9@byu.net>
25017
25018         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
25019
25020 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
25021
25022         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
25023         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
25024         assume the C locale, and avoid an "eval" that could cause trouble.
25025         Problem with SORT reported by Bob Proulx.
25026
25027         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
25028         Define.  Trivial patch from Henning Nielsen Lund, originally
25029         sent to bug-grep@gnu.org today.
25030
25031 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
25032
25033         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
25034         struct stat.  Problem reported by Henning Nielsen Lund.
25035         * lib/acl.c: Include acl.h first, to check interface.  Don't
25036         bother to include sys/types.h and sys/stat.h again.
25037
25038 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
25039
25040         Import the following change from libc; problem reported by
25041         Sven Verdoolaege.
25042
25043         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
25044
25045         [BZ #1373]
25046         * lib/argp.h: Remove __NTH for __argp_usage inline function.
25047
25048 2006-12-28  Jim Meyering  <jim@meyering.net>
25049
25050         * build-aux/announce-gen: Do not assume that the package
25051         builds any of tar.gz, tar.bz2, and .xdelta files.
25052         Suggestion from Simon Josefsson.
25053
25054 2006-12-28  Simon Josefsson  <simon@josefsson.org>
25055
25056         * modules/announce-gen: New file.
25057
25058 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
25059
25060         * lib/mbchar.h: Just include <wctype.h>; the wctype module
25061         handles its gotchas now.
25062         * lib/mbswidth.c: Likewise.
25063         * lib/wcwidth.h: Likewise.
25064         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
25065         and iswcntrl; the wctype module does this stuff now.
25066         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
25067         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
25068         * modules/mbchar (Depends-on): Add wctype.
25069         * modules/mbswidth (Depends-on): Likewise.
25070         * modules/wcwidth (Depends-on): Likewise.
25071
25072 2006-12-27  Eric Blake  <ebb9@byu.net>
25073
25074         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
25075         module uses more than what <wctype.h> is required to provide.
25076
25077 2006-12-26  Eric Blake  <ebb9@byu.net>
25078
25079         * gnulib-tool (sed_extract_prog): Avoid space-tab.
25080
25081 2006-12-26  Eric Blake  <ebb9@byu.net>
25082
25083         * modules/absolute-header: New module.
25084         * modules/fcntl (Depends-on): Depend on it.
25085         * modules/inttypes (Depends-on): Likewise.
25086         * modules/stdint (Depends-on): Likewise.
25087         * modules/sys_stat (Depends-on): Likewise.
25088         * modules/wctype (Depends-on): Likewise.
25089         * MODULES.html.sh (Support for building libraries and
25090         executables): Document it.
25091
25092 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
25093
25094         * gnulib-tool (SED): Remove, undoing previous change.
25095         The problem was that it broke coreutils on Solaris, because
25096         "sed --posix" leaked into a makefile.
25097         (sed): New alias, if 'alias' and GNU sed.
25098
25099 2006-12-24  Jim Meyering  <jim@meyering.net>
25100
25101         Work around an fchownat bug in glibc-2.4:
25102         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
25103         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
25104         in spite of the -P option.
25105         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
25106         New macros.
25107         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
25108         * modules/openat (Files): Add lib/fchownat.c.
25109         * lib/openat.c (fchownat): Don't define here.  Move to...
25110         * lib/fchownat.c: ...this new file.
25111
25112 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
25113
25114         Fix bug reported by Bruno Haible in
25115         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
25116         where quotearg.c didn't compile on Mac OS X 10.2 because it
25117         lacks <wchar.h> and wint_t.
25118         * lib/wctype_.h (__wctype_wint_t): New type.
25119         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
25120         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
25121         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
25122         Arg is now of type __wctype_wint_t, not wint_t.
25123         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
25124         substitute HAVE_WINT_T.
25125         * modules/wctype (Files): Add m4/wint_t.m4.
25126         (wctype.h): Substitute HAVE_WINT_T.
25127
25128 2006-12-23  Bruno Haible  <bruno@clisp.org>
25129
25130         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
25131
25132 2006-12-23  Bruno Haible  <bruno@clisp.org>
25133
25134         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
25135         S_ISLNK.
25136         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
25137         mingw.
25138
25139 2006-12-22  Bruno Haible  <bruno@clisp.org>
25140
25141         * lib/copy-file.c: Include acl.h.
25142         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
25143         Close the file descriptors only after being done with copy_acl.
25144         * modules/copy-file (Depends-on): Add acl.
25145
25146 2006-12-22  Bruno Haible  <bruno@clisp.org>
25147
25148         * gnulib-tool (SED): New variable.
25149         Use $SED instead of sed everywhere.
25150
25151 2006-12-22  Bruno Haible  <bruno@clisp.org>
25152
25153         * modules/no-c++: New file.
25154         * m4/no-c++.m4: New file.
25155         * MODULES.html.sh (Support for building libraries and executables):
25156         Add no-c++.
25157
25158 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
25159
25160         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
25161         Include <limits.h>, and use its INT_MAX to rewrite the
25162         j loop so that it does not overflow 'int'.  Problem reported by
25163         Ralf Wildenhues in
25164         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
25165         Play it safe by shifting left by 1 rather than multiplying by 2,
25166         as GCC is less likely to optimize this away when the value
25167         is signed (when it assumes overflow leads to undefined behavior).
25168         Also, don't assume time_t uses two's complement.
25169
25170 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
25171
25172         * MODULES.html.sh: New module wctype.
25173         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
25174         * lib/fnmatch.c: Don't bother to include <wchar.h> before
25175         <wctype.h>, since the new wctype module should fix this.
25176         * lib/quotearg.c: Include <wctype.h> unconditionally, since
25177         the wctype module should arrange for it.
25178         * lib/regex_internal.h: Likewise.
25179         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
25180         since the wctype module should handle this now.
25181         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
25182         * modules/fnmatch (Depends-on): Add wctype.
25183         * modules/quotearg (Depends-on): Likewise.
25184         * modules/regex (Depends-on): Likewise.
25185
25186 2006-12-19  Bruno Haible  <bruno@clisp.org>
25187
25188         * lib/strdup.h [C++]: Wrap definitions in extern "C".
25189         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
25190
25191 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25192
25193         * modules/savewd (Depends-on): Fix dependency on fcntl.
25194
25195 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
25196
25197         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
25198         conforms to C99, rather than relying on the user's environment
25199         setting of STDINT_H.
25200
25201 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
25202         and Eric Blake  <ebb9@byu.net>
25203
25204         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
25205         This is more consistent with the other defines here.
25206         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
25207         Port to z/OS.  Problem reported by Paul Gilmartin.
25208         Change local vars to use gl_ prefix rather than ac_.
25209         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
25210         with other defines.
25211         * modules/double-slash-root: New module.
25212         * modules/dirname (Files): Remove m4/double-slash-root.m4.
25213         (Depends-on): Add double-slash-root.
25214         * MODULES.html.sh (File system functions): Mention new module.
25215
25216 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
25217
25218         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
25219         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
25220         This is for the benefit of gzip, which doesn't do i18n.
25221
25222 2006-12-12  Jim Meyering  <jim@meyering.net>
25223
25224         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
25225         Reported by Andreas Schwab <schwab@suse.de>.
25226
25227 2006-12-12  Bruno Haible  <bruno@clisp.org>
25228
25229         Merge these changes.
25230         2006-09-05  Bruno Haible  <bruno@clisp.org>
25231         * lib/iconvme.c (iconv_string): No need to save and restore errno when
25232         iconv_alloc succeeded.
25233         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
25234         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
25235         test for " && dest " at the end - dest is always != NULL there. Call
25236         iconv with 4xNULL arguments initially, to reset the state. Call iconv
25237         with 2xNULL arguments, also to flush the state storage. Handle the
25238         IRIX iconv behaviour. Realloc the final result, to throw away unused
25239         memory.
25240
25241 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
25242
25243         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
25244         and fchmodat unconditionally, since glibc 2.4 has them.
25245         Problem reported by Arkadiusz Miskiewicz.
25246
25247 2006-12-10  Bruno Haible  <bruno@clisp.org>
25248
25249         * gnulib-tool (func_import): Show the include files only for those
25250         modules that are copied and specified.
25251         Reported by Karl Berry.
25252
25253 2006-12-08  Jim Meyering  <jim@meyering.net>
25254
25255         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
25256         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
25257
25258         * build-aux/announce-gen: Add two new options, both optional:
25259         --bootstrap-tools=TOOL_LIST
25260               a comma-separated list of tools, e.g.,
25261               autoconf,automake,bison,gnulib
25262         --gnulib-snapshot-date=DATE
25263               if gnulib is in the bootstrap tool list,
25264               then report this as the snapshot date.
25265               If not specified, use the current date/time.
25266               If you specify a date here, be sure it's UTC.
25267
25268 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25269
25270         * tests/test-argp-2.sh: Fix test to match actual output.
25271         (func_compare): Fix sed script to be portable.
25272
25273 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
25274
25275         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
25276         workaround for this case.  It is not autoconfigured now; offhand
25277         it's hard to see how to autoconfigure it.
25278
25279 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
25280
25281         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
25282         a directory that is about to be chowned.  Such a directory's
25283         initial file permissions should permit the owner only and this
25284         should not be changed until after the chown, since the group and
25285         other bits would be incorrect if they granted permission before
25286         the chown.
25287
25288         Fix porting problem for iswctype reported by Georg Schwarz in:
25289         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
25290         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
25291         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
25292         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
25293         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
25294
25295 2006-12-03  Jim Meyering  <jim@meyering.net>
25296
25297         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
25298         p->fts_statp may not yet be defined.
25299         (fts_read): Instead, set it in the caller, once p->fts_statp is
25300         sure to be defined, and corresponds to a top-level directory.
25301         This bug made du -x fail.  Here's the coreutils test case:
25302         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
25303         Reported by Mike Frysinger.
25304
25305 2006-12-01  Jim Meyering  <jim@meyering.net>
25306
25307         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
25308         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
25309         Reported by Simon Josefsson.
25310
25311 2006-11-30  Jim Meyering  <jim@meyering.net>
25312
25313         * m4/warning.m4: Use the all-permissive copyright notice
25314         recommended by RMS (rather than LGPL).
25315         * m4/vararrays.m4: Likewise.
25316         * m4/flexmember.m4: Likewise.
25317
25318 2006-11-29  Bruno Haible  <bruno@clisp.org>
25319
25320         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
25321         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
25322         using +=.
25323         Reported by Simon Josefsson <simon@josefsson.org>.
25324
25325 2006-11-28  James Youngman <jay@gnu.org>
25326
25327         * README: Advise users that they might find the bug-gnulib@gnu.org
25328         and autotools-announce@gnu.org mailing lists useful.
25329
25330 2006-11-28  Bruno Haible  <bruno@clisp.org>
25331
25332         * m4/ptrdiff_max.m4: Remove file.
25333
25334 2006-11-21  Bruno Haible  <bruno@clisp.org>
25335
25336         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
25337         _AC_COMPUTE_INT.
25338         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
25339         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
25340         _AC_COMPUTE_INT.
25341         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
25342         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
25343         _AC_COMPUTE_INT.
25344         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
25345
25346 2006-11-28  Jim Meyering  <jim@meyering.net>
25347
25348         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
25349         warning from "gcc -Wshadow" about shadowing the builtin.
25350
25351 2006-11-27  Bruno Haible  <bruno@clisp.org>
25352
25353         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
25354         _AC_COMPUTE_INT.
25355         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
25356
25357 2006-11-27  Bruno Haible  <bruno@clisp.org>
25358             Paul Eggert  <eggert@cs.ucla.edu>
25359
25360         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
25361
25362 2006-11-26  Bruno Haible  <bruno@clisp.org>
25363
25364         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
25365         noinst_LTLIBRARIES.
25366
25367 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
25368             Bruno Haible  <bruno@clisp.org>
25369
25370         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
25371         if compiling with "gcc -ansi".
25372
25373 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
25374
25375         Fix some incompatibilities with gcc -ansi -pedantic.
25376         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
25377         if compiling pedantically with GCC, unless it's C99 or later.
25378         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
25379         it mishandles gcc -ansi -pedantic as well.
25380         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
25381         if gcc -pedantic.
25382         * lib/regexec.c (check_node_accept_bytes): Don't use auto
25383         initializers for struct if -pedantic, unless it's C99 or later.
25384
25385 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
25386
25387         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
25388         Don't close an fd more than once. Identical atimes indicate
25389         success, not failure.
25390
25391 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
25392
25393         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
25394
25395 2006-11-23  Jim Meyering  <jim@meyering.net>
25396
25397         * build-aux/announce-gen: New file.  From coreutils.
25398
25399 2006-11-22  Jim Meyering  <jim@meyering.net>
25400
25401         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
25402         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
25403         (fts_read): Use a temporary to narrow the overused st_size member
25404         before using it in a switch statement.  Reported by Matthew Woehlke.
25405
25406         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
25407         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
25408
25409 2006-11-20  Bruno Haible  <bruno@clisp.org>
25410
25411         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
25412         changequote instead of pairs of brackets.
25413         Reported by Andreas Schwab <schwab@suse.de>.
25414
25415 2006-11-21  Jim Meyering  <jim@meyering.net>
25416
25417         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
25418         so as to remain compatible with older compilers.
25419         Patch from Michael Deutschmann.
25420
25421 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
25422
25423         * MODULES.html.sh (File system functions): Add openat.
25424
25425         * lib/openat.h (rpl_fstatat): New macro, if
25426         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
25427         (fstatat): Define to rpl_fstatat under the same conditions,
25428         unless COMPILING_FSTATAT.
25429         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
25430         seems to have the bug.
25431         * lib/fstatat.c: New file.
25432         * modules/openat (Files): Add it.
25433
25434 2006-11-20  Bruno Haible  <bruno@clisp.org>
25435
25436         * Makefile: New file.
25437
25438 2006-11-20  Jim Meyering  <jim@meyering.net>
25439
25440         The beginnings of syntax-related checks for gnulib.
25441         * lib/Makefile: New file.
25442         * lib/t-idcache: New script.  Ensure that the two halves of
25443         idcache.c stay in sync.
25444
25445         * lib/idcache.c: Adjust comments in user- and group- portions to
25446         be more accurate, and to be consistent with one another.
25447
25448 2006-11-20  Jim Meyering  <jim@meyering.net>
25449
25450         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
25451         continue using the flexible array member (thus, this module performs
25452         half as many malloc calls), with the addition that...
25453         (getgroup, getuser): Consistently record a non-match via an empty
25454         "name" string, and map an empty string match to a NULL return value.
25455         * modules/idcache (Depends-on): Re-add flexmember.
25456
25457         * lib/idcache.c (getuser): Remove all uses of the register keyword.
25458         (getuidbyname, getgroup, getgidbyname): Likewise.
25459
25460         Use cleaner syntax: NULL rather than 0.
25461         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
25462
25463 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
25464
25465         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
25466         It mishandled the case where the group was missing.
25467         Problem reported by Greg Schafer.
25468         * modules/idcache: Likewise.
25469
25470 2006-11-18  Jim Meyering  <jim@meyering.net>
25471
25472         * check-module (%exempt_header): Add exception for some
25473         conditionally-included headers.
25474
25475         * modules/i-ring (Depends-on): Add verify.
25476         (License): Change to LGPL.
25477
25478 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
25479
25480         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
25481         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
25482         and inttostr.h.  Use snprintf rather than uinttostr, so that
25483         LGPLed code doesn't depend on GPLed.
25484
25485 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
25486
25487         * modules/inline (License): Change from GPL to LGPL.
25488
25489 2006-11-17  Jim Meyering  <jim@meyering.net>
25490
25491         * modules/d-type (License): Switch to LGPL.
25492
25493 2006-11-15  Bruno Haible  <bruno@clisp.org>
25494
25495         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
25496
25497 2006-11-15  Eric Blake  <ebb9@byu.net>
25498
25499         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
25500         the module dependency.
25501
25502 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
25503             Bruno Haible  <bruno@clisp.org>
25504
25505         * gnulib-tool (func_create_testdir): Add license consistency check.
25506
25507 2006-11-15  Eric Blake  <ebb9@byu.net>
25508
25509         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
25510         random "(cached)" in configure output.
25511
25512 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25513
25514         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
25515         test for conforming inttypes.h is both announced and cached.
25516
25517         * MODULES.html.sh (seen_modules, seen_files): New variables.
25518         (func_module): Rewrite to use a few less gnulib-tool and sed
25519         invocations.  Avoid a couple of quadratic algorithms for ...
25520         (missed_modules, missed_files): ... these, with ...
25521         (func_append, func_tmpdir): ... these new functions, from
25522         gnulib-tool.  Analogously, install traps for cleanup.
25523
25524         * tests/test-gc.c (main): Remove unused variables.
25525         * tests/test-read-file.c: Include stdlib.h, for 'free'.
25526
25527 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
25528
25529         * modules/inttostr (License): Change to LGPL.
25530
25531 2006-11-14  Eric Blake  <ebb9@byu.net>
25532
25533         * modules/tempname (License): Change to LGPL.
25534
25535 2006-11-14  Eric Blake  <ebb9@byu.net>
25536
25537         * doc/functions.texi (Function Portability): *printf functions on
25538         Cygwin now understand all POSIX size specifiers.
25539
25540 2006-11-14  Bruno Haible  <bruno@clisp.org>
25541
25542         * modules/c-ctype (License): Change to LGPL.
25543
25544 2006-11-12  Bruno Haible  <bruno@clisp.org>
25545
25546         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
25547         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
25548         for GNOME libraries, for which the include files are installed in
25549         subdirectories of $prefix/include.
25550
25551 2006-11-12  Bruno Haible  <bruno@clisp.org>
25552
25553         * m4/lib-link.m4: Require at least autoconf-2.54.
25554         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
25555         name to underscores for the --with option.
25556
25557 2006-11-13  Bruno Haible  <bruno@clisp.org>
25558
25559         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
25560         the tests directory.
25561         Reported by Ralf Wildenhues.
25562
25563 2006-11-13  Bruno Haible  <bruno@clisp.org>
25564
25565         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
25566         (func_emit_initmacro_end): Undo the override here.
25567         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
25568         Works around the famous automake error in coreutils.
25569
25570 2006-11-13  Eric Blake  <ebb9@byu.net>
25571
25572         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
25573         element, not its node.
25574
25575 2006-11-12  Bruno Haible  <bruno@clisp.org>
25576
25577         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
25578         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
25579
25580 2006-11-12  Bruno Haible  <bruno@clisp.org>
25581
25582         * gnulib-tool: New option --local-symlink.
25583         (func_usage): Document it.
25584         (lsymbolic): New variable.
25585         (func_import, func_create_testdir): If --symlink was not specified,
25586         test whether --local-symlink was specified and the file comes from
25587         the local_gnulib_dir.
25588
25589 2006-11-12  Bruno Haible  <bruno@clisp.org>
25590
25591         * gnulib-tool (func_ln): New function.
25592         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
25593
25594 2006-11-12  Bruno Haible  <bruno@clisp.org>
25595
25596         Finish support for source files in subdirectories.
25597         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
25598         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
25599         AUTOMAKE_OPTIONS.
25600         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
25601
25602 2006-11-12  Bruno Haible  <bruno@clisp.org>
25603
25604         * gnulib-tool (func_get_automake_snippet): Synthesize also an
25605         EXTRA_lib_SOURCES augmentation.
25606         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
25607
25608 2006-11-12  Jim Meyering  <jim@meyering.net>
25609
25610         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
25611         file descriptors.  This also averts a failure on systems with
25612         native openat support when a traversed directory lacks "x" access.
25613         * lib/fts_.h: Include "i-ring.h"
25614         (struct FTS) [fts_fd_ring]: New member.
25615         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
25616         (FCHDIR): Add parentheses.
25617         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
25618         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
25619         When descending, rather than simply closing the previous
25620         fts_cwd_fd value, push that file descriptor onto the ring.
25621         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
25622         (fts_open): Initialize the new fd_ring member.
25623         (fts_close): Clear the ring.
25624         (fts_safe_changedir): When possible, use our new fd_ring to skip
25625         the diropen and fstat and dev/ino comparison that would normally
25626         accompany a virtual `chdir ("..")'.
25627
25628         * modules/fts (Depends-on): Add i-ring.
25629         * modules/i-ring: New module.
25630         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
25631         * m4/i-ring.m4: New file.
25632
25633 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25634
25635         * gnulib-tool (func_create_testdir): Fix replacement of
25636         `build-aux' in configure.ac.  Run autotools in gltests
25637         subdirectory.
25638         (func_create_testdir, func_create_megatestdir, test): There is
25639         no need for '--force' in most autotool invocations in a new
25640         tree.  Actually fail the whole test if any of the tools, or the
25641         configure or make stages fail.
25642
25643         Sync from Automake.
25644         * build-aux/gnupload: Revert last change.  Add pointer to upload
25645         instructions of the GNU Maintenance Instructions.
25646         Suggestion by Karl Berry.
25647
25648 2006-11-10  Jim Meyering  <jim@meyering.net>
25649
25650         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
25651
25652 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
25653
25654         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
25655         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
25656         (bind_textdomain_codeset) [! ENABLE_NLS]:
25657         Evaluate all the arguments.  That way, callers get compatible behavior
25658         if the arguments have side effects.  Also, it avoids some GCC
25659         diagnostics in some cases; Joel E. Denny reported problems when Bison
25660         was configured with --enable-gcc-warnigs.
25661
25662 2006-11-10  Jim Meyering  <jim@meyering.net>
25663
25664         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
25665         relevant options in CFLAGS (like -O, -fno-inline) are taken into
25666         account.
25667
25668 2006-11-10  Jim Meyering  <jim@meyering.net>
25669
25670         * modules/inline: New file/module.
25671         * modules/xalloc (Files): Remove m4/inline.m4.
25672         (Depends-on): Add inline, instead.
25673         * modules/oset: Likewise.
25674         * modules/list: Likewise.
25675
25676 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
25677
25678         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
25679         Problem reported by Matthew Woehlke.
25680
25681 2006-11-09  Bruno Haible  <bruno@clisp.org>
25682
25683         * lib/tempname.c (gen_tempname): Remove variant that invokes
25684         __gen_tempname.
25685         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
25686         __gen_tempname.
25687
25688 2006-11-08  Bruno Haible  <bruno@clisp.org>
25689
25690         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
25691         to 'yes' instead of 'cross-compiling'.
25692
25693 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
25694
25695         * lib/quotearg.h (quotearg_free): New decl.
25696         * lib/quotearg.c (quotearg_free): New function.
25697         (slot0, nslots, slotvec0, slotvec):
25698         Now file-scope so that quotearg_free can get at them.
25699
25700 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25701
25702         Sync from Automake.
25703         * build-aux/gnupload: Add missing 'gnu' to example URL.
25704         Report by Karl Berry.
25705
25706 2006-11-08  Bruno Haible  <bruno@clisp.org>
25707
25708         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
25709         Suggested by Paul Eggert.
25710
25711 2006-11-08  Jim Meyering  <jim@meyering.net>
25712
25713         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
25714         It's already included if !_LIBC.
25715         (fts_safe_changedir): Add a comment.
25716
25717 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
25718
25719         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
25720         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
25721         Matthew Woehlke.
25722
25723         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
25724         definitions up, to avoid colliding with change below.
25725         (static_inline) [HAVE_INLINE]: New macro.
25726         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
25727         Provide extern decls when !HAVE_INLINE.  Do not define unless
25728         static_inline is defined, either by us or by xmalloc.c.  Use
25729         static_inline rather than static inline.
25730         (XCALLOC): Optimize sizeof(T) = 1 case.
25731         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
25732
25733 2006-11-07  Bruno Haible  <bruno@clisp.org>
25734
25735         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
25736         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
25737         AC_C_INLINE.
25738         * modules/xalloc (Files): Add m4/inline.m4.
25739
25740 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25741
25742         * README: Fix typo.
25743         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
25744         (Miscellanous Notes): ...from this.
25745
25746 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
25747
25748         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
25749         Mention that offsetof should be used instead of sizeof.
25750         From Bruno Haible.
25751
25752 2006-11-07  Bruno Haible  <bruno@clisp.org>
25753
25754         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
25755
25756 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
25757
25758         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
25759         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
25760         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
25761         (gl_tree_add_before, gl_tree_add_after):
25762         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
25763         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
25764         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
25765         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
25766         (gl_linked_add_after, gl_linked_add_at): Likewise.
25767         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
25768         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
25769         (gl_tree_add_before, gl_tree_add_after): Likewise.
25770         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
25771         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
25772         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
25773
25774 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25775
25776         * lib/gl_oset.h: Use C comment style, not C++ comment style.
25777
25778 2006-11-06  Bruno Haible  <bruno@clisp.org>
25779
25780         * m4/inline.m4: New file.
25781         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
25782         * modules/list (Files): Add m4/inline.m4.
25783         * modules/oset (Files): Likewise.
25784
25785 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
25786
25787         * lib/idcache.c: Include <stddef.h>, for offsetof.
25788         (struct userid.name): Change from char * to a flexible array member.
25789         All uses changed.
25790         * modules/idcache (Depends-on): Add flexmember.
25791
25792         * MODULES.html.sh (Core language properties): New module flexmember.
25793         * modules/flexmember, m4/flexmember.m4: New files.
25794
25795         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
25796         inline functions that are identical with the old xnmalloc_inline,
25797         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
25798         that we can avoid some unnecessary integer multiplications and
25799         divisions in the common case where the element size is known at
25800         compile time.
25801         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
25802         needed.
25803         (xnboundedmalloc): Remove.
25804         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
25805         arguments, for consistency with rest of this header.
25806         (xcharalloc): Rewrite using XNMALLOC.
25807         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
25808         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
25809         versions have been moved to lib/xalloc.h and renamed to be the
25810         non-*_inline versions.
25811         (xmalloc, xrealloc): Implement without reference to the xnmalloc
25812         and xnrealloc functions, since those functions are now inline and
25813         now call us.
25814         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
25815         renaming described above.
25816         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
25817         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
25818         captures the dependency in AC_C_INLINE.
25819
25820         New module canonicalize-lgpl, proposed by Charles Wilson in
25821         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
25822         with a few small changes afterwards.
25823         * MODULES.html.sh (File system functions): New module
25824         canonicalize-lgpl.
25825         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
25826         and canonicalize_file_name.
25827         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
25828         * modules/canonicalize-lgpl: New files.
25829
25830 2006-11-05  Bruno Haible  <bruno@clisp.org>
25831
25832         * gnulib-tool (func_import, func_create_testdir): Create directories
25833         also for files in subdirectories of lib/.
25834
25835 2006-11-05  Bruno Haible  <bruno@clisp.org>
25836
25837         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
25838         ANSI C compliant.
25839
25840 2006-11-03  Bruno Haible  <bruno@clisp.org>
25841
25842         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
25843         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
25844         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
25845         (xnboundedmalloc): New inline function.
25846         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
25847         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
25848         xmalloc.
25849         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
25850         xmalloc.
25851         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
25852         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
25853         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
25854         xmalloc.
25855         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
25856         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
25857         xmalloc.
25858         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
25859         gl_tree_add_after): Use XMALLOC instead of xmalloc.
25860         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
25861         xmalloc.
25862         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
25863         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
25864         gl_tree_add_after): Use XMALLOC instead of xmalloc.
25865         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
25866         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
25867         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
25868         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
25869
25870 2006-11-03  Bruno Haible  <bruno@clisp.org>
25871
25872         * lib/c-ctype.h [C++]: Define functions without name mangling.
25873         * lib/fwriteerror.h [C++]: Likewise.
25874         * lib/gcd.h [C++]: Likewise.
25875         * lib/linebreak.h [C++]: Likewise.
25876
25877 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
25878
25879         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
25880         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
25881         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
25882         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
25883         Check for functions and headers just once.
25884         Check for declaration of canonicalize_file_name.
25885         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
25886
25887 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
25888
25889         * gnulib-tool (func_import): Fix typo in actioncmd.
25890
25891 2006-11-02  Bruno Haible  <bruno@clisp.org>
25892
25893         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
25894         newline sequence in the Makefile.am snippet as a space, like "make"
25895         does.
25896         Reported by Roger Persson <perrog@gmail.com>.
25897
25898 2006-11-01  Bruno Haible  <bruno@clisp.org>
25899
25900         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
25901         already declared in <string.h>.
25902         * lib/strcase.h (strncasecmp): Don't declare it if yes.
25903
25904 2006-11-01  Bruno Haible  <bruno@clisp.org>
25905
25906         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
25907         * lib/strcase.h: Include <string.h>.
25908         (strcasecmp): Define to rpl_strcasecmp here.
25909
25910 2006-11-01  Bruno Haible  <bruno@clisp.org>
25911
25912         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
25913
25914 2006-11-01  Eric Blake  <ebb9@byu.net>
25915
25916         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
25917
25918         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
25919
25920 2006-10-29  Bruno Haible  <bruno@clisp.org>
25921
25922         Make it compile in C++ mode.
25923         * lib/full-write.c (full_rw): Add a cast.
25924
25925 2006-11-01  Bruno Haible  <bruno@clisp.org>
25926
25927         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
25928         be POSIX compliant.
25929         Reported by Roger Persson <perrog@gmail.com>.
25930
25931 2006-11-01  Eric Blake  <ebb9@byu.net>
25932
25933         * lib/getopt_.h: Fix comments.
25934
25935 2006-10-31  Eric Blake  <ebb9@byu.net>
25936
25937         * modules/tmpdir (Depends-on): Add sys_stat.
25938         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
25939         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
25940         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
25941         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
25942         tempname.
25943
25944 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
25945
25946         Avoid some C++ diagnostics reported by Bruno Haible.
25947         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
25948         xmalloc.
25949         (quotearg_alloc): Use xcharalloc rather than xmalloc.
25950         (struct slotvec): Move to top level.
25951         (quotearg_n_options): Rewrite to avoid xmalloc.
25952         * lib/xalloc.h (xcharalloc): New function.
25953         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
25954         [defined __cplusplus]: Add function template that provides result
25955         type propagation.  This part of the change is from Bruno Haible.
25956
25957 2006-10-29  Bruno Haible  <bruno@clisp.org>
25958
25959         Make it compile in C++ mode.
25960         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
25961         * lib/strnlen1.c (strnlen1): Cast memchr result.
25962         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
25963         * lib/clean-temp.c (string_equals, string_hash): Add casts.
25964         (create_temp_dir): Rename local variable 'template'.
25965         (compile_csharp_using_sscli): Add cast.
25966         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
25967         * lib/findprog.c (find_in_path): Likewise.
25968         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
25969         * lib/wait-process.c (register_slave_subprocess): Likewise.
25970
25971 2006-10-22  Bruno Haible  <bruno@clisp.org>
25972
25973         * modules/tsearch: New file.
25974         * lib/tsearch.h: New file.
25975         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
25976         * m4/tsearch.m4: New file.
25977         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
25978
25979 2006-10-29  Eric Blake  <ebb9@byu.net>
25980
25981         * lib/arcfour.c: Assume config.h.
25982         * lib/arctwo.c: Likewise.
25983         * lib/base64.c: Likewise.
25984         * lib/check-version.c: Likewise.
25985         * lib/crc.c: Likewise.
25986         * lib/des.c: Likewise.
25987         * lib/gc-gnulib.c: Likewise.
25988         * lib/gc-libgcrypt.c: Likewise.
25989         * lib/gc-pbkdf2-sha1.c: Likewise.
25990         * lib/getaddrinfo.c: Likewise.
25991         * lib/getdelim.c: Likewise.
25992         * lib/getline.c: Likewise.
25993         * lib/hmac-md5.c: Likewise.
25994         * lib/hmac-sha1.c: Likewise.
25995         * lib/iconvme.c: Likewise.
25996         * lib/md2.c: Likewise.
25997         * lib/md4.c: Likewise.
25998         * lib/memxor.c: Likewise.
25999         * lib/read-file.c: Likewise.
26000         * lib/readline.c: Likewise.
26001         * lib/rijndael-alg-fst.c: Likewise.
26002         * lib/rijndael-api-fst.c: Likewise.
26003         * lib/xgetdomainname.c: Likewise.
26004
26005 2006-10-28  Eric Blake  <ebb9@byu.net>
26006
26007         * lib/xstrndup.c: Assume config.h.
26008
26009 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
26010
26011         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
26012         stat-macros.h is now for our own macros, whereas stat_h is for
26013         macros in the <sys/stat.h> name space.
26014         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
26015         (STAT_MACROS_H): Remove.
26016         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
26017         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
26018         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
26019         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
26020         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
26021         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
26022         Move these macros to ...
26023         * lib/stat_.h: here.  Don't include stat-macros.h.
26024         * lib/canonicalize.c: Don't include stat-macros.h.
26025         * lib/chown.c: Likewise.
26026         * lib/euidaccess.c: Likewise.
26027         * lib/file-type.c: Likewise.
26028         * lib/filemode.c: Likewise.
26029         * lib/glob.c: Likewise.
26030         * lib/isapipe.c: Likewise.
26031         * lib/lchown.c: Likewise.
26032         * lib/lstat.c: Likewise.
26033         * lib/mkdir-p.c: Likewise.
26034         * lib/rmdir.c: Likewise.
26035         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
26036         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
26037         unless mkdir isn't declared, to speed up 'configure'.
26038         Always create sys/stat.h, since it's unlikely any real sys/stat.h
26039         would define all the S_* symbols.
26040         * modules/canonicalize (Depends-on):
26041         Depend on sys_stat, not stat-macros.
26042         * modules/chown: Likewise.
26043         * modules/euidaccess: Likewise.
26044         * modules/filemode: Likewise.
26045         * modules/file-type: Likewise.
26046         * modules/glob: Likewise.
26047         * modules/isapipe: Likewise.
26048         * modules/lchown: Likewise.
26049         * modules/lstat: Likewise.
26050         * modules/mkancesdirs: Likewise.
26051         * modules/rmdir: Likewise.
26052         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
26053         * modules/modechange: Likewise.
26054         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
26055         (configure.ac): Remove gl_STAT_MACROS.
26056         * modules/sys_stat (Depends-on): Remove stat-macros.
26057
26058 2006-10-27  Bruno Haible  <bruno@clisp.org>
26059
26060         * m4/signed.m4: Remove file.
26061         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
26062         invocation.
26063         * modules/vasnprintf (Files): Remove m4/signed.m4.
26064
26065 2006-10-27  Bruno Haible  <bruno@clisp.org>
26066
26067         Update to GNU gettext 0.16.
26068         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
26069         m4/inttypes-h.m4, m4/signed.m4.
26070         * m4/gettext.m4: Update to GNU gettext 0.16.
26071         * m4/intl.m4: New file, from GNU gettext.
26072         * m4/intldir.m4: New file, from GNU gettext.
26073         * config/srclist.txt: Update
26074
26075 2006-10-27  Eric Blake  <ebb9@byu.net>
26076
26077         * MODULES.html.sh: Document tempname.
26078         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
26079         dependencies.
26080         (Files): Move lib/tempname.c...
26081         * modules/tempname: ...to this new module.
26082         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
26083         (gl_PREREQ_TEMPNAME): Move...
26084         * m4/tempname.m4: ...to this new file.
26085         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
26086         * modules/sys_stat (Depends-on): Add stat-macros.
26087         * lib/stat_.h (includes): Pick up stat macros.
26088         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
26089         if stat macros are broken.
26090         * lib/tempname.c (includes): No need to include "stat-macros.h".
26091         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
26092         (direxists, __path_search) [!_LIBC]: Don't compile these in
26093         gnulib; the tmpdir module covers that.
26094         * lib/tempname.h: New file.
26095
26096 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
26097
26098         * COPYING: Explain how gnulib-tool converts licence headers.
26099         Almost all wording by Eric Blake.
26100
26101 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
26102
26103         * lib/mbchar.h (is_basic_table): Make read-only.
26104         * lib/mbchar.c (is_basic_table): Likewise.
26105         Reported by John Darrington.
26106
26107 2006-10-25  Bruno Haible  <bruno@clisp.org>
26108
26109         * lib/progname.h (set_program_name): Undefine before defining.
26110
26111 2006-10-25  Bruno Haible  <bruno@clisp.org>
26112
26113         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
26114         false for non-gcc C++ compilers.
26115         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
26116
26117 2006-10-24  Bruno Haible  <bruno@clisp.org>
26118
26119         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
26120         iconv implementations like Irix iconv.
26121
26122 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
26123
26124         * modules/vararrays: New file.
26125         * m4/vararrays.m4: New file, taken from diffutils.
26126         * MODULES.html.sh: New module vararrays.
26127
26128 2006-10-24  Karl Berry  <karl@gnu.org>
26129
26130         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
26131         Don't call GNU Unix.
26132
26133 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26134
26135         * users.txt: Add Libtool.
26136
26137         Sync from Libtool:
26138
26139         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
26140
26141         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
26142         to gnulib's policy of including config.h unconditionally.
26143
26144 2006-10-24  Bruno Haible  <bruno@clisp.org>
26145
26146         * modules/wcwidth (Files): Add m4/wint_t.m4.
26147         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
26148         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
26149
26150 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
26151
26152         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
26153         to pacify GCC with some -W flags enabled.  Problem reported by
26154         Bruno Haible.
26155
26156 2006-10-24  Jim Meyering  <jim@meyering.net>
26157
26158         * MODULES.html.sh: Remove uinttostr.  It's not a module.
26159         Reported by Karl Berry.
26160
26161 2006-10-23  Bruno Haible  <bruno@clisp.org>
26162
26163         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
26164
26165 2006-10-24  Bruno Haible  <bruno@clisp.org>
26166
26167         * lib/gl_list.h: Use C comment style, not C++ comment style.
26168
26169 2006-10-23  Eric Blake  <ebb9@byu.net>
26170
26171         * lib/getaddrinfo.c (includes): Add missing include.
26172
26173 2006-10-23  Bruno Haible  <bruno@clisp.org>
26174             Paul Eggert  <eggert@cs.ucla.edu>
26175
26176         Ability to rename obstack_free.
26177         * lib/obstack.h (__obstack_free): New macro. Declare instead of
26178         obstack_free.
26179         (obstack_free): Invoke the __obstack_free macro.
26180         * lib/obstack.c (obstack_free): Use __obstack_free macro.
26181
26182 2006-10-23  Bruno Haible  <bruno@clisp.org>
26183             Paul Eggert  <eggert@cs.ucla.edu>
26184
26185         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
26186         __argc, __argv from the declaration. (They are defined as macros on
26187         mingw.)
26188
26189 2006-10-22  Bruno Haible  <bruno@clisp.org>
26190
26191         * doc/gnulib-intro.texi: New file.
26192         * doc/gnulib.texi: Include it.
26193
26194 2006-10-21  Bruno Haible  <bruno@clisp.org>
26195
26196         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
26197         "Introduction", "Miscellanous Notes", "Particular Modules".
26198
26199 2006-10-21  Bruno Haible  <bruno@clisp.org>
26200
26201         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
26202         Change mostlyclean-local rule to avoid sh syntax error from bash
26203         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
26204
26205 2006-10-23  Jim Meyering  <jim@meyering.net>
26206
26207         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
26208         in place of snprintf.
26209
26210         * modules/inttostr (Files): Add lib/uinttostr.c.
26211         * lib/uinttostr.c (inttostr): New file/function.
26212         * lib/inttostr.h (uinttostr): Declare.
26213         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
26214         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
26215         Add uinttostr.
26216         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
26217
26218 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
26219
26220         * lib/canonicalize.c (ELOOP): Define if not already defined.
26221         Problem reported by Bruno Haible in
26222         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
26223
26224 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
26225
26226         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
26227         Problem reported by Perry Smith and Ville Laurikari.
26228
26229         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
26230         uses.
26231
26232 2006-10-19  Bruno Haible  <bruno@clisp.org>
26233
26234         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
26235         for mingw.
26236
26237 2006-10-19  Bruno Haible  <bruno@clisp.org>
26238
26239         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
26240         Needed for mingw.
26241
26242 2006-10-19  Bruno Haible  <bruno@clisp.org>
26243
26244         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
26245
26246 2006-10-19  Bruno Haible  <bruno@clisp.org>
26247
26248         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
26249         it.
26250
26251 2006-10-19  Bruno Haible  <bruno@clisp.org>
26252
26253         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
26254         invocation.
26255
26256 2006-10-19  Bruno Haible  <bruno@clisp.org>
26257
26258         * gnulib-tool (func_create_testdir): Don't include ftruncate and
26259         mountlist by default.
26260
26261 2006-10-16  Bruno Haible  <bruno@clisp.org>
26262
26263         * lib/c-strstr.c: Include c-strstr.h.
26264
26265 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
26266
26267         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
26268         in a slash.
26269
26270 2006-10-18  Bruno Haible  <bruno@clisp.org>
26271
26272         * lib/lock.h [C++]: Wrap definitions in extern "C".
26273
26274 2006-10-18  Bruno Haible  <bruno@clisp.org>
26275
26276         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
26277         gl_LIBOBJS list.
26278
26279 2006-10-18  Bruno Haible  <bruno@clisp.org>
26280
26281         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
26282
26283 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
26284
26285         * lib/xstrtol.h: Include gettext.h.
26286         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
26287         Problem reported by Eric Blake.
26288         * modules/xstrtol (Depends-on): Add gettext-h.
26289
26290 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
26291
26292         * lib/strftime.c (advance): New macro.
26293         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
26294         incomplete type, so you can't add 0 to it.  Problem and patch
26295         reported by Eelco Dolstra for dietlibc.
26296
26297 2006-10-18  Jim Meyering  <jim@meyering.net>
26298
26299         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
26300         type for a local, and rename it: s/up/user_proc/.
26301
26302 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
26303
26304         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
26305         READ_UTMP_USER_PROCESS.
26306         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
26307
26308 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
26309
26310         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
26311         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
26312
26313 2006-10-17  Eric Blake  <ebb9@byu.net>
26314
26315         * lib/sigprocmask.c (sigprocmask): Fix typo.
26316
26317         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
26318
26319         * modules/clean-temp (Makefile.am): Don't add to make output...
26320         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
26321         config.h.
26322
26323 2006-10-17  Bruno Haible  <bruno@clisp.org>
26324
26325         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
26326         differently if DEFAULT_TEXT_DOMAIN is set.
26327
26328 2006-10-16  Bruno Haible  <bruno@clisp.org>
26329
26330         * lib/clean-temp.c: Include fwriteerror.h.
26331
26332 2006-10-16  Bruno Haible  <bruno@clisp.org>
26333
26334         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
26335
26336 2006-10-16  Bruno Haible  <bruno@clisp.org>
26337
26338         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
26339         * lib/sigprocmask.h: Include <sys/types.h>.
26340         (sigset_t): Use the system's definition if present.
26341
26342 2006-10-17  Eric Blake  <ebb9@byu.net>
26343
26344         * lib/xvasprintf.c (includes): Assume config.h.
26345         * lib/xasprintf.c (includes): Likewise.
26346
26347 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
26348
26349         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
26350         at least as wide as intmax_t.
26351
26352 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
26353
26354         (Imported from Automake.)
26355         * build-aux/gnupload: Update to version 1.1 of directive file.
26356
26357 2006-10-16  Eric Blake  <ebb9@byu.net>
26358
26359         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
26360         match Automake 1.10a.
26361
26362 2006-10-14  Bruno Haible  <bruno@clisp.org>
26363
26364         * modules/sigprocmask: New file.
26365         * lib/sigprocmask.h: New file.
26366         * lib/sigprocmask.c: New file.
26367         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
26368         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
26369         request sigprocmask.o.
26370         (gl_PREREQ_SIGPROCMASK): New macro.
26371         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
26372         (Depends-on): Add sigprocmask.
26373         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
26374         gt_SIGNALBLOCKING. Test for 'raise' only once.
26375         * lib/fatal-signal.c: Include sigprocmask.h.
26376         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
26377         unblock_fatal_signals): Define always.
26378         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
26379         sigprocmask.
26380
26381 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
26382
26383         Sync from Automake.
26384         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
26385         which incorrectly sets the mode of an existing destination
26386         directory.  In some cases the unpatched install-sh could do the
26387         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
26388         system.  We hope this is rare in practice, but it's clearly worth
26389         fixing.  Problem reported by Alex Unleashed in
26390         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
26391         Also, don't bother to check for -m bugs unless we're using -m;
26392         suggested by Stepan Kasal.
26393
26394 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26395
26396         Sync from Automake.
26397         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
26398         `-c' flag, so they appear at the same position as in %FASTDEP%
26399         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
26400         which ignores unknown options only after the first non-option.
26401         Bug report against M4 by Nelson H. F. Beebe.
26402
26403 2006-10-13  Jim Meyering  <jim@meyering.net>
26404
26405         Fix a bug in yesterday's change.
26406         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
26407         p->fts_statp->st_dev would be used uninitialized.
26408         Ensures that we always call fts_stat on the very first entry.
26409         Miklos Szeredi reported that find -xdev stopped working.
26410
26411 2006-10-12  Bruno Haible  <bruno@clisp.org>
26412
26413         * gnulib-tool (func_get_automake_snippet): Append an automatically
26414         computed EXTRA_DIST augmentation.
26415         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
26416         * modules/alloca-opt (Makefile.am): Likewise.
26417         * modules/allocsa (Makefile.am): Likewise.
26418         * modules/arcfour (Makefile.am): Likewise.
26419         * modules/arctwo (Makefile.am): Likewise.
26420         * modules/argmatch (Makefile.am): Likewise.
26421         * modules/argz (Makefile.am): Likewise.
26422         * modules/atexit (Makefile.am): Likewise.
26423         * modules/backupfile (Makefile.am): Likewise.
26424         * modules/byteswap (Makefile.am): Likewise.
26425         * modules/c-strtod (Makefile.am): Likewise.
26426         * modules/c-strtold (Makefile.am): Likewise.
26427         * modules/calloc (Makefile.am): Likewise.
26428         * modules/canon-host (Makefile.am): Likewise.
26429         * modules/canonicalize (Makefile.am): Likewise.
26430         * modules/chdir-long (Makefile.am): Likewise.
26431         * modules/chdir-safer (Makefile.am): Likewise.
26432         * modules/check-version (Makefile.am): Likewise.
26433         * modules/chown (Makefile.am): Likewise.
26434         * modules/cloexec (Makefile.am): Likewise.
26435         * modules/close-stream (Makefile.am): Likewise.
26436         * modules/closeout (Makefile.am): Likewise.
26437         * modules/crc (Makefile.am): Likewise.
26438         * modules/csharpexec (Makefile.am): Likewise.
26439         * modules/cycle-check (Makefile.am): Likewise.
26440         * modules/des (Makefile.am): Likewise.
26441         * modules/dev-ino (Makefile.am): Likewise.
26442         * modules/dirfd (Makefile.am): Likewise.
26443         * modules/dirname (Makefile.am): Likewise.
26444         * modules/dup2 (Makefile.am): Likewise.
26445         * modules/eealloc (Makefile.am): Likewise.
26446         * modules/error (Makefile.am): Likewise.
26447         * modules/euidaccess (Makefile.am): Likewise.
26448         * modules/exclude (Makefile.am): Likewise.
26449         * modules/exitfail (Makefile.am): Likewise.
26450         * modules/fcntl-safer (Makefile.am): Likewise.
26451         * modules/fcntl (Makefile.am): Likewise.
26452         * modules/file-type (Makefile.am): Likewise.
26453         * modules/fileblocks (Makefile.am): Likewise.
26454         * modules/filemode (Makefile.am): Likewise.
26455         * modules/filenamecat (Makefile.am): Likewise.
26456         * modules/fnmatch (Makefile.am): Likewise.
26457         * modules/fopen-safer (Makefile.am): Likewise.
26458         * modules/fpending (Makefile.am): Likewise.
26459         * modules/fprintftime (Makefile.am): Likewise.
26460         * modules/free (Makefile.am): Likewise.
26461         * modules/fsusage (Makefile.am): Likewise.
26462         * modules/ftruncate (Makefile.am): Likewise.
26463         * modules/fts (Makefile.am): Likewise.
26464         * modules/gc-arcfour (Makefile.am): Likewise.
26465         * modules/gc-des (Makefile.am): Likewise.
26466         * modules/gc-hmac-md5 (Makefile.am): Likewise.
26467         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
26468         * modules/gc-md4 (Makefile.am): Likewise.
26469         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
26470         * modules/gc-sha1 (Makefile.am): Likewise.
26471         * modules/gc (Makefile.am): Likewise.
26472         * modules/getaddrinfo (Makefile.am): Likewise.
26473         * modules/getcwd (Makefile.am): Likewise.
26474         * modules/getdelim (Makefile.am): Likewise.
26475         * modules/getdomainname (Makefile.am): Likewise.
26476         * modules/getgroups (Makefile.am): Likewise.
26477         * modules/gethostname (Makefile.am): Likewise.
26478         * modules/gethrxtime (Makefile.am): Likewise.
26479         * modules/getline (Makefile.am): Likewise.
26480         * modules/getloadavg (Makefile.am): Likewise.
26481         * modules/getlogin_r (Makefile.am): Likewise.
26482         * modules/getndelim2 (Makefile.am): Likewise.
26483         * modules/getopt (Makefile.am): Likewise.
26484         * modules/getpagesize (Makefile.am): Likewise.
26485         * modules/getpass-gnu (Makefile.am): Likewise.
26486         * modules/getpass (Makefile.am): Likewise.
26487         * modules/getsubopt (Makefile.am): Likewise.
26488         * modules/gettime (Makefile.am): Likewise.
26489         * modules/gettimeofday (Makefile.am): Likewise.
26490         * modules/getugroups (Makefile.am): Likewise.
26491         * modules/getusershell (Makefile.am): Likewise.
26492         * modules/glob (Makefile.am): Likewise.
26493         * modules/group-member (Makefile.am): Likewise.
26494         * modules/hard-locale (Makefile.am): Likewise.
26495         * modules/hash (Makefile.am): Likewise.
26496         * modules/hmac-md5 (Makefile.am): Likewise.
26497         * modules/hmac-sha1 (Makefile.am): Likewise.
26498         * modules/human (Makefile.am): Likewise.
26499         * modules/idcache (Makefile.am): Likewise.
26500         * modules/imaxabs (Makefile.am): Likewise.
26501         * modules/imaxdiv (Makefile.am): Likewise.
26502         * modules/inet_ntop (Makefile.am): Likewise.
26503         * modules/inet_pton (Makefile.am): Likewise.
26504         * modules/intprops (Makefile.am): Likewise.
26505         * modules/inttostr (Makefile.am): Likewise.
26506         * modules/inttypes (Makefile.am): Likewise.
26507         * modules/isapipe (Makefile.am): Likewise.
26508         * modules/javaversion (Makefile.am): Likewise.
26509         * modules/lchmod (Makefile.am): Likewise.
26510         * modules/lchown (Makefile.am): Likewise.
26511         * modules/localcharset (Makefile.am): Likewise.
26512         * modules/long-options (Makefile.am): Likewise.
26513         * modules/lstat (Makefile.am): Likewise.
26514         * modules/malloc (Makefile.am): Likewise.
26515         * modules/mathl (Makefile.am): Likewise.
26516         * modules/mbchar (Makefile.am): Likewise.
26517         * modules/md2 (Makefile.am): Likewise.
26518         * modules/md4 (Makefile.am): Likewise.
26519         * modules/md5 (Makefile.am): Likewise.
26520         * modules/memcasecmp (Makefile.am): Likewise.
26521         * modules/memchr (Makefile.am): Likewise.
26522         * modules/memcmp (Makefile.am): Likewise.
26523         * modules/memcoll (Makefile.am): Likewise.
26524         * modules/memcpy (Makefile.am): Likewise.
26525         * modules/memmem (Makefile.am): Likewise.
26526         * modules/memmove (Makefile.am): Likewise.
26527         * modules/mempcpy (Makefile.am): Likewise.
26528         * modules/memrchr (Makefile.am): Likewise.
26529         * modules/memset (Makefile.am): Likewise.
26530         * modules/memxor (Makefile.am): Likewise.
26531         * modules/mkancesdirs (Makefile.am): Likewise.
26532         * modules/mkdir-p (Makefile.am): Likewise.
26533         * modules/mkdir (Makefile.am): Likewise.
26534         * modules/mkdtemp (Makefile.am): Likewise.
26535         * modules/mkstemp (Makefile.am): Likewise.
26536         * modules/mktime (Makefile.am): Likewise.
26537         * modules/modechange (Makefile.am): Likewise.
26538         * modules/mountlist (Makefile.am): Likewise.
26539         * modules/nanosleep (Makefile.am): Likewise.
26540         * modules/obstack (Makefile.am): Likewise.
26541         * modules/openat (Makefile.am): Likewise.
26542         * modules/pagealign_alloc (Makefile.am): Likewise.
26543         * modules/pathmax (Makefile.am): Likewise.
26544         * modules/physmem (Makefile.am): Likewise.
26545         * modules/poll (Makefile.am): Likewise.
26546         * modules/posixtm (Makefile.am): Likewise.
26547         * modules/posixver (Makefile.am): Likewise.
26548         * modules/putenv (Makefile.am): Likewise.
26549         * modules/quote (Makefile.am): Likewise.
26550         * modules/quotearg (Makefile.am): Likewise.
26551         * modules/raise (Makefile.am): Likewise.
26552         * modules/read-file (Makefile.am): Likewise.
26553         * modules/readline (Makefile.am): Likewise.
26554         * modules/readlink (Makefile.am): Likewise.
26555         * modules/readtokens (Makefile.am): Likewise.
26556         * modules/readutmp (Makefile.am): Likewise.
26557         * modules/realloc (Makefile.am): Likewise.
26558         * modules/regex (Makefile.am): Likewise.
26559         * modules/rename-dest-slash (Makefile.am): Likewise.
26560         * modules/rename (Makefile.am): Likewise.
26561         * modules/rijndael (Makefile.am): Likewise.
26562         * modules/rmdir (Makefile.am): Likewise.
26563         * modules/rpmatch (Makefile.am): Likewise.
26564         * modules/safe-read (Makefile.am): Likewise.
26565         * modules/safe-write (Makefile.am): Likewise.
26566         * modules/same-inode (Makefile.am): Likewise.
26567         * modules/same (Makefile.am): Likewise.
26568         * modules/save-cwd (Makefile.am): Likewise.
26569         * modules/savedir (Makefile.am): Likewise.
26570         * modules/setenv (Makefile.am): Likewise.
26571         * modules/settime (Makefile.am): Likewise.
26572         * modules/sha1 (Makefile.am): Likewise.
26573         * modules/sig2str (Makefile.am): Likewise.
26574         * modules/snprintf (Makefile.am): Likewise.
26575         * modules/stat-macros (Makefile.am): Likewise.
26576         * modules/stat-time (Makefile.am): Likewise.
26577         * modules/stdbool (Makefile.am): Likewise.
26578         * modules/stdint (Makefile.am): Likewise.
26579         * modules/stdlib-safer (Makefile.am): Likewise.
26580         * modules/stpcpy (Makefile.am): Likewise.
26581         * modules/stpncpy (Makefile.am): Likewise.
26582         * modules/strcase (Makefile.am): Likewise.
26583         * modules/strcasestr (Makefile.am): Likewise.
26584         * modules/strchrnul (Makefile.am): Likewise.
26585         * modules/strcspn (Makefile.am): Likewise.
26586         * modules/strdup (Makefile.am): Likewise.
26587         * modules/strerror (Makefile.am): Likewise.
26588         * modules/strftime (Makefile.am): Likewise.
26589         * modules/strndup (Makefile.am): Likewise.
26590         * modules/strnlen (Makefile.am): Likewise.
26591         * modules/strpbrk (Makefile.am): Likewise.
26592         * modules/strsep (Makefile.am): Likewise.
26593         * modules/strstr (Makefile.am): Likewise.
26594         * modules/strtod (Makefile.am): Likewise.
26595         * modules/strtoimax (Makefile.am): Likewise.
26596         * modules/strtok_r (Makefile.am): Likewise.
26597         * modules/strtol (Makefile.am): Likewise.
26598         * modules/strtoll (Makefile.am): Likewise.
26599         * modules/strtoul (Makefile.am): Likewise.
26600         * modules/strtoull (Makefile.am): Likewise.
26601         * modules/strtoumax (Makefile.am): Likewise.
26602         * modules/strverscmp (Makefile.am): Likewise.
26603         * modules/sys_socket (Makefile.am): Likewise.
26604         * modules/sys_stat (Makefile.am): Likewise.
26605         * modules/sysexits (Makefile.am): Likewise.
26606         * modules/time_r (Makefile.am): Likewise.
26607         * modules/timegm (Makefile.am): Likewise.
26608         * modules/timespec (Makefile.am): Likewise.
26609         * modules/tmpfile-safer (Makefile.am): Likewise.
26610         * modules/trim (Makefile.am): Likewise.
26611         * modules/unistd-safer (Makefile.am): Likewise.
26612         * modules/unlinkdir (Makefile.am): Likewise.
26613         * modules/unlocked-io (Makefile.am): Likewise.
26614         * modules/userspec (Makefile.am): Likewise.
26615         * modules/utime (Makefile.am): Likewise.
26616         * modules/utimecmp (Makefile.am): Likewise.
26617         * modules/utimens (Makefile.am): Likewise.
26618         * modules/vasnprintf (Makefile.am): Likewise.
26619         * modules/vasprintf (Makefile.am): Likewise.
26620         * modules/vsnprintf (Makefile.am): Likewise.
26621         * modules/xalloc (Makefile.am): Likewise.
26622         * modules/xgetcwd (Makefile.am): Likewise.
26623         * modules/xnanosleep (Makefile.am): Likewise.
26624         * modules/xreadlink (Makefile.am): Likewise.
26625         * modules/xstrtod (Makefile.am): Likewise.
26626         * modules/xstrtol (Makefile.am): Likewise.
26627         * modules/xstrtold (Makefile.am): Likewise.
26628         * modules/yesno (Makefile.am): Likewise.
26629         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
26630
26631 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
26632
26633         * modules/error (Makefile.am): Distribute files through
26634         EXTRA_DIST, not lib_SOURCES.
26635
26636 2006-10-12  Eric Blake  <ebb9@byu.net>
26637
26638         * modules/error (Makefile.am): Distribute files in /lib.
26639         * modules/obstack (Makefile.am): Likewise.
26640
26641 2006-10-12  Bruno Haible  <bruno@clisp.org>
26642
26643         * modules/acl (Makefile.am): Distribute all files in lib/ through
26644         EXTRA_DIST.
26645         * modules/arcfour (Makefile.am): Likewise.
26646         * modules/arctwo (Makefile.am): Likewise.
26647         * modules/argmatch (Makefile.am): Likewise.
26648         * modules/argz (Makefile.am): Likewise.
26649         * modules/atexit (Makefile.am): Likewise.
26650         * modules/backupfile (Makefile.am): Likewise.
26651         * modules/c-strtod (Makefile.am): Likewise.
26652         * modules/c-strtold (Makefile.am): Likewise.
26653         * modules/calloc (Makefile.am): Likewise.
26654         * modules/canon-host (Makefile.am): Likewise.
26655         * modules/canonicalize (Makefile.am): Likewise.
26656         * modules/chdir-long (Makefile.am): Likewise.
26657         * modules/chdir-safer (Makefile.am): Likewise.
26658         * modules/check-version (Makefile.am): Likewise.
26659         * modules/chown (Makefile.am): Likewise.
26660         * modules/cloexec (Makefile.am): Likewise.
26661         * modules/close-stream (Makefile.am): Likewise.
26662         * modules/closeout (Makefile.am): Likewise.
26663         * modules/crc (Makefile.am): Likewise.
26664         * modules/cycle-check (Makefile.am): Likewise.
26665         * modules/des (Makefile.am): Likewise.
26666         * modules/dirfd (Makefile.am): Likewise.
26667         * modules/dirname (Makefile.am): Likewise.
26668         * modules/dup2 (Makefile.am): Likewise.
26669         * modules/euidaccess (Makefile.am): Likewise.
26670         * modules/exclude (Makefile.am): Likewise.
26671         * modules/exitfail (Makefile.am): Likewise.
26672         * modules/fcntl-safer (Makefile.am): Likewise.
26673         * modules/file-type (Makefile.am): Likewise.
26674         * modules/fileblocks (Makefile.am): Likewise.
26675         * modules/filemode (Makefile.am): Likewise.
26676         * modules/filenamecat (Makefile.am): Likewise.
26677         * modules/fnmatch (Makefile.am): Likewise.
26678         * modules/fopen-safer (Makefile.am): Likewise.
26679         * modules/fpending (Makefile.am): Likewise.
26680         * modules/fprintftime (Makefile.am): Likewise.
26681         * modules/free (Makefile.am): Likewise.
26682         * modules/fsusage (Makefile.am): Likewise.
26683         * modules/ftruncate (Makefile.am): Likewise.
26684         * modules/fts (Makefile.am): Likewise.
26685         * modules/gc (Makefile.am): Likewise.
26686         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
26687         * modules/getaddrinfo (Makefile.am): Likewise.
26688         * modules/getcwd (Makefile.am): Likewise.
26689         * modules/getdelim (Makefile.am): Likewise.
26690         * modules/getdomainname (Makefile.am): Likewise.
26691         * modules/getgroups (Makefile.am): Likewise.
26692         * modules/gethostname (Makefile.am): Likewise.
26693         * modules/gethrxtime (Makefile.am): Likewise.
26694         * modules/getline (Makefile.am): Likewise.
26695         * modules/getloadavg (Makefile.am): Likewise.
26696         * modules/getlogin_r (Makefile.am): Likewise.
26697         * modules/getopt (Makefile.am): Likewise.
26698         * modules/getpass (Makefile.am): Likewise.
26699         * modules/getpass-gnu (Makefile.am): Likewise.
26700         * modules/getsubopt (Makefile.am): Likewise.
26701         * modules/gettime (Makefile.am): Likewise.
26702         * modules/gettimeofday (Makefile.am): Likewise.
26703         * modules/getugroups (Makefile.am): Likewise.
26704         * modules/getusershell (Makefile.am): Likewise.
26705         * modules/glob (Makefile.am): Likewise.
26706         * modules/group-member (Makefile.am): Likewise.
26707         * modules/hard-locale (Makefile.am): Likewise.
26708         * modules/hash (Makefile.am): Likewise.
26709         * modules/hmac-md5 (Makefile.am): Likewise.
26710         * modules/hmac-sha1 (Makefile.am): Likewise.
26711         * modules/human (Makefile.am): Likewise.
26712         * modules/idcache (Makefile.am): Likewise.
26713         * modules/imaxabs (Makefile.am): Likewise.
26714         * modules/imaxdiv (Makefile.am): Likewise.
26715         * modules/inet_ntop (Makefile.am): Likewise.
26716         * modules/inet_pton (Makefile.am): Likewise.
26717         * modules/inttostr (Makefile.am): Likewise.
26718         * modules/isapipe (Makefile.am): Likewise.
26719         * modules/lchown (Makefile.am): Likewise.
26720         * modules/long-options (Makefile.am): Likewise.
26721         * modules/lstat (Makefile.am): Likewise.
26722         * modules/malloc (Makefile.am): Likewise.
26723         * modules/mathl (Makefile.am): Likewise.
26724         * modules/mbchar (Makefile.am): Likewise.
26725         * modules/md2 (Makefile.am): Likewise.
26726         * modules/md4 (Makefile.am): Likewise.
26727         * modules/md5 (Makefile.am): Likewise.
26728         * modules/memcasecmp (Makefile.am): Likewise.
26729         * modules/memchr (Makefile.am): Likewise.
26730         * modules/memcmp (Makefile.am): Likewise.
26731         * modules/memcoll (Makefile.am): Likewise.
26732         * modules/memcpy (Makefile.am): Likewise.
26733         * modules/memmem (Makefile.am): Likewise.
26734         * modules/memmove (Makefile.am): Likewise.
26735         * modules/mempcpy (Makefile.am): Likewise.
26736         * modules/memrchr (Makefile.am): Likewise.
26737         * modules/memset (Makefile.am): Likewise.
26738         * modules/memxor (Makefile.am): Likewise.
26739         * modules/mkancesdirs (Makefile.am): Likewise.
26740         * modules/mkdir (Makefile.am): Likewise.
26741         * modules/mkdir-p (Makefile.am): Likewise.
26742         * modules/mkdtemp (Makefile.am): Likewise.
26743         * modules/mkstemp (Makefile.am): Likewise.
26744         * modules/mktime (Makefile.am): Likewise.
26745         * modules/modechange (Makefile.am): Likewise.
26746         * modules/mountlist (Makefile.am): Likewise.
26747         * modules/nanosleep (Makefile.am): Likewise.
26748         * modules/openat (Makefile.am): Likewise.
26749         * modules/pagealign_alloc (Makefile.am): Likewise.
26750         * modules/physmem (Makefile.am): Likewise.
26751         * modules/poll (Makefile.am): Likewise.
26752         * modules/posixtm (Makefile.am): Likewise.
26753         * modules/posixver (Makefile.am): Likewise.
26754         * modules/putenv (Makefile.am): Likewise.
26755         * modules/quote (Makefile.am): Likewise.
26756         * modules/quotearg (Makefile.am): Likewise.
26757         * modules/raise (Makefile.am): Likewise.
26758         * modules/read-file (Makefile.am): Likewise.
26759         * modules/readline (Makefile.am): Likewise.
26760         * modules/readlink (Makefile.am): Likewise.
26761         * modules/readtokens (Makefile.am): Likewise.
26762         * modules/readutmp (Makefile.am): Likewise.
26763         * modules/realloc (Makefile.am): Likewise.
26764         * modules/regex (Makefile.am): Likewise.
26765         * modules/rename (Makefile.am): Likewise.
26766         * modules/rename-dest-slash (Makefile.am): Likewise.
26767         * modules/rijndael (Makefile.am): Likewise.
26768         * modules/rmdir (Makefile.am): Likewise.
26769         * modules/rpmatch (Makefile.am): Likewise.
26770         * modules/safe-read (Makefile.am): Likewise.
26771         * modules/safe-write (Makefile.am): Likewise.
26772         * modules/same (Makefile.am): Likewise.
26773         * modules/save-cwd (Makefile.am): Likewise.
26774         * modules/savedir (Makefile.am): Likewise.
26775         * modules/setenv (Makefile.am): Likewise.
26776         * modules/settime (Makefile.am): Likewise.
26777         * modules/sha1 (Makefile.am): Likewise.
26778         * modules/sig2str (Makefile.am): Likewise.
26779         * modules/snprintf (Makefile.am): Likewise.
26780         * modules/stdlib-safer (Makefile.am): Likewise.
26781         * modules/stpcpy (Makefile.am): Likewise.
26782         * modules/stpncpy (Makefile.am): Likewise.
26783         * modules/strcase (Makefile.am): Likewise.
26784         * modules/strcasestr (Makefile.am): Likewise.
26785         * modules/strchrnul (Makefile.am): Likewise.
26786         * modules/strcspn (Makefile.am): Likewise.
26787         * modules/strdup (Makefile.am): Likewise.
26788         * modules/strerror (Makefile.am): Likewise.
26789         * modules/strftime (Makefile.am): Likewise.
26790         * modules/strndup (Makefile.am): Likewise.
26791         * modules/strnlen (Makefile.am): Likewise.
26792         * modules/strpbrk (Makefile.am): Likewise.
26793         * modules/strsep (Makefile.am): Likewise.
26794         * modules/strstr (Makefile.am): Likewise.
26795         * modules/strtod (Makefile.am): Likewise.
26796         * modules/strtoimax (Makefile.am): Likewise.
26797         * modules/strtok_r (Makefile.am): Likewise.
26798         * modules/strtol (Makefile.am): Likewise.
26799         * modules/strtoll (Makefile.am): Likewise.
26800         * modules/strtoul (Makefile.am): Likewise.
26801         * modules/strtoull (Makefile.am): Likewise.
26802         * modules/strtoumax (Makefile.am): Likewise.
26803         * modules/strverscmp (Makefile.am): Likewise.
26804         * modules/time_r (Makefile.am): Likewise.
26805         * modules/timegm (Makefile.am): Likewise.
26806         * modules/tmpfile-safer (Makefile.am): Likewise.
26807         * modules/unistd-safer (Makefile.am): Likewise.
26808         * modules/unlinkdir (Makefile.am): Likewise.
26809         * modules/userspec (Makefile.am): Likewise.
26810         * modules/utime (Makefile.am): Likewise.
26811         * modules/utimecmp (Makefile.am): Likewise.
26812         * modules/utimens (Makefile.am): Likewise.
26813         * modules/vasnprintf (Makefile.am): Likewise.
26814         * modules/vasprintf (Makefile.am): Likewise.
26815         * modules/vsnprintf (Makefile.am): Likewise.
26816         * modules/xalloc (Makefile.am): Likewise.
26817         * modules/xgetcwd (Makefile.am): Likewise.
26818         * modules/xnanosleep (Makefile.am): Likewise.
26819         * modules/xreadlink (Makefile.am): Likewise.
26820         * modules/xstrtod (Makefile.am): Likewise.
26821         * modules/xstrtol (Makefile.am): Likewise.
26822         * modules/xstrtold (Makefile.am): Likewise.
26823         * modules/yesno (Makefile.am): Likewise.
26824
26825 2006-10-12  Jim Meyering  <jim@meyering.net>
26826
26827         * m4/getloadavg.m4: Revert the change below.
26828
26829         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
26830         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
26831         fail with a symlink, which is what coreutils' ./bootstrap now
26832         creates by default.
26833
26834 2006-10-12  Bruno Haible  <bruno@clisp.org>
26835
26836         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
26837         mingw.
26838         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
26839         MSVC and mingw explicitly.
26840
26841 2006-10-11  Simon Josefsson  <jas@extundo.com>
26842             Bruno Haible  <bruno@clisp.org>
26843
26844         Add support for multiple gnulib-tool invocations in the scope of a
26845         single configure.ac file.
26846         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
26847         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
26848         with the same contents as the _LIBADD variable.
26849         (func_emit_initmacro_start, func_emit_initmacro_end,
26850         func_emit_initmacro_done): New functions.
26851         (func_import, func_create_testdir): Invoke them. Allow the identifiers
26852         gl_LIBOBJS and gl_LTLIBOBJS.
26853
26854 2006-10-11  Bruno Haible  <bruno@clisp.org>
26855
26856         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
26857         (func_create_testdir): Don't create po/Makefile.am, don't invoke
26858         autoreconf. Instead, invoke autopoint explicitly but move back the
26859         *.m4 files from gnulib.
26860
26861 2006-10-11  Bruno Haible  <bruno@clisp.org>
26862
26863         * gnulib-tool (func_usage): Make module names after --create-testdir
26864         optional.
26865         (func_create_testdir): If no module was specified, use nearly all
26866         modules.
26867
26868 2006-10-12  Jim Meyering  <jim@meyering.net>
26869
26870         Big performance improvement for fts-based tools that use FTS_NOSTAT.
26871         Avoid spurious inode-mismatch problems on non-POSIX file systems.
26872         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
26873         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
26874         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
26875         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
26876         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
26877         (fts_set_stat_required): New function.
26878         (fts_open): Defer the calls to fts_stat, if possible or requested.
26879         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
26880         into fts_stat itself.
26881         (fts_read): Perform any required (deferred) fts_stat call.
26882         (fts_build): Likewise, for the directory we're about to open and read.
26883         In the readdir loop, carefully decide whether each entry will require
26884         an eventual call to fts_stat, using dirent.d_type info if available.
26885         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
26886         a command line argument into this function.  Update all callers.
26887         Map a return value of FTS_DOT to FTS_D for a command line argument.
26888         * modules/fts (Depends-on): Add d-type.  Alphabetize.
26889         Thanks to Miklos Szeredi for his tenacity and for the initial
26890         bug report about "find" failing on a FUSE-based file system.
26891
26892         * lib/fts.c (fts_open): Use consistent indentation.
26893
26894 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
26895
26896         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
26897         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
26898         reported by Jim Meyering.  All uses of cache variables renamed
26899         to match Autoconf's.
26900         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
26901         the other one.
26902
26903         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
26904         Fix misspelling in diagnostic.
26905
26906 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
26907
26908         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
26909         defined.  Problem reported by Matthew Woehlke.
26910
26911         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
26912         Add support for Tandem NonStop R series.
26913         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
26914         Use new macro.
26915
26916         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
26917         (has_trailing_slash): Omit size arg; all callers changed.
26918         Omit 'inline', since it doesn't help performance and we'd
26919         need to configure it.
26920         Don't count //, ///, etc. as having a trailing slash.
26921         As a side effect, this removes a C99ism reported by Matthew Woehlke.
26922         (rpl_rename_dest_slash): On failure, use rename's errno rather
26923         than (in some cases) an incorrect or junk errno.
26924         Simplify code by removing need to compute length; this does
26925         cause it to make two passes instead of one over the file name,
26926         but it's worth it.
26927
26928         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
26929         change, since Autoconf's version may no longer be appropriate now
26930         that we are using CVS Autoconf's version.  Add support for Tandem.
26931
26932 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
26933             Bruno Haible  <bruno@clisp.org>
26934
26935         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
26936         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
26937         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
26938         gl_AC_TYPE_LONG_LONG.
26939
26940         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
26941         instead of HAVE_LONG_LONG.
26942         * lib/printf-args.c (printf_fetchargs): Likewise.
26943         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
26944         * lib/vasnprintf.c (VASNPRINTF): Likewise.
26945         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
26946         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
26947         gl_AC_TYPE_LONG_LONG.
26948
26949 2006-10-11  Bruno Haible  <bruno@clisp.org>
26950
26951         * m4/longlong.m4: Add comments.
26952         * m4/ulonglong.m4: Likewise.
26953
26954 2006-10-10  Bruno Haible  <bruno@clisp.org>
26955
26956         Make it possible to #define stpcpy, strdup to aliases.
26957         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
26958         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
26959
26960 2006-10-10  Bruno Haible  <bruno@clisp.org>
26961
26962         Make it possible to #define gcd to an alias.
26963         * lib/gcd.c: Include config.h.
26964
26965 2006-10-10  Bruno Haible  <bruno@clisp.org>
26966
26967         Make it possible to #define c_isascii to an alias.
26968         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
26969         defined. Undefine the macros before defining them, to avoid gcc
26970         warnings.
26971         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
26972         define NO_C_CTYPE_MACROS early.
26973
26974 2006-10-10  Bruno Haible  <bruno@clisp.org>
26975
26976         Make it possible to #define set_program_name to an alias.
26977         * lib/progname.c: Don't undefine set_program_name; instead, undefine
26978         ENABLE_RELOCATABLE early.
26979
26980 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
26981
26982         Port to Tandem NSK OSS, which has 64-bit signed int but at most
26983         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
26984         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
26985         More generally, don't assume that 64-bit signed int is available
26986         if unsigned int is, and vice versa.
26987         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
26988         unsigned symbols, not on their signed counterparts.
26989         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
26990         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
26991         (UINT64_C, UINTMAX_C):
26992         Likewise.
26993         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
26994         unsigned counterparts.
26995         (Have_long_long, Unsigned): New macros.
26996         (Int): Renamed from INT.
26997         (strtoimax): Use the new macros.
26998         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
26999         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
27000         * modules/inttypes (inttypes.h): Substitute
27001         HAVE_UNSIGNED_LONG_LONG_INT.
27002         * modules/stdint (stdint.h): Likewise.
27003         (Files): Add m4/ulonglong.m4.
27004
27005 2006-10-10  Bruno Haible  <bruno@clisp.org>
27006
27007         Fix a gcc -Wshadow warning.
27008         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
27009         to 'bucket'.
27010         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
27011         gl_linked_indexof_from_to): Likewise.
27012         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
27013         Likewise.
27014         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
27015         Likewise.
27016         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
27017         Reported by Eric Blake.
27018
27019 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
27020
27021         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
27022         for NetBSD.  Problem reported by Bruno Haible.
27023
27024 2006-10-09  Jim Meyering  <jim@meyering.net>
27025
27026         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
27027         Patch from Bruno Haible.
27028
27029 2006-10-09  Jim Meyering  <jim@meyering.net>
27030
27031         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
27032         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
27033         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
27034
27035 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
27036
27037         Don't include <config.h> twice; this doesn't work in some cases,
27038         e.g., when config.h has "#define intmax_t long long int" and
27039         we include <config.h>, <inttypes.h>, <config.h> in that order.
27040         Problem reported by Matthew Woehlke in:
27041         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
27042         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
27043         * lib/fts-cycle.c: Don't include config.h.
27044         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
27045         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
27046         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
27047         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
27048         inttypes.h.
27049         * lib/xstrtoumax.c: Likewise.
27050         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
27051         __strtol and the like, so that this module is more like its siblings.
27052         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
27053         Remove; no longer needed now that we assume gnulib inttypes.h.
27054
27055 2006-10-08  Bruno Haible  <bruno@clisp.org>
27056
27057         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
27058         option.
27059
27060 2006-10-07  Jim Meyering  <jim@meyering.net>
27061
27062         * modules/inttypes (inttypes.h): Revert what seems to have been
27063         an inadvertent part of today's change: use "|", not "/" in the
27064         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
27065
27066 2006-10-07  Bruno Haible  <bruno@clisp.org>
27067
27068         * modules/sublist: New file.
27069
27070 2006-10-07  Bruno Haible  <bruno@clisp.org>
27071
27072         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
27073         * modules/argz (argz.h): Likewise.
27074         * modules/arpa_inet (arpa/inet.h): Likewise.
27075         * modules/byteswap (byteswap.h): Likewise.
27076         * modules/configmake (configmake.h): Likewise.
27077         * modules/fcntl (fcntl.h): Likewise.
27078         * modules/fnmatch (fnmatch.h): Likewise.
27079         * modules/getopt (getopt.h): Likewise.
27080         * modules/glob (glob.h): Likewise.
27081         * modules/inttypes (inttypes.h): Likewise.
27082         * modules/netinet_in (netinet/in.h): Likewise.
27083         * modules/poll (poll.h): Likewise.
27084         * modules/stdbool (stdbool.h): Likewise.
27085         * modules/stdint (stdint.h): Likewise.
27086         * modules/sys_select (sys/select.h): Likewise.
27087         * modules/sys_socket (sys/socket.h): Likewise.
27088         * modules/sys_stat (sys/stat.h): Likewise.
27089         * modules/sysexits (sysexits.h): Likewise.
27090         * modules/unistd (unistd.h): Likewise.
27091         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
27092         Add a "DO NOT EDIT" comment to the generated file.
27093         (func_import): Likewise for gnulib-comp.m4.
27094
27095 2006-10-07  Bruno Haible  <bruno@clisp.org>
27096
27097         * lib/gl_sublist.h: New file.
27098         * lib/gl_sublist.c: New file.
27099
27100 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
27101
27102         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
27103         name (relative to the original working directory) and the file
27104         name component (relative to the temporary working directory).  All
27105         callers changed.
27106         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
27107         * lib/mkdir-p.c (make_dir_parents): Likewise.
27108         * lib/mkdir-p.h (make_dir_parents): Likewise.
27109
27110 2006-10-06  Eric Blake  <ebb9@byu.net>
27111
27112         Define several macros for use by the clean-temp module.
27113         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
27114         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
27115         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
27116
27117         * lib/clean-temp.h (close_stream_temp): New declaration.
27118         * lib/clean-temp.c (includes): Pull in headers according to what
27119         other modules are in use.
27120         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
27121
27122 2006-10-06  Bruno Haible  <bruno@clisp.org>
27123
27124         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
27125         instead of fopen, fwriteerror.
27126
27127 2006-10-06  Bruno Haible  <bruno@clisp.org>
27128
27129         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
27130         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
27131         int.
27132         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
27133         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
27134         Return an error indicator.
27135         Suggested by Eric Blake.
27136
27137 2006-10-06  Bruno Haible  <bruno@clisp.org>
27138
27139         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
27140         Reported by Eric Blake.
27141
27142 2006-10-06  Bruno Haible  <bruno@clisp.org>
27143
27144         * modules/closeout (Description): Mention stderr too.
27145
27146 2006-10-06  Bruno Haible  <bruno@clisp.org>
27147         and Paul Eggert  <eggert@cs.ucla.edu>
27148
27149         * lib/closeout.c (close_stdout): Also close stderr.
27150         * lib/closeout.h: Update comment.
27151
27152 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
27153
27154         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
27155         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
27156         * lib/dirchownmod.c: Include lchown.h.
27157         * lib/lchown.c: Don't include files that lchown.h now includes.
27158         Don't declare chown, since lchown.h now does that.
27159         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
27160         (lchown): Define to rpl_chown if lchown is declared but
27161         does not exist.  Declare using a prototype if lchown is not
27162         declared.  Add a copyright notice.
27163         * lib/mkstemp.h: Include <unistd.h>.
27164         * lib/openat.c: Include lchown.h.
27165
27166         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
27167         we now test for that separately.
27168         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
27169         rather than O_NOFOLLOW, when testing whether it's possible to
27170         avoid a race condition reliably.
27171         * lib/savewd.c (savewd_chdir): Likewise.
27172
27173         Remove macros that are no longer needed now that stdint.h is
27174         reliable.
27175         * lib/fsusage.c (UINTMAX_MAX): Remove.
27176         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
27177         * lib/utimecmp.c (SIZE_MAX): Remove.
27178
27179         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
27180
27181         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
27182         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
27183         O_NOATIME works.
27184
27185 2006-10-05  Bruno Haible  <bruno@clisp.org>
27186
27187         * lib/gl_list.h (gl_sortedlist_search_from_to,
27188         gl_sortedlist_indexof_from_to): New declarations.
27189         (gl_list_implementation): New fields sortedlist_search_from_to,
27190         sortedlist_indexof_from_to.
27191         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
27192         inline functions.
27193         * lib/gl_list.c (gl_sortedlist_search_from_to,
27194         gl_sortedlist_indexof_from_to): New functions.
27195         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
27196         function.
27197         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
27198         (gl_array_sortedlist_search_from_to): New function.
27199         (gl_array_list_implementation): Update.
27200         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
27201         function.
27202         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
27203         (gl_carray_sortedlist_search_from_to): New function.
27204         (gl_carray_list_implementation): Update.
27205         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
27206         gl_linked_sortedlist_indexof_from_to): New functions.
27207         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
27208         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
27209         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
27210         gl_tree_sortedlist_indexof_from_to): New functions.
27211         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
27212         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
27213         Update.
27214         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
27215         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
27216         Update.
27217
27218 2006-10-05  Bruno Haible  <bruno@clisp.org>
27219
27220         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
27221         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
27222         (struct gl_list_implementation): Add fields search_from_to,
27223         indexof_from_to. Remove fields search, indexof.
27224         (gl_list_search): Use the search_from_to method.
27225         (gl_list_search_from, gl_list_search_from_to): New functions.
27226         (gl_list_indexof): Use the indexof_from_to method.
27227         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
27228         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
27229         (gl_list_search_from, gl_list_search_from_to): New functions.
27230         (gl_list_indexof): Use the indexof_from_to method.
27231         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
27232         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
27233         gl_array_indexof. Add start_index, end_index arguments.
27234         (gl_array_search_from_to): Renamed from gl_array_search. Add
27235         start_index, end_index arguments.
27236         (gl_array_remove, gl_array_list_implementation): Update.
27237         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
27238         gl_carray_indexof. Add start_index, end_index arguments.
27239         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
27240         start_index, end_index arguments.
27241         (gl_carray_remove, gl_carray_list_implementation): Update.
27242         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
27243         gl_linked_search. Add start_index, end_index arguments.
27244         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
27245         start_index, end_index arguments.
27246         (gl_linked_remove): Update.
27247         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
27248         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
27249         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
27250         field to 'size_t'.
27251         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
27252         gl_tree_search. Add start_index, end_index arguments.
27253         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
27254         start_index, end_index arguments.
27255         (gl_tree_remove): Update.
27256         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
27257         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
27258         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
27259         function.
27260         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
27261         gl_tree_search. Add start_index, end_index arguments.
27262         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
27263         start_index, end_index arguments.
27264         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
27265         Update.
27266         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
27267
27268 2006-10-05  Bruno Haible  <bruno@clisp.org>
27269
27270         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
27271
27272         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
27273         fwriteerror_temp): New declarations.
27274         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
27275         (descriptors): New variable.
27276         (cleanup): First, close the descriptors.
27277         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
27278         fclose_temp, fwriteerror_temp): New functions.
27279
27280 2006-10-04  Jim Meyering  <jim@meyering.net>
27281
27282         * lib/fts.c (fts_open): Tiny comment change.
27283
27284 2006-10-04  Bruno Haible  <bruno@clisp.org>
27285
27286         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
27287         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
27288         gl_LOCK_BODY.
27289         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
27290         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
27291         gl_LOCK_EARLY_BODY.
27292         (gl_LOCK): Require gl_LOCK_BODY.
27293
27294 2006-10-04  Bruno Haible  <bruno@clisp.org>
27295
27296         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
27297         (gl_oset_search_atleast): New declaration.
27298         (struct gl_oset_implementation): Add field 'search_atleast'.
27299         (gl_oset_search_atleast): New inline function.
27300         * lib/gl_oset.c (gl_oset_search_atleast): New function.
27301         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
27302         (gl_array_oset_implementation): Update.
27303         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
27304         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
27305         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
27306
27307 2006-10-04  Bruno Haible  <bruno@clisp.org>
27308
27309         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
27310
27311 2006-10-03  Bruno Haible  <bruno@clisp.org>
27312
27313         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
27314         from gl_avltreehash_list_implementation.
27315
27316 2006-10-03  Bruno Haible  <bruno@clisp.org>
27317
27318         * lib/gl_oset.c (gl_oset_add): Fix return type.
27319
27320 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
27321
27322         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
27323
27324 2006-10-02  Eric Blake  <ebb9@byu.net>
27325
27326         * modules/strnlen (Depends-on): Add extensions.
27327
27328 2006-10-02  Eric Blake  <ebb9@byu.net>
27329
27330         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
27331         definition in 2.60+.
27332
27333 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
27334
27335         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
27336         checks.
27337
27338 2006-10-02  Bruno Haible  <bruno@clisp.org>
27339
27340         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
27341         to the AUTOMAKE_OPTIONS.
27342         Reported by Jim Meyering.
27343
27344 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
27345
27346         Work around bug in Solaris 10 /proc file system:
27347         /proc/self/fd/NNN/.. isn't the parent directory of
27348         the directory whose file descriptor is NNN.  This needs to
27349         be worked around at run time, not compile time, since a
27350         program might be built on Solaris 8, where things work, and
27351         run on Solaris 10.
27352         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
27353         to use the following interface instead:
27354         (OPENAT_BUFFER_SIZE): New macro.
27355         (openat_proc_name): New function.
27356         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
27357         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
27358         Likewise.
27359         * lib/openat-proc.c: New file.
27360         * modules/openat (Files): Add lib/openat-proc.c.
27361         (Depends-on): Add same-inode, stdbool.
27362         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
27363
27364 2006-09-29  Bruno Haible  <bruno@clisp.org>
27365
27366         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
27367         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
27368         argument. Set stdout_closed before testing for ferror, not after.
27369         (fwriteerror, fwriteerror_no_ebadf): New functions.
27370
27371 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27372
27373         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
27374
27375 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
27376
27377         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
27378         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
27379
27380 2006-09-28  Jim Meyering  <jim@meyering.net>
27381
27382         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
27383         Include <unistd.h>.
27384
27385 2006-09-28  Bruno Haible  <bruno@clisp.org>
27386
27387         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
27388         * modules/linkedhash-list (Depends-on): Likewise.
27389         * modules/rbtreehash-list (Depends-on): Likewise.
27390
27391 2006-09-28  Bruno Haible  <bruno@clisp.org>
27392
27393         * lib/strndup.h: Simplify the redefinition of strndup.
27394         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
27395         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
27396
27397 2006-09-28  Bruno Haible  <bruno@clisp.org>
27398
27399         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
27400         * lib/gl_linkedhash_list.c: Likewise.
27401         * lib/gl_rbtreehash_list.c: Likewise.
27402
27403 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
27404
27405         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
27406         getaddrinfo.
27407
27408         * lib/__fpending.h: Don't include <stdio_ext.h> unless
27409         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
27410         it causes <stdio_ext.h> to cause a compile-time error.
27411         Problem reported by Nelson H. F. Beebe.
27412         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
27413         of HAVE_DECL___PENDING.
27414
27415         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
27416         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
27417         declaration.
27418
27419 2006-09-27  Jim Meyering  <jim@meyering.net>
27420
27421         This file could end up with a definition for a function
27422         named __strndup, rather than rpl_strndup on a system with
27423         incomplete weak_alias support.
27424         * lib/strndup.c (strndup): Rename from __strndup.
27425         Remove #defines that used to map __strndup to strndup.
27426         Don't use K&R prototypes.
27427         Remove LIBC-related code, since this file is not sync'd with glibc.
27428         * lib/strndup.h: Revamp, accordingly.
27429         * m4/strndup.m4: Modernize.
27430
27431 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
27432
27433         * modules/savewd (Depends-on): Add 'raise'.
27434         * lib/savewd.c: Include <signal.h>, for 'raise'.
27435
27436 2006-09-26  Jim Meyering  <jim@meyering.net>
27437
27438         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
27439         when we detect Darwin 8.7.0's acl_get_file bug.
27440         Rearrange to perform the new (below) run-test while $LIBS
27441         contains any acl-related library.  Set USE_ACL at the end.
27442         (gl_ACL_GET_FILE): New function.
27443
27444 2006-09-26  Eric Blake  <ebb9@byu.net>
27445
27446         * lib/verror.c: Include <config.h> unconditionally.
27447
27448 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
27449
27450         * modules/clock-time (Maintainer): Add self.
27451         * modules/getlogin_r (Depends-on): Add extensions.
27452
27453 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27454
27455         * modules/clock-time: New module.
27456         * modules/nanosleep (Depends-on): Add clock-time.
27457         * modules/gethrxtime (Depends-on): Likewise.
27458         * modules/gettime (Depends-on): Likewise.
27459         * modules/settime (Depends-on): Likewise.
27460
27461         * modules/fts-lgpl: Depend on openat.
27462         * modules/mkancesdirs: Depend on savewd.
27463         * modules/mkdir-p: Likewise.
27464
27465 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27466
27467         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
27468
27469         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
27470         `gl_have_arbitrary_file_name_length_limit' to
27471         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
27472         actually works between configure runs.
27473
27474 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27475             Bruno Haible  <bruno@clisp.org>
27476
27477         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
27478
27479 2006-09-25  Jim Meyering  <jim@meyering.net>
27480
27481         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
27482         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
27483
27484 2006-09-25  Eric Blake  <ebb9@byu.net>
27485
27486         * gnulib-tool (func_import, func_create_testdir): Fix typos in
27487         exec's in 2006-09-18 patch when shuffling fds.
27488
27489 2006-09-25  Bruno Haible  <bruno@clisp.org>
27490
27491         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
27492         Reported by Jim Meyering.
27493
27494 2006-09-24  Jim Meyering  <jim@meyering.net>
27495
27496         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
27497         compare a pointer against a literal "0".  That caused failures with
27498         at least HP-UX's hpcc.
27499
27500 2006-09-22  Simon Josefsson  <jas@extundo.com>
27501
27502         * modules/gc-sha1:
27503         * modules/gc-md4:
27504         * modules/gc-hmac-sha1:
27505         * modules/gc-hmac-md5:
27506         * modules/gc-des:
27507         * modules/gc-arcfour: Distribute more files.
27508
27509 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27510
27511         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
27512         (gl_linked_iterator_from_to): Initialize struct completely.
27513         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
27514         (gl_tree_iterator_from_to): Likewise
27515         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
27516         * lib/gl_array_list.c [lint] (gl_array_iterator)
27517         (gl_array_iterator_from_to): Likewise.
27518         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
27519         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
27520         (gl_carray_iterator_from_to): Likewise.
27521
27522         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
27523         * lib/md4.c (md4_process_block): Remove unused variable.
27524         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
27525         parentheses for clarity.
27526
27527 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27528
27529         * modules/bison-i18n (Depends-on): Add gettext.
27530
27531 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27532
27533         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
27534         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
27535         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
27536         also add missing comma that caused broken test.
27537         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
27538         stdlib.h, for `abort'.
27539         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
27540         variables.
27541         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
27542         include unistd.h if present, for `rmdir'.
27543         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
27544         variables.
27545         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
27546         in the process include standard headers for prototypes.
27547         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
27548         gets declared on GNU/Linux.
27549         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
27550         unistd.h, for `rmdir'.
27551         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
27552
27553         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
27554         always true.
27555         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
27556
27557         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
27558
27559 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27560
27561         * gnulib-tool (func_version): Create output all at once.  This
27562         may help avoid triggering unnecessary SIGPIPEs, and at any
27563         rate it doesn't hurt.
27564
27565 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27566             Bruno Haible  <bruno@clisp.org>
27567
27568         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
27569         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
27570         * m4/signed.m4 (bh_C_SIGNED): Likewise.
27571
27572         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
27573         (gl_FUNC_VASPRINTF): Invoke it.
27574
27575 2006-09-22  Bruno Haible  <bruno@clisp.org>
27576
27577         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
27578         getloadavg.c as first argument.
27579
27580 2006-09-22  Bruno Haible  <bruno@clisp.org>
27581
27582         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
27583         at the beginning of the gl_INIT macro.
27584         * modules/getloadavg (configure.ac): Pass $gl_source_base to
27585         gl_GETLOADAVG.
27586
27587 2006-09-22  Bruno Haible  <bruno@clisp.org>
27588
27589         * gnulib-tool (func_create_megatestdir): Don't include the config-h
27590         module.
27591         Suggested by Ralf Wildenhues.
27592
27593 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
27594
27595         Import this patch from libc:
27596
27597         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
27598
27599         * lib/regex_internal.c (re_string_reconstruct): Handle
27600         offset < pstr->valid_raw_len && pstr->offsets_needed case.
27601         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
27602         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
27603         re_string_context_at.
27604
27605         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
27606         now requires it.
27607         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
27608         gl_REGEX now does it for us.
27609         (gl_REGEX): Add test taken from
27610         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
27611
27612         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
27613         Check that large offsets work.  Modernize Autoconf usages.
27614         Prefer "yes" to mean a good thing rather than a bad.
27615         Don't put "#define mkstemp" in config.h, as this might interfere
27616         with standard system headers that "#define mkstemp mkstemp64".
27617
27618         * modules/mkstemp (Depends-on): Add extensions, so that
27619         mkstemp is visible on some platforms.
27620         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
27621         (Include): Change to "mkstemp.h" from <stdlib.h>.
27622         (Files): Add mkstemp.h.
27623
27624         * lib/mkstemp.h: New file, since some standard headers
27625         #define mkstemp.
27626         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
27627         Include "mkstemp.h".
27628         Make the _LIBC code resemble glibc original more,
27629         e.g., use K&R style.
27630         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
27631         (mkstemp): Remove, since mkstemp.h does this for us.
27632         * lib/stdlib--.h: Include mkstemp.h.
27633
27634         Import this patch from libc:
27635
27636         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
27637
27638         * lib/tempname.c (__gen_tempname): Change attempts_min
27639         into a macro.  Use preprocessor to decide how to initialize
27640         attempts [Coverity CID 67].
27641
27642 2006-09-20  Bruno Haible  <bruno@clisp.org>
27643
27644         * lib/mkdtemp.c: Import from libc.
27645         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
27646                 * sysdeps/posix/tempname.c (__gen_tempname): Change
27647                 attempts_min into a macro.  Use preprocessor to decide how to
27648                 initialize attempts [Coverity CID 67].
27649         2001-11-27  Paul Eggert  <eggert@twinsun.com>
27650                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
27651                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
27652
27653 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27654
27655         * gnulib-tool (func_exit): New function, to allow to pass the
27656         exit status portably through the trap.  Use everywhere.
27657         (--help, --version): Signal a write error.
27658         (trap): catch SIGPIPE, for write errors.
27659         Exit at the end of the trap, with the correct exit status.
27660
27661 2006-09-19  Karl Berry  <karl@gnu.org>
27662
27663         * doc/gnulib.texi: note about the license texinfo files.
27664
27665 2006-09-19  Eric Blake  <ebb9@byu.net>
27666
27667         * gnulib-tool: Avoid space-tab.
27668
27669 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
27670
27671         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
27672         that prevented coreutils 6.1 from building.  Problem reported
27673         by Petter Reinholdtsen.
27674
27675 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
27676
27677         * gnulib-tool (avoidlist): Fix typo that broke options like
27678         --avoid=lock that are used by coreutils bootstrap.
27679
27680 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
27681
27682         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
27683         more systematically.
27684
27685 2006-09-18  Jim Meyering  <jim@meyering.net>
27686
27687         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
27688
27689 2006-09-18  Bruno Haible  <bruno@clisp.org>
27690
27691         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
27692
27693 2006-09-18  Bruno Haible  <bruno@clisp.org>
27694
27695         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
27696         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
27697         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
27698         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
27699         * m4/gettext.m4: Require autoconf >= 2.52.
27700         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
27701         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
27702         of gl_cv_header_inttypes_h.
27703
27704 2006-09-18  Bruno Haible  <bruno@clisp.org>
27705
27706         * lib/javaversion.c: Include configmake.h.
27707
27708 2006-09-18  Bruno Haible  <bruno@clisp.org>
27709
27710         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
27711         avoid that the while loops be executed in a subshell.
27712
27713 2006-09-18  Bruno Haible  <bruno@clisp.org>
27714
27715         * MODULES.html.sh (func_module): Break long lines.
27716         Suggested by Bruce Korb <bkorb@gnu.org>.
27717
27718 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27719
27720         Speed up by a factor of 1.12.
27721         * gnulib-tool (nl): New variable.
27722         (func_import): Rewrite include directive extraction to only read each
27723         directive once.
27724
27725 2006-09-17  Bruno Haible  <bruno@clisp.org>
27726
27727         * modules/javaversion (Makefile.am): Remove DEFS setting.
27728         (Depends-on): Add configmake, for PKGDATADIR definition.
27729
27730 2006-09-17  Bruno Haible  <bruno@clisp.org>
27731
27732         * gnulib-tool (func_create_testdir): Rewrite all files at once.
27733
27734 2006-09-17  Bruno Haible  <bruno@clisp.org>
27735
27736         * gnulib-tool (func_append): New function, stolen from libtool.m4.
27737         (func_modules_transitive_closure, func_modules_add_dummy,
27738         func_modules_to_filelist, func_import, func_create_testdir,
27739         func_create_megatestdir, ...): Use it wherever possible.
27740         Suggested by Ralf Wildenhues.
27741
27742 2006-09-16  Karl Berry  <karl@gnu.org>
27743
27744         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
27745         to avoid sectioning errors.
27746         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
27747         [ifinfo]: blank line after @center-ed titles.
27748         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
27749         Spell FSF address consistently with others.
27750         (These changes approved by rms.)
27751
27752 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27753
27754         Speed up by a factor of 1.61.
27755         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
27756         already checked module names again.
27757
27758 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27759
27760         Speed up by a factor of 1.13.
27761         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
27762         for new_files, and the input to func_add_or_update.
27763
27764 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27765
27766         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
27767         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
27768
27769 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
27770
27771         * modules/mkancesdirs (Depends-on): Add fcntl.
27772         * modules/savewd: New file.
27773         * MODULES.html.sh (File system functions): Add savewd.
27774
27775         * modules/configmake (Makefile.am): Add support for the
27776         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
27777
27778 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
27779
27780         * m4/savewd.m4: New file.
27781
27782 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
27783
27784         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
27785         (dirchownmod): New arg FD.  All callers changed.
27786         Use FD rather than opening the directory ourself, as opening is
27787         now the caller's responsibility.
27788         * lib/dirchownmod.h: Likewise.
27789         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
27790         hosts that require <sys/types.h> before <sys/stat.h>.  Include
27791         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
27792         (test_dir): Remove.
27793         (mkancesdirs): Return length of prefix of FILE that has already
27794         been made, or -2 if there is a child doing the work.  Redo
27795         algorithm so that it is O(N) rather than O(N**2).  Optimize away
27796         ".", and treat ".." specially since it might stray back into
27797         already-created areas.  Use a subprocess if necessary.  New arg
27798         WD; all users changed.  MAKE_DIR function should now return 1
27799         if it creates a directory that is not readable.  Return -2 if
27800         a child process is spun off.
27801         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
27802         Adjust signature to match code.
27803         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
27804         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
27805         all users changed.
27806         * lib/savewd.c, lib/savewd.h: New files.
27807
27808 2006-09-15  Jim Meyering  <jim@meyering.net>
27809
27810         * modules/rename-dest-slash: New module.
27811         * MODULES.html.sh (posix_compat): Add it here.
27812
27813         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
27814
27815 2006-09-15  Jim Meyering  <jim@meyering.net>
27816
27817         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
27818         file.
27819
27820         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
27821
27822 2006-09-15  Jim Meyering  <jim@meyering.net>
27823
27824         * lib/rename-dest-slash.c (has_trailing_slash): Use
27825         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
27826         (rpl_rename_dest_slash): Perform the cheaper trailing slash
27827         test before testing whether SRC is a directory.
27828         Suggestions from Bruno Haible.
27829
27830         Avoid a warning about an unused variable.
27831         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
27832         into the #ifdef block where it's used.
27833
27834         * lib/rename-dest-slash.c: New file.
27835
27836 2006-09-14  Bruno Haible  <bruno@clisp.org>
27837
27838         * lib/allocsa.c: Include <config.h> unconditionally.
27839         * lib/asnprintf.c: Likewise.
27840         * lib/asprintf.c: Likewise.
27841         * lib/c-strcasecmp.c: Likewise.
27842         * lib/c-strcasestr.c: Likewise.
27843         * lib/c-strncasecmp.c: Likewise.
27844         * lib/c-strstr.c: Likewise.
27845         * lib/classpath.c: Likewise.
27846         * lib/clean-temp.c: Likewise.
27847         * lib/concatpath.c: Likewise.
27848         * lib/copy-file.c: Likewise.
27849         * lib/csharpcomp.c: Likewise.
27850         * lib/csharpexec.c: Likewise.
27851         * lib/execute.c: Likewise.
27852         * lib/fatal-signal.c: Likewise.
27853         * lib/findprog.c: Likewise.
27854         * lib/fwriteerror.c: Likewise.
27855         * lib/gl_array_list.c: Likewise.
27856         * lib/gl_array_oset.c: Likewise.
27857         * lib/gl_avltree_list.c: Likewise.
27858         * lib/gl_avltree_oset.c: Likewise.
27859         * lib/gl_avltreehash_list.c: Likewise.
27860         * lib/gl_carray_list.c: Likewise.
27861         * lib/gl_linked_list.c: Likewise.
27862         * lib/gl_linkedhash_list.c: Likewise.
27863         * lib/gl_list.c: Likewise.
27864         * lib/gl_oset.c: Likewise.
27865         * lib/gl_rbtree_list.c: Likewise.
27866         * lib/gl_rbtree_oset.c: Likewise.
27867         * lib/gl_rbtreehash_list.c: Likewise.
27868         * lib/imaxabs.c: Likewise.
27869         * lib/imaxdiv.c: Likewise.
27870         * lib/javacomp.c: Likewise.
27871         * lib/javaexec.c: Likewise.
27872         * lib/javaversion.c: Likewise.
27873         * lib/linebreak.c: Likewise.
27874         * lib/localcharset.c: Likewise.
27875         * lib/lock.c: Likewise.
27876         * lib/mbchar.c: Likewise.
27877         * lib/mbswidth.c: Likewise.
27878         * lib/mkdtemp.c: Likewise.
27879         * lib/pipe.c: Likewise.
27880         * lib/printf-args.c: Likewise.
27881         * lib/printf-parse.c: Likewise.
27882         * lib/progname.c: Likewise.
27883         * lib/progreloc.c: Likewise.
27884         * lib/readlink.c: Likewise.
27885         * lib/sh-quote.c: Likewise.
27886         * lib/stpcpy.c: Likewise.
27887         * lib/stpncpy.c: Likewise.
27888         * lib/strcasecmp.c: Likewise.
27889         * lib/strcasestr.c: Likewise.
27890         * lib/strcspn.c: Likewise.
27891         * lib/striconv.c: Likewise.
27892         * lib/strncasecmp.c: Likewise.
27893         * lib/strnlen1.c: Likewise.
27894         * lib/strstr.c: Likewise.
27895         * lib/strtok_r.c: Likewise.
27896         * lib/tls.c: Likewise.
27897         * lib/tmpdir.c: Likewise.
27898         * lib/unicodeio.c: Likewise.
27899         * lib/unsetenv.c: Likewise.
27900         * lib/vasnprintf.c: Likewise.
27901         * lib/vasprintf.c: Likewise.
27902         * lib/wait-process.c: Likewise.
27903         * lib/xallocsa.c: Likewise.
27904         * lib/xsetenv.c: Likewise.
27905         * lib/xstriconv.c: Likewise.
27906
27907 2006-09-13  Simon Josefsson  <jas@extundo.com>
27908
27909         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
27910         that internally, suggested by Ralf Wildenhues
27911         <Ralf.Wildenhues@gmx.de>.
27912
27913 2006-09-13  Simon Josefsson  <jas@extundo.com>
27914
27915         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
27916         @LIBOBJS@.
27917         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27918
27919 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
27920
27921         * lib/_fpending.c: Include <config.h> unconditionally, since we no
27922         longer worry about uses that don't define HAVE_CONFIG_H.
27923         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
27924         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
27925         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
27926         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
27927         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
27928         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
27929         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
27930         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
27931         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
27932         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
27933         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
27934         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
27935         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
27936         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
27937         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
27938         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
27939         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
27940         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
27941         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
27942         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
27943         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
27944         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
27945         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
27946         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
27947         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
27948         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
27949         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
27950         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
27951         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
27952         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
27953         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
27954         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
27955         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
27956         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
27957         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
27958         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
27959         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
27960         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
27961         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
27962         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
27963         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
27964         Likewise.
27965
27966 2006-09-13  Eric Blake  <ebb9@byu.net>
27967
27968         * lib/getopt.c: Fix typo in last commit.
27969
27970 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
27971
27972         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
27973         dgettext.
27974
27975 2006-09-12  Jim Meyering  <jim@meyering.net>
27976
27977         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
27978         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
27979         Reported by Nelson H. F. Beebe.
27980
27981 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
27982
27983         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
27984         program_invocation_name and program_invocation_short_name are
27985         initialized.
27986         * lib/argp-namefrob.h: Move declarations of program_invocation_name
27987         and program_invocation_short_name to argp.h, so they are visible
27988         to user programs.
27989         * lib/argp.h: Likewise
27990
27991 2006-09-10  Bruno Haible  <bruno@clisp.org>
27992
27993         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
27994         m4/inttypes_h.m4, m4/uintmax_t.m4.
27995
27996 2006-09-10  Bruno Haible  <bruno@clisp.org>
27997
27998         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
27999         gl_AC_TYPE_UINTMAX_T.
28000
28001 2006-09-10  Bruno Haible  <bruno@clisp.org>
28002
28003         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
28004
28005 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
28006
28007         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
28008         convention.  Text proposed by Bruno Haible.
28009         (struct argp_option): Document the use of N_() wrappers.
28010
28011         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
28012         '\v', and translate the two parts separately, instead of feeding
28013         the whole string to gettext.  This allows to exclude
28014         '\v' from the strings visible to the translator by writing doc
28015         strings as N_("..") "\v" N_("..").
28016
28017 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
28018
28019         * config/srclist.txt: Undo latest change; the bug was fixed.
28020
28021 2006-09-09  Bruno Haible  <bruno@clisp.org>
28022
28023         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
28024         assignments if building a library without libtool.
28025         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
28026         in func_emit_lib_Makefile_am.
28027         (func_import): When building a static library libfoo.a, arrange to
28028         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
28029         (func_create_testdir): Likewise.
28030         * modules/gc (configure.ac, Makefile.am): If building statically,
28031         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
28032         * modules/iconvme (configure.ac, Makefile.am): Likewise.
28033         * modules/striconv (configure.ac, Makefile.am): Likewise.
28034         Based on a suggestion by Ralf Wildenhues.
28035
28036 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
28037
28038         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
28039         Check for unistd.h too, since Autoconf doesn't assume POSIX.
28040         Also:
28041
28042         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
28043         Add year_2050_test to catch glibc bug 2821
28044         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
28045
28046         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
28047         Prefer #ifdef to #if.
28048
28049         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
28050         Return from 'main' instead of calling 'exit'.
28051
28052 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
28053
28054         * lib/mktime.c (guess_time_tm): Fix bug where mktime
28055         returned the maximum time_t value rather than (time_t) -1.
28056         Problem originally reported by William Bardwell
28057         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
28058
28059         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
28060         Moved to here ...
28061         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
28062         ... from here.
28063
28064 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
28065
28066         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
28067         2821 is fixed.
28068
28069 2006-09-08  Jim Meyering  <jim@meyering.net>
28070
28071         Don't make generated files read-only.  That would bother too many
28072         people.  However, do retain the ability to work when targets are
28073         read-only: remove the destination and temporary files before writing
28074         them (when generated via sed or echo), or by using the -f option for
28075         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
28076         * modules/alloca-opt, modules/argz, modules/arpa_inet:
28077         * modules/byteswap, modules/configmake, modules/fcntl:
28078         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
28079         * modules/localcharset, modules/netinet_in, modules/poll:
28080         * modules/stdbool, modules/stdint, modules/sys_select:
28081         * modules/sys_socket, modules/sys_stat, modules/sysexits:
28082
28083 2006-09-08  Jim Meyering  <jim@meyering.net>
28084
28085         Avoid new build failure on FreeBSD 6.0.
28086         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
28087         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
28088         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
28089
28090 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28091
28092         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
28093
28094 2006-09-07  Jim Meyering  <jim@meyering.net>
28095
28096         Fix global typo in last change: use chmod u-w, not chmod u-x.
28097         Spotted by Paul Eggert and Bruce Korb.
28098         * modules/alloca-opt, modules/argz, modules/arpa_inet:
28099         * modules/byteswap, modules/configmake, modules/fcntl:
28100         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
28101         * modules/localcharset, modules/netinet_in, modules/poll:
28102         * modules/stdbool, modules/stdint, modules/sys_select:
28103         * modules/sys_socket, modules/sys_stat, modules/sysexits:
28104
28105 2006-09-06  Jim Meyering  <jim@meyering.net>
28106
28107         Make generated files be read-only.
28108         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
28109         Ensure that each generated file is now read-only.
28110         * modules/argz: Likewise.
28111         * modules/arpa_inet: Likewise.
28112         * modules/byteswap: Likewise.
28113         * modules/configmake: Likewise.
28114         * modules/fcntl: Likewise.
28115         * modules/fnmatch: Likewise.
28116         * modules/getopt: Likewise.
28117         * modules/glob: Likewise.
28118         * modules/inttypes: Likewise.
28119         * modules/netinet_in: Likewise.
28120         * modules/poll: Likewise.
28121         * modules/stdbool: Likewise.
28122         * modules/stdint: Likewise.
28123         * modules/sys_select: Likewise.
28124         * modules/sys_socket: Likewise.
28125         * modules/sys_stat: Likewise.
28126         * modules/sysexits: Likewise.
28127         * modules/localcharset: Same as above, but continue using temporary
28128         file named "t-$@" (why different?) rather than the "$@-t" used
28129         everywhere else.
28130
28131         * modules/sysexits (Makefile.am): Replace literal occurrences
28132         of "sysexit.h" more readable, and more consistent, "$@".
28133
28134 2006-09-06  Bruno Haible  <bruno@clisp.org>
28135
28136         * modules/striconv: New file.
28137         * modules/xstriconv: New file.
28138         * MODULES.html.sh (Internationalization functions): Add striconv,
28139         xstriconv.
28140
28141 2006-09-06  Bruno Haible  <bruno@clisp.org>
28142
28143         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
28144         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
28145         not using libtool correctly.
28146
28147 2006-09-06  Bruno Haible  <bruno@clisp.org>
28148
28149         * lib/striconv.h: New file.
28150         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
28151         iconvstring.c.
28152         * lib/xstriconv.h: New file.
28153         * lib/xstriconv.c: New file.
28154
28155 2006-09-06  Bruno Haible  <bruno@clisp.org>
28156
28157         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
28158         lib_..._LDFLAGS.
28159
28160 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28161
28162         * lib/argz_.h: Sync from Libtool.
28163
28164         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
28165                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
28166
28167         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
28168
28169 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
28170
28171         * modules/trim: New file.
28172
28173 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
28174
28175         * lib/trim.h: New file.
28176         * lib/trim.c: New file.
28177
28178 2006-09-05  Bruno Haible  <bruno@clisp.org>
28179
28180         * MODULES.html.sh (String handling): Add trim.
28181
28182 2006-09-04  Karl Berry  <karl@gnu.org>
28183
28184         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
28185         until next release.
28186
28187 2006-09-03  Bruno Haible  <bruno@clisp.org>
28188
28189         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
28190         correctly.
28191
28192 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
28193
28194         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
28195         not gl_GETLOADAVG.  Omit unneeded semicolons.
28196         Problems reported by Ralf Wildenhues in
28197         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
28198         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
28199         at the end, which is the usual gnulib style.
28200
28201         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
28202         of doing all the work ourselves.
28203         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
28204         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
28205
28206 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
28207
28208         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
28209         Problem reported by Ralf Wildenhues in
28210         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
28211
28212         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
28213         HAVE_STRUCT_STATFS_F_FSTYPENAME.
28214
28215 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
28216
28217         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
28218         yesterday's patch by changing test -n to test -z.
28219
28220 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28221
28222         * modules/getloadavg (Files): Add m4/getloadavg.m4.
28223         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
28224         the former is now obsolescent.
28225
28226         * modules/chdir-long (Depends-on): Add fcntl.
28227
28228 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28229
28230         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
28231         obsolescent, and programs should use gnulib instead.
28232         * m4/getloadavg.m4: New file, with contents taken from Autoconf
28233         but with prefixes changed.
28234
28235 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28236
28237         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
28238         or stdbool.h, because they might not exist while configuring.
28239
28240         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
28241         Don't include unistd.h or limits.h; not needed, since chdir-long.h
28242         does that for us.
28243         (O_DIRECTORY): Remove.
28244
28245 2006-08-31  Eric Blake  <ebb9@byu.net>
28246
28247         * gnulib-tool: Don't let emacs change spaces to TAB.
28248
28249 2006-08-31  Bruno Haible  <bruno@clisp.org>
28250
28251         * gnulib-tool: When calling func_import more than once, do it in a
28252         subshell.
28253         Reported by Eric Blake <ebb9@byu.net>.
28254
28255 2006-08-31  Bruno Haible  <bruno@clisp.org>
28256
28257         * gnulib-tool (nl): Remove variable.
28258         (sed_transform_lib_file): Use more robust test for config-h module.
28259         (func_import): Fix typo in 2006-08-25 patch.
28260
28261 2006-08-31  Bruno Haible  <bruno@clisp.org>
28262
28263         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
28264         specified, augment Makefile.am variables instead of assigning them.
28265
28266 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
28267
28268         Work around a bug in both the Linux and SunOS 64-bit kernels:
28269         nanosleep mishandles sleeps for longer than 2**31 seconds.
28270         Problem reported by Frank v Waveren in
28271         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
28272         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
28273         Check for nanosleep bug.
28274         (LIB_NANOSLEEP): Append clock_gettime library if needed.
28275
28276 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
28277
28278         Work around a bug in both the Linux and SunOS 64-bit kernels:
28279         nanosleep mishandles sleeps for longer than 2**31 seconds.
28280         Problem reported by Frank v Waveren in
28281         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
28282         * lib/nanosleep.c (BILLION): New constant.
28283         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
28284         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
28285         implementation.
28286
28287 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
28288
28289         * modules/nanosleep (Depends-on): Add gettime.
28290
28291 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
28292         and Simon Josefsson  <jas@extundo.com>
28293         and Oskar Liljeblad  <oskar@osk.mine.nu>
28294
28295         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
28296         * gnulib-tool (func_import): New license type 'unmodifiable license
28297         text'.
28298         * modules/fdl: Use it.  Longer description.
28299         * module/gpl, module/lgpl: New files.
28300
28301 2006-08-30  Jim Meyering  <jim@meyering.net>
28302
28303         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
28304         shadowing the parameter.
28305
28306 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28307
28308         Sync from Libtool:
28309
28310         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28311
28312         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
28313         sharing with gnulib.  Report by Eric Blake.
28314
28315 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
28316
28317         * modules/isapipe: New file.
28318         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
28319
28320 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
28321
28322         * modules/configmake (Makefile.am): Add a comment, and omit
28323         the CONFIGMAKE_ prefix from generated macro names.  Suggested
28324         by Bruno Haible.
28325
28326 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
28327
28328         * m4/isapipe.m4: New file.
28329
28330 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
28331
28332         * lib/isapipe.c, lib/isapipe.h: New files.
28333
28334 2006-08-29  Jim Meyering  <jim@meyering.net>
28335
28336         * modules/configmake (Makefile.am): Make configmake.h depend on
28337         Makefile.  Otherwise, a stale configmake.h could hang around.
28338
28339 2006-08-29  Eric Blake  <ebb9@byu.net>
28340
28341         * lib/error.c (error_at_line, print_errno_message): Match libc, after
28342         resolution of upstream bug 3044.
28343
28344 2006-08-29  Bruno Haible  <bruno@clisp.org>
28345
28346         * modules/localcharset (Depends-on): Add configmake.
28347         (Makefile.am): Remove setting of LIBDIR through DEFS.
28348
28349 2006-08-29  Bruno Haible  <bruno@clisp.org>
28350
28351         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
28352         defined.
28353
28354 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
28355
28356         * modules/fcntl: New file.
28357         * modules/chdir-safer (Depends-on): Add fcntl.
28358         * modules/fts: Likewise.
28359         * modules/mkdir-p: Likewise.
28360
28361         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
28362         This undoes the most recent change, since we're now addressing the
28363         problem in a different way.
28364
28365         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
28366         into output, since the output might be called Makefile.am even
28367         if $makefile_name is something different.
28368         (func_import): Use $makefile_am rather than
28369         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
28370         empty.
28371
28372         * modules/inttypes (Files): Add m4/inttypes-h.m4.
28373
28374 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
28375
28376         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
28377         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
28378         recent change to stdint.m4, since we're now addressing the problem in a
28379         different way.
28380
28381 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
28382
28383         * m4/fcntl_h.m4: New file.
28384
28385 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
28386
28387         * lib/fcntl_.h: New file.
28388         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
28389         the fcntl module.
28390         * lib/dirchownmod.c: Likewise.
28391         * lib/fts.c: Likewise.
28392
28393         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
28394         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
28395         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
28396         just before including <inttypes.h>, to avoid circular inclusion.
28397
28398 2006-08-28  Jim Meyering  <jim@meyering.net>
28399
28400         * doc/visibility.texi: Actually read and correct the grammar of the
28401         sentence affected by yesterday's change.
28402
28403 2006-08-28  Eric Blake  <ebb9@byu.net>
28404
28405         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
28406         needs wrapper.
28407
28408 2006-08-28  Eric Blake  <ebb9@byu.net>
28409
28410         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
28411
28412 2006-08-28  Eric Blake  <ebb9@byu.net>
28413
28414         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
28415
28416 2006-08-28  Bruno Haible  <bruno@clisp.org>
28417
28418         * modules/c-strstr: New file, from GNU gettext.
28419         * MODULES.html.sh (String handling): Add c-strstr.
28420
28421 2006-08-28  Bruno Haible  <bruno@clisp.org>
28422
28423         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
28424         macros.
28425         Reported by Eric Blake.
28426
28427 2006-08-28  Bruno Haible  <bruno@clisp.org>
28428
28429         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
28430         (VASNPRINTF): Return a string of length > INT_MAX without failing.
28431         * lib/vasprintf.c: Include errno.h, limits.h.
28432         (EOVERFLOW): New fallback definition.
28433         (vasprintf): Test here whether the string length is > INT_MAX.
28434         * lib/vsnprintf.c: Include errno.h, limits.h.
28435         (EOVERFLOW): New fallback definition.
28436         (vsnprintf): Fix bug when generated string was too long for the buffer.
28437         Test here whether the string length is > INT_MAX.
28438
28439 2006-08-28  Bruno Haible  <bruno@clisp.org>
28440
28441         * lib/inttypes_.h (SCNX*): Remove definitions.
28442         Reported by Eric Blake.
28443
28444 2006-08-28  Bruno Haible  <bruno@clisp.org>
28445
28446         * lib/c-strstr.h: New file, from GNU gettext.
28447         * lib/c-strstr.c: New file, from GNU gettext.
28448
28449 2006-08-28  Bruno Haible  <bruno@clisp.org>
28450
28451         * gnulib-tool: Reorder some statements.
28452
28453 2006-08-28  Bruno Haible  <bruno@clisp.org>
28454
28455         * gnulib-tool: New option --makefile-name.
28456         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
28457         $makefile_name.
28458         (func_import): Write $makefile_name to the cache file, and read it from
28459         there unless explicitly specified. Use $makefile_name as file name
28460         instead of Makefile.am. Adjust the recommendations accordingly.
28461
28462 2006-08-28  Bruno Haible  <bruno@clisp.org>
28463
28464         * gnulib-tool (func_verify_module): Check against misapplying patch.
28465
28466 2006-08-28  Bruno Haible  <bruno@clisp.org>
28467
28468         * gnulib-tool (func_relativize, func_relconcat): New functions.
28469         Give an error if --local-dir is given with --update.
28470         Remove trailing slashes from $local_gnulib_dir.
28471         (func_import): Store the relativized $local_gnulib_dir in
28472         gnulib-cache.m4, and read it from there if not specified explicitly.
28473
28474 2006-08-28  Bruno Haible  <bruno@clisp.org>
28475
28476         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
28477         is the current directory. Respect also $local_gnulib_dir.
28478
28479 2006-08-28  Bruno Haible  <bruno@clisp.org>
28480             Simon Josefsson  <jas@extundo.com>
28481
28482         BeOS portability.
28483         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
28484
28485 2006-08-27  Jim Meyering  <jim@meyering.net>
28486
28487         * doc/visibility.texi: Remove duplicate word: "pointer".
28488
28489 2006-08-26  Bruno Haible  <bruno@clisp.org>
28490
28491         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
28492         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
28493         (Makefile.am): Create inttypes.h from inttypes_.h.
28494         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
28495
28496         * modules/imaxabs: New file.
28497
28498         * modules/imaxdiv: New file.
28499
28500 2006-08-26  Bruno Haible  <bruno@clisp.org>
28501
28502         * m4/inttypes.m4: New file.
28503         * m4/_inttypes_h.m4: Remove file.
28504         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
28505         PRI_MACROS_BROKEN.
28506         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
28507
28508         * m4/imaxabs.m4: New file.
28509
28510         * m4/imaxdiv.m4: New file.
28511
28512 2006-08-26  Bruno Haible  <bruno@clisp.org>
28513
28514         * lib/inttypes_.h: New file.
28515         * lib/inttypes.h: Remove file.
28516         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
28517
28518         * lib/imaxabs.c: New file.
28519
28520         * lib/imaxdiv.c: New file.
28521
28522 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28523
28524         New config-h module, so that "make" output needn't be cluttered
28525         by -DHAVE_CONFIG_H.
28526         * MODULES.html.sh (Support for building libraries and executables):
28527         Add config-h.
28528         * modules/config-h: New file.
28529         * gnulib-tool (nl, sed_transform_lib_file): New vars.
28530         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
28531         the config-h module is used.
28532
28533         New configmake module, so that "make" output needn't be cluttered
28534         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
28535         * MODULES.html.sh (Support for building libraries and executables):
28536         Add configmake.
28537         * modules/configmake: New file.
28538
28539 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28540
28541         * m4/config-h.m4: New file.
28542
28543 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28544
28545         * config/srclist.txt: Add elisp-comp.
28546
28547 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28548
28549         * MODULES.html.sh (Support for building libraries and executables):
28550         Add elisp-comp.
28551         * build-aux/elisp-comp: New file.
28552         * modules/elisp-comp: New file.
28553
28554 2006-08-24  Bruno Haible  <bruno@clisp.org>
28555
28556         * gnulib-tool (func_create_testdir): Use non-default values of
28557         sourcebase and m4base.
28558
28559 2006-08-24  Bruno Haible  <bruno@clisp.org>
28560
28561         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
28562         HTML structure.
28563
28564 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
28565
28566         * modules/openat (Depends-on): Add lchown.
28567
28568 2006-08-23  Bruno Haible  <bruno@clisp.org>
28569
28570         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
28571         of gl_LOCK_EARLY instead of gl_LOCK.
28572
28573 2006-08-23  Bruno Haible  <bruno@clisp.org>
28574
28575         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
28576         on OSF/1 to no.
28577         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
28578
28579 2006-08-23  Bruno Haible  <bruno@clisp.org>
28580
28581         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
28582         as unusable.
28583
28584         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
28585         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
28586         (gl_LOCK): New macro.
28587
28588 2006-08-22  Simon Josefsson  <jas@extundo.com>
28589
28590         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
28591         to md5 module.
28592
28593 2006-08-22  Simon Josefsson  <jas@extundo.com>
28594
28595         * MODULES.html.sh: Add "Support for maintaining and release
28596         projects".
28597
28598         * build-aux/gnupload: New file, from coreutils.
28599
28600 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
28601
28602         Avoid the need for AC_LIBSOURCES in m4 macros.
28603         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
28604         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
28605         * modules/check-version (EXTRA_DIST): Add check-version.h.
28606         * modules/crc (EXTRA_DIST): Add crc.h.
28607         * modules/des (EXTRA_DIST): Add des.h.
28608         * modules/gc (EXTRA_DIST): Add gc.h.
28609         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
28610         * modules/getline (EXTRA_DIST): Add getline.h.
28611         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
28612         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
28613         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
28614         * modules/md2 (EXTRA_DIST): Add md2.h.
28615         * modules/md4 (EXTRA_DIST): Add md4.h.
28616         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
28617         * modules/read-file (EXTRA_DIST): Add read-file.h.
28618         * modules/readline (EXTRA_DIST): Add readline.h.
28619         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
28620         rijndael-api-fst.h.
28621
28622 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
28623
28624         * m4/rijndael.m4 (gl_ARCFOUR):
28625         * m4/arctwo.m4 (gl_ARCTWO):
28626         * m4/check-version.m4 (gl_CHECK_VERSION):
28627         * m4/crc.m4 (gl_CRC):
28628         * m4/des.m4 (gl_DES):
28629         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
28630         * m4/gc.m4 (gl_GC):
28631         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
28632         * m4/getline.m4 (gl_FUNC_GETLINE):
28633         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
28634         * m4/hmac-md5.m4 (gl_HMAC_MD5):
28635         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
28636         * m4/md2.m4 (gl_MD2):
28637         * m4/md4.m4 (gl_MD4):
28638         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
28639         * m4/read-file.m4 (gl_FUNC_READ_FILE):
28640         * m4/readline.m4 (gl_FUNC_READLINE):
28641         * m4/rijndael.m4 (gl_RIJNDAEL):
28642         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
28643         to get the necessary .h files and whatnot.
28644
28645 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
28646
28647         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
28648         gnulib rather than the other way around.
28649         * config/srclistvars.sh (COREUTILS): Remove.
28650
28651 2006-08-22  Jim Meyering  <jim@meyering.net>
28652
28653         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
28654
28655         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
28656
28657 2006-08-22  Eric Blake  <ebb9@byu.net>
28658
28659         * modules/regexprops-generic: New file.
28660         * MODULES.html.sh (Support for building documentation): List it.
28661
28662 2006-08-22  Eric Blake  <ebb9@byu.net>
28663
28664         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
28665         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
28666         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
28667         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
28668
28669 2006-08-22  Bruno Haible  <bruno@clisp.org>
28670
28671         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
28672         and lib_LTLIBRARIES like the other lib_* variables.
28673
28674 2006-08-22  Bruno Haible  <bruno@clisp.org>
28675
28676         * build-aux/x-to-1.in: New file, from GNU gettext.
28677
28678 2006-08-22  Bruno Haible  <bruno@clisp.org>
28679
28680         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
28681         <utmpx.h> exists.
28682
28683 2006-08-22  Bruno Haible  <bruno@clisp.org>
28684
28685         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
28686         <utmpx.h> exists.
28687
28688 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
28689
28690         BeOS portability.
28691         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
28692         exist.
28693         Problem reported by Bruno Haible.
28694
28695 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
28696
28697         Avoid the need for AC_LIBSOURCES in m4 macros.
28698         * modules/acl (EXTRA_DIST): Add acl.h.
28699         * modules/argmatch (Files): Add m4/argmatch.m4.
28700         (configure.ac): Add gl_ARGMATCH.
28701         (EXTRA_DIST): Renamed from lib_SOURCES, for
28702         consistency with the other modules.  Remove argmatch.c.
28703         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
28704         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
28705         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
28706         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
28707         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
28708         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
28709         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
28710         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
28711         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
28712         * modules/closeout (EXTRA_DIST): Add closeout.h.
28713         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
28714         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
28715         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
28716         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
28717         dirname.h; remove basename.c and stripslash.c.
28718         * modules/exclude (EXTRA_DIST): Add exclude.h.
28719         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
28720         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
28721         * modules/file-type (EXTRA_DIST): Add file-type.h.
28722         * modules/filemode (EXTRA_DIST): Add filemode.h.
28723         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
28724         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
28725         * modules/fpending (EXTRA_DIST): Add __fpending.h.
28726         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
28727         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
28728         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
28729         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
28730         * modules/getdate (EXTRA_DIST): Add getdate.c.
28731         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
28732         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
28733         * modules/getpass (EXTRA_DIST): Add getpass.h.
28734         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
28735         * modules/group-member (EXTRA_DIST): Add group-member.h.
28736         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
28737         * modules/hash (EXTRA_DIST): Add hash.h.
28738         * modules/human (EXTRA_DIST): Add human.h.
28739         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
28740         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
28741         * modules/lchown (EXTRA_DIST): Add lchown.h.
28742         * modules/long-options (EXTRA_DIST): Add long-options.h.
28743         * modules/lstat (EXTRA_DIST): Add lstat.h.
28744         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
28745         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
28746         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
28747         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
28748         * modules/memxor (EXTRA_DIST): Add memxor.h.
28749         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
28750         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
28751         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
28752         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
28753         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
28754         * modules/physmem (EXTRA_DIST): Add physmem.h.
28755         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
28756         * modules/posixver (EXTRA_DIST): Add posixver.h.
28757         * modules/quote (EXTRA_DIST): Add quote.h.
28758         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
28759         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
28760         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
28761         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
28762         regex_internal.h regexec.c.
28763         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
28764         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
28765         * modules/same (EXTRA_DIST): Add same.h.
28766         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
28767         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
28768         * modules/savedir (EXTRA_DIST): Add savedir.h.
28769         * modules/sha1 (EXTRA_DIST): Add sha1.h.
28770         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
28771         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
28772         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
28773         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
28774         * modules/strdup (EXTRA_DIST): Add strdup.h.
28775         * modules/strftime (EXTRA_DIST): Add strftime.h.
28776         * modules/strndup (EXTRA_DIST): Add strndup.h.
28777         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
28778         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
28779         * modules/time_r (EXTRA_DIST): Add time_r.h.
28780         * modules/timespec (EXTRA_DIST): Add timespec.h.
28781         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
28782         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
28783         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
28784         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
28785         * modules/userspec (EXTRA_DIST): Add userspec.h.
28786         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
28787         * modules/utimens (EXTRA_DIST): Add utimens.h.
28788         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
28789         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
28790         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
28791         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
28792         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
28793         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
28794         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
28795         * modules/yesno (EXTRA_DIST): Add yesno.h.
28796
28797 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
28798
28799         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
28800
28801         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
28802         * m4/dev-ino.m4, same-inode.m4: Remove.
28803
28804         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
28805         * m4/acl.m4 (AC_FUNC_ACL):
28806         * m4/backupfile.m4 (gl_BACKUPFILE):
28807         * m4/c-strtod.m4 (gl_C99_STRTOLD):
28808         * m4/canon-host.m4 (gl_CANON_HOST):
28809         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
28810         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
28811         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
28812         * m4/cloexec.m4 (gl_CLOEXEC):
28813         * m4/close-stream.m4 (gl_CLOSE_STREAM):
28814         * m4/closeout.m4 (gl_CLOSEOUT):
28815         * m4/dirfd.m4 (gl_FUNC_DIRFD):
28816         * m4/dirname.m4 (gl_DIRNAME):
28817         * m4/exclude.m4 (gl_EXCLUDE):
28818         * m4/exitfail.m4 (gl_EXITFAIL):
28819         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
28820         * m4/file-type.m4 (gl_FILE_TYPE):
28821         * m4/filemode.m4 (gl_FILEMODE):
28822         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
28823         * m4/fpending.m4 (gl_FUNC_FPENDING):
28824         * m4/fprintftime.m4 (gl_FPRINTFTIME):
28825         * m4/fts.m4 (gl_FUNC_FTS):
28826         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
28827         * m4/getdate.m4 (gl_GETDATE):
28828         * m4/gethrxtime.m4 (gl_GETHRXTIME):
28829         * m4/getpagesize.m4 (gl_GETPAGESIZE):
28830         * m4/getpass.m4 (gl_FUNC_GETPASS):
28831         * m4/gettime.m4 (gl_GETTIME):
28832         * m4/getugroups.m4 (gl_GETUGROUPS):
28833         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
28834         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
28835         * m4/hard-locale.m4 (gl_HARD_LOCALE):
28836         * m4/hash.m4 (gl_HASH):
28837         * m4/idcache.m4 (gl_IDCACHE):
28838         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
28839         * m4/lchown.m4 (gl_FUNC_LCHOWN):
28840         * m4/long-options.m4 (gl_LONG_OPTIONS):
28841         * m4/lstat.m4 (gl_FUNC_LSTAT):
28842         * m4/md5.m4 (gl_MD5):
28843         * m4/memcasecmp.m4 (gl_MEMCASECMP):
28844         * m4/memcoll.m4 (gl_MEMCOLL):
28845         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
28846         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
28847         * m4/memxor.m4 (gl_MEMXOR):
28848         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
28849         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
28850         * m4/modechange.m4 (gl_MODECHANGE):
28851         * m4/mountlist.m4 (gl_MOUNTLIST):
28852         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
28853         * m4/openat.m4 (gl_FUNC_OPENAT):
28854         * m4/pathmax.m4 (gl_PATHMAX):
28855         * m4/physmem.m4 (gl_PHYSMEM):
28856         * m4/posixtm.m4 (gl_POSIXTM):
28857         * m4/posixver.m4 (gl_POSIXVER):
28858         * m4/quote.m4 (gl_QUOTE):
28859         * m4/quotearg.m4 (gl_QUOTEARG):
28860         * m4/readtokens.m4 (gl_READTOKENS):
28861         * m4/readutmp.m4 (gl_READUTMP):
28862         * m4/regex.m4 (gl_REGEX):
28863         * m4/safe-read.m4 (gl_SAFE_READ):
28864         * m4/safe-write.m4 (gl_SAFE_WRITE):
28865         * m4/same.m4 (gl_SAME):
28866         * m4/save-cwd.m4 (gl_SAVE_CWD):
28867         * m4/savedir.m4 (gl_SAVEDIR):
28868         * m4/settime.m4 (gl_SETTIME):
28869         * m4/sha1.m4 (gl_SHA1):
28870         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
28871         * m4/stat-macros.m4 (gl_STAT_MACROS):
28872         * m4/stat-time.m4 (gl_STAT_TIME):
28873         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
28874         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
28875         * m4/strdup.m4 (gl_FUNC_STRDUP):
28876         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
28877         * m4/strndup.m4 (gl_FUNC_STRNDUP):
28878         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
28879         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
28880         * m4/time_r.m4 (gl_TIME_R):
28881         * m4/timespec.m4 (gl_TIMESPEC):
28882         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
28883         * m4/unlinkdir.m4 (gl_UNLINKDIR):
28884         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
28885         * m4/userspec.m4 (gl_USERSPEC):
28886         * m4/utimecmp.m4 (gl_UTIMECMP):
28887         * m4/utimens.m4 (gl_UTIMENS):
28888         * m4/xalloc.m4 (gl_XALLOC):
28889         * m4/xgetcwd.m4 (gl_XGETCWD):
28890         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
28891         * m4/xreadlink.m4 (gl_XREADLINK):
28892         * m4/xstrtod.m4 (gl_XSTRTOD):
28893         * m4/yesno.m4 (gl_YESNO):
28894         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
28895         to get the necessary .h files and whatnot.
28896
28897 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
28898             Bruno Haible  <bruno@clisp.org>
28899
28900         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
28901         /bin/sh understanding of '!' conditional negation.
28902
28903 2006-08-21  Jim Meyering  <jim@meyering.net>
28904
28905         * modules/openat (Depends-on): Really alphabetize.
28906
28907         * modules/acl (Depends-on): Add error and quote.
28908
28909         * check-module (find_included_lib_files): Add at-func.c to the
28910         ok-to-include-more-than-once white list.
28911
28912         * modules/openat (Depends-on): Add lstat.  Alphabetize.
28913
28914 2006-08-21  Bruno Haible  <bruno@clisp.org>
28915
28916         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
28917         Emit a pkgdata_DATA variable only if some snippets add contents to it.
28918         Reported by Martin Lambers <marlam@marlam.de>.
28919
28920 2006-08-21  Bruno Haible  <bruno@clisp.org>
28921
28922         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
28923         specify an installation location, don't emit a noinst_LIBRARIES or
28924         noinst_LTLIBRARIES assignment.
28925
28926 2006-08-21  Bruno Haible  <bruno@clisp.org>
28927
28928         BeOS portability.
28929         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
28930         BeOS has mbrtowc() but no <wctype.h>.
28931
28932 2006-08-21  Bruno Haible  <bruno@clisp.org>
28933
28934         BeOS portability.
28935         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
28936         exist.
28937
28938 2006-08-21  Bruno Haible  <bruno@clisp.org>
28939
28940         BeOS portability.
28941         * lib/mbchar.h: Include <wctype.h> only if it exists.
28942
28943 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28944
28945         Remove files that are no longer needed by their respective modules.
28946         * m4/obstack.m4: Remove.
28947         * m4/strerror_r.m4: Remove.
28948         * m4/uint32_t.m4: Remove.
28949         * m4/uintptr_t.m4: Remove.
28950         * m4/ullong_max.m4: Remove.
28951         * m4/xstrtoimax.m4: Remove.
28952         * m4/xstrtoumax.m4: Remove.
28953
28954         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
28955         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
28956         dependencies now capture this.
28957
28958         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
28959         Do not use AC_LIBSOURCES, since gnulib modules now do this.
28960         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
28961         * m4/human.m4 (gl_HUMAN): Likewise.
28962         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
28963         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
28964
28965         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
28966
28967         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
28968         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
28969         stdint.
28970         * m4/human.m4 (gl_HUMAN): Likewise.
28971         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
28972         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
28973         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
28974         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
28975         * m4/xstrtol (gl_XSTRTOL): Likewise.
28976
28977         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
28978         AC_TYPE_LONG_LONG_INT.
28979         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
28980         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
28981         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
28982         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
28983
28984         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
28985         on stdbool.
28986
28987         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
28988         (gl_PREREQ_XSTRTOUL): Remove.
28989
28990         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
28991
28992         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
28993         mode.
28994
28995 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28996
28997         Add and change modules to make it easier for coreutils to use
28998         gnulib-tool.
28999         * modules/backupfile (Files): Remove m4/d-ino.m4.
29000         (Depends-on): Add d-ino.
29001         * modules/cycle-check (Depends-on): Add stdint.
29002         (lib_SOURCES): Add cycle-check.h.
29003         * modules/d-ino: New module.
29004         * modules/d-type: New module.
29005         * modules/error (Files): Remove m4/strerror_r.m4.
29006         * modules/filemode (Files): Add m4/st_dm_mode.m4.
29007         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
29008         m4/inttypes_h.m4, m4/uintmax_t.m4.
29009         (Depends-on): Add stdint.
29010         (lib_SOURCES): Add fsusage.h.
29011         * modules/getcwd (Files): Remove d-ino.m4.
29012         (Depends-on): Add d-ino.
29013         * modules/getndelim2 (Depends-on): Add stdint.
29014         * modules/glob (Files): Remove m4/d-type.m4.
29015         (Depends-on): Add d-type.
29016         * modules/host-os: New module.
29017         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
29018         m4/inttypes_h.m4, m4/uintmax_t.m4.
29019         * Depends-on: Add stdint.
29020         (lib_SOURCES): Add human.h.
29021         * modules/inttostr (Files): Remove m4/intmax_t.m4,
29022         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
29023         m4/uintmax_t.m4, m4/ulonglong.m4.
29024         (Depends-on): Add stdint.
29025         (EXTRA_DIST): Add inttostr.h.
29026         * modules/lchmod: New module.
29027         * modules/link-follow: New module.
29028         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
29029         (Depends-on): Add lchmod.
29030         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
29031         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
29032         (Depends-on): Add stdint.
29033         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
29034         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
29035         (Depends-on): Add stdint.
29036         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
29037         * modules/perl: New module.
29038         * modules/regex (Depends-on): Add stdint.
29039         * modules/rmdir-errno: New module.
29040         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
29041         m4/intmax_t.m4.
29042         (Depends-on): Add stdint.
29043         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
29044         m4/uintmax_t.m4.
29045         (Depends-on): Add stdint.
29046         * modules/unlink-busy: New module.
29047         * modules/utimecmp (Depends-on): Add stdint.
29048         * modules/uptime: New module.
29049         * modules/winsz-ioctl: New module.
29050         * modules/winsz-termios: New module.
29051         * modules/xnanosleep (Depends-on): Add nanosleep.
29052         * modules/ullong_max: Remove.
29053         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
29054         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
29055         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
29056         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
29057         (Depends-on): Add inttypes.
29058         (lib_SOURCES): Add xstrtol.h.
29059         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
29060         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
29061         * MODULES.html.sh: Move 'assert' into the assert section.
29062         Move 'dummy' into the linking section.
29063         Remove ullong_max.
29064         Add section for compatibility checks for POSIX:2001 functions,
29065         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
29066         winsz-ioctl, and winsz-termios into it.
29067         Add lchmod.
29068         Add top-level Misc section and put host-os, perl, and uptime
29069         into it.
29070
29071 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
29072
29073         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
29074         now assume the stdint module.  Do not include inttypes.h.
29075         * lib/fsusage.h: Likewise.
29076         * lib/getndelim2.c: Likewise.
29077         * lib/human.h: Likewise.
29078         * lib/inttostr.h: Likewise.
29079         * lib/obstack.c: Likewise.
29080         * lib/regex_internal.h: Likewise.
29081         * lib/tempname.c: Likewise.
29082         * lib/utimecmp.c: Likewise.
29083         * lib/xstrtol.h: Likewise.
29084
29085         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
29086
29087         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
29088         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
29089         * lib/xtime.h: Likewise.
29090
29091 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
29092
29093         * modules/openat (Files): Add lib/fchmodat.c.
29094         Fixes problem reported by Jay Youngman.
29095
29096 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
29097
29098         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
29099         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
29100
29101 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
29102             Bruno Haible  <bruno@clisp.org>
29103
29104         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
29105         and is a script that invokes bison. Tighten the code. Add comments.
29106
29107 2006-08-18  Jim Meyering  <jim@meyering.net>
29108
29109         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
29110         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
29111         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
29112         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
29113
29114 2006-08-18  Bruno Haible  <bruno@clisp.org>
29115
29116         * modules/bison-i18n: New file.
29117         * MODULES.html.sh (Internationalization functions): Add it.
29118
29119 2006-08-18  Bruno Haible  <bruno@clisp.org>
29120
29121         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
29122         sys/statvfs.h. When getmntinfo was found, check its declaration and
29123         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
29124
29125 2006-08-18  Bruno Haible  <bruno@clisp.org>
29126
29127         * m4/bison-i18n.m4: New file, from bison.
29128
29129 2006-08-18  Bruno Haible  <bruno@clisp.org>
29130
29131         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
29132         (ME_DUMMY): Treat "kernfs" as a dummy.
29133         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
29134
29135 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
29136
29137         Update from coreutils.
29138
29139         2006-08-15  Jim Meyering  <jim@meyering.net>
29140
29141         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
29142
29143         2006-01-17  Jim Meyering  <jim@meyering.net>
29144
29145         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
29146
29147         2006-01-11  Jim Meyering  <jim@meyering.net>
29148
29149         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
29150         Check for the lchmod function.
29151
29152 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
29153
29154         Update from coreutils.
29155
29156         * lib/__fpending.h: Add copyright notice.
29157         * lib/fprintftime.h: Likewise.
29158         * lib/savedir.c: Use (C) in copyright notice.
29159         * lib/savedir.h: Likewise.
29160
29161         2006-08-15  Jim Meyering  <jim@meyering.net>
29162
29163         * lib/at-func.c: New file, with the logic of all emulated at-functions.
29164         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
29165         in support of the EXPECTED_ERRNO macro.
29166         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
29167         definitions.  Instead, define the appropriate symbols and include
29168         "at-func.c".
29169         * lib/mkdirat.c (mkdirat): Likewise.
29170         * lib/fchmodat.c (fchmodat): Likewise.
29171         (ENOSYS): Remove definition.
29172         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
29173         it.  Don't include "unistd--.h" -- it wasn't ever used.
29174
29175         2006-01-17  Jim Meyering  <jim@meyering.net>
29176
29177         Rewrite fts.c not to change the current working directory,
29178         by using openat, fstatat, fdopendir, etc..
29179
29180         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
29181         (HAVE_OPENAT_SUPPORT): Define.
29182         [_LIBC] (fchdir): Don't undef or define; no longer used.
29183         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
29184         Now, this `function' always succeeds, and consumes its file descriptor
29185         parameter -- so callers must not close such FDs.  Update callers.
29186         (diropen_fd, opendirat, cwd_advance_fd): New functions.
29187         (diropen): Add parameter, SP.  Adjust all callers.
29188         Implement using diropen_fd, rather than open.
29189         (fts_open): Initialize new member, fts_cwd_fd.
29190         Remove fts_rft-setting code.
29191         (fts_close): Close fts_cwd_fd, if necessary.
29192         (__opendir2): Define in terms of opendir or opendirat,
29193         depending on whether the FST_NOCHDIR flag is set.
29194         (fts_build): Since fts_safe_changedir consumes its FD, and since
29195         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
29196         and close the dup'd file descriptor upon failure.
29197         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
29198         (fts_safe_changedir): Tweak semantics to reflect that this function
29199         now calls cwd_advance_fd and hence consumes its FD argument.
29200         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
29201         [struct FTS] (fts_rft): Remove now-unused member.
29202         [struct FTS] (fts_cycle.state): Improve comment.
29203
29204         * lib/openat.c (openat_needs_fchdir): New function.
29205         * lib/openat.h (openat_needs_fchdir): Declare it.
29206
29207 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
29208
29209         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
29210         Problem and fix reported by Pádraig Brady in
29211         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
29212
29213 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29214
29215         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
29216
29217 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29218
29219         * lib/memcoll.c (memcoll): Optimize for the common case where the
29220         arguments are bytewise equal.
29221
29222 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29223
29224         * doc/regexprops-generic.texi: Add a copyright notice.
29225
29226 2006-08-15  Bruno Haible  <bruno@clisp.org>
29227
29228         * modules/tmpdir (License): Change to LGPL.
29229
29230 2006-08-15  Bruno Haible  <bruno@clisp.org>
29231
29232         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
29233         module.
29234
29235 2006-08-14  Simon Josefsson  <jas@extundo.com>
29236
29237         * config/srclist.txt: Add gnupload.
29238
29239 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
29240
29241         Change copyright notice from LGPL 2 to GPL 2, since that's the
29242         standard form used in the gnulib repository.
29243         * tests/test-lock.c: Likewise.
29244         * tests/test-stdint.c: Likewise.
29245         * tests/test-tls.c: Likewise.
29246
29247         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
29248         prelude-manager.  User shorter URLs for GNU projects, without '?'.
29249         Add copyright notice.
29250
29251         * check-module: Add copyright notice.  Output a copyright
29252         notice if "--version" is specified.
29253         * modules/COPYING: New file.
29254         * tests/test-getaddrinfo.c: Add copyright notice.
29255         * tests/test-verify.c: Likewise.
29256
29257 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
29258
29259         Change copyright notice from LGPL 2 to GPL 2, since that's the
29260         standard form used in the gnulib repository.
29261         * lib/lock.c: LGPL -> GPL.
29262         * lib/lock.h: Likewise.
29263         * lib/strnlen1.c: Likewise.
29264         * lib/strnlen1.h: Likewise.
29265         * lib/tls.c: Likewise.
29266         * lib/tls.h: Likewise.
29267         * lib/tmpdir.c: Likewise.
29268
29269         * lib/TODO: Remove; this belongs only in coreutils.
29270
29271 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
29272
29273         Add copyright notices to long-enough files that lack them, since
29274         otherwise the files aren't clearly free.  Use the same notice that
29275         getdate.texi already uses.
29276         * doc/alloca-opt.texi: Add copyright notice.
29277         * doc/alloca.texi: Likewise.
29278         * doc/ctime.texi: Likewise.
29279         * doc/functions.texi: Likewise.
29280         * doc/gcd.texi: Likewise.
29281         * doc/gnulib-tool.texi: Likewise.
29282         * doc/inet_ntoa.texi: Likewise.
29283         * doc/visibility.texi: Likewise.
29284
29285         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
29286         * doc/quote.texi: Add copyright notice.
29287
29288         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
29289         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
29290         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
29291         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
29292         is now obsolete, and give a pointer to the Sun list.
29293         Add copyright notice.
29294
29295 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
29296
29297         * config/srclistvars.sh: Add copyright notice.
29298
29299 2006-08-14  Eric Blake  <ebb9@byu.net>
29300
29301         Import the following change from libc:
29302
29303         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
29304
29305         Upstream bug 2997.
29306         * lib/misc/error.c: Add space between program name and message if file
29307         name is missing.
29308
29309 2006-08-12  Karl Berry  <karl@gnu.org>
29310
29311         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
29312         remove, these originate in gnulib now.
29313
29314 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29315
29316         * doc/Makefile (standards.info standards.html standards.dvi):
29317         Also depend on make-stds.texi.
29318
29319 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
29320
29321         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
29322         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
29323
29324         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
29325         in wchar_t.  Problem reported by Eric Blake.
29326
29327         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
29328         LEN is smaller than SIZE.  Suggested by Bruno Haible.
29329         Also, help the compiler to keep LEN in a register.
29330
29331 2006-08-11  Eric Blake  <ebb9@byu.net>
29332
29333         * users.txt: Sort.  Add tar.
29334
29335 2006-08-11  Bruno Haible  <bruno@clisp.org>
29336
29337         * users.txt: New file.
29338
29339 2006-08-11  Bruno Haible  <bruno@clisp.org>
29340
29341         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
29342         before <wchar.h>. Needed for OSF/1 and BSD/OS.
29343
29344 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
29345
29346         * modules/snprintf (Depends-on): Remove minmax.
29347         (Maintainer): Add self and Bruno.
29348
29349 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
29350
29351         * lib/.cppi-disable: Add snprintf.h, socket_.h.
29352         * lib/snprintf.c: Include <errno.h> and <limits.h>.
29353         (EOVERFLOW): Define if the system does not.
29354         Do not include "minmax.h"; it wasn't used.
29355         (snprintf): Don't assume size_t promotes to an unsigned type.
29356         Fix bug when generated string was too long for the buffer: the
29357         buffer's contents are supposed to be the initial prefix of the
29358         output.  Don't assume vasnprintf returns EOVERFLOW if the size
29359         exceeds INT_MAX; do the check ourselves.
29360
29361         Import the following changes from libc:
29362
29363         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
29364
29365         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
29366         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
29367         set wc to the byte which couldn't be converted.
29368         (re_string_reconstruct): Don't clear valid_raw_len before calling
29369         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
29370         tip_context using re_string_context_at.
29371
29372         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
29373
29374         * lib/posix/regex.h: g++ still cannot handled [restrict].
29375
29376         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
29377
29378         * lib/posix/regex.h: Remove special handling for VMS.
29379
29380 2006-08-10  Jim Meyering  <jim@meyering.net>
29381
29382         * modules/same-inode: New module.
29383         * modules/dev-ino: New module.
29384         * modules/cycle-check: Depend on these modules, rather than simply
29385         including their .h files.
29386         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
29387         required via m4/cycle-check.m4.
29388         * modules/same: Depend on new same-inode module, rather than
29389         including same-inode.h.
29390         * modules/chdir-safer: New file.
29391
29392         * modules/chown (Depends-on): Add stat-macros.
29393
29394 2006-08-10  Jim Meyering  <jim@meyering.net>
29395
29396         * m4/cycle-check.m4: New file.
29397         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
29398         * m4/dev-ino.m4, m4/same-inode.m4: New files.
29399
29400 2006-08-10  Eric Blake  <ebb9@byu.net>
29401
29402         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
29403         in from original proposal.
29404
29405 2006-08-10  Eric Blake  <ebb9@byu.net>
29406         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
29407
29408         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
29409         namespace.
29410
29411 2006-08-10  Bruno Haible  <bruno@clisp.org>
29412
29413         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
29414         as well.
29415
29416 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
29417
29418         Sync from coreutils.
29419
29420         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
29421
29422         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
29423         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
29424
29425 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
29426
29427         * modules/restrict: Remove; no longer needed now that we assume
29428         Autoconf 2.59 or later.
29429         * MODULES.html.sh: Remove 'restrict'.
29430         * modules/argp (Depends-on): Remove 'restrict'.
29431         * modules/base64 (Depends-on): Likewise.
29432         * modules/gc (Depends-on): Likewise.
29433         * modules/getaddrinfo (Depends-on): Likewise.
29434         * modules/glob (Depends-on): Likewise.
29435         * modules/inet_ntop (Depends-on): Likewise.
29436         * modules/inet_pton (Depends-on): Likewise.
29437         * modules/memxor (Depends-on): Likewise.
29438         * modules/regex (Depends-on): Likewise.
29439         * modules/strtok_r (Depends-on): Likewise.
29440         * modules/time_r (Depends-on): Likewise.
29441
29442 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
29443
29444         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
29445         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
29446         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
29447         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
29448         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
29449         * m4/memxor.m4 (gl_MEMXOR): Likewise.
29450         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
29451         gl_C_RESTRICT replaced by AC_C_RESTRICT.
29452
29453         Merge from coreutils.
29454         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
29455         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
29456         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
29457         * m4/time_r.m4 (gl_TIME_R): Likewise.
29458
29459 2006-08-09  Karl Berry  <karl@gnu.org>
29460
29461         * config/srclist.txt: no more gettext-tools, per Bruno.
29462
29463 2006-08-08  Eric Blake  <ebb9@byu.net>
29464
29465         * modules/verror: New module.
29466         * MODULES.html.sh: Document it.
29467
29468 2006-08-08  Eric Blake  <ebb9@byu.net>
29469
29470         * lib/verror.h, lib/verror.c: New files.
29471
29472 2006-08-08  Eric Blake  <ebb9@byu.net>
29473
29474         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
29475         verror_at_line output complies with GNU Coding Standards even when
29476         file is NULL.
29477
29478 2006-08-07  Bruno Haible  <bruno@clisp.org>
29479
29480         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
29481         versions of AIX.
29482         Reported by Ralf Wildenhues.
29483
29484 2006-08-07  Bruno Haible  <bruno@clisp.org>
29485
29486         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
29487         in an AC_DEFUN. Needed so that the autoconf snippets can use
29488         AC_REQUIRE.
29489
29490 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29491
29492         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
29493         Initialize pkgdata_DATA.
29494         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
29495         overriding it.
29496
29497 2006-08-06  Eric Blake  <ebb9@byu.net>
29498
29499         * lib/error.h: Fold in some upstream changes from glibc.
29500         * lib/error.c: Likewise.
29501
29502 2006-08-04  Bruno Haible  <bruno@clisp.org>
29503
29504         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
29505         Make the mostlyclean-local rule depend on mostlyclean-generic.
29506         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
29507
29508 2006-07-31  Bruno Haible  <bruno@clisp.org>
29509
29510         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
29511         <stdlib.h>, <string.h>.
29512
29513 2006-07-30  Bruno Haible  <bruno@clisp.org>
29514
29515         * modules/readlink (License): Change to LGPL.
29516
29517 2006-07-30  Bruno Haible  <bruno@clisp.org>
29518
29519         * modules/javaversion (Makefile.am): Distribute javaversion.java and
29520         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
29521         set PKGDATADIR to point to it.
29522
29523 2006-07-30  Bruno Haible  <bruno@clisp.org>
29524
29525         * modules/csharpexec (configure.ac): Comment out macro invocation.
29526         * modules/javaexec (configure.ac): Likewise.
29527         * modules/javacomp-script (configure.ac): Likewise.
29528
29529         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
29530
29531 2006-07-30  Bruno Haible  <bruno@clisp.org>
29532
29533         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
29534         linked-list.
29535
29536 2006-07-30  Bruno Haible  <bruno@clisp.org>
29537
29538         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
29539
29540 2006-07-30  Bruno Haible  <bruno@clisp.org>
29541
29542         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
29543         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
29544         get removed.
29545
29546 2006-07-29  Bruno Haible  <bruno@clisp.org>
29547
29548         Make it possible for gnulib-tool to work with locally modified or
29549         augmented gnulib repositories.
29550         * gnulib-tool (func_usage): Document --local-dir option.
29551         (local_gnulib_dir): New variable.
29552         Handle --local-dir option.
29553         (func_lookup_file): New function.
29554         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
29555         (func_get_description, func_get_filelist, func_get_description,
29556         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
29557         func_get_automake_snippet, func_get_include_directive,
29558         func_get_license, func_get_maintainer): Use func_lookup_file.
29559         (func_import, func_create_testdir): Use func_lookup_file.
29560
29561 2006-07-29  Bruno Haible  <bruno@clisp.org>
29562
29563         * modules/setenv (Depends-on): Add unistd.
29564
29565 2006-07-29  Bruno Haible  <bruno@clisp.org>
29566
29567         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
29568
29569 2006-07-29  Bruno Haible  <bruno@clisp.org>
29570
29571         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
29572
29573 2006-07-29  Bruno Haible  <bruno@clisp.org>
29574
29575         * gnulib-tool (import, update): If there is no Makefile.am, look at
29576         aclocal.m4, instead of bailing out.
29577
29578 2006-07-29  Bruno Haible  <bruno@clisp.org>
29579
29580         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
29581         Categorize the options by when they are useful.
29582
29583 2006-07-29  Bruno Haible  <bruno@clisp.org>
29584
29585         * gnulib-tool (func_usage): Document option --no-libtool.
29586         Handle option --no-libtool.
29587         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
29588         for changed semantics of $libtool variable.
29589         (func_import): Likewise. If libtool is not used, show this through
29590         an option --no-libtool.
29591         (func_create_testdir): Update.
29592
29593 2006-07-29  Bruno Haible  <bruno@clisp.org>
29594
29595         * gnulib-tool (func_import): Extend error message about missing
29596         --doc-base.
29597
29598 2006-07-29  Bruno Haible  <bruno@clisp.org>
29599
29600         * gnulib-tool (func_import): Don't create the $docbase directory if
29601         there is no file to store there.
29602
29603 2006-07-29  Bruno Haible  <bruno@clisp.org>
29604
29605         * gnulib-tool (autoconf_minversion): If a --dir option is given and
29606         relevant, look for configure.ac there, not in the current directory.
29607         Also use a simple search for AC_PREREQ, not "autoconf --trace".
29608
29609 2006-07-29  Bruno Haible  <bruno@clisp.org>
29610
29611         * gnulib-tool (SORT): New variable.
29612         (func_usage): Undocument --assume-autoconf option.
29613         Remove --assume-autoconf option handling.
29614         (autoconf_minversion): Determine from the contents of configure.ac.
29615         (func_import): Remove autoconf_minversion handling.
29616         Suggested by Eric Blake.
29617
29618 2006-07-29  Bruno Haible  <bruno@clisp.org>
29619
29620         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
29621
29622 2006-07-29  Bruno Haible  <bruno@clisp.org>
29623
29624         * config/srclist.txt (*setenv.[ch]): Remove rules.
29625
29626 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29627
29628         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
29629
29630 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29631
29632         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
29633         arpa/inet.h.
29634
29635 2006-07-28  Simon Josefsson  <jas@extundo.com>
29636
29637         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
29638         * modules/inet_pton (Depends-on): Likewise.
29639
29640 2006-07-28  Simon Josefsson  <jas@extundo.com>
29641
29642         * m4/netinet_in_h.m4: New file.
29643
29644 2006-07-28  Simon Josefsson  <jas@extundo.com>
29645
29646         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
29647         #include's.
29648
29649 2006-07-28  Simon Josefsson  <jas@extundo.com>
29650
29651         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
29652         #include's.
29653
29654 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
29655
29656         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
29657         setgid on directories only if they set these bits.
29658         * lib/modechange.h: Remove obsolete comment about masks.
29659
29660 2006-07-28  Eric Blake  <ebb9@byu.net>
29661
29662         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
29663         macro expansion.
29664
29665 2006-07-28  Bruno Haible  <bruno@clisp.org>
29666
29667         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
29668
29669 2006-07-28  Bruno Haible  <bruno@clisp.org>
29670
29671         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
29672
29673 2006-07-28  Bruno Haible  <bruno@clisp.org>
29674
29675         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
29676         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
29677         Define fallbacks.
29678         Avoids link error on FreeBSD 4.x.
29679         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
29680
29681         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
29682         encoding.
29683         * lib/mbswidth.c (iswcntrl): Likewise.
29684
29685 2006-07-27  Bruno Haible  <bruno@clisp.org>
29686
29687         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
29688         test.
29689
29690 2006-07-27  Bruno Haible  <bruno@clisp.org>
29691
29692         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
29693         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
29694         defined.
29695
29696 2006-07-26  Eric Blake  <ebb9@byu.net>
29697
29698         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
29699
29700 2006-07-26  Eric Blake  <ebb9@byu.net>
29701
29702         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
29703         like mingw that lack mkstemp.
29704         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
29705         avoid compilation warning on mingw.
29706
29707 2006-07-26  Bruno Haible  <bruno@clisp.org>
29708
29709         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
29710         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
29711         INT_FAST*_MIN, INTPTR_MIN.
29712
29713 2006-07-25  Bruno Haible  <bruno@clisp.org>
29714
29715         * modules/version-etc (Depends-on): Add stdarg.
29716
29717 2006-07-25  Bruno Haible  <bruno@clisp.org>
29718
29719         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
29720         complex commands.
29721
29722 2006-07-25  Bruno Haible  <bruno@clisp.org>
29723
29724         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
29725         defined in <stdarg.h> or config.h.
29726
29727 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
29728
29729         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
29730         (gl_STDIO_SAFER): Remove.
29731
29732 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
29733
29734         * MODULES.html.sh (File stream based Input/Output):
29735         Add fopen-safer, tmpfile-safer; remove stdio-safer.
29736         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
29737         * modules/fopen-safer, modules/tmpfile-safer: New files.
29738         * modules/stdio-safer: Remove.
29739
29740 2006-07-24  Bruno Haible  <bruno@clisp.org>
29741
29742         * modules/tmpdir: New file.
29743         * MODULES.html.sh (File system functions): Add it.
29744
29745 2006-07-24  Bruno Haible  <bruno@clisp.org>
29746
29747         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
29748         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
29749
29750 2006-07-24  Bruno Haible  <bruno@clisp.org>
29751
29752         * modules/clean-temp: New file.
29753
29754 2006-07-24  Bruno Haible  <bruno@clisp.org>
29755
29756         * m4/tmpdir.m4: New file, from GNU gettext.
29757
29758 2006-07-24  Bruno Haible  <bruno@clisp.org>
29759
29760         * lib/tmpdir.h: New file, from GNU gettext.
29761         * lib/tmpdir.c: New file, from GNU gettext.
29762
29763 2006-07-24  Bruno Haible  <bruno@clisp.org>
29764
29765         * lib/clean-temp.h: New file, from GNU gettext.
29766         * lib/clean-temp.c: New file, from GNU gettext.
29767
29768 2006-07-23  Eric Blake  <ebb9@byu.net>
29769
29770         * modules/stdio-safer (Files): Add tmpfile-safer.c.
29771         (Depends-on): Add binary-io.
29772
29773 2006-07-23  Eric Blake  <ebb9@byu.net>
29774
29775         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
29776
29777 2006-07-23  Eric Blake  <ebb9@byu.net>
29778
29779         * lib/tmpfile-safer.c: New file.
29780         * lib/stdio-safer.h (fopen_safer): Add prototype.
29781         * lib/stdio--.h (tmpfile): Make safer.
29782
29783 2006-07-23  Bruno Haible  <bruno@clisp.org>
29784
29785         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
29786         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
29787         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
29788         gl_linked_remove_at): Use it.
29789
29790 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29791         and Simon Josefsson <jas@extundo.com>
29792
29793         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
29794
29795         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
29796
29797 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
29798
29799         * modules/close-stream: New file.
29800         * modules/closeout (Description): Make it clear that it exits
29801         with a diagnostic on error.
29802         (Depends-on): Add close-stream.  Remove fpending, stdbool.
29803         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
29804
29805 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
29806
29807         * m4/close-stream.m4: New file.
29808
29809 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
29810
29811         * lib/close-stream.c, lib/close-stream.h: New files.
29812
29813 2006-07-22  Bruno Haible  <bruno@clisp.org>
29814
29815         Merge from GNU gettext 0.15.
29816
29817         2006-05-01  Bruno Haible  <bruno@clisp.org>
29818
29819                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
29820
29821         2006-07-22  Bruno Haible  <bruno@clisp.org>
29822
29823                 * modules/javaversion: New file.
29824                 * MODULES.html.sh (Java): Add javaversion.
29825
29826         2006-03-12  Bruno Haible  <bruno@clisp.org>
29827
29828                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
29829
29830         2005-12-04  Bruno Haible  <bruno@clisp.org>
29831
29832                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
29833                 (untested).
29834
29835         2006-06-21  Bruno Haible  <bruno@clisp.org>
29836
29837                 Avoid warnings from recent versions of mcs.
29838                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
29839                 -o, -L, -r any more. Use options documented since mcs-1.0
29840                 instead. Similarly for -g.
29841
29842         2005-12-04  Bruno Haible  <bruno@clisp.org>
29843
29844                 * build-aux/csharpcomp.sh.in: Suffix for resources is
29845                 .resources, not .resource.
29846
29847         2005-07-09  Bruno Haible  <bruno@clisp.org>
29848
29849                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
29850                 add a .dll suffix.
29851                 Reported by Mark Junker <mjscod@gmx.de>.
29852
29853         2006-07-22  Bruno Haible  <bruno@clisp.org>
29854
29855                 * modules/gettext: Upgrade to gettext-0.15.
29856                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
29857                 m4/visibility.m4.
29858                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
29859
29860 2006-07-22  Bruno Haible  <bruno@clisp.org>
29861
29862         Merge from GNU gettext 0.15.
29863
29864         2006-03-25  Bruno Haible  <bruno@clisp.org>
29865
29866                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
29867
29868         2006-07-21  Bruno Haible  <bruno@clisp.org>
29869
29870                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
29871                 "1.1".
29872
29873         2006-05-09  Bruno Haible  <bruno@clisp.org>
29874
29875                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
29876                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
29877                 for the conftestver execution.
29878
29879         2006-05-01  Bruno Haible  <bruno@clisp.org>
29880
29881                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
29882                 optional target-version argument. Verify that the compiler
29883                 groks source of the specified source-version, or add -source
29884                 option as necessary. Verify that the compiler produces
29885                 bytecode in the specified target-version, or add -target and
29886                 -source options as necessary. Make the result of the test
29887                 available as variable CONF_JAVAC. Also log error output in
29888                 config.log.
29889
29890         2006-03-11  Bruno Haible  <bruno@clisp.org>
29891
29892                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
29893
29894         2006-05-09  Bruno Haible  <bruno@clisp.org>
29895
29896                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
29897                 CLASSPATH_SEPARATOR to a semicolon.
29898
29899         2006-03-12  Bruno Haible  <bruno@clisp.org>
29900
29901                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
29902                 available as variable CONF_JAVA, for subsequent autoconf
29903                 tests. Also log error output in config.log.
29904
29905         2006-07-19  Bruno Haible  <bruno@clisp.org>
29906
29907                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
29908                 that getline works on glibc2 systems. Needed to avoid trouble
29909                 in relocatable.c.
29910                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
29911
29912         2005-12-04  Bruno Haible  <bruno@clisp.org>
29913
29914                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
29915                 launcher (untested).
29916
29917         2005-12-04  Bruno Haible  <bruno@clisp.org>
29918
29919                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
29920
29921         2006-07-22  Bruno Haible  <bruno@clisp.org>
29922
29923                 * gettext.m4: Update from GNU gettext-0.15.
29924                 * nls.m4: Likewise.
29925                 * po.m4: Likewise.
29926                 * inttypes-pri.m4: Likewise.
29927                 * inttypes-h.m4: Renamed from inttypes.m4.
29928                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
29929
29930 2006-07-22  Bruno Haible  <bruno@clisp.org>
29931
29932         Merge from GNU gettext 0.15.
29933
29934         2005-07-05  Bruno Haible  <bruno@clisp.org>
29935
29936                 * printf-args.c (printf_fetchargs): Work around broken
29937                 definition of wint_t on mingw.
29938
29939         2005-02-12  Bruno Haible  <bruno@clisp.org>
29940
29941                 * xallocsa.h: Add extern "C" for C++.
29942
29943         2006-05-17  Bruno Haible  <bruno@clisp.org>
29944
29945                 Cygwin portability.
29946                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
29947
29948         2006-04-30  Bruno Haible  <bruno@clisp.org>
29949
29950                 * progreloc.c: Include <mach-o/dyld.h> if available.
29951                 (find_executable): Use _NSGetExecutablePath when possible.
29952
29953         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
29954
29955                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
29956                 function.
29957
29958         2005-12-29  Bruno Haible  <bruno@clisp.org>
29959
29960                 * progreloc.c (set_program_name_and_installdir): Fix
29961                 compilation error.
29962
29963         2005-12-04  Bruno Haible  <bruno@clisp.org>
29964
29965                 Cygwin portability.
29966                 * progreloc.c: Include <windows.h> also on Cygwin.
29967                 (find_executable): Add support for Cygwin.
29968                 (set_program_name_and_installdir): Handle also platforms with
29969                 nonempty EXEEXT.
29970
29971         2006-07-11  Bruno Haible  <bruno@clisp.org>
29972
29973                 * javacomp.c: Fix a comment.
29974                 Reported by Jim Meyering.
29975
29976         2006-04-30  Bruno Haible  <bruno@clisp.org>
29977
29978                 * javacomp.h (compile_java_class): Add source_version,
29979                 target_version arguments.
29980                 * javacomp.c: Rewritten to choose only a compiler that
29981                 respects the specified source_version and target_version.
29982
29983         2006-06-27  Bruno Haible  <bruno@clisp.org>
29984
29985                 Assume correct S_ISDIR macro.
29986                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
29987
29988         2006-07-22  Bruno Haible  <bruno@clisp.org>
29989
29990                 * javaversion.h: New file, from GNU gettext.
29991                 * javaversion.c: New file, from GNU gettext.
29992                 * javaversion.java: New file, from GNU gettext.
29993                 * javaversion.class: New file, from GNU gettext.
29994
29995         2006-05-17  Bruno Haible  <bruno@clisp.org>
29996
29997                 Cygwin portability.
29998                 * javaexec.c (execute_java_class): Test for jview program
29999                 also on Cygwin.
30000
30001         2006-04-09  Bruno Haible  <bruno@clisp.org>
30002
30003                 * fatal-signal.c: Don't include string.h.
30004                 (at_fatal_signal): Use a copying loop instead of memcpy.
30005
30006         2005-12-04  Bruno Haible  <bruno@clisp.org>
30007
30008                 * csharpexec.c: Add support for 'clix' launcher (untested).
30009                 (execute_csharp_using_sscli): New function.
30010                 (execute_csharp_program): Call it.
30011
30012         2006-06-21  Bruno Haible  <bruno@clisp.org>
30013
30014                 Avoid warnings from recent versions of mcs.
30015                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
30016                 -o, -L, -r any more. Use options documented since mcs-1.0
30017                 instead. Similarly for -g.
30018
30019         2005-07-09  Bruno Haible  <bruno@clisp.org>
30020
30021                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
30022                 add a .dll suffix.
30023                 Reported by Mark Junker <mjscod@gmx.de>.
30024
30025         2006-06-17  Bruno Haible  <bruno@clisp.org>
30026
30027                 * config.charset: Update for NetBSD 3.0.
30028
30029         2006-05-17  Bruno Haible  <bruno@clisp.org>
30030
30031                 Cygwin portability.
30032                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
30033
30034         2006-05-16  Bruno Haible  <bruno@clisp.org>
30035
30036                 * localcharset.c [CYGWIN]: Include <windows.h>.
30037                 (get_charset_aliases): For Cygwin, return the same CPxxx
30038                 aliases list as under WIN32.
30039                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
30040                 the environment variables. Fall back to GetACP().
30041
30042         2006-04-05  Bruno Haible  <bruno@clisp.org>
30043
30044                 * config.charset: Update Juan Manuel Guerrero's address.
30045
30046         2005-02-12  Bruno Haible  <bruno@clisp.org>
30047
30048                 * allocsa.h: Add extern "C" for C++.
30049
30050         2005-02-10  Bruno Haible  <bruno@clisp.org>
30051
30052                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
30053                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
30054
30055         2006-07-22  Bruno Haible  <bruno@clisp.org>
30056
30057                 * gettext.h: Update to GNU gettext-0.15.
30058
30059 2006-07-22  Bruno Haible  <bruno@clisp.org>
30060
30061         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
30062         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
30063         lib-prefix.m4, longdouble.m4, ssize_t.m4.
30064
30065 2006-07-21  Eric Blake  <ebb9@byu.net>
30066
30067         * modules/stdlib-safer: New file.
30068         * MODULES.html.sh (File stream based Input/Output): Add
30069         stdlib-safer.
30070
30071 2006-07-21  Eric Blake  <ebb9@byu.net>
30072
30073         * lib/stdlib-safer.h: New file from coreutils, required by
30074         stdlib--.h.
30075
30076 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
30077
30078         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
30079
30080 2006-07-20  Bruno Haible  <bruno@clisp.org>
30081
30082         * gnulib-tool: Recognize new option --assume-autoconf.
30083         (autoconf_minversion): New variable.
30084         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
30085
30086 2006-07-20  Bruno Haible  <bruno@clisp.org>
30087
30088         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
30089
30090 2006-07-19  Derek R. Price  <derek@ximbiot.com>
30091
30092         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
30093         Reindent and repaginate.
30094
30095 2006-07-19  Derek Price  <derek@ximbiot.com>
30096
30097         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
30098         Correct grammar.
30099
30100 2006-07-17  Bruno Haible  <bruno@clisp.org>
30101
30102         * modules/list: New file.
30103         * modules/array-list: New file.
30104         * modules/carray-list, modules/carray-list-tests: New files.
30105         * modules/linked-list, modules/linked-list-tests: New files.
30106         * modules/avltree-list, modules/avltree-list-tests: New files.
30107         * modules/rbtree-list, modules/rbtree-list-tests: New files.
30108         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
30109         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
30110         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
30111         * modules/oset: New file.
30112         * modules/array-oset: New file.
30113         * modules/avltree-oset, modules/avltree-oset-tests: New files.
30114         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
30115         * tests/test-carray_list.c: New file.
30116         * tests/test-linked_list.c: New file.
30117         * tests/test-avltree_list.c: New file.
30118         * tests/test-rbtree_list.c: New file.
30119         * tests/test-linkedhash_list.c: New file.
30120         * tests/test-avltreehash_list.c: New file.
30121         * tests/test-rbtreehash_list.c: New file.
30122         * tests/test-avltree_oset.c: New file.
30123         * tests/test-rbtree_oset.c: New file.
30124         * MODULES.html.sh (Container data structures): New section.
30125
30126 2006-07-17  Bruno Haible  <bruno@clisp.org>
30127
30128         * m4/gl_list.m4: New file.
30129
30130 2006-07-17  Bruno Haible  <bruno@clisp.org>
30131
30132         * lib/gl_list.h: New file.
30133         * lib/gl_list.c: New file.
30134         * lib/gl_array_list.h: New file.
30135         * lib/gl_array_list.c: New file.
30136         * lib/gl_carray_list.h: New file.
30137         * lib/gl_carray_list.c: New file.
30138         * lib/gl_linked_list.h: New file.
30139         * lib/gl_linked_list.c: New file.
30140         * lib/gl_anylinked_list1.h: New file.
30141         * lib/gl_anylinked_list2.h: New file.
30142         * lib/gl_avltree_list.h: New file.
30143         * lib/gl_avltree_list.c: New file.
30144         * lib/gl_anyavltree_list1.h: New file.
30145         * lib/gl_anyavltree_list2.h: New file.
30146         * lib/gl_rbtree_list.h: New file.
30147         * lib/gl_rbtree_list.c: New file.
30148         * lib/gl_anyrbtree_list1.h: New file.
30149         * lib/gl_anyrbtree_list2.h: New file.
30150         * lib/gl_anytree_list1.h: New file.
30151         * lib/gl_anytree_list2.h: New file.
30152         * lib/gl_linkedhash_list.h: New file.
30153         * lib/gl_linkedhash_list.c: New file.
30154         * lib/gl_anyhash_list1.h: New file.
30155         * lib/gl_anyhash_list2.h: New file.
30156         * lib/gl_avltreehash_list.h: New file.
30157         * lib/gl_avltreehash_list.c: New file.
30158         * lib/gl_rbtreehash_list.h: New file.
30159         * lib/gl_rbtreehash_list.c: New file.
30160         * lib/gl_anytreehash_list1.h: New file.
30161         * lib/gl_anytreehash_list2.h: New file.
30162
30163         * lib/gl_oset.h: New file.
30164         * lib/gl_oset.c: New file.
30165         * lib/gl_array_oset.h: New file.
30166         * lib/gl_array_oset.c: New file.
30167         * lib/gl_avltree_oset.h: New file.
30168         * lib/gl_avltree_oset.c: New file.
30169         * lib/gl_rbtree_oset.h: New file.
30170         * lib/gl_rbtree_oset.c: New file.
30171         * lib/gl_anytree_oset.h: New file.
30172
30173 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
30174
30175         * m4/mkancesdirs.m4: New file.
30176         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
30177         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
30178         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
30179         it.
30180
30181 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
30182
30183         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
30184         * lib/mkancesdirs.h: New files.
30185         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
30186         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
30187         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
30188         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
30189         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
30190         callers changed.  Revamp internals significantly, by not
30191         attempting to create directories that are temporarily more
30192         permissive than the final results.  Do not attempt to use
30193         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
30194         This removes some race conditions, fixes some bugs, and simplifies
30195         things.  Use new dirchownmod function to do owner and mode changes.
30196         * lib/mkdir-p.h: Likewise.
30197         * lib/modechange.c (octal_to_mode): New function.
30198         (struct mode_change): New member mentioned.
30199         (make_node_op_equals): New arg mentioned.  All callers changed.
30200         (mode_compile): Keep track of which mode bits the user has explicitly
30201         mentioned.
30202         (mode_adjust): New arg DIR, so that we implement the X op correctly.
30203         New arg PMODE_BITS, to keep track of which mode bits the user
30204         mentioned; it treats S_ISUID and S_ISGID speciall.
30205         All callers changed.
30206         * lib/modechange.h: Likewise.
30207
30208 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
30209
30210         * MODULES.html.sh: Add mkancestors.
30211         * modules/mkancesdirs: New module.
30212         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
30213         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
30214         The chdir-safer and afs files are now orphans; I'll remove them
30215         unless someone speaks up.
30216         Add lib/dirchownmod.c, lib/dirchownmod.h.
30217         (Depends-on): Remove alloca, chown, save-cwd, dirname.
30218         Add lchown, mkancesdirs.
30219         (Maintainer): Add self.
30220
30221 2006-07-15  Karl Berry  <karl@gnu.org>
30222
30223         * gnulib-tool: help message wording/arrangement.
30224
30225 2006-07-14  Simon Josefsson  <jas@extundo.com>
30226
30227         * doc/gnulib.texi (Libtool and Windows): New section.
30228
30229 2006-07-12  Simon Josefsson  <jas@extundo.com>
30230
30231         * modules/gendocs (License): Fix license, approved by Karl.
30232
30233 2006-07-12  Eric Blake  <ebb9@byu.net>
30234
30235         * MODULES.html.sh: Add gendocs.
30236
30237 2006-07-11  Eric Blake  <ebb9@byu.net>
30238
30239         * modules/fdl: New module, to install doc/fdl.texi.
30240         * MODULES.html.sh: Add new section for documentation modules.
30241         * gnulib-tool: Avoid space-tab.
30242         (--doc-base): New option, to manage files from doc.
30243
30244 2006-07-11  Eric Blake  <ebb9@byu.net>
30245
30246         * m4/absolute-header.m4: Fix comments to match recent change.
30247
30248 2006-07-11  Eric Blake  <ebb9@byu.net>
30249
30250         * gnulib-tool: List --doc-base before --tests-base.
30251
30252 2006-07-11  Derek R. Price  <derek@ximbiot.com>
30253
30254         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
30255
30256 2006-07-11  Bruno Haible  <bruno@clisp.org>
30257
30258         * README: Mention where to put documentation.
30259
30260 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30261
30262         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
30263
30264 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
30265
30266         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
30267         to stdint.m4.
30268
30269 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
30270
30271         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
30272         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
30273         "no/such/file/stdint.h" when there is no such file, so that
30274         the resulting C code can be parsed by dodgy compilers.
30275         Problems reported by Bob Proulx.
30276
30277 2006-07-10  Derek R. Price  <derek@ximbiot.com>
30278
30279         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
30280         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
30281         macros into the GNU _D_EXACT_NAMLEN.
30282         * lib/savedir.c:  Likewise.
30283         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
30284
30285 2006-07-10  Derek R. Price  <derek@ximbiot.com>
30286         and Paul Eggert  <eggert@cs.ucla.edu>
30287
30288         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
30289         * m4/savedir.m4:
30290         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
30291         macros into the GNU _D_EXACT_NAMLEN.
30292
30293 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
30294
30295         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
30296         around the absolute name, to work around a problem with the HP-UX
30297         11.23 native C compiler, reported by Bob Proulx.
30298
30299 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
30300
30301         * doc/maintain.texi, make-stds.texi: Sync from
30302         <http://savannah.gnu.org/projects/gnustandards>.
30303
30304 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
30305
30306         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
30307
30308 2006-07-09  Jim Meyering  <jim@meyering.net>
30309
30310         * m4/glob.m4: Remove a doubled word in a comment.
30311
30312 2006-07-09  Jim Meyering  <jim@meyering.net>
30313
30314         * lib/argp-pv.c: Remove a doubled word in a comment.
30315         * lib/check-version.c (check_version): Likewise.
30316         * lib/javacomp.c (compile_java_class): Likewise.
30317
30318 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
30319
30320         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
30321         for the benefit of people using Autoconf 2.60.  If you want to
30322         support older Autoconf versions you can copy m4/onceonly_2_57.m4
30323         (or m4/onceonly.m4, if pre-2.57) manually.
30324
30325 2006-07-08  Jim Meyering  <jim@meyering.net>
30326
30327         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
30328         comment.
30329         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
30330         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
30331         comment.
30332
30333 2006-07-08  Jim Meyering  <jim@meyering.net>
30334
30335         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
30336
30337 2006-07-07  Simon Josefsson  <jas@extundo.com>
30338
30339         * tests/test-crc.c: Change expected crc value, the test vector
30340         were probably computed using the old broken crc.c?
30341
30342 2006-07-06  Simon Josefsson  <jas@extundo.com>
30343
30344         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
30345         now the canonical place for the M4 file).
30346
30347         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
30348         from the sys_socket dependency now.
30349
30350         * modules/inet_pton (Files): Ditto.
30351
30352         * modules/inet_ntop (Files): Ditto.
30353
30354 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
30355
30356         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
30357         not gl_PREREQ_GETUSERSHELL.
30358
30359 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30360
30361         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
30362         with only one argument, for Autoconf 2.60.
30363         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
30364         expand to nothing, so add a shell command to avoid syntax error.
30365         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
30366
30367 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30368
30369         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
30370
30371 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
30372
30373         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
30374         no longer needed.  Check for isblank decl.
30375         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
30376         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
30377         of existence.
30378
30379 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
30380
30381         * lib/getloadavg.c: Use __VMS, not VMS.
30382         * lib/getopt.c: Likewise.
30383         * lib/getpagesize.h: Likewise.
30384         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
30385         and probably does not work.
30386
30387 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
30388
30389         * lib/.cppi-disable: Add wcwidth.
30390         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
30391         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
30392         (ISGRAPH): Remove.  All uses changed to isgraph.
30393         (FOLD) [!defined _LIBC]: Remove special case.
30394         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
30395         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
30396         HAVE_ISBLANK.
30397         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
30398         case.
30399
30400 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
30401
30402         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
30403         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
30404         brackets.  Other minor changes to suppress some compiler
30405         warnings.
30406
30407 2006-07-06  Derek R. Price  <derek@ximbiot.com>
30408         and Paul Eggert  <eggert@cs.ucla.edu>
30409
30410         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
30411         of invoking obsolescent AC_HEADER_DIRENT macro.
30412         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
30413         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
30414         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
30415         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
30416         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
30417         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
30418         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
30419         * m4/readdir.m4: Remove; no longer needed.
30420
30421 2006-07-06  Derek R. Price  <derek@ximbiot.com>
30422         and Paul Eggert  <eggert@cs.ucla.edu>
30423
30424         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
30425         Don't worry about this obsolete case any more.
30426         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
30427         directories.
30428         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
30429         worry about this obsolete case any more.
30430         * lib/fts.c: Likewise.
30431         * lib/getcwd.c: Likewise.
30432         * lib/glob.h: Likewise.
30433         * lib/savedir.c: Likewise.
30434
30435 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
30436
30437         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
30438         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
30439         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
30440         needed.
30441         All uses removed.
30442         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
30443         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
30444         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
30445         needed.
30446         * m4/getdate.m4 (gl_GETDATE): Likewise.
30447         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
30448         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
30449         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
30450         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
30451         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
30452         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
30453         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
30454         needed.
30455
30456 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
30457
30458         * lib/memcasecmp.c: Include <limits.h>.
30459         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
30460         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
30461         Don't assume isdigit succeeds only on '0' through '9'.
30462
30463 2006-07-05  Eric Blake  <ebb9@byu.net>
30464
30465         * modules/getaddrinfo (Depends-on): Add snprintf.
30466
30467 2006-07-05  Eric Blake  <ebb9@byu.net>
30468
30469         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
30470         to avoid 'header present but could not be compiled' on cygwin.
30471
30472 2006-07-05  Eric Blake  <ebb9@byu.net>
30473
30474         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
30475         missing from netdb.h.
30476         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
30477
30478 2006-07-05  Derek R. Price  <derek@ximbiot.com>
30479
30480         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
30481         no longer needed.
30482         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
30483         * m4/getdate.m4 (gl_GETDATE): Likewise.
30484         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
30485         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
30486         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
30487         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
30488         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
30489
30490 2006-07-05  Derek R. Price  <derek@ximbiot.com>
30491
30492         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
30493         All uses of is_space replaced by isspace.
30494         * lib/exit.h: Don't talk about STDC_HEADERS.
30495         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
30496         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
30497         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
30498         replaced by isprint etc.
30499         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
30500         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
30501         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
30502         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
30503         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
30504         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
30505
30506 2006-07-05  Bruno Haible  <bruno@clisp.org>
30507
30508         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
30509         the function exists, before testing against AIX.
30510         Reported by Martin Lambers <marlam@marlam.de>.
30511
30512 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
30513
30514         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
30515         From Mark D. Baushke.
30516
30517 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
30518
30519         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
30520         to the absolute name, not just one, to bypass Sun C 5.8's
30521         "warning: #include of /usr/include/... may be non-portable".
30522
30523 2006-07-04  Eric Blake  <ebb9@byu.net>
30524
30525         * modules/dirname-tests: New test module.
30526         * tests/test-dirname.c: New file, replacing dirname.c
30527         TEST_DIRNAME section that was recently deleted.
30528
30529 2006-07-04  Bruno Haible  <bruno@clisp.org>
30530
30531         Assume ANSI C header files and <ctype.h> functions.
30532         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
30533         (mbsnwidth): Use isprint, iscntrl instead.
30534
30535 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
30536
30537         Merge from coreutils.
30538         * MODULES.html.sh: Add xstrtold.
30539         * modules/xstrtold: New file.
30540         * modules/cycle-check (Files): Add lib/same-inode.h.
30541         * modules/dirname (Files): Add m4/double-slash-root.m4.
30542         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
30543         * modules/mkdir-p (Files): Add lib/same-inode.h.
30544         * modules/same (Files): Add lib/same-inode.h.
30545
30546 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
30547
30548         * m4/absolute-header.m4: Renamed from full-header-path.m4.
30549         This is to keep the terminology clean; POSIX talks about
30550         "absolute pathnames", not "full pathnames", but the GNU
30551         Coding Standards say to use "path" for something else;
30552         so use "absolute" to keep both sides happy.
30553         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
30554         Set gl_absolute_header, not gl_full_header_path.
30555         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
30556         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
30557         All uses changed.
30558
30559         Merge from coreutils.
30560
30561         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30562
30563         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
30564         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
30565         want to require the building of c-strtod.o.
30566         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
30567         needs -lm directly.
30568         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
30569
30570         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
30571
30572         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
30573         --as-needed option if available.  Problem reported by Albert Chin in
30574         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
30575         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
30576         cc merely issues a bunch of annoying warnings for --as-needed
30577         (this problem was reported by Bob Proulx).  Also, try linking with
30578         -lm to detect a bug in binutils 2.16 (this problem was reported
30579         by Ralf Wildenhues).
30580
30581         2006-06-18  Jim Meyering  <jim@meyering.net>
30582
30583         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
30584         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
30585         macro.
30586         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
30587         also check for glibc-2.4's abort-inducing bug.
30588
30589         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
30590         Low-probability clean-up should be to use rmdir to get rid of
30591         the just-created directory, not unlink.
30592
30593         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
30594         configure fail, and request a bug report to inform us about it.
30595         Add a comment that, barring reports to the contrary, in 2007 we'll
30596         assume ftruncate is universally available.
30597
30598         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
30599
30600         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
30601
30602         2006-03-12  Jim Meyering  <jim@meyering.net>
30603
30604         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
30605         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
30606         * m4/same.m4 (gl_SAME): Likewise.
30607         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
30608
30609         2006-03-11  Eric Blake  <ebb9@byu.net>
30610
30611         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
30612         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
30613         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
30614         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
30615
30616 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
30617
30618         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
30619         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
30620         reported by Mark D. Baushke, one in
30621         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
30622
30623         Merge from coreutils.
30624
30625         * lib/.cppi-disable: Add stdint_.h.
30626         * lib/.cvsignore: Add stdint.h.
30627
30628         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30629
30630         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
30631         both double and long double versions.
30632         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
30633         * lib/xstrtold.c: New file.
30634         * lib/xstrtod.h (xstrtold): New decl.
30635
30636         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
30637
30638         * lib/filemode.c (setst): Remove.
30639         (strmode): Rewrite to avoid setst.  This makes the code shorter,
30640         (arguably) clearer, and the generated code is a bit smaller on my
30641         Debian GNU/Linux stable x86 host.
30642
30643         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
30644
30645         * lib/filemode.c: Include "filemode.h" first, to test the interface.
30646         Assume that filemode.h includes sys/types.h and sys/stat.h.
30647         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
30648         (ftypelet): Reorder to put common cases first, for efficiency.
30649         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
30650         to do 'M'.
30651         (strmode): Renamed from mode_string, and now stores 12 bytes instead
30652         of 10, for compatibility with FreeBSD.  All callers changed.
30653         (filemodestring): Now stores 12 bytes instead of 10, and sets file
30654         types that can't be deduced solely from st_mode.  First arg is now a
30655         const pointer.
30656         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
30657         (strmode): Renamed from mode_string.
30658         (filemodestring): New decl.
30659         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
30660         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
30661         needed.
30662         (S_ISPORT, S_ISWHT): New macros, if not already defined.
30663
30664         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
30665
30666         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
30667         fsusage.h now does that.  Include fsusage.h first, to test interface.
30668         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
30669         at most one method (the old code could have generated decls that
30670         didn't conform to C89, not that this was ever exercised).
30671         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
30672
30673         2006-03-19  Jim Meyering  <jim@meyering.net>
30674
30675         Work even in a chroot where d_ino values for entries in "/"
30676         don't match the stat.st_ino values for the same names.
30677         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
30678         number, iterate through all entries again, using lstat instead.
30679         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
30680         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
30681
30682         * lib/getcwd.c (__getcwd): Clarify a comment.
30683         Use memcpy in place of a call to strcpy.
30684
30685         2006-03-12  Jim Meyering  <jim@meyering.net>
30686
30687         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
30688         matches that of the current directory (which we're about to chdir ".."
30689         out of), then save the dev-ino of the parent, instead.
30690
30691         * lib/same-inode.h (SAME_INODE): New file/macro.
30692         * lib/chdir-safer.c (SAME_INODE): Remove definition.
30693         Include "same-inode.h", instead.
30694         * lib/same.c: Likewise.
30695         * lib/cycle-check.h: Include "same-inode.h".
30696         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
30697         * lib/cycle-check.c (SAME_INODE): Remove definition.
30698         * lib/root-dev-ino.h: Include "same-inode.h".
30699
30700         2006-03-11  Eric Blake  <ebb9@byu.net>
30701
30702         * lib/same.c (same_name): s/base_name/last_component/
30703         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
30704         * lib/filenamecat.c (file_name_concat): Likewise.
30705
30706         2006-03-11  Eric Blake  <ebb9@byu.net>,
30707                     Paul Eggert  <eggert@cs.ucla.edu>
30708
30709         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
30710         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
30711         drive prefix.
30712         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
30713         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
30714         (last_component): New method.
30715         * lib/dirname.c (dir_len): Determine when drive letters need a
30716         subsequent slash.  Preserve // when it is special.
30717         (dir_name): Don't append dot when drive letter is absolute.
30718         [TEST_DIRNAME]: Move into a full-blown gnulib test.
30719         * lib/basename.c (base_name): New semantics - malloc the result.
30720         Preserve // when it is special.  Preserve relative files that look
30721         like drive letters.
30722         (base_len): Preserve // when it is special.
30723         (last_component): New method, similar to old base_name semantics.
30724         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
30725         base_name.  Strip redundant slashes from ///.
30726
30727 2006-07-03  Jim Meyering  <jim@meyering.net>
30728
30729         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
30730         macro is used before the first cycle_check call.
30731
30732 2006-07-03  Eric Blake  <ebb9@byu.net>
30733
30734         * modules/dirname (Depends-on): Add xstrndup.
30735
30736 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30737
30738         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
30739         test cases, so that config.log is a bit easier to follow.
30740
30741 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30742
30743         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
30744         both are 64 bits, since this seems to be the tradition, and this
30745         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
30746         we ever run into a host that prefers long long to long in this
30747         case, we'll need another configure-time test.  Problem reported by
30748         Jim Meyering.
30749
30750 2006-07-02  Eric Blake  <ebb9@byu.net>
30751
30752         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
30753
30754 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
30755
30756         * modules/inttypes (Depends-on): No longer depends on stdint.
30757         * modules/stdint (Description): Say more about assumptions.
30758         Say that the fast types might differ.  Say macros are used.
30759         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
30760         (Makefile.am): Revise list of substituted symbols to match
30761         new stdint.m4.
30762         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
30763         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
30764         * tests/test-stdint.c (verify_same_types)
30765         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
30766         the code conforms to C99/C89.
30767         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
30768         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
30769
30770 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
30771
30772         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
30773         but fix a bug, by requiring at least 64 bits.
30774         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
30775         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
30776         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
30777         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
30778
30779         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
30780         changes.  Make 2.59 a prerequisite.  Check and substitute for
30781         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
30782         inttypes.h.  Do not use special include files; just use the
30783         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
30784         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
30785         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
30786         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
30787         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
30788         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
30789         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
30790         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
30791         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
30792         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
30793         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
30794         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
30795         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
30796         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
30797         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
30798         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
30799         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
30800         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
30801         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
30802         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
30803         WINT_MAX.  Check for C99 conformance more strictly, by detecting
30804         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
30805         not check for things that C99 does not require, e.g., int8_t.  If
30806         a test isn't needed unless <stdint.h> isn't working, and is
30807         unlikely to be needed for any other reason, then don't do it
30808         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
30809         size_t, since we assume C89 freestanding at least.  Do not check
30810         for sig_atomic_t, wchar_t, or wint_t, since the code now does
30811         the right thing even if the types are not defined.  Instead use:
30812         (gl_STDINT_TYPE_PROPERTIES): New macro.
30813         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
30814         testing whether <sys/types.h> clashes, as Autoconf does this for
30815         us now.  All uses removed.
30816         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
30817         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
30818         (gl_CHECK_TYPE_SAME):
30819         Remove; no longer needed.
30820         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
30821         exists, since we'll return 0 anyway in that case.
30822         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
30823
30824 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
30825
30826         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
30827         possible collision with system files.
30828         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
30829         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
30830         WCHAR_MIN and WCHAR_MAX in this case.
30831         (<stddef.h>): Do not include; no longer needed.
30832         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
30833         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
30834         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
30835         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
30836         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
30837         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
30838         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
30839         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
30840         !defined(__c99))]: Include in this case too, since it's harmless
30841         now.
30842         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
30843         dangerous to do so.
30844         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
30845         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
30846         (_STDINT_MIN, _STDINT_MAX): New macros.
30847         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
30848         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
30849         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
30850         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
30851         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
30852         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
30853         macros, not typedefs; this simplifies things quite a bit.
30854         Use long int for all types narrower than int64_t.
30855         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
30856         Define in terms of long long int or int64_t or long int,
30857         not int64_t or int32_t.  This saves some compile-time testing.
30858         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
30859         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
30860         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
30861         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
30862         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
30863         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
30864         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
30865         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
30866         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
30867         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
30868         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
30869         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
30870         undef any previous version and define our own version, for
30871         simplicity and consistency with the new macros for types.
30872         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
30873         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
30874         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
30875         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
30876         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
30877         @WINT_T_SUFFIX@ to keep things simple here.
30878         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
30879         Simplify by assuming typical 8/16/32/64 host, since we're
30880         already doing that elsewhere anyway.
30881         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
30882         and assume long long int is 64 bits if available.  This
30883         speeds up 'configure'.
30884
30885 2006-07-01  Eric Blake  <ebb9@byu.net>
30886
30887         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
30888         Reported by Andreas Buening.
30889
30890 2006-07-01  Eric Blake  <ebb9@byu.net>
30891
30892         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
30893
30894 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
30895
30896         * lib/getaddrinfo.c: fixed typo
30897
30898 2006-06-29  Jim Meyering  <jim@meyering.net>
30899
30900         * modules/strftime (Maintainer): Add my name, since with the
30901         FPRINTFTIME changes strftime.c has forked from glibc.
30902
30903 2006-06-29  Eric Blake  <ebb9@byu.net>
30904
30905         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
30906
30907 2006-06-29  Eric Blake  <ebb9@byu.net>
30908
30909         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
30910
30911 2006-06-29  Eric Blake  <ebb9@byu.net>
30912
30913         * lib/stat_.h: New file.
30914
30915 2006-06-29  Eric Blake  <ebb9@byu.net>
30916
30917         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
30918         unused static function.
30919
30920 2006-06-29  Eric Blake  <ebb9@byu.net>
30921
30922         * doc/functions.texi (Function Portability): Document missing lstat
30923         on mingw.
30924
30925 2006-06-29  Eric Blake  <ebb9@byu.net>
30926
30927         * MODULES.html.sh: Add sys_stat.
30928         * modules/sys_stat: New module.
30929         * modules/mkstemp (Depends-on): Add sys_stat.
30930
30931 2006-06-29  Derek R. Price  <derek@ximbiot.com>
30932
30933         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
30934
30935 2006-06-29  Derek R. Price  <derek@ximbiot.com>
30936
30937         * m4/c-bs-a.m4: Removed.
30938
30939 2006-06-29  Derek R. Price  <derek@ximbiot.com>
30940
30941         * lib/strftime.c: Assume strftime() exists.
30942
30943 2006-06-29  Derek Price  <derek@ximbiot.com>
30944
30945         * modules/c-bs-a: Removed - \a is C89.
30946         * MODULES.html.sh: Remove c-bs-a.
30947
30948 2006-06-29  Bruno Haible  <bruno@clisp.org>
30949
30950         * modules/wcwidth (License): Change to LGPL.
30951
30952 2006-06-28  Simon Josefsson  <jas@extundo.com>
30953
30954         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
30955         on _WIN32.
30956
30957         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
30958         getnameinfo.
30959
30960 2006-06-28  Simon Josefsson  <jas@extundo.com>
30961
30962         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
30963
30964 2006-06-28  Simon Josefsson  <jas@extundo.com>
30965
30966         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
30967         functions there.  It will succeed on Windows XP, but on Windows
30968         2000 and (presumably) earlier, it will fail, and use the internal
30969         re-implementation.
30970         (use_win32_p): New function.
30971         (getaddrinfo): Use strtoul on servname, to support numeric ports.
30972         Support AI_NUMERICSERV to disable getservbyname.
30973         (getnameinfo): New function, only supports
30974         NI_NUMERICHOST|NI_NUMERICSERV for now.
30975
30976         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
30977         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
30978         getnameinfo.
30979
30980 2006-06-28  Eric Blake  <ebb9@byu.net>
30981
30982         * modules/wcwidth: New file.
30983         * modules/mbchar (Depends-on): Add wcwidth.
30984         * modules/mbswidth (Depends-on): Add wcwidth.
30985         * MODULES.html.sh: Add wcwidth.
30986
30987 2006-06-28  Eric Blake  <ebb9@byu.net>
30988
30989         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
30990         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
30991
30992 2006-06-28  Eric Blake  <ebb9@byu.net>
30993
30994         * lib/xvasprintf.h: Fix comments.
30995
30996 2006-06-28  Eric Blake  <ebb9@byu.net>
30997
30998         * lib/mbchar.h (wcwidth): Include wcwidth.h.
30999         * lib/mbswidth.c (wcwidth): Move from here...
31000         * lib/wcwidth.h: ...to this new file.
31001
31002 2006-06-28  Derek R. Price  <derek@ximbiot.com>
31003
31004         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
31005
31006         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
31007         it's obsolete.
31008         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
31009
31010 2006-06-28  Derek R. Price  <derek@ximbiot.com>
31011
31012         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
31013         Autoconf 2.60 says this stuff was obsolete.
31014
31015 2006-06-28  Bruno Haible  <bruno@clisp.org>
31016
31017         * modules/wcwidth (Files): Add m4/wchar_t.m4.
31018
31019 2006-06-28  Bruno Haible  <bruno@clisp.org>
31020
31021         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
31022         gt_TYPE_WCHAR_T.
31023
31024 2006-06-28  Bruno Haible  <bruno@clisp.org>
31025
31026         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
31027         declaration for wcwidth.
31028         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
31029
31030 2006-06-28  Bruno Haible  <bruno@clisp.org>
31031
31032         * lib/mkdtemp.c [MINGW]: Include <io.h>.
31033         (mkdir): Define using _mkdir.
31034
31035 2006-06-28  Bruno Haible  <bruno@clisp.org>
31036
31037         * lib/getaddrinfo.h: Fix POSIX URL.
31038         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
31039         _WIN32.
31040         (use_win32_p): Make static.
31041         (getaddrinfo): Reject service name if it is empty or does not consist
31042         solely of decimal digits, or if its value is > 65535.
31043         (getnameinfo): Remove useless casts.
31044
31045 2006-06-27  Simon Josefsson  <jas@extundo.com>
31046
31047         * modules/sys_select: New file, suggested by Bruno Haible, Paul
31048         Eggert and Martin Lambers.
31049
31050 2006-06-27  Simon Josefsson  <jas@extundo.com>
31051
31052         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
31053         Eggert and Martin Lambers.
31054
31055 2006-06-27  Bruno Haible  <bruno@clisp.org>
31056
31057         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
31058         result to 0, not to empty.
31059         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
31060
31061 2006-06-27  Bruno Haible  <bruno@clisp.org>
31062
31063         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
31064
31065 2006-06-26  Simon Josefsson  <jas@extundo.com>
31066
31067         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
31068         present.
31069
31070 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
31071
31072         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
31073         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
31074         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
31075
31076 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
31077
31078         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
31079
31080 2006-06-26  Bruno Haible  <bruno@clisp.org>
31081
31082         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
31083
31084 2006-06-26  Bruno Haible  <bruno@clisp.org>
31085
31086         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
31087
31088 2006-06-26  Bruno Haible  <bruno@clisp.org>
31089
31090         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
31091         SGI C compiler in pre-C99 mode.
31092         Suggested by Mark D. Baushke and Larry Jones.
31093
31094 2006-06-26  Bruno Haible  <bruno@clisp.org>
31095
31096         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
31097         WCHAR_MAX.
31098         Reported by Mark D. Baushke and Larry Jones.
31099
31100 2006-06-26  Bruno Haible  <bruno@clisp.org>
31101
31102         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
31103         in pre-C99 mode.
31104         Suggested by Mark D. Baushke and Larry Jones.
31105
31106 2006-06-23  Simon Josefsson  <jas@extundo.com>
31107             Bruno Haible  <bruno@clisp.org>
31108
31109         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
31110         Emit mostlyclean-local rule.
31111         (func_emit_tests_Makefile_am): Likewise.
31112         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
31113
31114 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
31115
31116         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
31117
31118 2006-06-23  Bruno Haible  <bruno@clisp.org>
31119
31120         * tests/test-stdint.c: Update to match ISO C 99 Technical
31121         Corrigendum 1.
31122
31123 2006-06-23  Bruno Haible  <bruno@clisp.org>
31124
31125         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
31126
31127 2006-06-23  Bruno Haible  <bruno@clisp.org>
31128
31129         * lib/stdint_.h: Treat IRIX like OpenBSD.
31130
31131 2006-06-23  Bruno Haible  <bruno@clisp.org>
31132
31133         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
31134         ISO C 99 Technical Corrigendum 1.
31135
31136 2006-06-22  Simon Josefsson  <jas@extundo.com>
31137
31138         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
31139         MinGW.
31140
31141 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
31142
31143         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
31144         needed.  Some compiler complained about some of them.  Problem reported
31145         by Larry Jones in
31146         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
31147
31148 2006-06-21  Simon Josefsson  <jas@extundo.com>
31149
31150         * tests/test-getaddrinfo.c: New file.
31151
31152         * modules/getaddrinfo-tests: New file.
31153
31154         * MODULES.html.sh: Add inet_pton.
31155
31156         * modules/inet_pton: New file.
31157
31158 2006-06-21  Simon Josefsson  <jas@extundo.com>
31159
31160         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
31161         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
31162         of using the (limited) gnulib implementation on Windows XP.
31163
31164         * m4/inet_pton.m4: New file.
31165
31166 2006-06-21  Simon Josefsson  <jas@extundo.com>
31167
31168         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
31169         variable.
31170
31171         * lib/socket_.h: Don't define WINVER.
31172
31173         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
31174         slightly modified to work in gnulib.
31175
31176 2006-06-21  Simon Josefsson  <jas@extundo.com>
31177
31178         * doc/gnulib.texi (Windows sockets): Add.
31179
31180 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
31181
31182         * lib/read-file.c (fread_file): Start with buffer allocation of
31183         0 bytes rather than 1 byte; this simplifies the code.
31184         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
31185         code to free buffer and save/restore errno.
31186         (internal_read_file): Remove unused local.
31187
31188 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
31189
31190         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
31191         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
31192         Problem reported by Denis Excoffier in
31193         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
31194
31195 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
31196
31197         * modules/sys_socket, modules/socklen: Include sys/types since
31198         FreeBSD 4.x's sys/socket.h needs it.
31199
31200 2006-06-19  Simon Josefsson  <jas@extundo.com>
31201
31202         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
31203
31204 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
31205
31206         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
31207
31208 2006-06-19  Bruno Haible  <bruno@clisp.org>
31209
31210         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
31211         and FULL_PATH_INTTYPES_H in angle brackets.
31212         Reported by Mark D. Baushke <mdb@gnu.org>.
31213
31214 2006-06-17  Eric Blake  <ebb9@byu.net>
31215
31216         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
31217         errno.
31218
31219 2006-06-17  Bruno Haible  <bruno@clisp.org>
31220
31221         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
31222         <sys/inttypes.h>.
31223
31224 2006-06-17  Bruno Haible  <bruno@clisp.org>
31225
31226         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
31227         whether errno is declared. Assume <errno.h> declares errno.
31228
31229 2006-06-17  Bruno Haible  <bruno@clisp.org>
31230
31231         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
31232
31233 2006-06-17  Bruno Haible  <bruno@clisp.org>
31234
31235         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
31236         problem on Solaris 2.5.1.
31237
31238 2006-06-16  Eric Blake  <ebb9@byu.net>
31239
31240         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
31241         * lib/unicodeio.c [!defined errno]: Likewise.
31242         * lib/strtol.c [!defined errno]: Likewise.
31243         * lib/strtod.c [!defined errno]: Likewise.
31244
31245 2006-06-15  Eric Blake  <ebb9@byu.net>
31246
31247         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
31248
31249 2006-06-15  Eric Blake  <ebb9@byu.net>
31250
31251         * config/srclist.txt (ssize_t.m4): Lose sync.
31252
31253 2006-06-15  Bruno Haible  <bruno@clisp.org>
31254
31255         * modules/stdint (Files): Include m4/full-header-path.m4,
31256         m4/size_max.m4, m4/wchar_t.m4.
31257         (Makefile.am): Many more substitutions.
31258         * modules/stdint-tests: New file.
31259         * tests/test-stdint.c: New file.
31260
31261 2006-06-15  Bruno Haible  <bruno@clisp.org>
31262
31263         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
31264         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
31265         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
31266         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
31267         gl_CHECK_TYPE_SAME): New macros.
31268
31269 2006-06-15  Bruno Haible  <bruno@clisp.org>
31270
31271         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
31272
31273 2006-06-15  Bruno Haible  <bruno@clisp.org>
31274
31275         * lib/stdint_.h: Rewritten to be fully auto-configured.
31276         Fixes bug on HP-UX/IA64.
31277
31278 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
31279
31280         * lib/getdate.y (__attribute__): Don't define if already defined.
31281         Problem reported by Larry Jones.
31282         * lib/utimens.c (__attribute__): Likewise.
31283
31284 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
31285
31286         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
31287         reported by Andreas Schwab.
31288
31289 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31290             Bruno Haible  <bruno@clisp.org>
31291
31292         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
31293         check for the declaration of strnlen and a run test that exposes the
31294         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
31295         rpl_strndup.
31296
31297 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31298             Bruno Haible  <bruno@clisp.org>
31299
31300         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
31301
31302 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31303
31304         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
31305         compile test, for Tru64 4.0D.
31306
31307 2006-05-28  Karl Berry  <karl@gnu.org>
31308
31309         * config/srclist.txt (printf-args.c): lose sync.
31310
31311 2006-05-26  Martin Lambers  <marlam@marlam.de>
31312
31313         * lib/getpass.c: Updates the test for the native W32 API, and adds
31314         missing includes, thus fixing compilation warnings.
31315
31316 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
31317
31318         * lib/exclude.c (exclude_fnmatch): New function.
31319         (excluded_file_name): Call exclude_fnmatch.
31320         * lib/exclude.h (excluded_file_name): New prototype
31321
31322 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
31323
31324         * lib/tempname.c (small_open, large_open): New macros.
31325         (__open, __open64) [!_LIBC]: Remove.
31326         (__gen_tempname): Use small_open and large_open instead of __open
31327         and __open64.  This fixes a portability bug on HP-UX 11.11i
31328         reported by Simon Wing-Tang in
31329         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
31330
31331 2006-05-24  Bruno Haible  <bruno@clisp.org>
31332
31333         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
31334         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
31335         Reported by Thorsten Maerz <torte@netztorte.de> via
31336         Aaron Stone <aaron@serendipity.cx>.
31337
31338 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31339
31340         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
31341         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
31342         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
31343         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
31344         not really conditional on the cache.
31345         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
31346
31347 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31348
31349         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
31350         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
31351         (my_usleep): Don't mishandle maximum value.
31352
31353 2006-05-19  Jim Meyering  <jim@meyering.net>
31354
31355         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
31356
31357 2006-05-17  Bruno Haible  <bruno@clisp.org>
31358
31359         Cygwin portability.
31360         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
31361
31362 2006-05-17  Bruno Haible  <bruno@clisp.org>
31363
31364         * lib/stdint_.h: Fix recognition of Cygwin.
31365
31366 2006-05-15  Bruno Haible  <bruno@clisp.org>
31367
31368         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
31369         on libtool patch by Ralf Wildenhues.
31370
31371 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
31372
31373         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
31374         test for C99 conformance; (bool) 0.5 is an integer constant
31375         expression, but (bool) -0.5 is not.  Problem reported by Fedor
31376         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
31377
31378 2006-05-11  Simon Josefsson  <jas@extundo.com>
31379
31380         * m4/xvasprintf.m4: Fix obvious typo.
31381
31382 2006-05-11  Jim Meyering  <jim@meyering.net>
31383
31384         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
31385         James Lemley.
31386
31387 2006-05-10  Simon Josefsson  <jas@extundo.com>
31388
31389         * lib/md4.c: Typo fix, update copyright years.
31390         (K1, K2): Don't use L because it turn computations into 64-bit on
31391         64-bit platforms.
31392
31393 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
31394
31395         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
31396         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
31397         unwanted sign propagation, e.g., on hosts with 64-bit int.
31398         There still are some problems with reeelly weird theoretical hosts
31399         (e.g., 33-bit int) but it's not worth worrying about now.
31400         * lib/sha1.c (rol): Likewise.
31401         (K1, K2, K3, K4): Remove unnecessary L suffix.
31402
31403 2006-05-10  Bruno Haible  <bruno@clisp.org>
31404
31405         * lib/des.c: Cast to avoid warnings.
31406
31407 2006-05-09  Bruno Haible  <bruno@clisp.org>
31408
31409         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
31410         (Depends-on): Depend also on xsize, stdarg.
31411         (configure.ac): Add gl_XVASPRINTF.
31412
31413 2006-05-09  Bruno Haible  <bruno@clisp.org>
31414
31415         * m4/xvasprintf.m4: New file.
31416
31417 2006-05-09  Bruno Haible  <bruno@clisp.org>
31418
31419         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
31420         (EOVERFLOW): Define fallback value.
31421         (xstrcat): New function.
31422         (xvasprintf): Recognize the special case of a string concatenation.
31423
31424 2006-05-08  Eric Blake  <ebb9@byu.net>
31425
31426         * gnulib-tool (func_version): Base copyright year on CVS date.
31427         (func_emit_copyright_notice): New function.
31428         (func_emit_lib_Makefile_am): Use it.
31429         (func_emit_tests_Makefile_am): Likewise.
31430         (func_import): Likewise.
31431
31432 2006-05-08  Bruno Haible  <bruno@clisp.org>
31433
31434         * modules/stdarg: New file.
31435         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
31436
31437 2006-05-08  Bruno Haible  <bruno@clisp.org>
31438
31439         * m4/stdarg.m4: New file, from GNU gettext.
31440
31441 2006-05-08  Bruno Haible  <bruno@clisp.org>
31442
31443         * config/srclist.txt (build-aux/config.rpath): different from latest
31444         release.
31445
31446 2006-05-08  Bruno Haible  <bruno@clisp.org>
31447
31448         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
31449
31450 2006-05-05  Jim Meyering  <jim@meyering.net>
31451
31452         * m4/warning.m4: New file, derived from bison's file by the same name.
31453
31454 2006-05-03  Bruno Haible  <bruno@clisp.org>
31455
31456         * lib/stdint_.h: Shorter URL.
31457         * lib/inttypes.h: Likewise.
31458
31459 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
31460
31461         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
31462
31463 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
31464
31465         * lib/verify.h: Document the internals better.  Most of this change
31466         was written by Bruno Haible.
31467
31468 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
31469
31470         * doc/verify.texi: New file, partly based on a proposal by
31471         Bruno Haible.
31472
31473 2006-05-02  Bruno Haible  <bruno@clisp.org>
31474
31475         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
31476         test from here...
31477         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
31478
31479 2006-04-29  Bruno Haible  <bruno@clisp.org>
31480
31481         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
31482         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
31483
31484 2006-04-29  Bruno Haible  <bruno@clisp.org>
31485
31486         * gnulib-tool: Make --update option actually work.
31487
31488 2006-04-29  Bruno Haible  <bruno@clisp.org>
31489
31490         * doc/gcd.texi: New file.
31491         * doc/gnulib.texi: Include it.
31492
31493 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
31494
31495         * lib/getdate.y (get_date): When adding relative date, start with the
31496         initial time, not with the result of the first mktime call.
31497
31498 2006-04-25  Bruno Haible  <bruno@clisp.org>
31499
31500         * gnulib-tool (func_import): Output the include directives in three
31501         blocks, sorted separately.
31502         Reported by Ben Pfaff <blp@cs.stanford.edu>.
31503
31504 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
31505
31506         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
31507         to define main with arguments, for C++.  Reported by Eric Blake.
31508         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
31509         Prefer 'int main ()' to 'int main (void)', for C++.
31510         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
31511         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
31512         for 'main', for C99 and C++.
31513
31514 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
31515
31516         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
31517         Don't assume that exit status -1 is valid.
31518         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
31519         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
31520         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
31521         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
31522         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
31523         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
31524         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
31525         functions can be used without declaring them, or that you can
31526         exit with status -1.
31527         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
31528
31529 2006-04-24  Karl Berry  <karl@gnu.org>
31530
31531         * config/srclist.txt (longdouble.m4): sync lost.
31532
31533 2006-04-24  Eric Blake  <ebb9@byu.net>
31534
31535         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
31536
31537 2006-04-24  Bruno Haible  <bruno@clisp.org>
31538
31539         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
31540         poll() implementation in AIX.
31541         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31542
31543 2006-04-24  Bruno Haible  <bruno@clisp.org>
31544
31545         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
31546         assigned exactly once.
31547
31548 2006-04-23  Claudio Fontana  <claudio@gnu.org>
31549             Bruno Haible  <bruno@clisp.org>
31550
31551         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
31552         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
31553         for AM_CPPFLAGS.
31554
31555 2006-04-23  Bruno Haible  <bruno@clisp.org>
31556
31557         * modules/copy-file: Depend on unistd.
31558         * modules/execute: Likewise.
31559         * modules/fatal-signal: Likewise.
31560         * modules/findprog: Likewise.
31561         * modules/mkdtemp : Likewise.
31562         * modules/pipe: Likewise.
31563         * modules/wait-process: Likewise.
31564
31565 2006-04-23  Bruno Haible  <bruno@clisp.org>
31566
31567         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
31568         condition was already detected.
31569         Reported by Ben Pfaff <blp@cs.stanford.edu>.
31570
31571 2006-04-23  Bruno Haible  <bruno@clisp.org>
31572
31573         * lib/copy-file.c: Include <unistd.h> unconditionally.
31574         * lib/execute.c: Likewise.
31575         * lib/fatal-signal.c: Likewise.
31576         * lib/findprog.c: Likewise.
31577         * lib/mkdtemp.c: Likewise.
31578         * lib/pipe.h: Likewise.
31579         * lib/pipe.c: Likewise.
31580         * lib/wait-process.h: Likewise.
31581
31582 2006-04-23  Bruno Haible  <bruno@clisp.org>
31583
31584         * gnulib-tool (func_usage): Fix --import description. Document
31585         --update.
31586         (func_import): Create temporary file in a temporary directory, if
31587         --dry-run is specified. Silence errors from 'grep' when there are no
31588         m4 files in $m4dir.
31589         (func_create_testdir): Silence errors from 'grep' when there are no
31590         m4 files in $m4dir.
31591         Reported by Karl Berry <karl@freefriends.org>.
31592
31593 2006-04-20  Bruno Haible  <bruno@clisp.org>
31594
31595         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
31596         one argument, so that the code will be portable to Autoconf 2.60.
31597         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
31598         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
31599         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
31600
31601 2006-04-19  Derek Price  <derek@ximbiot.com>
31602             Eric Blake  <ebb9@byu.net>
31603
31604         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
31605         rather than "/full/path.h".  Update comment to match.  Shorten &
31606         generalize m4_translit call via AS_TR_CPP.
31607
31608 2006-04-19  Derek Price  <derek@ximbiot.com>
31609             Eric Blake  <ebb9@byu.net>
31610
31611         * lib/inttypes.h: Correct grammar in comment.
31612
31613 2006-04-18  Derek Price  <derek@ximbiot.com>
31614             Paul Eggert  <eggert@cs.ucla.edu>
31615
31616         * modules/inttypes: New file.
31617         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
31618
31619 2006-04-18  Derek Price  <derek@ximbiot.com>
31620             Paul Eggert  <eggert@cs.ucla.edu>
31621
31622         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
31623         New files.
31624
31625 2006-04-18  Derek Price  <derek@ximbiot.com>
31626             Paul Eggert  <eggert@cs.ucla.edu>
31627
31628         * lib/inttypes.h: New file.
31629         * lib/strtoimax.c: Assume <inttypes.h>.
31630
31631 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31632
31633         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
31634         isn't mounted.  Problem reported by Kir Kolyshkin.
31635
31636 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
31637
31638         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
31639         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
31640         Derek R. Price.
31641         * lib/regex.h (RE_DUP_MAX): Update comment to match current
31642         implementation.
31643
31644 2006-04-12  Eric Blake  <ebb9@byu.net>
31645
31646         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
31647         is now done automatically by the corresponding Autoconf macro.
31648
31649 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
31650
31651         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
31652         time_r.h.
31653
31654 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31655
31656         Merge regex changes from libc, removing some of our
31657         POSIX-conformance changes that were rejected and redoing them in a
31658         less-intrusive way.
31659
31660         * lib/regcomp.c (re_compile_internal, init_dfa):
31661         Length arg is now size_t, not Idx.  All uses changed.
31662         (peek_token): Forward decl now says internal_function.
31663         (__re_error_msgid, __re_error_msgid_idx):
31664         Now static rather than extern with attribute_hidden.
31665         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
31666         For some reason libc prefers K&R style defns for external functions.
31667         (regerror) [!defined _LIBC]: Likewise.
31668         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
31669         (seek_collating_symbol_entry, lookup_collation_sequence_value):
31670         (build_range_exp, build_collating_symbol):
31671         Use K&R-style defn.
31672         (re_compile_fastmap): Use '\0' to memset, not 0.
31673         (utf8_sb_map): Make the calculations more obvious.
31674         (init_dfa, parse_bracket_exp, build_charclass_op):
31675         Call calloc and cast result, as glibc does.
31676         (init_word_char, fetch_token, peek_token, peek_token_bracket):
31677         (build_range_exp, build_collating_symbol):
31678         Now internal functions.
31679
31680         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
31681
31682         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
31683         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
31684         Don't depend on VMS; depend on __VMS instead, for POSIX
31685         namespace cleanness.
31686         (regoff_t): Define to ssize_t, not long int.
31687
31688         Remove the REG_ macros named below.  Instead, make the old names
31689         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
31690         __USE_GNU_REGEX.
31691         (REG_BACKSLASH_ESCAPE_IN_LISTS):
31692         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
31693         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
31694         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
31695         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
31696         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
31697         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
31698         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
31699         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
31700         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
31701         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
31702         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
31703         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
31704         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
31705         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
31706         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
31707         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
31708         (REG_NREGS):
31709         Remove.  All uses replaced by the old RE_* names.
31710         (RE_BACKSLASH_ESCAPE_IN_LISTS):
31711         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
31712         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
31713         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
31714         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
31715         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
31716         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
31717         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
31718         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
31719         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
31720         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
31721         Don't bother having these macros be independent of each others'
31722         values, since they no longer exist in the POSIX name space.
31723
31724         Rename the following member names back to their old names,
31725         unless !__USE_GNU_REGEX.  All uses changed back.
31726         (buffer): Renamed from re_buffer.
31727         (allocated): Renamed from re_allocated.
31728         (used): Renamed from re_used.
31729         (syntax): Renamed from re_syntax.
31730         (fastmap): Renamed from re_fastmap.
31731         (translate): Renamed from re_translate.
31732         (can_be_null): Renamed from re_can_be_null.
31733         (regs_allocated): Renamed from re_regs_allocated.
31734         (fastmap_accurate): Renamed from re_fastmap_accurate.
31735         (no_sub): Renamed from re_no_sub.
31736         (not_bol): Renamed from re_not_bol.
31737         (not_eol): Renamed from re_not_eol.
31738         (newline_anchor): Renamed from re_newline_anchor.
31739         (num_regs): Renamed from rm_num_regs.
31740         (start): Renamed from rm_start.
31741         (end): Renamed from rm_end.
31742
31743         (free_state): Move up a bit.
31744
31745         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
31746         #define to be empty.
31747         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
31748         when that is what is intended.
31749         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
31750         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
31751         (MAX): New macro.
31752         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
31753         All uses changed back to re_malloc, etc.  It's now the caller's
31754         responsibility to check for overflow; all callers changed.
31755         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
31756         (re_x2nrealloc): Remove.
31757         (free_state): Remove decl.
31758
31759         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
31760         (re_set_registers, re_exec):
31761         Use K&R-style defn.
31762
31763         2006-01-31  Roland McGrath  <roland@redhat.com>
31764
31765         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
31766         Reported by Mike Frysinger <vapier@gentoo.org>.
31767
31768         2006-01-15  Andreas Jaeger  <aj@suse.de>
31769
31770         [BZ #1950]
31771         * lib/regex_internal.c (re_string_reconstruct): Adjust for
31772         build_wcs_upper_buffer change.
31773         (build_wcs_upper_buffer): Change return type.
31774
31775         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
31776
31777         * lib/regex_internal.h: Include <stdint.h> if available.
31778
31779         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
31780
31781         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
31782
31783         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
31784
31785         * lib/regcomp.c: Adjust for changed secondary hash function.
31786
31787         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
31788
31789         * lib/regex.h: Pretty printing.
31790         Clean up namespace a bit.
31791
31792         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
31793
31794         * lib/regexec.c (update_cur_sifted_state, check_arrival,
31795         check_arrival_add_next_nodes): Avoid using uninitialized variable.
31796
31797         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
31798                     Ulrich Drepper  <drepper@redhat.com>
31799
31800         [BZ #1302]
31801         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
31802         changed.
31803         (bitset_word_t): Renamed from bitset_word.  All uses changed.
31804
31805         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
31806
31807         [BZ #281]
31808         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
31809         * lib/regcomp.c: Remove unnecessary uses of
31810         unsigned RE_TRANSLATE_TYPE.
31811         * lib/regex_internal.h: Likewise.
31812         * lib/regex_internal.c: Likewise.
31813         * lib/regexec.c: Likewise.
31814         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
31815
31816         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
31817
31818         * lib/regexec.c (find_recover_state): Remove unnecessary
31819         initialization.
31820         (transit_state_bkref): Make DFA a const pointer.
31821         (get_subexp): Likewise.
31822         (check_arrival): Likewise.
31823         (update_cur_sifted_state): Likewise.
31824         (re_search_internal): Likewise.
31825         (prune_impossible_nodes): Likewise.
31826         (acquire_init_state_context): Likewise.
31827         (proceed_next_node): Likewise.
31828         (set_regs): Likewise.
31829         (free_fail_stack_return): Likewise.
31830         (check_arrival_expand_ecl): Mark DFA parameter as const.
31831         (check_arrival_expand_ecl_sub): Likewise.
31832         (check_subexp_limits): Likewise.
31833         (sub_epsilon_src_nodes):  Likewise.
31834         (add_epsilon_src_nodes):  Likewise.
31835         (merge_state_array): Likewise.
31836         (update_regs): Likewise.
31837         (build_trtable): Likewise.
31838         (sift_states_backward): Mark MCTX parameter as const.
31839         (build_sifted_states): Likewise.
31840         (update_cur_sifted_state): Likewise.
31841         (sift_states_mkref): Likewise.
31842         (check_arrival_expand_ecl): Mark eclosure as const.
31843         (check_dst_limits_calc_pos_1): Likewise.
31844         * lib/regex_internal.h (re_match_context_t): Make dfa a const
31845         pointer.
31846
31847         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
31848
31849         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
31850         (transit_state_sb): Likewise.
31851         (transit_state_mb): Likewise.
31852         (sift_states_iter_mb): Likewise.
31853         (check_arrival_add_next_nodes): Likewise.
31854         (check_node_accept_bytes): Change first parameter to pointer-to-const.
31855         [_LIBC] (re_search_2_stub): Use mempcpy.
31856
31857         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
31858         mbrtowc for very simple UTF-8 case.
31859
31860         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
31861         a pointer-to-const.
31862         (re_acquire_state_context): Likewise.
31863         * lib/regex_internal.h: Adjust prototypes.
31864
31865         * lib/regex.c: Prevent using C++ compilers.
31866
31867         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
31868         (re_acquire_state_context): Likewise.
31869
31870 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31871
31872         * modules/regex (Depends-on): Add ssize_t.
31873
31874 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31875
31876         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
31877         translation table.
31878
31879 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31880
31881         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
31882
31883 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
31884             Bruno Haible  <bruno@clisp.org>
31885
31886         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
31887         <sys/types.h> and <inttypes.h>.
31888
31889 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31890
31891         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
31892         `__error_t_defined', so argp.h will not typedef the former.
31893
31894 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
31895
31896         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
31897         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
31898         glibc names.  Even if glibc is changed to conform to POSIX, the
31899         traditional names will be available anyway, since regex depends on
31900         the extensions module.  Also, fix a longstanding typo in the
31901         implementation of Spencer ERE test #75 from grep 2.3.  Problems
31902         reported by Emanuele Giaquinta.  Also, change sense of cached
31903         variable, so that the message makes sense.
31904
31905 2006-03-24  Simon Josefsson  <jas@extundo.com>
31906
31907         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
31908         including some doc fixes.
31909         (base64_encode_alloc): Fix +1 bug on allocation failures.
31910
31911 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31912
31913         * lib/base64.c (base64_encode): Do not read past end of array with
31914         unsanitized input on systems with CHAR_BIT > 8.
31915
31916 2006-03-24  Eric Blake  <ebb9@byu.net>
31917
31918         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
31919
31920 2006-03-22  Karl Berry  <karl@gnu.org>
31921
31922         * config/srclist.txt (*setenv.[ch]): get from coreutils.
31923         * config/srclistvars.sh (COREUTILS): new var.
31924
31925 2006-03-17  Jim Meyering  <jim@meyering.net>
31926
31927         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
31928         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
31929
31930 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
31931
31932         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
31933         no longer needs it.  Instead, check that regoff_t is as least
31934         as wide as ptrdiff_t.
31935
31936         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
31937         so that our regex.h stays compatible with the installed regex.
31938         This is helpful for installers who configure --without-included-regex.
31939         Problem reported by Emanuele Giaquinta.
31940
31941 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
31942
31943         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
31944         Typedef to long int, not to off_, as POSIX will likely change
31945         in that direction.
31946
31947 2006-03-15  Eric Blake  <ebb9@byu.net>
31948
31949         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
31950
31951 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
31952
31953         * lib/argp-help.c (validate_uparams): Fix typo
31954         * lib/argp-parse.c (argp_default_options): Consistently begin help
31955         messages with a lowercase letter.
31956
31957 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
31958
31959         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
31960         overrun buffers and shouldn't be used (much as gets shouldn't be
31961         used).
31962         * lib/time_r.c (asctime_r, ctime_r): Likewise.
31963
31964 2006-03-08  Simon Josefsson  <jas@extundo.com>
31965
31966         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
31967         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31968
31969 2006-03-08  Simon Josefsson  <jas@extundo.com>
31970
31971         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
31972         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31973
31974 2006-03-08  Simon Josefsson  <jas@extundo.com>
31975
31976         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
31977         signal that configure disabled the device.
31978
31979 2006-03-08  Simon Josefsson  <jas@extundo.com>
31980
31981         * build-aux/maint.mk: Fix refresh-po, to handle no translated
31982         languages.
31983
31984 2006-03-07  Simon Josefsson  <jas@extundo.com>
31985
31986         * modules/getopt (Depends-on): Add unistd.
31987
31988         * modules/unistd: New file.
31989
31990 2006-03-07  Simon Josefsson  <jas@extundo.com>
31991
31992         * modules/gc-random: New file.
31993
31994 2006-03-07  Simon Josefsson  <jas@extundo.com>
31995
31996         * m4/unistd_h.m4: New file.
31997
31998 2006-03-07  Simon Josefsson  <jas@extundo.com>
31999
32000         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
32001         test to be side-effect free by storing the result in the cache
32002         variable gl_cv_lib_readline, and moving the assignment of
32003         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
32004         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
32005
32006 2006-03-07  Simon Josefsson  <jas@extundo.com>
32007
32008         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
32009         error on missing devices (the functions will return an error).
32010
32011         * m4/gc.m4: Move random stuff to gc-random.m4
32012
32013 2006-03-07  Simon Josefsson  <jas@extundo.com>
32014
32015         * lib/unistd_.h: New file.
32016
32017 2006-03-07  Simon Josefsson  <jas@extundo.com>
32018
32019         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
32020
32021 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
32022
32023         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
32024         Problem reported by Juan Manuel Guerrero.
32025
32026 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
32027
32028         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
32029         the unistd module.
32030         * lib/getlogin_r.c: Likewise.
32031         * lib/getlogin_r.h: Likewise.
32032         * lib/glob.c: Likewise.
32033         * lib/pagealign_alloc.c: Likewise.
32034         * lib/unistd_.h: Remove; no longer needed.
32035
32036 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
32037
32038         * MODULES.html.sh (Support for systems lacking POSIX:2001):
32039         Add unistd.
32040         * modules/c-stack (Depends-on): Add unistd.
32041         * modules/getlogin_r: Likewise.
32042         * modules/glob: Likewise.
32043         * modules/pagealign_alloc: Likewise.
32044         * modules/unistd (Files): Remove lib/unistd_.h.
32045         (EXTRA_DIST): Remove.
32046         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
32047         need unistd_.h.
32048         (MOSTLYCLEANFILES): Remove unistd.h-t.
32049
32050 2006-03-03  Simon Josefsson  <jas@extundo.com>
32051
32052         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
32053
32054 2006-03-03  Simon Josefsson  <jas@extundo.com>
32055
32056         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
32057         libidn and bison.
32058
32059 2006-03-03  Simon Josefsson  <jas@extundo.com>
32060
32061         * build-aux/maint.mk: Add indent target.
32062
32063 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
32064
32065         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
32066         our replacement poll.h in any case, to avoid a differing
32067         declaration from a system header.  Seen on AIX.
32068
32069 2006-03-01  Simon Josefsson  <jas@extundo.com>
32070
32071         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
32072         <kasal@ucw.cz>.
32073
32074 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
32075
32076         * modules/gettime (Depends-on): Add extensions module.
32077         * modules/nanosleep (Depends-on): Likewise.
32078         * modules/settime (Depends-on): Likewise.
32079
32080 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
32081
32082         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
32083         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
32084         pedantically.
32085         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
32086         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
32087
32088         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
32089         not "==".  Reported by Ralf Wildenhues.
32090
32091 2006-03-01  Karl Berry  <karl@gnu.org>
32092
32093         * doc/Copyright/request-*: new files, synced from gnuorg.
32094
32095 2006-03-01  Karl Berry  <karl@gnu.org>
32096
32097         * config/srclist.txt (Copyright/*): new entries.
32098
32099 2006-02-28  Simon Josefsson  <jas@extundo.com>
32100
32101         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
32102
32103 2006-02-27  Simon Josefsson  <jas@extundo.com>
32104
32105         * lib/base64.h: Indent #define's.  From Jim Meyering
32106         <jim@meyering.net>.
32107
32108 2006-02-27  Jim Meyering  <jim@meyering.net>
32109
32110         Revert the change of 2006-02-24, so these files can continue
32111         to be sync'd from gettext.
32112         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
32113         of `config.h'.
32114
32115 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
32116
32117         * modules/intprops: New file.
32118         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
32119         Add intprops.
32120         * modules/getloadavg (Files): Remove lib/intprops.h.
32121         (Depends-on): Add intprops.
32122         * modules/human: Likewise.
32123         * modules/inttostr: Likewise.
32124         * modules/openat: Likewise.
32125         * modules/sig2str: Likewise.
32126         * modules/userspec: Likewise.
32127         * modules/utimecmp: Likewise.
32128         * modules/xnanosleep: Likewise.
32129         * modules/xstrtol: Likewise.
32130
32131 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
32132
32133         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
32134         * modules/lock-tests (TESTS): Use $(EXEEXT).
32135         * modules/tls-tests: Likewise.
32136         * modules/argp-tests: Likewise.
32137         (check_PROGRAMS): New var, replacing...
32138         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
32139
32140 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32141
32142         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
32143         `config.h'.
32144
32145 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
32146
32147         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
32148
32149 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32150
32151         Sync from coreutils.
32152         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
32153         gl_CHDIR_SAFER.
32154
32155 2006-02-22  Jim Meyering  <jim@meyering.net>
32156
32157         Sync from coreutils.
32158         * m4/chdir-safer.m4: New file.
32159
32160 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
32161
32162         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
32163         AT_FDCWD exceeds INT_MAX.
32164         * lib/openat.h (AT_FDCWD): Likewise.
32165
32166 2006-02-17  Eric Blake  <address@hidden>
32167
32168         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
32169
32170 2006-02-16  Simon Josefsson  <jas@extundo.com>
32171
32172         * modules/getaddrinfo (Depends-on): Add sys_socket.
32173
32174 2006-02-15  Simon Josefsson  <jas@extundo.com>
32175
32176         * build-aux/maint.mk: Add dsyntax-check rule.
32177
32178 2006-02-15  Eric Blake  <ebb9@byu.net>
32179
32180         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
32181         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
32182         'present but cannot compile' warnings on cygwin.
32183         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
32184         use ws2tcpip.h if sys/socket.h works.
32185         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
32186         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
32187
32188 2006-02-14  Simon Josefsson  <jas@extundo.com>
32189
32190         * modules/maintainer-makefile (Files): Rename.
32191
32192         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
32193         and (the local) Makefile.cfg to maint-cfg.mk.
32194
32195         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
32196         to the latter.
32197
32198         * modules/maintainer-makefile: New module.
32199
32200         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
32201         severaly stripped to make it possible to build it up from scratch
32202         with reliable tests.
32203
32204         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
32205         fixes to permit overriding the default actions when configure and
32206         makefile are not available.
32207
32208 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
32209
32210         Sync from coreutils.
32211         * modules/lstat (Depends-on): Don't depend on xalloc.
32212         (License): Change from GPL to LGPL, since this is now simply a
32213         replacement for a libc function.
32214
32215 2006-02-14  Jim Meyering  <jim@meyering.net>
32216
32217         Sync from coreutils.
32218
32219         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
32220         failure on deficient systems, and simplify gnulib lgpl dependencies.
32221         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
32222         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
32223
32224         * lib/xalloc-die.c: Remove unused definition of N_.
32225
32226 2006-02-14  Jim Meyering  <jim@meyering.net>
32227
32228         Sync from coreutils.
32229         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
32230         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
32231         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
32232         double-quote uses of that variable, to accommodate the rare case in
32233         which getmntent is available in none of the libraries checked.  This
32234         happens at least on FreeBSD 5.0.
32235
32236 2006-02-13  Simon Josefsson  <jas@extundo.com>
32237
32238         * gnulib-tool (Usage): Fix --import, from
32239         karl@freefriends.org (Karl Berry).
32240
32241 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
32242
32243         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
32244
32245 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
32246
32247         * lib/argp-namefrob.h: Restore changes accidentally lost during the
32248         "autoupdate" on 2005-12-12.
32249
32250 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
32251
32252         * modules/closeout (Depends-on): Remove atexit.
32253
32254 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
32255
32256         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
32257         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
32258
32259 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
32260
32261         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
32262         __EXTENSIONS__ if this causes compilation to fail.  Problem
32263         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
32264         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
32265
32266 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
32267
32268         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
32269         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
32270         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
32271         All uses changed.
32272
32273 2006-01-26  Simon Josefsson  <jas@extundo.com>
32274
32275         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
32276         prototype is visible on mingw32.
32277
32278         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
32279         for mingw32.
32280
32281         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
32282         mingw32).
32283
32284 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
32285
32286         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
32287         attempt to open for write; this always fails, at least on POSIX
32288         hosts.  This reinstates the 2006-01-09 change, which was
32289         inadvertently removed.
32290
32291 2006-01-26  Bruno Haible  <bruno@clisp.org>
32292
32293         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
32294         Reported by Paul Eggert.
32295
32296 2006-01-26  Bruno Haible  <bruno@clisp.org>
32297             Paul Eggert  <eggert@cs.ucla.edu>
32298
32299         * lib/stdbool_.h (_Bool)
32300         [(! (defined __cplusplus || defined __BEOS__)
32301           && !defined __GNUC__
32302           && !(defined __HP_cc || defined __xlc__
32303                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
32304                || defined __sgi))]:
32305         #define to signed char in these cases too; this simplifies
32306         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
32307         etc., separately) and makes it more conservative.
32308
32309 2006-01-25  Simon Josefsson  <jas@extundo.com>
32310
32311         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
32312         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
32313         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
32314
32315 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
32316
32317         * lib/argp-namefrob.h: Bugfix. Remove stray #
32318
32319 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
32320
32321         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
32322         so that we test the test.
32323         Check for yet another HP-UX cc bug involving *bool |= bool.
32324
32325 2006-01-25  Karl Berry  <karl@gnu.org>
32326
32327         * config/srclist.txt (vasnprintf.c): sync lost.
32328
32329 2006-01-25  Jim Meyering  <jim@meyering.net>
32330
32331         Sync from the stable (b5) branch of coreutils:
32332
32333         * lib/fts.c (fts_children): Don't let close() clobber errno from
32334         failed fchdir().
32335
32336         * lib/fts.c (fts_stat): When following a symlink-to-directory,
32337         don't necessarily interpret stat-fails+lstat-succeeds as indicating
32338         a dangling symlink.  That can also happen at least for ELOOP.
32339         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
32340         FYI, this bug predates the inclusion of fts.c in coreutils.
32341
32342         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
32343         in their own block, so pre-c99 compilers don't object.
32344
32345         Avoid the double-free (first in fts_read, second in fts_close) that
32346         would occur when an `active' directory is made inaccessible (e.g.,
32347         via chmod a-x) during a traversal.
32348         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
32349         before returning.  Reproduce this failure by
32350         mkdir -p a/b; cd a; chmod a-x . b
32351         Reported by Stavros Passas.
32352
32353 2006-01-25  Jim Meyering  <jim@meyering.net>
32354
32355         * lib/fileblocks.c: Remove more useless parentheses.
32356         * lib/readutmp.h: Likewise.
32357
32358 2006-01-25  Bruno Haible  <bruno@clisp.org>
32359
32360         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
32361         warnings.
32362         Reported by Paul Eggert.
32363
32364 2006-01-25  Bruno Haible  <bruno@clisp.org>
32365
32366         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
32367         rid of a trap command. For Solaris sh.
32368         Reported by Mark D. Baushke <mdb@gnu.org>.
32369
32370 2006-01-24  Simon Josefsson  <jas@extundo.com>
32371
32372         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
32373         Bruno.
32374
32375 2006-01-24  Karl Berry  <karl@gnu.org>
32376
32377         * config/srclist.txt (argp-namefrob.h): sync lost.
32378
32379 2006-01-24  Jim Meyering  <jim@meyering.net>
32380
32381         * modules/openat (Files): Add lib/intprops.h.
32382         From Mark D. Baushke.
32383
32384 2006-01-24  Jim Meyering  <jim@meyering.net>
32385
32386         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
32387         Reported by Mark D. Baushke.
32388
32389 2006-01-24  Jim Meyering  <jim@meyering.net>
32390
32391         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
32392
32393 2006-01-24  Bruno Haible  <bruno@clisp.org>
32394
32395         * modules/strnlen (Maintainer): Change from glibc to all.
32396
32397 2006-01-24  Bruno Haible  <bruno@clisp.org>
32398
32399         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
32400         Patch by Paul Eggert.
32401
32402 2006-01-24  Bruno Haible  <bruno@clisp.org>
32403
32404         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
32405         already has it.
32406         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
32407         2005-11-26.
32408
32409         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
32410         'signed char' to avoid problems with the built-in _Bool type.
32411         Reported by Paul Eggert on 2005-11-26.
32412
32413 2006-01-24  Bruno Haible  <bruno@clisp.org>
32414
32415         * gnulib-tool (func_import): Avoid constructing complicated sed
32416         expressions inside backquote.
32417         Report and solution by Mark D. Baushke <mdb@gnu.org>.
32418
32419 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
32420
32421         These changes imported from libc.
32422         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
32423         test and two separate function calls.
32424         * lib/strndup.c (__strndup): Add libc_hidden_def.
32425
32426 2006-01-23  Simon Josefsson  <jas@extundo.com>
32427
32428         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
32429         Remove the test_*_SOURCES variable: automake infers it by default.
32430         * modules/tls-tests: Likewise.
32431
32432 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
32433
32434         Work around porting bugs reported by Dieter in
32435         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
32436         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
32437         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
32438         Include "getopt.h" first, to check interface.
32439         (getenv): Declare only if defined HAVE_DECL_GETENV &&
32440         !HAVE_DECL_GETENV.
32441         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
32442         (__strndup): Revert to K&R-style function dfns, the glibc style.
32443         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
32444         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
32445         Include strnlen.h first, to get prototype properly.
32446         (strnlen): Renamed from __strnlen.
32447         Remove weak alias.
32448
32449 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
32450
32451         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
32452
32453 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
32454
32455         * config/srclist.txt: Adjust to reflect glibc reorganization.
32456         This affects only comments.
32457
32458 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
32459
32460          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
32461          Reported by Bruce Korb <bkorb@gnu.org>.
32462
32463 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
32464
32465         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
32466         to pacify gcc -Wswitch-default.
32467
32468 2006-01-22  Bruno Haible  <bruno@clisp.org>
32469
32470         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
32471         temporary buffer for sprintf, take into account the precision also
32472         for 'd', 'i', 'u', 'o', 'x', 'X'.
32473
32474 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
32475
32476         * modules/argp-tests: New module
32477         * tests/test-argp.c: New file
32478         * tests/test-argp-2.sh: New file
32479
32480 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
32481
32482         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
32483         (__argp_base_name): Removed
32484         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
32485         typo.
32486         (__argp_base_name): Provide macro definition or extern declaration
32487         depending on the configuration
32488
32489 2006-01-20  Simon Josefsson  <jas@extundo.com>
32490
32491         * modules/inet_ntop (Depends-on): Depend on sys_socket.
32492
32493 2006-01-20  Simon Josefsson  <jas@extundo.com>
32494
32495         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
32496
32497 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
32498
32499         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
32500         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
32501         Suggested by Bruno Haible.
32502
32503 2006-01-20  Karl Berry  <karl@gnu.org>
32504
32505         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
32506         until changes propagate, I guess.
32507
32508 2006-01-19  Simon Josefsson  <jas@extundo.com>
32509
32510         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
32511
32512 2006-01-19  Simon Josefsson  <jas@extundo.com>
32513
32514         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
32515
32516 2006-01-19  Simon Josefsson  <jas@extundo.com>
32517
32518         * gnulib-tool: Set check_PROGRAMS.
32519
32520         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
32521         modules/des-tests, modules/gc-arcfour-tests,
32522         modules/gc-arctwo-tests, modules/gc-des-tests,
32523         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
32524         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
32525         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
32526         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
32527         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
32528         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
32529         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
32530         test_*_SOURCES.
32531
32532 2006-01-18  Simon Josefsson  <jas@extundo.com>
32533
32534         * modules/socklen (Depends-on): Depend on sys_socket.
32535
32536 2006-01-18  Simon Josefsson  <jas@extundo.com>
32537
32538         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
32539         modules/des-tests, modules/gc-arcfour-tests,
32540         modules/gc-arctwo-tests, modules/gc-des-tests,
32541         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
32542         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
32543         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
32544         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
32545         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
32546         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
32547         $(EXEEXT) to automake TESTS variable, for mingw32.
32548
32549 2006-01-17  Simon Josefsson  <jas@extundo.com>
32550
32551         * modules/socklen (Include): Need sys/socket.h.
32552
32553 2006-01-17  Bruno Haible  <bruno@clisp.org>
32554
32555         * modules/ssize_t (Include): Add <sys/types.h>.
32556
32557 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
32558
32559         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
32560         it's not portable and it doesn't work with cross-compiles.
32561         Problem reported by Bruno Haible.  Fix missing-$ typo in
32562         'test "gl_cv_ignore_unused_libraries" ...' that prevented
32563         -zignore from being used with Sun's C compiler.
32564
32565 2006-01-12  Simon Josefsson  <jas@extundo.com>
32566
32567         * lib/base64.c: Fix warning, reported by Bruno Haible
32568         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
32569
32570 2006-01-12  Bruno Haible  <bruno@clisp.org>
32571
32572         * modules/ldd: New file.
32573         * build-aux/ldd.sh.in: New file.
32574         * MODULES.html.sh (Support for building libraries and executables): Add
32575         ldd.
32576
32577 2006-01-12  Bruno Haible  <bruno@clisp.org>
32578
32579         * m4/ldd.m4: New file.
32580
32581 2006-01-12  Bruno Haible  <bruno@clisp.org>
32582
32583         * gnulib-tool (func_import, func_create_testdir): Don't go into an
32584         endless loop while replacing $auxdir with build-aux.
32585
32586 2006-01-11  Simon Josefsson  <jas@extundo.com>
32587
32588         * lib/stdint_.h (SIZE_MAX): Add missing (.
32589
32590 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
32591
32592         Sync from coreutils.
32593         * lib/md5.c: Fix commentary typos.
32594         (alignof, UNALIGNED_P): No need for a GCC-specific version.
32595         * lib/md5.h (__attribute__): Remove; unused.
32596         * lib/sha1.c: Fix commentary to match md5 better.
32597         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
32598         so that we don't need to worry about alignment.  All uses changed.
32599         This merges the 2005-10-28 md5 change into sha1.
32600
32601 2006-01-11  Jim Meyering  <jim@meyering.net>
32602
32603         Sync from coreutils.
32604         * lib/md5.c (OP): Fix spacing.
32605
32606 2006-01-11  Bruno Haible  <bruno@clisp.org>
32607
32608         Ensure automatic ordering between gl_LOCK and gl_ARGP.
32609         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
32610         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
32611
32612 2006-01-11  Bruno Haible  <bruno@clisp.org>
32613
32614         Ensure automatic ordering between gl_LOCK and gl_ARGP.
32615         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
32616         the "early" section as well.
32617
32618 2006-01-11  Bruno Haible  <bruno@clisp.org>
32619
32620         Avoid "ar: no archive members specified" error on MacOS X.
32621         * gnulib-tool (func_modules_add_dummy): New function.
32622         (func_import, func_create_testdir): Invoke it.
32623
32624 2006-01-11  Bruno Haible  <bruno@clisp.org>
32625
32626         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
32627         with $auxdir in AC_CONFIG_FILES statements.
32628
32629 2006-01-11  Bruno Haible  <bruno@clisp.org>
32630
32631         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
32632         Initialize also noinst_HEADERS to empty.
32633
32634 2006-01-11  Bruno Haible  <bruno@clisp.org>
32635
32636         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
32637         variables.
32638         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
32639         autoreconf.
32640
32641 2006-01-11  Bruno Haible  <bruno@clisp.org>
32642
32643         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
32644         overridable by the user.
32645         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
32646
32647 2006-01-10  Simon Josefsson  <jas@extundo.com>
32648
32649         * modules/sys_socket: New file.
32650
32651 2006-01-10  Simon Josefsson  <jas@extundo.com>
32652
32653         * m4/sys_socket_h.m4: New file.
32654
32655 2006-01-10  Simon Josefsson  <jas@extundo.com>
32656
32657         * lib/socket_.h: New file.
32658
32659 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
32660
32661         * modules/readutmp (Maintainer): Add myself.
32662
32663 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
32664
32665         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
32666         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
32667         People who are still concerned with buggy memcmp implementations
32668         can invoke gl_FUNC_MEMCMP themselves.
32669
32670 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
32671
32672         * lib/regex_internal.h (BITSET_WORD_BITS):
32673         Work around a bug in 64-bit PGC (before version 6.1-2), where the
32674         preprocessor mishandles large unsigned values as if they were signed.
32675         Problem reported by Claudio Fontana in
32676         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
32677
32678 2006-01-10  Jim Meyering  <jim@meyering.net>
32679
32680         Avoid the double-free (first in fts_read, second in fts_close) that
32681         would occur when an `active' directory is made inaccessible (e.g.,
32682         via chmod a-x) during a traversal.
32683         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
32684         before returning.  Reproduce this failure by
32685         mkdir -p a/b; cd a; chmod a-x . b
32686         Reported by Stavros Passas.
32687
32688         Sync from coreutils.
32689         * lib/sha1.c: Tweak grammar in a comment.
32690
32691 2006-01-10  Jim Meyering  <jim@meyering.net>
32692
32693         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
32694         Patch by Joerg Sonnenberger.
32695
32696 2006-01-10  Bruno Haible  <bruno@clisp.org>
32697
32698         * modules/readutmp: Depend on module free.
32699         * modules/strtok_r: Depend on module restrict.
32700
32701 2006-01-10  Bruno Haible  <bruno@clisp.org>
32702
32703         * modules/gettext (configure.ac): Add an invocation of
32704         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
32705
32706 2006-01-10  Bruno Haible  <bruno@clisp.org>
32707
32708         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
32709         Reported by Werner Lemberg <wl@gnu.org>.
32710
32711 2006-01-10  Bruno Haible  <bruno@clisp.org>
32712
32713         * lib/localcharset.c: Update from GNU gettext.
32714
32715 2006-01-10  Bruno Haible  <bruno@clisp.org>
32716
32717         * lib/argp.h (__const): Remove macro. Use const instead.
32718         * lib/argp-fmtstream.h (__const): Likewise.
32719         * lib/glob_.h (__const): Remove macro.
32720         * lib/glob-libc.h: Use const instead of __const.
32721
32722 2006-01-10  Bruno Haible  <bruno@clisp.org>
32723
32724         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
32725         variable.
32726         Needed to avoid an automake error regarding the 'gettext' module.
32727
32728 2006-01-09  Simon Josefsson  <jas@extundo.com>
32729
32730         * modules/inet_ntop (Depends-on): Add restrict.
32731
32732 2006-01-09  Simon Josefsson  <jas@extundo.com>
32733
32734         * modules/gc-rijndael-tests (License): Put under LGPL.
32735
32736         * modules/gc-des-tests (License): Likewise.
32737
32738         * modules/gc-arcfour-tests (License): Likewise.
32739
32740         * modules/gc-arctwo-tests (License): Likewise.
32741
32742         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
32743
32744         * modules/gc-hmac-sha1-tests (Files): Likewise.
32745
32746         * modules/gc-hmac-md5-tests (License): Likewise.
32747
32748         * modules/gc-sha1-tests (License): Likewise.
32749
32750         * modules/gc-md5-tests (License): Likewise.
32751
32752         * modules/gc-md4-tests (License): Likewise.
32753
32754         * modules/gc-md2-tests (License): Likewise.
32755
32756         * modules/gc-tests (License): Likewise.
32757
32758         * modules/des-tests (License): Likewise.
32759
32760         * modules/md4-tests (License): Likewise.
32761
32762         * modules/md2-tests (License): Likewise.
32763
32764 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32765
32766         Sync from coreutils:
32767
32768         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
32769         * modules/lib-ignore: New file.
32770         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
32771         chdir-safer.m4, lchmod.m4.
32772         * modules/openat: Add mkdirat.c, openat-priv.h.
32773
32774 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32775
32776         Sync from coreutils.
32777         * m4/lib-ignore.m4: New file.
32778         * m4/lchmod.m4: New file.
32779
32780 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32781
32782         Sync from coreutils.
32783         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
32784         for write access: POSIX says that must fail.
32785         * lib/fts.c (diropen): Likewise.
32786         * lib/save-cwd.c (save_cwd): Likewise.
32787         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
32788         well, for minor improvements on hosts that lack O_DIRECTORY.
32789         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
32790         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
32791         Fall back on chown if open failed with EACCES.
32792
32793         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
32794         Report an error at compile-time if only a 1-second nominal clock
32795         resolution is found.
32796
32797         * lib/lchmod.h: New file.
32798         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
32799         (make_dir_parents): Use lchown rather than chown, and
32800         lchmod rather than chmod.
32801
32802         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
32803         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
32804         "proc" reported by n0dalus.
32805
32806         * lib/mountlist.c: Include <limits.h>.
32807         (dev_from_mount_options)
32808         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
32809         New function.  It no longer assumes "dev=" has the System V meaning
32810         on Linux (since it doesn't).  It also parses "dev=" more carefully.
32811         (read_file_system_list)
32812         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
32813         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
32814         dev= in that case.
32815
32816         * lib/posixtm.h (PDS_PRE_2000): New macro.
32817         * lib/posixtm.c (year): Arg is now syntax_bits rather than
32818         allow_century.  All usages changed.  Reject dates outside the range
32819         1969-1999 if PDS_PRE_2000 is used.
32820
32821 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32822
32823         Sync from coreutils.
32824         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
32825         (Time of day items): Mention the possibility of leap seconds.
32826         Problem reported by Dr. David Alan Gilbert.
32827
32828 2006-01-09  Jim Meyering  <jim@meyering.net>
32829
32830         Sync from coreutils.
32831
32832         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
32833
32834         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
32835
32836         * lib/modechange.c (mode_compile): Reject an invalid mode string
32837         that starts with an octal digit.  From Andreas Gruenbacher.
32838
32839         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
32840         and dup to open_safer and dup_safer, respectively.
32841         (openat_permissive): Fix typo in comment.
32842
32843         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
32844         "gettext.h"; either no longer needed or are guaranteed by openat.h.
32845         (_): Remove; no longer needed.
32846         (openat): Renamed from rpl_openat; no need for rpl_openat
32847         since openat.h renames openat for us.
32848         Replace most of the body with a call to openat_permissive,
32849         to avoid duplicate code.
32850         Port to (probably hypothetical) environments were mode_t is
32851         wider than int.
32852         (openat_permissive): Require mode arg, so that we can check
32853         types better.  Put it just after flags.  Change cwd failure
32854         indicator from pointer-to-bool to pointer-to-errno-value.
32855         All callers changed.
32856         Invoke openat_save_fail and/or openat_restore_fail if
32857         cwd_errno is null, so that openat can call us.
32858         (openat_permissive, fdopendir, fstatat, unlinkat):
32859         Simplify errno handling to avoid some duplicate code,
32860         as it's OK to set errno on success.
32861         * lib/openat.h: Revamp code so that function macros depend on
32862         __OPENAT_PREFIX only, not also on AT_FDCWD.
32863         (openat_ro): Remove.  Caller changed to use openat_permissive.
32864         (openat_permissive): Now a macro, if not a function.
32865         (openat_restore_fail, openat_save_fail): Now always functions,
32866         since mkdirat needs them even if __OPENAT_PREFIX is defined.
32867
32868         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
32869         and openat.c.
32870         * lib/mkdirat.c: Include openat-priv.h.
32871         Remove definitions of macros defined therein.
32872         * lib/openat.c: Likewise.
32873
32874         * lib/mkdirat.c (mkdirat): New file and function.
32875         * lib/openat.h (mkdirat): Declare.
32876
32877         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
32878
32879         * lib/openat.h (openat_permissive): Declare.
32880         (openat_ro): Define.
32881
32882         * lib/openat.c (EXPECTED_ERRNO): New macro.
32883         (openat_permissive): New function -- used in remove.c rewrite.
32884         (all functions): Set errno just before returning, only if there
32885         was an actual failure.
32886         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
32887
32888         Emulate openat-family functions using Linux's procfs, if possible.
32889         Idea and some code based on Ulrich Drepper's glibc changes.
32890
32891         * lib/openat.c: (BUILD_PROC_NAME): New macro.
32892         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
32893         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
32894         before falling back on save_cwd and restore_cwd.
32895         (fdopendir, fstatat, unlinkat): Likewise.
32896
32897         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
32898         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
32899
32900         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
32901         as second argument to va_arg.  Otherwise, some versions of gcc
32902         warn that `if this code is reached, the program will abort'.
32903
32904 2006-01-09  Jim Meyering  <jim@meyering.net>
32905
32906         Sync from coreutils.
32907         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
32908         Require openat-priv.h.
32909
32910 2006-01-09  Bruno Haible  <bruno@clisp.org>
32911
32912         * modules/strnlen (Include): Use strnlen.h.
32913
32914 2006-01-09  Bruno Haible  <bruno@clisp.org>
32915
32916         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
32917
32918 2006-01-09  Bruno Haible  <bruno@clisp.org>
32919
32920         * lib/sysexit_.h (EX_OK): New macro.
32921         Suggested by Martin Lambers <marlam@marlam.de>.
32922
32923 2006-01-09  Bruno Haible  <bruno@clisp.org>
32924
32925         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
32926         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
32927
32928 2006-01-09  Bruno Haible  <bruno@clisp.org>
32929
32930         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
32931         numbers.
32932
32933 2006-01-09  Bruno Haible  <bruno@clisp.org>
32934
32935         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
32936         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
32937         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
32938         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
32939
32940 2006-01-09  Bruno Haible  <bruno@clisp.org>
32941
32942         * build-aux/javacomp.sh.in: New file, moved from lib/.
32943         * modules/javacomp-script (Files): Update.
32944         (configure.ac): Add AC_CONFIG_FILES invocation.
32945         (EXTRA_DIST): Remove variable.
32946
32947         * build-aux/javaexec.sh.in: New file, moved from lib/.
32948         * modules/javaexec (Files): Update.
32949         (configure.ac): Add AC_CONFIG_FILES invocation.
32950         (EXTRA_DIST): Remove javaexec.sh.in.
32951
32952         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
32953         * modules/csharpcomp-script (Files): Update.
32954         (configure.ac): Add AC_CONFIG_FILES invocation.
32955         (EXTRA_DIST): Remove variable.
32956
32957         * build-aux/csharpexec.sh.in: New file, moved from lib/.
32958         * modules/csharpexec (Files): Update.
32959         (configure.ac): Add AC_CONFIG_FILES invocation.
32960         (EXTRA_DIST): Remove csharpexec.sh.in.
32961
32962 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
32963
32964         Sync from coreutils.
32965
32966         Add POSIX ACL support
32967         * lib/acl.h (copy_acl, set_acl): Add declarations.
32968         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
32969         systems other than Linux.
32970         (chmod_or_fchmod): New function: use fchmod when possible,
32971         and chmod otherwise.
32972         (file_has_acl): Add a POSIX ACL implementation, with a
32973         Linux-specific subcase.
32974         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
32975         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
32976         acls are unsupported.
32977         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
32978         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
32979         are unsupported.
32980
32981 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
32982
32983         Sync from coreutils.
32984         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
32985
32986 2006-01-07  Bruno Haible  <bruno@clisp.org>
32987
32988         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
32989         gl_EARLY.
32990
32991 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
32992
32993         * lib/strftime.c (tzname): Don't declare if it is already #defined.
32994         Problem reported for Mingw by Mark Junker.
32995
32996 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
32997
32998         * README: Gnulib normally doesn't generate a tarball.
32999
33000 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
33001
33002         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
33003         long int, not int, for nanosecond counts, so that people who are
33004         used to POSIX struct timespec won't be surprised.  Reported by Jim
33005         Meyering.
33006
33007 2005-12-28  Bruno Haible  <bruno@clisp.org>
33008
33009         * build-aux/config.rpath: Update from GNU gettext.
33010
33011 2005-12-16  Jim Meyering  <jim@meyering.net>
33012
33013         * modules/fprintftime: New module.
33014         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
33015
33016 2005-12-16  Jim Meyering  <jim@meyering.net>
33017
33018         * m4/fprintftime.m4: New file.
33019
33020 2005-12-16  Jim Meyering  <jim@meyering.net>
33021
33022         * lib/fprintftime.c, lib/fprintftime.h: New files.
33023
33024 2005-12-15  Simon Josefsson  <jas@extundo.com>
33025
33026         * modules/socklen (configure.ac): Fix M4 macro name, to align with
33027         new m4/socklen.m4.
33028
33029 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
33030
33031         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
33032         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
33033
33034 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
33035
33036         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
33037         * lib/argp-help.c (fill_in_uparams): Check if the constructed
33038         struct uparams is valid. Fall back to the default values if it is
33039         not.
33040
33041 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
33042
33043         * modules/argp (Files): Add argp-pin.c
33044         (Depends-on): dirname
33045         (lib_SOURCES): Add argp-pin.c
33046
33047 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
33048
33049         * m4/argp.m4:  Check if program_invocation_name and
33050         program_invocation_short_name are declared and define appropriate
33051         macros if they are not.
33052
33053 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
33054
33055         * lib/argp-help.c (__argp_base_name): New function
33056         (__argp_short_program_name): Rewrite using __argp_base_name
33057         * lib/argp-namefrob.h: Define program_invocation_name and
33058         program_invocation_short_name if requested
33059         (__argp_base_name): Add prototype
33060         * lib/argp-parse.c (argp_def): Use gettext wrappers
33061         (argp_default_parser): Use __argp_base_name
33062         * lib/argp-pin.c: New file. Defines program_invocation_name and
33063         program_invocation_short_name on systems that lack them.
33064
33065 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
33066
33067         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
33068         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
33069         porting problem reported by Georg Schwarz in
33070         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
33071
33072 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
33073
33074         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
33075         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
33076         porting problem reported by Georg Schwarz in
33077         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
33078
33079 2005-12-05  Bruno Haible  <bruno@clisp.org>
33080
33081         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
33082         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
33083         Reported by Mark Junker <mjscod@gmx.de>.
33084
33085 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
33086
33087         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
33088         Use implementation from Albert Chin, with some
33089         comments/corrections by Stepan Kasal and myself.
33090
33091 2005-12-02  Bruno Haible  <bruno@clisp.org>
33092
33093         * gnulib-tool (func_import): Accept GPLed build tool modules when
33094         --lgpl is given.
33095         * modules/csharpcomp-script: New file.
33096         * modules/csharpcomp: Depend on it.
33097         * modules/javacomp-script: New file.
33098         * modules/javacomp: Depend on it.
33099         Suggested by Simon Josefsson.
33100
33101 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
33102
33103         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
33104         statement, to work around an HP-UX 10.20 compiler bug reported by
33105         Peter O'Gorman.
33106
33107 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
33108
33109         * modules/savedir (Depends-on): Add openat.
33110
33111 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
33112
33113         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
33114         (uintmax_t) [defined uintmax_t]: Do not declare.
33115         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
33116         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
33117         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
33118         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
33119         sake of portability to weird hosts that C allows (though we don't
33120         know of any practical examples).
33121
33122         * lib/savedir.h (fdsavedir): New decl.
33123         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
33124         contains most of the former guts of savedir.
33125         (savedir): Use savedirstream.
33126         Include "openat.h".
33127
33128 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
33129
33130         * modules/obstack (Files): Add m4/ulonglong.m4.
33131         Problem reported by Davide Angelocola.
33132
33133 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
33134
33135         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
33136         coreutils no longer futzes with rounding modes.
33137
33138 2005-11-14  Jim Meyering  <jim@meyering.net>
33139
33140         * lib/mkstemp-safer.c: Include <config.h>, required for possible
33141         replacement of mkstemp.
33142
33143 2005-11-10  Simon Josefsson  <jas@extundo.com>
33144
33145         * lib/readline.c: Remove EOL.
33146
33147 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
33148
33149         * modules/gethrxtime (Depends-on): Add gettime.
33150
33151 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
33152
33153         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
33154         or gettimeofday; no longer needed.
33155
33156 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
33157
33158         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
33159         time business.
33160         (gethrxtime) [! (HAVE_NANOUPTIME
33161         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
33162         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
33163         our own approximation.
33164
33165 2005-11-08  Eric Blake  <ebb9@byu.net>
33166
33167         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
33168
33169 2005-11-08  Eric Blake  <ebb9@byu.net>
33170
33171         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
33172
33173 2005-11-04  Bruno Haible  <bruno@clisp.org>
33174
33175         * gnulib-tool: Implement --update mode.
33176
33177 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
33178
33179         Fix porting problem reported by Theodoros V. Kalamatianos.
33180         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
33181         Don't assume that futimes failing means we must fail.
33182
33183 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
33184
33185         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
33186         variables to suggest the intended function of the PATH_MAX check.
33187
33188 2005-10-30  Kean Johnston  <jkj@sco.com>
33189
33190         Trivial changes to support SCO systems.
33191         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
33192         as PATH_MAX.
33193         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
33194         where __ptr is null when no I/O is pending.
33195
33196 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
33197
33198         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
33199         leave errno alone.  Problem reported by Dmitry V. Levin.
33200
33201 2005-10-28  Simon Josefsson  <jas@extundo.com>
33202
33203         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
33204         Test more.
33205
33206         * tests/test-gc-md2.c, tests/test-md2.c: New files.
33207
33208         * modules/md2, modules/md2-tests: New files.
33209
33210 2005-10-28  Simon Josefsson  <jas@extundo.com>
33211
33212         * m4/inet_ntop.m4: More tests.
33213
33214         * m4/gc-md2.m4, md2.m4: New file.
33215
33216 2005-10-28  Simon Josefsson  <jas@extundo.com>
33217
33218         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
33219         "restrict" keywords, as per POSIX.  Protect the function
33220         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
33221         Don't use K&R prototypes.  Check the sprintf return values.
33222         Re-define EAFNOSUPPORT if not present.  Indent.
33223
33224         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
33225         suggested by Bruno Haible <bruno@clisp.org>.
33226
33227         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
33228
33229         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
33230
33231         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
33232         libgcrypt).
33233
33234         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
33235
33236         * lib/md2.h, lib/md2.c: New files.
33237
33238 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
33239
33240         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
33241         errno alone.  Problem reported by Frederic Jolliton.
33242
33243 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
33244
33245         * modules/verify (License): Change from GPL to LGPL.  This is a
33246         tiny module and there are apparently near-equivalents that are
33247         under the BSD license.
33248
33249 2005-10-24  Simon Josefsson  <jas@extundo.com>
33250
33251         * modules/sha1: Relicense to LGPL.
33252
33253 2005-10-24  Simon Josefsson  <jas@extundo.com>
33254
33255         * lib/md4.h: Shrink buffer size, now that we changed the type.
33256
33257 2005-10-23  Simon Josefsson  <jas@extundo.com>
33258
33259         * gnulib-tool (func_import): Fix --tests-base.
33260
33261 2005-10-22  Simon Josefsson  <jas@extundo.com>
33262
33263         * modules/arcfour (Depends-on): Need stdint.
33264
33265 2005-10-22  Simon Josefsson  <jas@extundo.com>
33266
33267         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
33268         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
33269
33270 2005-10-22  Simon Josefsson  <jas@extundo.com>
33271
33272         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
33273         suggested by Bruno Haible <bruno@clisp.org>.
33274
33275 2005-10-22  Simon Josefsson  <jas@extundo.com>
33276
33277         * lib/crc.h: Include stddef.h, for size_t.
33278
33279 2005-10-22  Simon Josefsson  <jas@extundo.com>
33280
33281         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
33282         arcfour_context struct (simplify test vector testing in GNU
33283         Shishi).
33284
33285 2005-10-21  Simon Josefsson  <jas@extundo.com>
33286
33287         * modules/des, modules/des-tests: New files.
33288
33289         * modules/gc-des, modules/gc-des-tests: New files.
33290
33291         * tests/test-des.c, tests/test-gc-des.c: New file.
33292
33293 2005-10-21  Simon Josefsson  <jas@extundo.com>
33294
33295         * modules/arctwo, modules/arctwo-tests: New files.
33296
33297         * tests/test-arctwo.c: New file.
33298
33299         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
33300
33301         * tests/test-gc-arctwo.c: New file.
33302
33303 2005-10-21  Simon Josefsson  <jas@extundo.com>
33304
33305         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
33306         Bruno Haible <bruno@clisp.org>.
33307
33308         * m4/gc-des.m4: New file.
33309
33310 2005-10-21  Simon Josefsson  <jas@extundo.com>
33311
33312         * m4/arctwo.m4: New file.
33313
33314         * m4/gc-arctwo.m4: New file.
33315
33316 2005-10-21  Simon Josefsson  <jas@extundo.com>
33317
33318         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
33319         block.
33320
33321 2005-10-21  Simon Josefsson  <jas@extundo.com>
33322
33323         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
33324         <bruno@clisp.org>.
33325
33326         * lib/hmac-sha1.c (hmac_sha1): Likewise.
33327
33328         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
33329         Bruno Haible <bruno@clisp.org>.
33330
33331         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
33332         <bruno@clisp.org>.
33333
33334 2005-10-21  Simon Josefsson  <jas@extundo.com>
33335
33336         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
33337
33338 2005-10-21  Simon Josefsson  <jas@extundo.com>
33339
33340         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
33341
33342 2005-10-21  Simon Josefsson  <jas@extundo.com>
33343
33344         * lib/des.h, lib/des.c: New files.
33345
33346         * lib/gc-gnulib.c: Support DES.c
33347
33348 2005-10-21  Simon Josefsson  <jas@extundo.com>
33349
33350         * lib/arctwo.h, lib/arctwo.c: New files.
33351
33352         * lib/gc-gnulib.c: Support ARCTWO.
33353
33354 2005-10-21  Simon Josefsson  <jas@extundo.com>
33355
33356         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
33357         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
33358
33359 2005-10-21  Simon Josefsson  <jas@extundo.com>
33360
33361         * gnulib-tool (func_import, func_create_testdir): Define automake
33362         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
33363         Makefile.am snippet),
33364         suggested by Bruno Haible <bruno@clisp.org>.
33365
33366         * modules/gc (Makefile.am): Use it.
33367
33368 2005-10-21  Bruno Haible  <bruno@clisp.org>
33369
33370         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
33371         patch.
33372
33373 2005-10-19  Simon Josefsson  <jas@extundo.com>
33374
33375         * tests/test-gc-rijndael.c: New file.
33376
33377         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
33378
33379 2005-10-19  Simon Josefsson  <jas@extundo.com>
33380
33381         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
33382         interface too.
33383
33384 2005-10-19  Simon Josefsson  <jas@extundo.com>
33385
33386         * tests/test-gc-arcfour.c: New file.
33387
33388         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
33389
33390 2005-10-19  Simon Josefsson  <jas@extundo.com>
33391
33392         * modules/gc-md4, modules/gc-md4-tests: New file.
33393
33394         * tests/test-gc-md4.c: New file.
33395
33396 2005-10-19  Simon Josefsson  <jas@extundo.com>
33397
33398         * m4/gc-md4.m4: New file.
33399
33400 2005-10-19  Simon Josefsson  <jas@extundo.com>
33401
33402         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
33403         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
33404         <kasal@ucw.cz>.
33405
33406 2005-10-19  Simon Josefsson  <jas@extundo.com>
33407
33408         * m4/gc-arcfour.m4: New file.
33409
33410         * m4/gc-rijndael.m4: New file.
33411
33412 2005-10-19  Simon Josefsson  <jas@extundo.com>
33413
33414         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
33415
33416 2005-10-19  Simon Josefsson  <jas@extundo.com>
33417
33418         * lib/gc-gnulib.c: Support ARCFOUR.
33419
33420 2005-10-19  Simon Josefsson  <jas@extundo.com>
33421
33422         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
33423         support.
33424
33425         * lib/gc.h: Add ECB enum type.
33426
33427         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
33428
33429 2005-10-18  Simon Josefsson  <jas@extundo.com>
33430
33431         * tests/test-md5.c: New file.
33432
33433         * modules/md5-tests: New file.
33434
33435 2005-10-18  Simon Josefsson  <jas@extundo.com>
33436
33437         * tests/test-md4.c: New file.
33438
33439         * modules/md4, modules/md4-tests: New files.
33440
33441 2005-10-18  Simon Josefsson  <jas@extundo.com>
33442
33443         * m4/md4.m4: New file.
33444
33445 2005-10-18  Simon Josefsson  <jas@extundo.com>
33446
33447         * lib/md4.h, lib/md4.c: New files, based on md5.?.
33448
33449 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
33450
33451         * gnulib-tool (func_create_testdir): Omit the second check whether
33452         BUILT_SOURCES in nonempty.
33453
33454 2005-10-17  Simon Josefsson  <jas@extundo.com>
33455
33456         * tests/test-rijndael.c: New file.
33457
33458 2005-10-17  Simon Josefsson  <jas@extundo.com>
33459
33460         * modules/sha1: Depend on stdint instead of md5.
33461
33462         * modules/md5: Depend on stdint, remove uint32_t.
33463
33464 2005-10-17  Simon Josefsson  <jas@extundo.com>
33465
33466         * modules/gc-sha1-tests: New file.
33467
33468         * tests/test-gc-sha1.c: New file.
33469
33470 2005-10-17  Simon Josefsson  <jas@extundo.com>
33471
33472         * m4/md5.m4: Remove call to uint32_t.m4.
33473
33474 2005-10-17  Simon Josefsson  <jas@extundo.com>
33475
33476         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
33477
33478         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
33479         md5.h.
33480
33481         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
33482
33483         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
33484
33485 2005-10-17  Simon Josefsson  <jas@extundo.com>
33486
33487         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
33488
33489 2005-10-17  Simon Josefsson  <jas@extundo.com>
33490
33491         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
33492
33493 2005-10-17  Simon Josefsson  <jas@extundo.com>
33494
33495         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
33496
33497         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
33498
33499 2005-10-17  Bruno Haible  <bruno@clisp.org>
33500
33501         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
33502         that it can also be used in a test.
33503
33504 2005-10-16  Bruno Haible  <bruno@clisp.org>
33505
33506         * gnulib-tool (func_emit_tests_Makefile_am): Also define
33507         TESTS_ENVIRONMENT, so that individual tests can augment it.
33508
33509         * gnulib-tool (func_create_testdir): Use an intermediate target for
33510         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
33511         macros, like $(ALLOCA_H), which cannot be passed through the command
33512         line.
33513
33514 2005-10-15  Simon Josefsson  <jas@extundo.com>
33515
33516         * modules/rijndael-tests: New file.
33517
33518         * modules/rijndael: New file.
33519
33520 2005-10-15  Simon Josefsson  <jas@extundo.com>
33521
33522         * m4/rijndael.m4: New file.
33523
33524 2005-10-15  Simon Josefsson  <jas@extundo.com>
33525
33526         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
33527
33528         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
33529
33530 2005-10-14  Simon Josefsson  <jas@extundo.com>
33531
33532         * tests/test-arcfour.c: New file.
33533
33534         * modules/arcfour, modules/arcfour-tests: New files.
33535
33536 2005-10-14  Simon Josefsson  <jas@extundo.com>
33537
33538         * m4/arcfour.m4: New file.
33539
33540 2005-10-14  Simon Josefsson  <jas@extundo.com>
33541
33542         * lib/arcfour.h, lib/arcfour.c: New files.
33543
33544 2005-10-14  Roland McGrath  <roland@redhat.com>
33545
33546         Import from libc.  [BZ #1331]
33547         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
33548         macro argument.
33549         Reported by Matej Vela <vela@debian.org>.
33550
33551 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
33552
33553         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
33554         include <wchar.h>; no longer needed.
33555
33556 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
33557
33558         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
33559
33560 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
33561         and  Ulrich Drepper  <drepper@redhat.com>
33562
33563         Import from libc.
33564         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
33565         instead of inline stream orientation test and two separate
33566         function calls.  Pay no attention to USE_IN_LIBIO.
33567
33568 2005-10-13  Simon Josefsson  <jas@extundo.com>
33569
33570         * modules/gc-hmac-md5-tests: New file.
33571
33572         * tests/test-gc-hmac-sha1.c: New file.
33573
33574         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
33575
33576         * modules/gc-hmac-md5-tests: New file.
33577
33578         * tests/test-gc-md5.c: New file.
33579
33580         * modules/gc-md5-tests: New file.
33581
33582 2005-10-13  Simon Josefsson  <jas@extundo.com>
33583
33584         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
33585         Move memory allocation outside of loop.
33586
33587 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
33588
33589         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
33590         intermediate directory is in a read-only file system.  Problem
33591         reported by Eric Blake.
33592
33593 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
33594
33595         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
33596
33597 2005-10-12  Simon Josefsson  <jas@extundo.com>
33598
33599         * tests/test-hmac-sha1.c: New file.
33600
33601         * modules/hmac-sha1-tests: New file.
33602
33603         * modules/hmac-sha1: New file.
33604
33605 2005-10-12  Simon Josefsson  <jas@extundo.com>
33606
33607         * modules/gc-sha1: New file.
33608
33609 2005-10-12  Simon Josefsson  <jas@extundo.com>
33610
33611         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
33612
33613         * tests/test-gc-pbkdf2-sha1.c: New file.
33614
33615 2005-10-12  Simon Josefsson  <jas@extundo.com>
33616
33617         * modules/gc-md5, modules/gc-hmac-md5: New files.
33618
33619         * modules/gc (Files): Remove md5, memxor and hmac files.
33620
33621 2005-10-12  Simon Josefsson  <jas@extundo.com>
33622
33623         * m4/gc-pbkdf2-sha1.m4: New file.
33624
33625         * m4/gc-hmac-sha1.m4: New file.
33626
33627         * m4/gc-sha1: New file.
33628
33629         * m4/hmac-sha1.m4: New file.
33630
33631 2005-10-12  Simon Josefsson  <jas@extundo.com>
33632
33633         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
33634
33635         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
33636
33637 2005-10-12  Simon Josefsson  <jas@extundo.com>
33638
33639         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
33640         suggested by Bruno Haible <bruno@clisp.org>.
33641
33642 2005-10-12  Simon Josefsson  <jas@extundo.com>
33643
33644         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
33645
33646 2005-10-12  Simon Josefsson  <jas@extundo.com>
33647
33648         * lib/gc-pbkdf2-sha1.c: New file.
33649
33650         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
33651
33652 2005-10-12  Simon Josefsson  <jas@extundo.com>
33653
33654         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
33655
33656         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
33657
33658 2005-10-12  Simon Josefsson  <jas@extundo.com>
33659
33660         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
33661         GC_USE_HMAC_MD5, respectively.
33662
33663         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
33664         (gc_md5): Fix typo.
33665
33666         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
33667
33668         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
33669
33670         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
33671
33672 2005-10-12  Bruno Haible  <bruno@clisp.org>
33673
33674         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
33675         Reported by Stepan Kasal <kasal@ucw.cz>.
33676
33677 2005-10-11  Simon Josefsson  <jas@extundo.com>
33678
33679         * tests/test-crc.c: New file.
33680
33681         * modules/crc, modules/crc-tests: New files.
33682
33683 2005-10-11  Simon Josefsson  <jas@extundo.com>
33684
33685         * m4/crc.m4: New file.
33686
33687 2005-10-11  Simon Josefsson  <jas@extundo.com>
33688
33689         * lib/gc.h: Add gc_hash and gc_hash_buffer.
33690
33691         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
33692
33693         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
33694
33695 2005-10-11  Simon Josefsson  <jas@extundo.com>
33696
33697         * lib/crc.h, lib/crc.c: New files.
33698
33699         * lib/gc.h (gc_hash_buffer): Add doc.
33700
33701 2005-10-11  Bruno Haible  <bruno@clisp.org>
33702
33703         * modules/c-strcasestr: New file.
33704         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
33705
33706 2005-10-11  Bruno Haible  <bruno@clisp.org>
33707
33708         * modules/c-strcase: New file.
33709         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
33710
33711 2005-10-11  Bruno Haible  <bruno@clisp.org>
33712
33713         * lib/strcasecmp.c: Include limits.h.
33714         (strcasecmp): Avoid integer overflow on exotic platforms.
33715         * lib/strncasecmp.c: Include limits.h.
33716         (strncasecmp): Avoid integer overflow on exotic platforms.
33717         Reported by Paul Eggert.
33718
33719 2005-10-11  Bruno Haible  <bruno@clisp.org>
33720
33721         * lib/c-strcasestr.h: New file, from GNU gettext.
33722         * lib/c-strcasestr.c: New file, from GNU gettext.
33723
33724 2005-10-11  Bruno Haible  <bruno@clisp.org>
33725
33726         * lib/c-strcase.h: New file, from GNU gettext.
33727         * lib/c-strcasecmp.c: New file, from GNU gettext.
33728         * lib/c-strncasecmp.c: New file, from GNU gettext.
33729
33730 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
33731
33732         * modules/mempcpy (License): GPL -> LGPL.
33733         * modules/strchrnul (License): Likewise.
33734         * modules/sysexits (License): Likewise.
33735
33736 2005-10-08  Simon Josefsson  <jas@extundo.com>
33737
33738         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
33739
33740 2005-10-07  Simon Josefsson  <jas@extundo.com>
33741
33742         * m4/memxor.m4: Remove gl_C_RESTRICT call.
33743
33744 2005-10-06  Simon Josefsson  <jas@extundo.com>
33745
33746         * tests/test-hmac-md5.c: New file.
33747
33748         * modules/hmac-md5-tests: New file.
33749
33750         * modules/hmac-md5: New file.
33751
33752 2005-10-06  Simon Josefsson  <jas@extundo.com>
33753
33754         * m4/hmac-md5.m4: New file.
33755
33756         * m4/memxor.m4: Require gl_C_RESTRICT.
33757
33758 2005-10-06  Simon Josefsson  <jas@extundo.com>
33759
33760         * lib/memxor.c (memxor): Avoid casts and warnings.
33761
33762 2005-10-06  Simon Josefsson  <jas@extundo.com>
33763
33764         * lib/hmac-md5.c: New file.
33765
33766         * lib/hmac.h: New file.
33767
33768 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
33769
33770         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
33771         promotes to int, not unsigned int, to catch the AIX 5.3
33772         compiler bug.
33773
33774 2005-10-05  Simon Josefsson  <jas@extundo.com>
33775
33776         * modules/memxor: New file.
33777
33778         * modules/iconv (Files): Move config.rpath to havelib, it is used
33779         there.
33780
33781         * modules/havelib (Files): Add config.rpath.
33782
33783 2005-10-05  Simon Josefsson  <jas@extundo.com>
33784
33785         * m4/memxor.m4: New file.
33786
33787 2005-10-05  Simon Josefsson  <jas@extundo.com>
33788
33789         * lib/memxor.c (memxor): Fix compiler error.
33790
33791         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
33792         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
33793
33794         * lib/memxor.h, lib/memxor.c: New files.
33795
33796         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
33797         we assume all systems have it, suggested by Jim Meyering
33798         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
33799         any systems lack sys/socket.h; mingw32 is known to lack it, but we
33800         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
33801         same reasons.
33802
33803 2005-10-05  Simon Josefsson  <jas@extundo.com>
33804
33805         * config/srclist.txt: Add glibc bug 1423 for md5.h.
33806
33807 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
33808
33809         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
33810         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
33811         needed, since the source code now assumes these .h files.
33812
33813 2005-10-05  Derek Price  <derek@ximbiot.com>
33814
33815         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
33816
33817 2005-10-05  Bruno Haible  <bruno@clisp.org>
33818
33819         * modules/stdint (License): Change to LGPL.
33820
33821 2005-10-04  Simon Josefsson  <jas@extundo.com>
33822
33823         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
33824         D. Baushke" <mdb@gnu.org>.
33825
33826 2005-10-04  Bruno Haible  <bruno@clisp.org>
33827
33828         * lib/verify.h (verify_true): Provide alternative definition for C++.
33829
33830 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
33831
33832         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
33833         (SSIZE_MAX): New macro, if not already defined.
33834         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
33835         than 2 GiB.
33836
33837 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
33838
33839         Sync from coreutils.
33840         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
33841         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
33842         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
33843         ULLONG_MAX doesn't work with 2.7.2.1.
33844
33845 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
33846
33847         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
33848         From Ben Pfaff.
33849
33850         * modules/exclude (Depends-on): Depend on verify.
33851         * modules/strtoimax (Depends-on): Likewise.
33852         * modules/utimecmp (Depends-on): Likewise.
33853
33854 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
33855
33856         * lib/exclude.c: Include verify.h.
33857         (verify): Remove.  All callers changed to use verify.h's version.
33858         * lib/strtoimax.c: Likewise.
33859         * lib/utimecmp.c: Likewis.e
33860
33861         Sync from coreutils.
33862         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
33863         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
33864         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
33865         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
33866         bother returning ENOSYS if settimeofday or stime fails; just let
33867         them return whatever errno they want to return.
33868         * lib/utimens.c: Include unistd.h, for dup2.
33869         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
33870         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
33871
33872 2005-10-02  Jim Meyering  <jim@meyering.net>
33873
33874         Sync from coreutils.
33875         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
33876         from glibc-2.2.5 that fails for read-only files.
33877
33878 2005-10-02  Jim Meyering  <jim@meyering.net>
33879
33880         Sync from coreutils.
33881         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
33882         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
33883         `#if HAVE_CONFIG_H'.
33884         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
33885         Remove AT_FDCWD test.
33886         Do not consume the fd unless successful.
33887         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
33888         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
33889         block, so that we don't even try to compile it if settimeofday is
33890         available.  This works around a compilation failure on OSF1 V5.1,
33891         due to stime requiring a `long int*' while tv_sec is `int'.
33892
33893 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
33894
33895         Sync from coreutils.
33896         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
33897         against `yes', rather than just testing for nonempty.
33898
33899 2005-10-01  Simon Josefsson  <jas@extundo.com>
33900
33901         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
33902         and Darwin.
33903
33904         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
33905         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
33906         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
33907         freeaddrinfo and gai_strerror are declared by the POSIX headers.
33908         Check if struct addrinfo is declared.
33909
33910 2005-10-01  Simon Josefsson  <jas@extundo.com>
33911
33912         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
33913         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
33914         AI_* and EAI_* definitions.  Protect function declarations.
33915
33916 2005-10-01  Jim Meyering  <jim@meyering.net>
33917
33918         Sync from coreutils.
33919
33920         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
33921         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
33922         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
33923         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
33924         in the inet and nsl libraries.  Required on Solaris 5.7.
33925
33926 2005-10-01  Jim Meyering  <jim@meyering.net>
33927
33928         Sync from coreutils.
33929         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
33930         in the inet and nsl libraries.  Required on Solaris 5.7.
33931
33932 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
33933
33934         * lib/getdelim.c (getdelim): Remove unused variables.
33935
33936 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
33937
33938         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
33939         so that the code works even with ancient cpp.  Portability problem
33940         with GCC 2.7.2.1 reported by Thomas M.Ott.
33941
33942 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
33943
33944         * modules/regex (Depends-on): Add strcase.
33945
33946         * modules/gethostname (Licence): Change from GPL to LGPL, since
33947         gethostname.c is a trivial implementation of a standard library
33948         function.
33949         * modules/poll (License): Change from GPL to LGPL, since it's
33950         derived from LGPL code.
33951
33952 2005-09-27  Jim Meyering  <jim@meyering.net>
33953
33954         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
33955         HAVE_CONFIG_H.
33956
33957         * lib/intprops.h (signed_type_or_expr__): Define.
33958         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
33959         for unsigned types.
33960
33961 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
33962
33963         * lib/verify.h (verify_expr): Remove, replacing with:
33964         (verify_true): New macro that returns true instead of void.
33965         (verify_type__): Remove.
33966         (verify): Use verify_true rather than verify_type__.
33967
33968 2005-09-26  Bruno Haible  <bruno@clisp.org>
33969
33970         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
33971         is necessary.
33972         (lib_SOURCES): Remove mbchar.c.
33973         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
33974         (Files): Add m4/mbrtowc.m4.
33975         * modules/mbiter: Likewise.
33976         * modules/mbuiter: Likewise.
33977
33978 2005-09-26  Bruno Haible  <bruno@clisp.org>
33979
33980         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
33981         compile mbchar.c if they are not both present.
33982         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
33983         * m4/mbiter.m4 (gl_MBITER): Likewise.
33984         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
33985         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
33986         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
33987
33988 2005-09-25  Jim Meyering  <jim@meyering.net>
33989
33990         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
33991         also uses socklen_t.
33992
33993 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
33994
33995         * lib/utimens.c (ENOSYS): Define if not already defined.
33996         (futimens): Support having a null PATH if the file descriptor
33997         is nonnegative.
33998
33999         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
34000         Remove.
34001         (__attribute): Define to empty unless GCC 3.1 or later.
34002         This works around a core dump on OpenBSD 3.4, which has GCC
34003         2.95.3, which dumps core when given __attribute__(()).  It also
34004         simplifies other tests, since we really don't want to bother with
34005         worrying about which ancient version of GCC supported what.
34006         Original problem reported by Yoann Vandoorselaere, with part of
34007         the fix suggested by Derek Price.
34008
34009 2005-09-24  Jim Meyering  <jim@meyering.net>
34010
34011         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
34012         so we can once again use a positive bitfield width of 1 -- now we
34013         don't have to explain why we were using a bitfield width of 2.
34014
34015 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
34016
34017         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
34018         and similarly for the other external symbols.  Problem reported
34019         by James Gallager.
34020
34021         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
34022         bug reported by Jim Meyering.
34023
34024         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
34025         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
34026         not needed, since socklen is a prerequisite module.
34027
34028 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
34029
34030         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
34031         Problem reported by Eric Blake.
34032         (getaddrinfo): Initialize se so that it's not garbage.
34033         Redo internal storage allocation so that it doesn't make unportable
34034         assumptions about alignment.
34035         Fix a memory leak.
34036
34037         * lib/utimens.c (futimens): Use futimesat if available.
34038         Prefer it to futimes since it doesn't have the futimes bug.
34039
34040         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
34041         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
34042         Instead, declare a function that returns a pointer to an array,
34043         and use verify_type__ to declare the size of the array.
34044         Problem and germ of a solution reported by Bruno Haible.
34045         (verify_type__): Use 2, not 1, for bitfield size, to avoid
34046         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
34047
34048 2005-09-23  Jim Meyering  <jim@meyering.net>
34049
34050         Sync from coreutils.
34051         Correct build failure (socklen_t not defined) on at least
34052         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
34053         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
34054
34055 2005-09-23  Jim Meyering  <jim@meyering.net>
34056
34057         * modules/getaddrinfo (Depends-on): Add socklen.
34058
34059 2005-09-23  Bruno Haible  <bruno@clisp.org>
34060
34061         * tests/test-verify.c: New file.
34062
34063 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
34064
34065         Sync from coreutils.
34066
34067         * modules/argmatch (Depends-on): Add verify.
34068         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
34069         unistd-safer.
34070         * modules/save-cwd (Depends-on): Likewise.
34071
34072         * modules/openat (Files): Add lib/openat-die.c.
34073         (Depends-on): Remove error, exitfail.
34074         Add dirname.
34075
34076         * modules/verify: New file.
34077         * MODULES.html.sh (Diagnostics <assert.h>): New section,
34078         with "verify" module.
34079
34080 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
34081
34082         Sync from coreutils.
34083
34084         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
34085         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
34086         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
34087         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
34088         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
34089         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
34090         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
34091         Don't bother checking for string.h, stdlib.h, unistd.h.
34092         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
34093         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
34094         module's job.
34095         * m4/jm-macros.m4 (gl_MACROS): Likewise.
34096         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
34097
34098         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
34099         (gl_GETDATE): Use it.
34100
34101         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
34102
34103 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
34104
34105         Sync from coreutils.
34106
34107         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
34108         stat-time.h.
34109         * lib/argmatch.h: Include verify.h
34110         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
34111         (ARGMATCH_ASSERT): Remove; unused.
34112         * lib/canonicalize.c: Assume STDC_HEADERS.
34113         * lib/exclude.c: Include "strcase.h".
34114         * lib/regex_internal.h [!defined _LIBC]: Likewise.
34115         * lib/getusershell.c: Include stdio--.h rather than stdio.h
34116         and stdio-safer.h.
34117         (getusershell): Call fopen, not fopen_safer.
34118         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
34119         Do not include unistd-safer.h.
34120         (save_cwd): Don't call fd_safer; no longer needed
34121         now that we include fcntl--.h.
34122
34123         * lib/getdate.y (relative_time): New type.
34124         (RELATIVE_TIME_0): New constant.
34125         (parser_control): Use relative_time instead of doing it ourselves.
34126         (%union): Add new relative_time rel member.
34127         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
34128         Now typeless.
34129         (relunit, relunit_snumber): Now of type rel.
34130         (zone, rel, relunit, get_date): Adjust to above changes.
34131
34132         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
34133         Do not include unistd-safer.h.
34134         (getloadavg): Don't call fd_safer; no longer needed
34135         now that we include fcntl--.h.
34136
34137         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
34138         (make_dir_parents): Treat ENOSYS like EEXIST.
34139
34140         Improve quality of diagnostics on restore_cwd failure.
34141         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
34142         (make_dir_parents): Last arg is now int * (for errno), not bool *.
34143         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
34144         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
34145         each time through the loop.  Do not diagnose restore_cwd failure;
34146         that is the caller's job (and perhaps the caller does not care).
34147
34148         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
34149         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
34150         If the file already exists but is not a directory, don't bother
34151         to try to make its parents.
34152         Close potential file descriptor leak if we can't chdir("/") (!).
34153         Don't always return true if chdir($PWD) fails; return true only
34154         if the requested action was done successfully (except for the
34155         chdir($PWD)).
34156         Don't log final directory unless we actually made it.
34157         Refactor to avoid duplicate code to fix up permissions.
34158         Don't attempt to fix up parent permissions if chdir($PWD) fails.
34159
34160         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
34161         to make it a bit faster and (I hope) clearer.
34162         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
34163         Fix bug in formats like %2N.
34164
34165         * lib/verify.h: New file.
34166
34167 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
34168
34169         Sync from coreutils.
34170         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
34171
34172 2005-09-22  Jim Meyering  <jim@meyering.net>
34173
34174         Sync from coreutils.
34175
34176         * m4/lstat.m4 (gl_FUNC_LSTAT):
34177         Use AC_LIBSOURCES to require lstat.c and lstat.h.
34178         Remove obsolete comment.
34179         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
34180         * m4/xstrtod.m4: Likewise.
34181
34182         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
34183
34184 2005-09-22  Jim Meyering  <jim@meyering.net>
34185
34186         Sync from coreutils.
34187
34188         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
34189
34190         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
34191         the .tm_year member, since otherwise gcc-4.0 would now warn about
34192         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
34193
34194         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
34195         order to avoid an unsuppressible warning from gcc on 64-bit systems.
34196
34197         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
34198         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
34199         when run in a time zone for which daylight savings time is in effect
34200         for the starting date.
34201
34202         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
34203         stop us from restricting permissions of just-created absolute-named
34204         directories.
34205         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
34206         to restore initial working directory.
34207         * lib/mkdir-p.c (make_dir_parents): New parameter:
34208         different_working_dir, to tell caller if/when we change the working
34209         directory and are unable to return to the initial one.
34210         * lib/mkdir-p.h (make_dir_parents): Update prototype.
34211         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
34212         `return false'.  This fixes a bug introduced on 2004-07-30.
34213
34214         * lib/openat.c (fdopendir): Be sure to close the supplied
34215         file descriptor before returning.  This makes our replacement
34216         implementation a little closer to Solaris's, where fdopendir
34217         ties the file descriptor to the returned DIR* pointer.
34218         * lib/openat.c (unlinkat): New function.
34219         * lib/openat.h (unlinkat): Add prototype.
34220         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
34221         (openat_restore_fail): Rename from openat_restore_die.
34222         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
34223
34224         Provide an alternative to exiting immediately upon save_cwd or
34225         restore_cwd failure.  Now, an application can arrange e.g.,
34226         to perform a longjump in that case.
34227         * lib/openat.c: Include dirname.h.
34228         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
34229         (rpl_openat, fdopendir, fstatat): Call openat_save_die
34230         and openat_restore_die rather than calling error directly.
34231         Don't include "error.h" or "exitfail.h"; they're no longer needed.
34232
34233         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
34234         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
34235         define.
34236
34237         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
34238         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
34239                             int utc, int nanoseconds);
34240         Background:
34241         date should not have to allocate a megabyte of virtual memory to
34242         handle a format argument like +%1048575T.  When implemented with
34243         strftime, it must allocate such a buffer, use strftime to fill it
34244         in, print it, then free it.
34245         With fprintftime, it simply prints everything and exits.
34246         With no need for memory allocation, that's one fewer way to fail.
34247         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
34248         optional field width, not before, so we accept %9:z, not %:9z.
34249         (my_strftime): Be sure to use L_('x') for literals.
34250
34251         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
34252         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
34253         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
34254         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
34255         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
34256         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
34257         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
34258         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
34259         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
34260         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
34261         * lib/xgethostname.c, lib/xreadlink.c:
34262         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
34263
34264         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
34265         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
34266         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
34267         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
34268         and don't include <sys/file.h>).
34269
34270 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
34271
34272         Sync from coreutils.
34273
34274         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
34275         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
34276         [!LDAV_DONE]: Avoid unused variable warning.
34277
34278 2005-09-21  Bruno Haible  <bruno@clisp.org>
34279
34280         * lib/unicodeio.h (unicode_to_mb): New declaration.
34281
34282 2005-09-20  Derek Price  <derek@ximbiot.com>
34283
34284         * lib/getaddrinfo.c: Don't include <netdb.h> included from
34285         getaddrinfo.h.
34286
34287 2005-09-20  Bruno Haible  <bruno@clisp.org>
34288
34289         * gnulib-tool: Remove trailing slashes from the values specified for
34290         --source-base, --m4-base, --tests-base, --aux-dir.
34291         Suggested by Simon Josefsson <jas@extundo.com>.
34292
34293 2005-09-20  Bruno Haible  <bruno@clisp.org>
34294
34295         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
34296         func_modules_to_filelist, func_import, func_create_testdir): Make all
34297         sorting results locale-independent, so that gnulib-cache.m4 doesn't
34298         change when gnulib-tool is invoked in a different locale.
34299
34300 2005-09-19  Simon Josefsson  <jas@extundo.com>
34301
34302         * m4/socklen.m4: Fix typo.
34303
34304 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34305
34306         Use a consistent style for including <config.h>.
34307         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
34308         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
34309         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
34310         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
34311         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
34312         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
34313         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
34314         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
34315         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
34316         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
34317         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
34318         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
34319         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
34320         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
34321         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
34322         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
34323         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
34324         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
34325         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
34326         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
34327         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
34328         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
34329         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
34330         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
34331         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
34332         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
34333         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
34334         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
34335         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
34336         lib/xstrtoumax.c, lib/yesno.c:
34337         Standardize inclusion of config.h.
34338         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
34339         lib/inttostr.h:  Removed inclusion of config.h from header files.
34340         * lib/inttostr.c:  Adjusted in-tree users.
34341         * lib/timespec.h: Remove superfluous warning to include config.h.
34342         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
34343         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
34344         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
34345         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
34346         config.h with HAVE_CONFIG_H.
34347
34348 2005-09-19  Jim Meyering  <jim@meyering.net>
34349
34350         * modules/pathmax (License): Change to LGPL.
34351
34352 2005-09-19  Derek Price  <derek@ximbiot.com>
34353
34354         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
34355
34356 2005-09-19  Bruno Haible  <bruno@clisp.org>
34357
34358         * gnulib-tool (import): Provide default for --tests-base.
34359
34360 2005-09-19  Bruno Haible  <bruno@clisp.org>
34361
34362         * doc/quote.texi: New file, extracted from gnulib.texi.
34363         * doc/ctime.texi: New file, extracted from gnulib.texi.
34364         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
34365         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
34366         * doc/gnulib.texi: Include them.
34367
34368 2005-09-18  Bruno Haible  <bruno@clisp.org>
34369
34370         Portability fix.
34371         * gnulib-tool (func_readlink): New function.
34372         (func_ln_if_changed): Use it.
34373
34374 2005-09-18  Bruno Haible  <bruno@clisp.org>
34375
34376         * gnulib-tool: Support --with-tests also with --import.
34377         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
34378         (func_import): Use variables $testsbase and $inctests. Emit a
34379         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
34380         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
34381         SUBDIRS += $testsdir.
34382         (func_create_testdir): Update.
34383
34384 2005-09-18  Bruno Haible  <bruno@clisp.org>
34385
34386         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
34387         instead of $dry_run.
34388         (func_cp_if_changed, func_mv_if_changed): Remove functions.
34389         (func_ln_if_changed): Don't handle dry-run here.
34390         (func_import): In dry-run mode, detect more precisely which actions
34391         would be performed, and don't use "...ing" verbs.
34392
34393 2005-09-18  Bruno Haible  <bruno@clisp.org>
34394
34395         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
34396         (func_import): Use join on two temporary files instead of three nested
34397         loops, in order to determine which files are new or old.
34398
34399 2005-09-18  Bruno Haible  <bruno@clisp.org>
34400
34401         * gnulib-tool (func_import): Comment out code that spits out the
34402         new files with --dry-run.
34403
34404 2005-09-18  Bruno Haible  <bruno@clisp.org>
34405
34406         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
34407
34408 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
34409
34410         * lib/stat-time.h: New file.
34411         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
34412         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
34413         in a different way.
34414         (timespec_cmp): New function.
34415         * lib/utimecmp.c: Include stat-time.h.
34416         (SYSCALL_RESOLUTION): Depend on whether various struct stat
34417         members exist, not on the obsolescent ST_MTIM_NSEC.
34418         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
34419
34420 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
34421
34422         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
34423
34424 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
34425
34426         * MODULES.html.sh (File system functions): Add stat-time.
34427         * modules/stat-time: New file.
34428         * modules/timespec (Files): Remove m4/st_mtim.m4; this
34429         is now done in a different way, by the stat-time module.
34430         * modules/utimecmp (Depends-on): Add stat-time.
34431
34432 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
34433
34434         * m4/st_mtim.m4: Remove.  Superseded by...
34435         * m4/stat-time.m4: New file.
34436         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
34437         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
34438
34439 2005-09-15  Derek Price  <derek@ximbiot.com>
34440
34441         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
34442
34443 2005-09-15  Derek Price  <derek@ximbiot.com>
34444
34445         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
34446         * lib/regex_internal.c: Ditto, using this...
34447         (__GNUC_PREREQ): ...new macro.
34448         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
34449         using...
34450         (__GNUC_PREREQ): ...this new macro.
34451
34452         * lib/strstr.h: Include string.h. Define strstr as a macro here.
34453
34454 2005-09-15  Derek Price  <derek@ximbiot.com>
34455             Paul Eggert  <eggert@cs.ucla.edu>
34456
34457         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
34458         changes, consolidating in...
34459         * lib/regex_internal.h: ...this file.
34460
34461 2005-09-13  Jim Meyering  <jim@meyering.net>
34462
34463         * lib/canon-host.c: Filter through gnu indent and reword comments
34464         slightly.
34465         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
34466
34467 2005-09-13  Derek Price  <derek@ximbiot.com>
34468
34469         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
34470         failure.
34471         Reported by Jim Meyering  <jim@meyering.net>.
34472
34473 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
34474
34475         * lib/base64.c: Typo.
34476         (base64_encode): Put b64str in initialized data section.
34477
34478 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
34479
34480         Merge glibc and coreutils changes into gnulib, plus a few
34481         extra fixes.
34482         * lib/md5.c: Use #error rather than a string.
34483         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
34484         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
34485         (__attribute__): Define to empty for non recent-GCC.
34486         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
34487         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
34488         Renamed from their non-__ counterparts, with new macros replacing
34489         them if not _LIBC.  Add __THROW attribute.
34490         (rol): Remove.
34491         (struct md5_ctx): Align buffer if using GCC.
34492         * lib/sha1.h (struct sha1_ctx): Likewise.
34493         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
34494         The old name was backwards.
34495         (NOTSWAP): Remove; not used.
34496         (rol): New macro, moved here from md5.h.
34497         (sha1_process_block): Remove a FIXME that doesn't make sense.
34498
34499 2005-09-12  Derek Price  <derek@ximbiot.com>
34500
34501         Return usable errors from canon-host.
34502         * lib/canon-host.h: New file.
34503         * lib/canon-host.c (canon_host): Wrap...
34504         (canon_host_r): ...this new function, which now relies exclusively on
34505         getaddrinfo.
34506         (ch_strerror): New function.
34507         (last_cherror): New global.
34508         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
34509         interface.
34510         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
34511         void *.
34512         (freeaddrinfo): Free ai->ai_canonname when set.
34513
34514 2005-09-12  Derek Price  <derek@ximbiot.com>
34515
34516         Make canon-host require getaddrinfo.
34517         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
34518         AC_LIBSOURCE canon-host.h.  Call...
34519         (gl_PREREQ_CANON_HOST): ...this new function, which requires
34520         gl_GETADDRINFO.
34521         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
34522
34523 2005-09-12  Derek Price  <derek@ximbiot.com>
34524
34525         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
34526         LGPL.
34527         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
34528
34529 2005-09-12  Derek Price  <derek@ximbiot.com>
34530
34531         * lib/gai_strerror.c: Include config.h when available.  Include
34532         getaddrinfo.h before other headers to test interface.
34533         Reported by Larry Jones <lawrence.jones@ugs.com>.
34534
34535 2005-09-12  Derek Price  <derek@ximbiot.com>
34536             Paul Eggert  <eggert@cs.ucla.edu>
34537
34538         * modules/glob (Files): Add glob-libc.h.
34539
34540 2005-09-12  Derek Price  <derek@ximbiot.com>
34541             Paul Eggert  <eggert@cs.ucla.edu>
34542
34543         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
34544         glob_.h, glob-libc.h.
34545         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
34546
34547 2005-09-12  Derek Price  <derek@ximbiot.com>
34548             Paul Eggert  <eggert@cs.ucla.edu>
34549
34550         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
34551         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
34552         protecting things that should be done only in gnulib contexts.
34553         * lib/glob_.h: New file, containing only the glob things needed for
34554         gnulib.
34555         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
34556         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
34557         (glob, globfree, glob_pattern_p): Now defined simply in terms of
34558         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
34559         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
34560         and to respect the namespace rules better.
34561
34562 2005-09-08  Simon Josefsson  <jas@extundo.com>
34563
34564         * modules/socklen: New file.
34565
34566 2005-09-08  Simon Josefsson  <jas@extundo.com>
34567
34568         * m4/socklen.m4: New file.
34569
34570 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
34571
34572         * modules/utimens (Files): Add m4/utimbuf.m4, since
34573         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
34574         Reported by Sergey Poznyakoff.
34575
34576 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
34577
34578         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
34579         definitions, since that's the preferred style in glibc.
34580         Fix a minor spacing issue, and update copyright notice to match
34581         glibc's.
34582
34583 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
34584
34585         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
34586
34587 2005-09-06  Simon Josefsson  <jas@extundo.com>
34588
34589         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
34590         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
34591
34592 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
34593
34594         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
34595         warning.
34596
34597 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
34598
34599         * config/srclist.txt: Add glibc bug 1302.
34600
34601 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
34602
34603         Change bitset word type from unsigned int to unsigned long int,
34604         as this has better performance on typical 64-bit hosts.
34605         Port bitset code to hosts with unusual word sizes.
34606         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
34607         (build_collating_symbol):
34608         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
34609         argument is a bitset.  This is merely a style issue, but it makes
34610         it clearer that an entire array is expected.
34611         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
34612         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
34613         Port to the case where bitset_word is not the same as unsigned int.
34614         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
34615         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
34616         Likewise.
34617         * lib/regexec.c (check_dst_limits_calc_pos_1,
34618         check_subexp_matching_top):
34619         (build_trtable, group_nodes_into_DFAstates):
34620         Likewise.
34621         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
34622         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
34623         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
34624         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
34625         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
34626         * lib/regcomp.c (optimize_subexps, lower_subexp):
34627         Work even if bitset_word has holes in its bitwise representation.
34628         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
34629         * lib/regexec.c (check_dst_limits_calc_pos_1,
34630         check_subexp_matching_top):
34631         Likewise.
34632         * lib/regex_internal.c (re_string_reconstruct):
34633         Don't assume UCHAR_MAX == 255.
34634         * lib/regex_internal.h (bitset_set_all): Likewise.
34635         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
34636         All uses changed.
34637         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
34638         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
34639         All uses changed.
34640         (BITSET_WORD_MAX): New macro.
34641         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
34642         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
34643         (bitset_empty, bitset_copy):
34644         Prefer sizeof (bitset) to multiplying it out ourselves.
34645         (bitset_not_merge): Remove; unused.
34646         (bitset_contain): Return bool, not unsigned int with one bit on.
34647         All callers changed.
34648         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
34649         alignment than re_node_set; do this by defining a new internal
34650         type struct dests_alloc and using it to allocate memory.
34651
34652 2005-09-05  Bruno Haible  <bruno@clisp.org>
34653
34654         * gnulib-tool (func_import): Fix comparison in handling of symbolic
34655         links.
34656
34657 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
34658
34659         * modules/size_max (Makefile.am): Add size_max.h
34660
34661 2005-09-04  Derek Price  <derek@ximbiot.com>
34662
34663         * gnulib-tool (func_import): Fix reversed $symbolic logic.
34664
34665 2005-09-03  Simon Josefsson  <jas@extundo.com>
34666
34667         * gnulib-tool: Fix typo.
34668
34669 2005-09-03  Simon Josefsson  <jas@extundo.com>
34670
34671         * config/srclist.txt: Add glibc bug 1293.
34672
34673 2005-09-03  Derek Price  <derek@ximbiot.com>
34674
34675         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
34676         From Larry Jones <lawrence.jones@ugs.com>.
34677
34678 2005-09-02  Simon Josefsson  <jas@extundo.com>
34679
34680         * modules/socklen: New file.
34681
34682 2005-09-02  Simon Josefsson  <jas@extundo.com>
34683
34684         * modules/havelib: New module.
34685
34686         * modules/gettext, modules/iconv, modules/lock, modules/readline:
34687         Use havelib.
34688
34689 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
34690
34691         Check for arithmetic overflow when calculating sizes, to prevent
34692         some buffer-overflow issues.  These patches are conservative, in the
34693         sense that when I couldn't determine whether an overflow was possible,
34694         I inserted a run-time check.
34695         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
34696         macros.
34697         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
34698         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
34699         (re_xnrealloc, re_x2nrealloc): New inline functions.
34700         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
34701         parse_bracket_exp):
34702         (build_equiv_class, build_charclass): Check for arithmetic overflow
34703         in size expression calculations.
34704         * lib/regex_internal.c (re_string_realloc_buffers):
34705         (build_wcs_upper_buffer, re_node_set_add_intersect):
34706         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
34707         (re_dfa_add_node, register_state): Likewise.
34708         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
34709         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
34710         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
34711         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
34712
34713 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
34714
34715         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
34716         m4/ulonglong.m4.  Problem reported by Martin Lambers.
34717
34718 2005-09-02  Bruno Haible  <bruno@clisp.org>
34719
34720         Support for lib vs. lib64 distinction on biarch platforms.
34721         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
34722         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
34723         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
34724
34725 2005-09-02  Bruno Haible  <bruno@clisp.org>
34726
34727         * gnulib-tool (import): In the other first-use case, provide defaults
34728         as well.
34729
34730 2005-09-02  Bruno Haible  <bruno@clisp.org>
34731
34732         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
34733         patches not yet found in the latest gettext release.
34734
34735 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
34736
34737         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
34738         to avoid a collision with bits/local_lim.h in glibc.
34739         All uses changed.  Problem reported by Dmitry V. Levin in
34740         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
34741
34742         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
34743         bugs in int versus size_t comparisons.
34744         (re_string_context_at): Fix bug where the code assumed that
34745         Idx is signed.
34746
34747         Use bool where appropriate.
34748         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
34749         All callers changed.
34750         (calc_eclosure_iter): Likewise, for ROOT arg.
34751         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
34752         (build_charclass_op): Likewise, for NON_MATCH arg.
34753         * lib/regex_internal.c (re_string_allocate, re_string_construct):
34754         (re_string_construct_common): Likewise, for ICASE arg.
34755         * lib/regexec.c (re_search_2_stub, re_search_stub):
34756         Likewise, for RET_LEN arg.
34757         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
34758         (set_regs): Likewise, for FL_BACKTRACK arg.
34759         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
34760         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
34761         (calc_eclosure_iter, parse_bracket_exp):
34762         Use bool for internal variables that are booleans.
34763         * lib/regexec.c (re_search_internal, check_matching,
34764         proceed_next_node):
34765         (set_regs, build_sifted_states, sift_states_bkref):
34766         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
34767         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
34768         (find_collation_sequence_value):
34769         Likewise.
34770         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
34771         (re_node_set_compare):
34772         Return bool, not int. All callers changed.
34773         * lib/regexec.c (check_halt_node_context, check_dst_limits):
34774         (build_trtable, check_node_accept): Likewise.
34775         * lib/regex_internal.h: Include stdbool.h.
34776
34777         Fix bugs uncovered when converting to bool.
34778         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
34779         failure instead of charging ahead blindly.
34780         * lib/regex_internal.c (register_state): Likewise.
34781         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
34782         for freeing internal storage.
34783         (group_nodes_into_DFA_states): Use unsigned int, not int, for
34784         bitset pieces used as boolean, to avoid undefined behavior
34785         on hosts that do int overflow checking.
34786
34787 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
34788
34789         * config/srclist.txt: Add glibc bugs 1285-1287.
34790
34791 2005-09-01  Jim Meyering  <jim@meyering.net>
34792
34793         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
34794         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
34795         Require gl_STAT_MACROS, too.
34796
34797 2005-09-01  Bruno Haible  <bruno@clisp.org>
34798
34799         * gnulib-tool (import): In the first-use case, provide defaults.
34800
34801 2005-09-01  Bruno Haible  <bruno@clisp.org>
34802
34803         * gnulib-tool (func_import): Remove the .tmp files.
34804
34805 2005-09-01  Bruno Haible  <bruno@clisp.org>
34806
34807         * gnulib-tool (func_import): Fix handling of symbolic links.
34808
34809 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34810
34811         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
34812         old glibc regex code mishandles strings longer than 2**31 bytes.
34813         This patch fixes this when the regex code is used in gnulib
34814         (i.e., outside glibc).
34815
34816         This patch should not affect the use of the regex code inside
34817         glibc.  No doubt this problem also needs to be handled for glibc
34818         as well, but the result will be an incompatible change to the
34819         glibc ABI, and the old ABI will have to be supported too.  That
34820         can be the the subject for another patch.
34821
34822         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
34823         governing whether the rest of this patch is active.  By default,
34824         the macro is disabled and the patch has no effect.
34825         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
34826         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
34827         (struct re_pattern_buffer, re_search, re_search_2, re_match):
34828         (re_match_2, re_set_registers): Use the new types.
34829         * lib/regex_internal.h (Idx, re_hashval_t): New types.
34830         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
34831         New macros.
34832         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
34833         (re_string_context_at, bin_tree_t, re_dfastate_t):
34834         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
34835         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
34836         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
34837         (re_string_char_size_at, re_string_wchar_at):
34838         (re_string_elem_size_at):
34839         Use the new types and macros to port to 64-bit hosts.
34840         Use unsigned types for internal values, so that the code
34841         mostly works even for arrays larger than SSIZE_MAX.
34842         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
34843         (search_duplicated_node, calc_eclosure_iter, fetch_number):
34844         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
34845         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
34846         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
34847         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
34848         (calc_inveclosure, parse_dup_op, build_range_exp):
34849         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
34850         (fetch_number, create_token_tree, mark_opt_subexp):
34851         Likewise.
34852         * lib/regex_internal.c (re_string_construct_common,
34853         create_ci_newstate):
34854         (create_cd_newstate, re_string_allocate, re_string_construct):
34855         (re_string_realloc_buffers, build_wcs_upper_buffer):
34856         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
34857         (re_string_reconstruct, re_string_peek_byte_case):
34858         (re_string_fetch_byte_case, re_string_context_at):
34859         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
34860         (re_node_set_init_copy, re_node_set_add_intersect):
34861         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
34862         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
34863         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
34864         (re_acquire_state, re_acquire_state_context, register_state):
34865         Likewise.
34866         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
34867         search_cur_bkref_entry):
34868         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
34869         (re_search_internal, re_search_2_stub, re_search_stub)
34870         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
34871         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
34872         (update_cur_sifted_state, check_dst_limits):
34873         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
34874         (check_subexp_limits, sift_states_bkref, merge_state_array):
34875         (check_subexp_matching_top, get_subexp, get_subexp_sub):
34876         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
34877         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
34878         (expand_bkref_cache, check_node_accept_bytes):
34879         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
34880         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
34881         (acquire_init_state_context, check_halt_node_context):
34882         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
34883         (sift_states_backward, clean_state_log_if_needed):
34884         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
34885         (find_recover_state, transit_state_sb, transit_state_mb):
34886         (transit_state_bkref, build_trtable, match_ctx_clean):
34887         Likewise.
34888         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
34889         to work around an assumption that REG_MISSING is negative.
34890
34891         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
34892         (seek_collating_symbol_entry) [defined _LIBC]:
34893         (lookup_collation_sequence_value) [defined _LIBC]:
34894         (build_range_exp, build_collating_symbol) [defined _LIBC]:
34895         Use prototypes rather than old-style function definitions.
34896         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
34897         (transit_state_sb) [0]:
34898         (find_collation_sequence_value) [defined _LIBC]: Likewise.
34899
34900         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
34901         rm_eo.
34902
34903         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
34904         (optimize_subexps, lower_subexp):
34905         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
34906         since the signed shift might overflow.  Use 1u<<31 instead.
34907         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
34908         Likewise.
34909         * lib/regexec.c (check_dst_limits_calc_pos_1,
34910         check_subexp_matching_top): Likewise.
34911
34912         * lib/regcomp.c (optimize_subexps, lower_subexp):
34913         Use CHAR_BIT rather than 8, for clarity.
34914         * lib/regexec.c (check_dst_limits_calc_pos_1):
34915         (check_subexp_matching_top): Likewise.
34916         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
34917         have to worry about portability issues when shifting it left.
34918         Remove no-longer-needed test for table_size > 0.
34919         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
34920         in a word, as the resulting behavior is undefined.
34921         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
34922         in one case, a <= should have been an <, and in another case the
34923         whole test was missing.
34924         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
34925         the standard name CHAR_BIT.
34926         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
34927         this is not true on one's complement and signed-magnitude hosts.
34928
34929         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
34930         next_last_offset.
34931         (struct re_dfa_t): Remove unused member states_alloc.
34932         * lib/regcomp.c (init_dfa): Don't initialize unused members.
34933
34934 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34935
34936         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
34937         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
34938         and large-file glibc and in 32-bit large-file Solaris.
34939
34940 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34941
34942         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
34943         lengths fit in regoff_t; this isn't true if regoff_t is the same
34944         width as size_t.
34945         * lib/regex.c (re_search_internal): 5th arg is LAST_START
34946         (= START + RANGE) instead of RANGE.  This avoids overflow
34947         problems when regoff_t is the same width as size_t.
34948         All callers changed.
34949         (re_search_2_stub): Check for overflow when adding the
34950         sizes of the two strings.
34951         (re_search_stub): Check for overflow when adding START
34952         to RANGE; if it occurs, substitute the extreme value.
34953
34954 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34955
34956         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
34957
34958 2005-08-31  Jim Meyering  <jim@meyering.net>
34959
34960         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
34961         a pointer-to-const.
34962         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
34963         (register_state): Likewise.
34964         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
34965         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
34966         (group_nodes_into_DFAstates): Likewise.
34967
34968 2005-08-31  Jim Meyering  <jim@meyering.net>
34969
34970         * check-module: Add a FIXME comment.
34971
34972 2005-08-31  Eric Blake  <ebb9@byu.net>
34973
34974         * modules/unistd-safer (Files): Add unistd--.h.
34975         * modules/stdio-safer (Files): Add stdio--.h.
34976
34977 2005-08-31  Derek Price  <derek@ximbiot.com>
34978
34979         * lib/getdelim.c (getdelim): Return EOF on EOF.
34980         Reported by Larry Jones <lawrence.jones@ugs.com>.
34981
34982 2005-08-31  Bruno Haible  <bruno@clisp.org>
34983
34984         Avoid unnecessary diffs in the generated lib/Makefile.am.
34985         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
34986         the generated files.
34987         (func_import): Don't set cmd.
34988
34989 2005-08-31  Bruno Haible  <bruno@clisp.org>
34990
34991         * lib/strstr.c: Include <stddef.h>, for NULL.
34992         * lib/strcasestr.c: Likewise.
34993         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
34994
34995 2005-08-31  Bruno Haible  <bruno@clisp.org>
34996
34997         * gnulib-tool: New option --macro-prefix.
34998         (func_import): Use macro_prefix.
34999         (import): Handle option --macro-prefix.
35000
35001 2005-08-31  Bruno Haible  <bruno@clisp.org>
35002
35003         * gnulib-tool (import): Rename most ac_* variables to cached_*.
35004         Also use new variables cached_lgpl, cached_libtool.
35005
35006 2005-08-31  Bruno Haible  <bruno@clisp.org>
35007
35008         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
35009         always instantiating them.
35010
35011 2005-08-31  Bruno Haible  <bruno@clisp.org>
35012
35013         * gnulib-tool (func_import): Read the previous cached settings
35014         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
35015         earlier added by gnulib but are now dropped. Warn when a gnulib file
35016         overwrites a non-gnulib file.
35017
35018 2005-08-31  Bruno Haible  <bruno@clisp.org>
35019
35020         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
35021         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
35022         projects that don't keep autogenerated files in CVS. Put into
35023         actioncmd only the specified modules, not the transitive closure.
35024
35025 2005-08-31  Bruno Haible  <bruno@clisp.org>
35026
35027         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
35028         Create directories that shall be filled.
35029         (import): Don't look for gl_* macros in configure.ac. Recurse across
35030         all directories containing a gnulib-cache.m4 files, if meaningful.
35031
35032 2005-08-31  Bruno Haible  <bruno@clisp.org>
35033
35034         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
35035         (import): Set seen_libtool when we see gl_LIBTOOL.
35036
35037 2005-08-31  Bruno Haible  <bruno@clisp.org>
35038
35039         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
35040         declaration macro definitions from generated gnulib.m4.
35041
35042 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
35043
35044         * lib/iconvme.h: Add prototype for iconv_alloc.
35045
35046 2005-08-29  Simon Josefsson  <jas@extundo.com>
35047
35048         * lib/iconvme.c: Fix errno.
35049
35050 2005-08-29  Bruno Haible  <bruno@clisp.org>
35051
35052         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
35053         that it works when the directory contains spaces.
35054
35055 2005-08-29  Bruno Haible  <bruno@clisp.org>
35056
35057         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
35058
35059 2005-08-29  Bruno Haible  <bruno@clisp.org>
35060
35061         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
35062         Emit more advice.
35063
35064 2005-08-29  Bruno Haible  <bruno@clisp.org>
35065         and Stepan Kasal  <kasal@ucw.cz>
35066
35067         * check-module: If more parameters are given, check each of them
35068         separately; add more exceptions, as noted by Jim Meyering.
35069         (check_module): New procedure.
35070         (%exempt_header): Now contains all exceptions.
35071
35072 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
35073
35074         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
35075
35076 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
35077
35078         * lib/iconvme.c: Split iconv_string into iconv_alloc.
35079
35080 2005-08-28  Bruno Haible  <bruno@clisp.org>
35081
35082         * m4/gnulib-tool.m4: New file.
35083
35084 2005-08-27  Jim Meyering  <jim@meyering.net>
35085
35086         * modules/unistd-safer (Files): Add pipe-safer.c.
35087         * modules/fcntl-safer (Files): Add creat-safer.c.
35088
35089 2005-08-27  Jim Meyering  <jim@meyering.net>
35090
35091         * m4/stdlib-safer.m4: New file.  From coreutils.
35092         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
35093         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
35094         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
35095         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
35096         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
35097
35098 2005-08-27  Jim Meyering  <jim@meyering.net>
35099
35100         * lib/fopen-safer.c: Merge minor changes from coreutils.
35101         * lib/dup-safer.c: Likewise.
35102         * lib/fd-safer.c: Likewise.
35103
35104         Merge from coreutils.
35105         * lib/stdio--.h: New file.
35106         * lib/stdlib--.h: New file.
35107         * lib/mkstemp-safer.c: New file.
35108
35109         GNU tar needs these.
35110         * lib/pipe-safer.c: New file.
35111         * lib/creat-safer.c: New file.
35112         * lib/fcntl--.h (creat): Define to creat_safer.
35113         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
35114         * lib/unistd--.h (pipe): Define to pipe_safer.
35115         * lib/unistd-safer.h: Declare pipe_safer.
35116
35117 2005-08-26  Simon Josefsson  <jas@extundo.com>
35118
35119         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
35120         Haible <bruno@clisp.org>.
35121
35122 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
35123
35124         * lib/regex_internal.h: Remove all references to
35125         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
35126         or better.
35127         (bitset_not, bitset_merge, bitset_not_merge):
35128         (bitset_mask, re_string_allocate, re_string_construct):
35129         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
35130         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
35131         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
35132         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
35133         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
35134         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
35135         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
35136         (re_acquire_state_context):
35137         Remove unnecessary forward decls.
35138         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
35139         Put __attribute at function definition,
35140         now that the function decl has been removed.
35141         * lib/regex_internal.c (re_string_peek_byte_case):
35142         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
35143         Likewise.
35144
35145 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
35146
35147         * m4/regex.m4: Add AC_PREREQ(2.50).
35148         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
35149
35150 2005-08-25  Simon Josefsson  <jas@extundo.com>
35151
35152         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
35153         __fsetlocking.
35154
35155 2005-08-25  Simon Josefsson  <jas@extundo.com>
35156
35157         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
35158         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
35159         GLIBC specific code.
35160
35161 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
35162
35163         Make regex safe for g++.  This fixes one real bug (an "err"
35164         that should have been "*err").  g++ problem reported by
35165         Sam Steingold.
35166         * lib/regex_internal.h (re_calloc): New macro, consistent with
35167         re_malloc etc.  All callers of calloc changed to use re_calloc.
35168         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
35169         not int.  All callers changed.
35170         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
35171         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
35172         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
35173         (find_recover_state): Change "err" to "*err"; this fixes what
35174         appears to be a real bug.
35175         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
35176         versus int.
35177
35178 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
35179
35180         * modules/regex (Depends-on): Add malloc, since the code
35181         assumes that !malloc(0) means failure.
35182
35183 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
35184
35185         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
35186
35187         alloca modernization/simplification for regex.
35188         * lib/regex.c: Remove portability cruft for alloca.  This no longer
35189         needs to be at the start of the file, and can be moved into
35190         regex_internal.h and simplified.
35191         * lib/regex_internal.h: Include <alloca.h>.
35192         (__libc_use_alloca) [!defined _LIBC]: New macro.
35193         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
35194         now works outside glibc.
35195
35196 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
35197
35198         * config/srclist.txt: Add glibc bugs 1241, 1245.
35199
35200 2005-08-25  Jim Meyering  <jim@meyering.net>
35201
35202         * lib/open-safer.c: Include <config.h>.
35203         Otherwise, we'd lose LARGEFILE support in any file using
35204         e.g. "fcntl--.h"
35205
35206 2005-08-25  Bruno Haible  <bruno@clisp.org>
35207
35208         * m4/minmax.m4: Require autoconf 2.52.
35209         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
35210         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
35211         alternatives of translit over the alphabet.
35212         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
35213
35214 2005-08-24  Simon Josefsson  <jas@extundo.com>
35215
35216         * tests/test-getpass.c: New file.
35217
35218 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
35219
35220         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
35221         for GNU regex features.
35222
35223 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
35224
35225         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
35226         * lib/regex.h (regerror): Likewise.
35227
35228         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
35229         requires this.  (The code never needed it.)
35230
35231         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
35232         All uses of recently-renamed identifiers changed to use the new,
35233         POSIX-compliant names.  The code will build and run just fine
35234         without these changes, but it's better to eat our own dog food
35235         and use the standard-conforming names.
35236
35237         * lib/regex.h: Fix a multitude of POSIX name space violations.
35238         These changes have an effect only for programs that define
35239         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
35240         do not change anything for programs compiled in the normal way.
35241         Also, there is no effect on the ABI.
35242
35243         (_REGEX_SOURCE): New macro.
35244         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
35245         defined and _GNU_SOURCE is not; this fixes a name space violation.
35246
35247         Rename the following macros to obey POSIX requirements.
35248         The old names are still visible as macros if _REGEX_SOURCE is defined.
35249         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
35250         RE_BACKSLASH_ESCAPE_IN_LISTS.
35251         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
35252         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
35253         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
35254         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
35255         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
35256         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
35257         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
35258         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
35259         (REG_INTERVALS): renamed from RE_INTERVALS.
35260         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
35261         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
35262         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
35263         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
35264         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
35265         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
35266         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
35267         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
35268         RE_UNMATCHED_RIGHT_PAREN_ORD.
35269         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
35270         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
35271         (REG_DEBUG): renamed from RE_DEBUG.
35272         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
35273         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
35274         unusual, since we can't clash with the POSIX REG_ICASE.
35275         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
35276         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
35277         (REG_NO_SUB): renamed from RE_NO_SUB.
35278         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
35279         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
35280         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
35281         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
35282         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
35283         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
35284         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
35285         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
35286         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
35287         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
35288         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
35289         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
35290         RE_SYNTAX_POSIX_MINIMAL_BASIC.
35291         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
35292         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
35293         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
35294         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
35295         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
35296         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
35297         (REG_FIXED): Renamed from REGS_FIXED.
35298         (REG_NREGS): Renamed from RE_NREGS.
35299
35300         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
35301         of other REG_* macros, since POSIX says the user is allowed to
35302         #undef these macros selectively.
35303
35304         (reg_errcode_t): Update comment stating what other tables need
35305         to be consistent.
35306
35307         Rename the following enum values to obey POSIX requirements.
35308         The old names are still visible as macros.
35309         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
35310         is not defined, since GNU is supposed to be a superset of POSIX as
35311         much as possible, and since we want reg_errcode_t to be a signed
35312         type for implementation consistency.
35313         (_REG_NOERROR): Renamed from REG_NOERROR.
35314         (_REG_NOMATCH): Renamed from REG_NOMATCH.
35315         (_REG_BADPAT): Renamed from REG_BADPAT.
35316         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
35317         (_REG_ECTYPE): Renamed from REG_ECTYPE.
35318         (_REG_EESCAPE): Renamed from REG_EESCAPE.
35319         (_REG_ESUBREG): Renamed from REG_ESUBREG.
35320         (_REG_EBRACK): Renamed from REG_EBRACK.
35321         (_REG_EPAREN): Renamed from REG_EPAREN.
35322         (_REG_EBRACE): Renamed from REG_EBRACE.
35323         (_REG_BADBR): Renamed from REG_BADBR.
35324         (_REG_ERANGE): Renamed from REG_ERANGE.
35325         (_REG_ESPACE): Renamed from REG_ESPACE.
35326         (_REG_BADRPT): Renamed from REG_BADRPT.
35327         (_REG_EEND): Renamed from REG_EEND.
35328         (_REG_ESIZE): Renamed from REG_ESIZE.
35329         (_REG_ERPAREN): Renamed from REG_ERPAREN.
35330         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
35331         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
35332         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
35333         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
35334
35335         (_REG_RE_NAME, _REG_RM_NAME): New macros.
35336         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
35337         changed.  But support the old name if the new one is not defined
35338         and if _REGEX_SOURCE.
35339
35340         Change the following member names in struct re_pattern_buffer.
35341         The old names are still supported if !_REGEX_SOURCE.
35342         The new names are always supported, regardless of _REGEX_SOURCE.
35343         (re_buffer): Renamed from buffer.
35344         (re_allocated): Renamed from allocated.
35345         (re_used): Renamed from used.
35346         (re_syntax): Renamed from syntax.
35347         (re_fastmap): Renamed from fastmap.
35348         (re_translate): Renamed from translate.
35349         (re_can_be_null): Renamed from can_be_null.
35350         (re_regs_allocated): Renamed from regs_allocated.
35351         (re_fastmap_accurate): Renamed from fastmap_accurate.
35352         (re_no_sub): Renamed from no_sub.
35353         (re_not_bol): Renamed from not_bol.
35354         (re_not_eol): Renamed from not_eol.
35355         (re_newline_anchor): Renamed from newline_anchor.
35356
35357         Change the following member names in struct re_registers.
35358         The old names are still supported if !_REGEX_SOURCE.
35359         The new names are always supported, regardless of _REGEX_SOURCE.
35360         (rm_num_regs): Renamed from num_regs.
35361         (rm_start): Renamed from start.
35362         (rm_end): Renamed from end.
35363
35364         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
35365         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
35366         Prepend __ to parameter names.
35367
35368         Undo yesterday's changes.
35369
35370 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
35371
35372         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
35373         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
35374         lib/regex.c.
35375
35376 2005-08-24  Jim Meyering  <jim@meyering.net>
35377
35378         Sync from coreutils.
35379         * m4/fcntl-safer.m4: New file.
35380
35381         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
35382         and object files for this module.
35383
35384 2005-08-24  Jim Meyering  <jim@meyering.net>
35385
35386         Sync from coreutils.
35387         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
35388
35389 2005-08-24  Jim Meyering  <jim@meyering.net>
35390
35391         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
35392         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
35393
35394 2005-08-24  Jim Meyering  <jim@meyering.net>
35395
35396         * modules/fcntl-safer: New module.
35397         * modules/fts (Depends-on): Add fcntl-safer.
35398         * MODULES.html.sh (File descriptor based Input/Output):
35399         Add fcntl-safer.
35400
35401 2005-08-24  Bruno Haible  <bruno@clisp.org>
35402
35403         Support for unit test modules.
35404         * modules/README: Mention tests modules.
35405         * modules/TEMPLATE-TESTS: New file.
35406         * gnulib-tool: New options --extract-tests-module, --with-tests and
35407         --tests-base (unused for the moment).
35408         (testsbase, inctests): New variables.
35409         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
35410         (func_verify_module): Exclude TEMPLATE-TESTS.
35411         (func_verify_nontests_module, func_verify_tests_module): New functions.
35412         (func_get_dependencies): Add implicit dependency for tests modules.
35413         (func_get_tests_module): New function.
35414         (func_modules_transitive_closure): When --with-tests was specified,
35415         include the unit tests as well, unless explicitly avoided.
35416         (func_emit_lib_Makefile_am): Ignore the tests modules here.
35417         (func_emit_tests_Makefile_am): New function.
35418         (func_create_testdir): When --with-tests was specified, emit a
35419         tests/ directory.
35420         * MODULES.html.sh (Future developments): Update.
35421
35422 2005-08-24  Bruno Haible  <bruno@clisp.org>
35423
35424         * modules/tls-tests: New file.
35425         * tests/test-tls.c: New file, from GNU gettext.
35426
35427 2005-08-24  Bruno Haible  <bruno@clisp.org>
35428
35429         * modules/lock-tests: New file.
35430         * tests/test-lock.c: New file, from GNU gettext.
35431
35432 2005-08-24  Bruno Haible  <bruno@clisp.org>
35433
35434         * lib/lock.h: Add multiple inclusion guard.
35435         * lib/tls.h: Add multiple inclusion guard.
35436
35437 2005-08-24  Bruno Haible  <bruno@clisp.org>
35438
35439         * gnulib-tool: Add support for the --aux-dir option to
35440         --create-testdir, --create-megatestdir, --test, --megatest.
35441         (func_create_testdir, func_create_megatestdir): Optionally emit a
35442         AC_CONFIG_AUX_DIR directive.
35443         (create-testdir, create-megatestdir, test, megatest): Provide a
35444         default value for $auxdir.
35445
35446 2005-08-24  Bruno Haible  <bruno@clisp.org>
35447
35448         * gnulib-tool (import): Use compound statement instead of subshell
35449         where possible.
35450
35451 2005-08-24  Bruno Haible  <bruno@clisp.org>
35452
35453         * gnulib-tool (import): Change --aux-dir default to "build-aux".
35454
35455 2005-08-24  Bruno Haible  <bruno@clisp.org>
35456
35457         * gnulib-tool (func_version): Update.
35458
35459 2005-08-24  Bruno Haible  <bruno@clisp.org>
35460
35461         * gnulib-tool (func_import, func_create_testdir,
35462         func_create_megatestdir): Quote all autoconf macro arguments.
35463
35464 2005-08-24  Bruno Haible  <bruno@clisp.org>
35465
35466         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
35467         option --force, because --force causes the aclocal.m4 of each
35468         subdirectory to be newer than the corresponding config.h.in.
35469
35470 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
35471
35472         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
35473         All contents moved to gl_REGEX.
35474         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
35475         assume that it does.
35476
35477 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
35478
35479         * lib/regex.h (REG_NOSYS)
35480         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
35481         Define, since POSIX requires it as of 2001.
35482         (_REG_ENOSYS)
35483         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
35484         New private symbol, used to keep the enum signed in all cases.
35485         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
35486         Youngman in
35487         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
35488
35489         * lib/regex_internal.c (re_string_skip_chars, register_state):
35490         (calc_state_hash):
35491         Remove forward decls; no longer needed now that we use prototypes.
35492         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
35493         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
35494         (clean_state_log_if_needed): Likewise.
35495
35496 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
35497
35498         * config/srclist.txt: Add glibc bugs 1231-1233.
35499
35500 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
35501
35502         Fix problems reported by Sam Steingold in
35503         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
35504         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
35505         assumed that reg_errcode_t is a signed type, which is not
35506         necessarily true if _XOPEN_SOURCE is not defined.
35507         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
35508         since some compilers warn about it otherwise.
35509
35510 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
35511
35512         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
35513         (init_word_char, create_initial_state, duplicate_node_closure):
35514         (fetch_token, peek_token_bracket, build_range_exp):
35515         (build_collating_symbol): Remove forward decls; no longer needed
35516         now that we use prototypes.
35517
35518         * lib/regcomp.c:
35519         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
35520         (re_compile_fastmap_iter, regcomp, regerror, regfree):
35521         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
35522         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
35523         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
35524         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
35525         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
35526         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
35527         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
35528         (build_range_exp, build_collating_symbol, parse_bracket_exp):
35529         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
35530         (build_charclass, build_charclass_op, fetch_number, create_tree):
35531         (create_token_tree, mark_opt_subexp, duplicate_tree):
35532         Use prototypes rather than old-style definitions.
35533
35534         * lib/regex_internal.c:
35535         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
35536         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
35537         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
35538         (re_string_reconstruct, re_string_peek_byte_case):
35539         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
35540         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
35541         (re_node_set_init_copy, re_node_set_add_intersect):
35542         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
35543         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
35544         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
35545         (re_acquire_state, re_acquire_state_context, register_state):
35546         (create_ci_newstate, create_cd_newstate, free_state):
35547         Likewise.
35548         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
35549         re_search_2):
35550         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
35551         (re_search_internal, prune_impossible_nodes):
35552         (acquire_init_state_context, check_matching, static):
35553         (check_halt_node_context, check_halt_state_context, proceed_next_node):
35554         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
35555         (update_regs, sift_states_backward, build_sifted_states):
35556         (clean_state_log_if_needed, merge_state_array):
35557         (update_cur_sifted_state, add_epsilon_src_nodes):
35558         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
35559         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
35560         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
35561         (find_recover_state, check_subexp_matching_top, transit_state_mb):
35562         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
35563         (check_arrival, check_arrival_add_next_nodes):
35564         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
35565         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
35566         (check_node_accept_bytes, check_node_accept, extend_buffers):
35567         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
35568         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
35569         (sift_ctx_init):
35570         Likewise.
35571
35572         * lib/regex_internal.h:
35573         (re_string_allocate, re_string_construct, re_string_reconstruct):
35574         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
35575         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
35576         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
35577         (re_string_context_at, re_string_peek_byte_case):
35578         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
35579         is defined, since we now use prototypes always.
35580
35581         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
35582         C89 or better.  All uses removed.
35583
35584 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
35585
35586         * config/srclist.txt: Add glibc bugs 1220-1227.
35587
35588 2005-08-20  Jim Meyering  <jim@meyering.net>
35589
35590         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
35591         of unused local, dfa.
35592
35593 2005-08-20  Bruno Haible  <bruno@clisp.org>
35594
35595         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
35596
35597 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
35598
35599         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
35600         (re_node_set_insert_last, re_dfa_add_node):
35601         Rename local variables to avoid GCC shadowing warnings.
35602
35603 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
35604
35605         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
35606         [defined lint]: Suppress bogus uninitialized-variable warnings.
35607
35608         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
35609         and let the caller return REG_ESPACE if out of space.  This
35610         removes an uninitialied-variable warning with GCC 4.0.1, and also
35611         avoids taking the address of a local variable.  All callers
35612         changed.
35613
35614 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
35615
35616         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
35617         $LIBCSRC/posix/regexec.c.
35618         Add glibc bug 1217 for regcomp.c.
35619
35620 2005-08-19  Jim Meyering  <jim@meyering.net>
35621
35622         * lib/regexec.c (proceed_next_node): Redo local variables to
35623         avoid GCC shadowing warnings.
35624
35625 2005-08-18  Bruno Haible  <bruno@clisp.org>
35626
35627         * lib/strstr.c (strstr): Fix return value in multibyte case.
35628         * lib/strcasestr.c (strcasestr): Likewise.
35629
35630 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
35631
35632         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
35633
35634 2005-08-17  Jim Meyering  <jim@meyering.net>
35635
35636         Make the %s format (seconds since the epoch) work for a negative
35637         number and when used with a zero-padded field width, e.g. %015s.
35638
35639         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
35640         label so that it precedes the code to set `digits'.  Otherwise,
35641         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
35642         print `00-22'.  Now, it prints `-0022', as it should.
35643
35644 2005-08-17  Bruno Haible  <bruno@clisp.org>
35645
35646         * modules/strstr (Files): Add m4/mbrtowc.m4.
35647         (Depends-on): Add mbuiter.
35648
35649 2005-08-17  Bruno Haible  <bruno@clisp.org>
35650
35651         * modules/strcasestr: New file.
35652         * MODULES.html.sh (String handling, based on ANSI C 89): Add
35653         strcasestr.
35654
35655 2005-08-17  Bruno Haible  <bruno@clisp.org>
35656
35657         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
35658
35659 2005-08-17  Bruno Haible  <bruno@clisp.org>
35660
35661         * modules/mbuiter: New file.
35662         * MODULES.html.sh (Extended multibyte and wide character utilities):
35663         Add mbuiter.
35664
35665 2005-08-17  Bruno Haible  <bruno@clisp.org>
35666
35667         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
35668         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
35669
35670 2005-08-17  Bruno Haible  <bruno@clisp.org>
35671
35672         * m4/strcasestr.m4: New file.
35673
35674 2005-08-17  Bruno Haible  <bruno@clisp.org>
35675
35676         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
35677         * lib/strstr.c: Completely rewritten, with multibyte locale support.
35678
35679 2005-08-17  Bruno Haible  <bruno@clisp.org>
35680
35681         * lib/strcasestr.h: New file.
35682         * lib/strcasestr.c: New file.
35683
35684 2005-08-17  Bruno Haible  <bruno@clisp.org>
35685
35686         * lib/strcasecmp.c: Use mbuiter.h.
35687
35688 2005-08-17  Bruno Haible  <bruno@clisp.org>
35689
35690         * lib/mbuiter.h: New file.
35691
35692 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
35693
35694         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
35695         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
35696         and gl_GETOPT are both invoked via different paths (as happens
35697         with GNU tar CVS because it uses both argp and getopt), the former
35698         wins.
35699
35700 2005-08-16  Bruno Haible  <bruno@clisp.org>
35701
35702         * modules/tls: New file.
35703         * MODULES.html.sh (Multithreading): Add tls.
35704
35705 2005-08-16  Bruno Haible  <bruno@clisp.org>
35706
35707         * modules/strnlen1: New file.
35708         * MODULES.html.sh (String handling): Add strnlen1.
35709
35710 2005-08-16  Bruno Haible  <bruno@clisp.org>
35711
35712         * modules/strcase (Files): Add m4/mbrtowc.m4.
35713         (Depends-on): Add strnlen1, mbchar.
35714
35715 2005-08-16  Bruno Haible  <bruno@clisp.org>
35716
35717         * modules/mbiter: New file.
35718         * MODULES.html.sh (Extended multibyte and wide character utilities):
35719         Add mbiter.
35720
35721 2005-08-16  Bruno Haible  <bruno@clisp.org>
35722
35723         * modules/mbfile: New file.
35724         * MODULES.html.sh (Extended multibyte and wide character utilities):
35725         Add mbfile.
35726
35727 2005-08-16  Bruno Haible  <bruno@clisp.org>
35728
35729         * modules/mbchar: New file.
35730         * MODULES.html.sh (Extended multibyte and wide character utilities):
35731         New section.
35732
35733 2005-08-16  Bruno Haible  <bruno@clisp.org>
35734
35735         * m4/tls.m4: New file, from GNU gettext.
35736
35737 2005-08-16  Bruno Haible  <bruno@clisp.org>
35738
35739         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
35740         always.
35741         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
35742
35743 2005-08-16  Bruno Haible  <bruno@clisp.org>
35744
35745         * m4/mbiter.m4: New file.
35746
35747 2005-08-16  Bruno Haible  <bruno@clisp.org>
35748
35749         * m4/mbfile.m4: New file.
35750
35751 2005-08-16  Bruno Haible  <bruno@clisp.org>
35752
35753         * m4/mbchar.m4: New file.
35754
35755 2005-08-16  Bruno Haible  <bruno@clisp.org>
35756
35757         * lib/tls.h: New file, from GNU gettext.
35758         * lib/tls.c: New file, from GNU gettext.
35759
35760 2005-08-16  Bruno Haible  <bruno@clisp.org>
35761
35762         * lib/strnlen1.h: New file.
35763         * lib/strnlen1.c: New file.
35764
35765 2005-08-16  Bruno Haible  <bruno@clisp.org>
35766
35767         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
35768         (mbi_init): Update.
35769         (mbi_avail, mbi_advance): Let the iteration end before the terminating
35770         NUL byte, not after it.
35771
35772 2005-08-16  Bruno Haible  <bruno@clisp.org>
35773
35774         * lib/strcase.h (strcasecmp): Add note in comments.
35775         * lib/strncasecmp.c: Use code from strcasecmp.c.
35776         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
35777         (strcasecmp): Work correctly in multibyte locales.
35778
35779 2005-08-16  Bruno Haible  <bruno@clisp.org>
35780
35781         * lib/mbiter.h: New file.
35782
35783 2005-08-16  Bruno Haible  <bruno@clisp.org>
35784
35785         * lib/mbfile.h: New file.
35786
35787 2005-08-16  Bruno Haible  <bruno@clisp.org>
35788
35789         * lib/mbchar.h: New file.
35790         * lib/mbchar.c: New file.
35791
35792 2005-08-16  Bruno Haible  <bruno@clisp.org>
35793
35794         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
35795         the valid ones. Makes the comparison operations transitive:
35796         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
35797         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
35798
35799 2005-08-15  Simon Josefsson  <jas@extundo.com>
35800
35801         * modules/ssize_t (License): Change to 'unlimited'.
35802
35803         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
35804
35805 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
35806
35807         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
35808         Add comments for each pending glibc patch.
35809
35810 2005-08-15  Bruno Haible  <bruno@clisp.org>
35811
35812         * lib/regex.h (__restrict_arr): Don't define to __restrict if
35813         __cplusplus is defined.
35814
35815 2005-08-14  Jim Meyering  <jim@meyering.net>
35816
35817         Sync from coreutils.
35818
35819         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
35820         Use the hash-table-based cycle-detection code not just when
35821         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
35822         Reported by James Youngman in
35823         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
35824         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
35825         FTS_TIGHT_CYCLE_CHECK.
35826         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
35827         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
35828         once again.
35829         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
35830         * lib/fts.c (fd_safer): Remove decl.
35831         Include fcntl--.h rather than unistd-safer.h
35832         (fts_safe_changedir): Don't call fd_safer; no longer needed
35833         now that we include fcntl--.h.
35834
35835 2005-08-12  Simon Josefsson  <jas@extundo.com>
35836
35837         * modules/getndelim2: Use ssize_t module.
35838         * modules/getnline: Likewise.
35839         * modules/safe-read: Likewise.
35840         * modules/xreadlink: Likewise.
35841
35842         * modules/ssize_t: New file.
35843
35844 2005-08-12  Simon Josefsson  <jas@extundo.com>
35845
35846         * m4/readline.m4: Look for termcap, curses or ncurses if required.
35847
35848 2005-08-12  Simon Josefsson  <jas@extundo.com>
35849
35850         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
35851         ssize_t.
35852
35853 2005-08-12  Simon Josefsson  <jas@extundo.com>
35854
35855         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
35856         readline, getdelim and check_version.
35857         (Support for systems lacking ISO C 99: Sizes of integer types):
35858         Add size_max.
35859
35860 2005-08-12  Bruno Haible  <bruno@clisp.org>
35861
35862         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
35863
35864 2005-08-11  Simon Josefsson  <jas@extundo.com>
35865
35866         * modules/readline: New file.
35867
35868         * modules/strnlen (Files): Add strnlen.h.
35869
35870 2005-08-11  Simon Josefsson  <jas@extundo.com>
35871
35872         * m4/readline.m4: New file.
35873
35874 2005-08-11  Simon Josefsson  <jas@extundo.com>
35875
35876         * lib/readline.h, readline.c: New file.
35877
35878 2005-08-11  Simon Josefsson  <jas@extundo.com>
35879
35880         * doc/gnulib.texi (Initial import, Finishing touches): Mention
35881         gl_AVOID.
35882
35883 2005-08-11  Bruno Haible  <bruno@clisp.org>
35884
35885         * lib/strnlen.h (strnlen): Change parameter name to match comment.
35886
35887 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
35888
35889         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
35890
35891 2005-08-10  Simon Josefsson  <jas@extundo.com>
35892
35893         * tests/test-iconvme.c: New file.
35894
35895 2005-08-10  Simon Josefsson  <jas@extundo.com>
35896
35897         * m4/strnlen.m4: New file.
35898
35899         * m4/strndup.m4: Don't check for strnlen declaration, done in
35900         strnlen.m4.
35901
35902 2005-08-10  Simon Josefsson  <jas@extundo.com>
35903
35904         * lib/strndup.c: Use strnlen.h.
35905
35906         * lib/strnlen.h: New file.
35907
35908 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
35909
35910         * README: Typos.
35911
35912 2005-08-02  Simon Josefsson  <jas@extundo.com>
35913
35914         * modules/readline: New file.
35915
35916 2005-08-02  Simon Josefsson  <jas@extundo.com>
35917
35918         * modules/getdelim: New file.
35919
35920         * modules/getline: Rewrite, don't use getndelim2.
35921
35922 2005-08-02  Simon Josefsson  <jas@extundo.com>
35923
35924         * m4/getline.m4: Separate out getdelim stuff into separate module.
35925
35926         * m4/getdelim.m4: New file.
35927
35928 2005-08-02  Simon Josefsson  <jas@extundo.com>
35929
35930         * lib/getline.h, getline.c: Rewrite.
35931
35932         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
35933
35934 2005-07-31  Bruno Haible  <bruno@clisp.org>
35935
35936         * lib/lock.h (gl_lock_initializer): New macro.
35937         (gl_lock_define_initialized): Use it.
35938         (gl_rwlock_initializer): New macro.
35939         (gl_rwlock_define_initialized): Use it.
35940         (gl_recursive_lock_initializer): New macro.
35941         (gl_recursive_lock_define_initialized): Use it.
35942
35943 2005-07-30  Karl Berry  <karl@gnu.org>
35944
35945         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
35946         Report from Ben Pfaff, regarding getopt.
35947
35948 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
35949
35950         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
35951         normal way.
35952         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
35953         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
35954         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
35955         (gl_GETOPT): Use the new macros.  Most of the implementation
35956         is moved to the new macros.  This is for programs like Emacs
35957         that don't want all the functionality of gl_GETOPT.
35958
35959 2005-07-26  Bruno Haible  <bruno@clisp.org>
35960
35961         * m4/lock.m4: Update from GNU gettext.
35962
35963 2005-07-26  Bruno Haible  <bruno@clisp.org>
35964
35965         * lib/lock.h: Update from GNU gettext.
35966         * lib/lock.c: Update from GNU gettext.
35967
35968 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
35969
35970         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
35971         obsolescent AC_TRY_RUN.  Include the default includes files, for
35972         'exit'.
35973
35974 2005-07-24  Bruno Haible  <bruno@clisp.org>
35975
35976         * modules/visibility: New file.
35977         * MODULES.html.sh (Misc): Add visibility.
35978
35979 2005-07-24  Bruno Haible  <bruno@clisp.org>
35980
35981         * m4/visibility.m4: New file.
35982
35983 2005-07-24  Bruno Haible  <bruno@clisp.org>
35984
35985         * doc/visibility.texi: New file.
35986
35987 2005-07-22  Bruno Haible  <bruno@clisp.org>
35988
35989         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
35990         $(ALLOCA_H), redundant through BUILT_SOURCES.
35991         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
35992         redundant through BUILT_SOURCES.
35993         * modules/byteswap (Makefile.am): Remove explicit dependency on
35994         $(BYTESWAP_H), redundant through BUILT_SOURCES.
35995         * modules/fnmatch (Makefile.am): Remove explicit dependency on
35996         $(FNMATCH_H), redundant through BUILT_SOURCES.
35997         * modules/getopt (Makefile.am): Remove explicit dependency on
35998         $(GETOPT_H), redundant through BUILT_SOURCES.
35999         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
36000         redundant through BUILT_SOURCES.
36001         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
36002         redundant through BUILT_SOURCES.
36003         * modules/stdbool (Makefile.am): Remove explicit dependency on
36004         $(STDBOOL_H), redundant through BUILT_SOURCES.
36005         * modules/stdint (Makefile.am): Remove explicit dependency on
36006         $(STDINT_H), redundant through BUILT_SOURCES.
36007         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
36008         Remove explicit dependency on $(SYSEXITS_H).
36009         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
36010
36011 2005-07-18  Simon Josefsson  <jas@extundo.com>
36012
36013         * lib/check-version.c (check_version): Accept identical versions too.
36014
36015 2005-07-18  Bruno Haible  <bruno@clisp.org>
36016
36017         * modules/lock: New file.
36018         * MODULES.html.sh (Multithreading): New section.
36019
36020 2005-07-18  Bruno Haible  <bruno@clisp.org>
36021
36022         * m4/lock.m4: New file, from GNU gettext.
36023
36024 2005-07-18  Bruno Haible  <bruno@clisp.org>
36025
36026         * lib/lock.h: New file, from GNU gettext.
36027         * lib/lock.c: New file, from GNU gettext.
36028
36029 2005-07-18  Bruno Haible  <bruno@clisp.org>
36030
36031         * lib/lock.h (gl_once_t): New type.
36032         (gl_once_define, gl_once): New macros.
36033         * lib/lock.c (fresh_once): New variable.
36034         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
36035         functions.
36036
36037 2005-07-16  Simon Josefsson  <jas@extundo.com>
36038
36039         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
36040         workaround, suggested by Bruno.
36041
36042 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
36043
36044         * modules/xalloc (Depends-on): Add xalloc-die.
36045         * modules/xvasprintf (Depends-on): Add xalloc-die.
36046
36047 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
36048
36049         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
36050         with a minor change.
36051
36052 2005-07-15  Bruno Haible  <bruno@clisp.org>
36053
36054         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
36055         When using lib/poll.c, define poll as rpl_poll.
36056
36057 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
36058
36059         * modules/argp (Depends-on): Remove unlocked-io.
36060
36061 2005-07-14  Derek Price  <derek@ximbiot.com>
36062
36063         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
36064         for glob symlink bug.
36065
36066 2005-07-14  Bruno Haible  <bruno@clisp.org>
36067
36068         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
36069         Instead, test for *_unlocked function declarations directly.
36070
36071 2005-07-11  Simon Josefsson  <jas@extundo.com>
36072
36073         * modules/size_max: New file.
36074
36075         * modules/xsize: Depend on size_max module for size_max.m4.
36076
36077 2005-07-11  Simon Josefsson  <jas@extundo.com>
36078
36079         * lib/size_max.h: New file.
36080
36081 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
36082
36083         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
36084         copyright symbol and the year.
36085         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
36086         (version_etc_va): Use parameterized copyright notice.
36087         Reword to conform to the current GNU coding standards.
36088
36089 2005-07-11  Karl Berry  <karl@gnu.org>
36090
36091         * doc/gnulib.texi (Quoting): new node.
36092         (Initial import): more info, from Patrice.
36093
36094 2005-07-11  Bruno Haible  <bruno@clisp.org>
36095
36096         * gnulib-tool (func_usage): Document option --avoid.
36097         (Command line options): Handle --avoid.
36098         (func_acceptable): New function.
36099         (func_modules_transitive_closure): Use it.
36100
36101 2005-07-11  Bruno Haible  <bruno@clisp.org>
36102
36103         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
36104         Reported by Jim Meyering.
36105
36106 2005-07-10  Bruno Haible  <bruno@clisp.org>
36107
36108         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
36109         Needed when size_t is smaller than 'unsigned int'.
36110         Reported by Paul Eggert.
36111
36112 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
36113
36114         * modules/argp (Depends-on): Add unlocked-io
36115
36116 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
36117
36118         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
36119         block of defines.
36120
36121 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
36122
36123         * config/srclist.txt: Comment out regcomp.c, since we have a porting
36124         fix now.
36125
36126 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
36127         and Paul Eggert  <eggert@cs.ucla.edu>
36128
36129         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
36130         in wint_t, not wchar_t.  Remove now-unnecessary cast.
36131
36132 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
36133
36134         * modules/regex (Files): Add lib/regex_internal.c,
36135         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
36136         (Depends-on): Add extensions.
36137         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
36138
36139 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
36140
36141         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
36142         pathconf.
36143         * m4/same.m4 (gl_SAME): Likewise.
36144         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
36145
36146         * m4/regex.m4: Adjust to new libc regex implementation.
36147         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
36148         all the .c and .h parts of (the new) regex.
36149         Quote the m4 stuff better.
36150         Check for RE_ICASE bug of old gnulib.
36151         Check for REG_STARTEND of recent libc.
36152         Rename local variables from jm_* to gl_*.
36153         Quote operand of "test -f".
36154         Say "recent enough" version of libc, not "version 2".
36155         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
36156         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
36157         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
36158         Remove check for btowc, isascii.
36159         Require AM_LANGINFO_CODESET.
36160
36161 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
36162
36163         * lib/regex.c, regex.h: Sync from libc.
36164         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
36165         * lib/regexec.c:
36166         New files, synced from libc, except that regex_internal.h
36167         currently has a small porting fix.
36168
36169 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
36170
36171         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
36172         regex_internal.c, regexec.c.
36173         Add regex_internal.h too, but as a comment, since the libc version
36174         is currently broken in gnulib mode.
36175
36176 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
36177
36178         Support programs like Emacs that use gnulib but not gettext.
36179         * MODULES.html.sh (Internationalization functions): Add gettext-h.
36180         * modules/gettext-h: New file.
36181         * modules/gettext (Files): Remove lib/gettext.h.
36182         (Depends-on): Add gettext-h.
36183         (Makefile.am): Remove lib_SOURCES.
36184         * modules/argmatch, modules/c-stack, modules/closeout:
36185         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
36186         * modules/execute, modules/file-type, modules/getaddrinfo:
36187         * modules/getopt, modules/human, modules/javacomp:
36188         * modules/javaexec, modules/mkdir-p, modules/obstack:
36189         * modules/openat, modules/pagealign_alloc, modules/pipe:
36190         * modules/quotearg, modules/regex, modules/rpmatch:
36191         * modules/unicodeio, modules/userspec, modules/version-etc:
36192         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
36193         * modules/xsetenv:
36194         Depend on gettext-h, not gettext.
36195
36196 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
36197
36198         * gnulib-tool (func_import): Add support for 'public domain' license.
36199         * modules/alloca, modules/atexit, modules/memmove:
36200         Now public domain, not GPL.
36201         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
36202         * modules/realloc, modules/strerror, modules/strtod:
36203         Now LGPL, not GPL.
36204
36205 2005-07-05  Bruno Haible  <bruno@clisp.org>
36206
36207         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
36208         autoconf CVS. Needed for mingw.
36209
36210 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
36211
36212         Remove the dependency of the strftime module on the tzset module.
36213         * modules/strftime (Depends-on): Remove dependency on tzset.
36214
36215 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
36216
36217         Remove the dependency of the strftime module on the tzset module.
36218         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
36219         gl_FUNC_TZSET_CLOBBER.
36220
36221 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
36222
36223         Remove the dependency of the strftime module on the tzset module.
36224         * lib/strftime.c (my_strftime)
36225         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
36226         Copy the input structure, to work around some of the bug with
36227         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
36228         Solaris releases, you should also use the tzset module, but we won't
36229         require it as a dependency any more since we don't want LGPLed code
36230         to depend on GPLed code.
36231
36232 2005-07-02  Jim Meyering  <jim@meyering.net>
36233
36234         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
36235         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
36236         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
36237         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
36238
36239 2005-07-02  Jim Meyering  <jim@meyering.net>
36240
36241         * lib/backupfile.c (backup_args): Change a `0' to NULL.
36242
36243 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
36244
36245         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
36246         declares only 'struct timespec;' (!).
36247
36248 2005-07-01  Jim Meyering  <jim@meyering.net>
36249
36250         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
36251         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
36252         * lib/save-cwd.c, tempname.c:
36253         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
36254         and don't include <sys/file.h>).
36255
36256 2005-06-29  Jim Meyering  <jim@meyering.net>
36257
36258         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
36259         type name.  Use the variable name instead.
36260         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
36261         Likewise.
36262
36263 2005-06-28  Simon Josefsson  <jas@extundo.com>
36264
36265         * modules/check-version (Files): Add check-version.m4.
36266
36267 2005-06-28  Simon Josefsson  <jas@extundo.com>
36268
36269         * m4/check-version.m4: New file, suggested by Jim Meyering
36270         <jim@meyering.net>.
36271
36272 2005-06-28  Simon Josefsson  <jas@extundo.com>
36273
36274         * lib/check-version.h, lib/check-version.c: New files.
36275
36276 2005-06-28  Simon Josefsson  <jas@extundo.com>
36277
36278         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
36279         collision with global variable.  Better indentation.  Don't
36280         increment buffer pointer beyond buffer end.  Based on comments
36281         from Paul Eggert <eggert@cs.ucla.edu>.
36282
36283         * lib/base64.h: Indent.
36284
36285 2005-06-28  Simon Josefsson  <jas@extundo.com>
36286
36287         * doc/gnulib.texi (Library version handling): New section.
36288
36289 2005-06-28  Jim Meyering  <jim@meyering.net>
36290
36291         * check-module (find_included_lib_files): Hard-code another
36292         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
36293         but modules/fts-lgpl (correctly) does not list those files.
36294
36295         * modules/canonicalize (Files): Add lib/pathmax.h.
36296
36297 2005-06-25  Simon Josefsson  <jas@extundo.com>
36298
36299         * modules/check-version: New file.
36300
36301 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
36302
36303         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
36304         initializer of struct addrinfo, as an indication that we don't
36305         care how many members the structure has.
36306
36307 2005-06-24  Derek Price  <derek@ximbiot.com>
36308         and Bruno Haible  <bruno@clisp.org>
36309
36310         Remove stat module & update lstat.
36311         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
36312         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
36313         * m4/stat.m4: Remove this file.
36314
36315 2005-06-24  Derek Price  <derek@ximbiot.com>
36316         and Bruno Haible  <bruno@clisp.org>
36317
36318         Remove stat module & update lstat.
36319         * lib/stat.c: Remove this file...
36320         (slash_aware_lstat): ...moving this content and its support...
36321         * lib/lstat.c (rpl_lstat): ...into here.
36322         * lib/lstat.h: New file.
36323
36324 2005-06-24  Derek Price  <derek@ximbiot.com>
36325         and Bruno Haible  <bruno@clisp.org>
36326
36327         Remove stat module & update lstat.
36328         * config/srclist.txt (libc sources): Remove stat.
36329
36330 2005-06-24  Derek Price  <derek@ximbiot.com>
36331         and Bruno Haible  <bruno@clisp.org>
36332
36333         Remove stat module & update lstat.
36334         * MODULES.html.sh (stat): Remove.
36335         * MODULES.html: Regenerated.
36336         * modules/lstat (Description): Correct function name.
36337         (Files): Add "lstat.h".
36338         (Depends-on): Remove stat, add xalloc, stat-macros.
36339         * modules/stat: Remove this file.
36340         (Include): Add "lstat.h", remove <sys/stat.h>.
36341
36342 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
36343
36344         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
36345         (ranged_convert): Don't save conversion in a temporary struct.
36346         This causes a warning with GCC 4.0.0, and anyway in the typical
36347         case it's not worth the extra 100 bytes or so of code.
36348         (ranged_convert, __mktime_internal): When calling a function via a
36349         pointer P, use P () rather than (*P) (), as we now assume C89 or
36350         better.
36351
36352 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
36353
36354         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
36355         "who -r" failed to give output.  Problem reported by Tim Waugh.
36356
36357         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
36358         (xcalloc): Use it to avoid needless tests.
36359         Problem reported by Jim Meyering.
36360
36361 2005-06-20  Derek Price  <derek@ximbiot.com>
36362
36363         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
36364         unnecessary for Autoconfs > 2.59c.
36365
36366 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36367
36368         * lib/argp.h (__option_is_short): Check upper limit of
36369         __key. Isprint() requires its argument to have the value
36370         of an unsigned char or EOF.
36371
36372 2005-06-16  Jim Meyering  <jim@meyering.net>
36373
36374         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
36375         when either N or S is zero.
36376
36377 2005-06-16  Derek Price  <derek@ximbiot.com>
36378
36379         * m4/bison.m4: Declare YACC & YFLAGS precious.
36380
36381 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
36382
36383         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
36384         multibyte string or pattern, fall back on unibyte matching.
36385         Problem reported by James Youngman.
36386
36387 2005-06-08  Bruno Haible  <bruno@clisp.org>
36388
36389         * modules/csharpcomp: New file.
36390         * MODULES.html.sh (C#): Add csharpcomp.
36391
36392 2005-06-08  Bruno Haible  <bruno@clisp.org>
36393
36394         * m4/csharpcomp.m4: New file, from GNU gettext.
36395
36396 2005-06-08  Bruno Haible  <bruno@clisp.org>
36397
36398         * lib/csharpcomp.h: New file, from GNU gettext.
36399         * lib/csharpcomp.c: New file, from GNU gettext.
36400         * lib/csharpcomp.sh.in: New file, from GNU gettext.
36401
36402 2005-06-08  Bruno Haible  <bruno@clisp.org>
36403
36404         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
36405         warning on mingw.
36406
36407 2005-06-07  Derek Price  <derek@ximbiot.com>
36408
36409         Sync from CVS.
36410         * lib/glob_.h: Indent nested #ifdef.
36411
36412 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
36413
36414         Sync from coreutils.
36415         Use "file name" when talking about file names, instead of "filename"
36416         or "path", as per the GNU coding standards.
36417         * lib/mkdir-p.c: Renamed from makepath.c.
36418         (make_dir_parents): Renamed from make_path.  All callers changed.
36419         * lib/mkdir-p.h: Likewise.  All includers changed.
36420         * lib/filenamecat.c: Renamed from path-concat.c.
36421         (file_name_concat): Renamed from path_concat.  All callers changed.
36422         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
36423         * lib/filenamecat.h: Likewise.  All includers changed.
36424         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
36425         in comments or local variable names.
36426         * lib/basename.c: Likewise.
36427         * lib/canonicalize.c, canonicalize.h: Likewise.
36428         * lib/dirname.c, dirname.h: Likewise.
36429         * lib/euidaccess.c: Likewise.
36430         * lib/exclude.c: Likewise
36431         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
36432         * lib/fsusage.c, fsuage.h: Likewise.
36433         * lib/fts.c, fts_.h: Likewise.
36434         * lib/getcwd.c: Likewise.
36435         * lib/getloadavg.c: Likewise.
36436         * lib/mkstemp.c: Likewise.
36437         * lib/mountlist.c, mountlist.h: Likewise.
36438         * lib/openat.c, openat.h: Likewise.
36439         * lib/readlink-stub.c: Likewise.
36440         * lib/readutmp.c, readutmp.h: Likewise.
36441         * lib/rename.c: Likewise.
36442         * lib/rmdir.c: Likewise.
36443         * lib/same.c: Likewise.
36444         * lib/savedir.c: Likewise.
36445         * lib/stripslash.c: Likewise.
36446         * lib/tempname.c: Likewise.
36447         * lib/xreadlink.c: Likewise.
36448         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
36449         All uses changed.
36450         * lib/exclude.h: Likewise.
36451
36452         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
36453         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
36454         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
36455         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
36456         * lib/pathmax.h: Include <limits.h> unconditionally, since other
36457         files have been getting away with it for years (MORE/BSD 4.3
36458         is extinct now).
36459         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
36460         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
36461
36462         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
36463         Define to 256, not 255, as per modern POSIX.
36464
36465 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
36466
36467         Sync from coreutils.
36468         Use "file name" when talking about file names, instead of "filename"
36469         or "path", as per the GNU coding standards.
36470         * MODULES.html.sh: mkdir-p renamed from makepath.
36471         filenamecat renamed from path-concat.
36472         * modules/filenamecat: Renamed from modules/path-concat.
36473         (Files): filenamecat.h and filenamecat.c renamed from
36474         path-concat.h and path-concat.c.
36475         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
36476         (Include): filenamecat.h, not path-concat.h.
36477         * modules/mkdir-p: Renamed from modules/makepath.
36478         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
36479         makepath.c.
36480         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
36481         (Include): mkdir-p.h, not makepath.h.
36482
36483 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
36484
36485         Sync from coreutils.
36486         * m4/mkdir-p.m4: Renamed from makepath.m4.
36487         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
36488         Rename files from makepath.c to mkdir-p.c, and from
36489         makepath.h to mkdir-p.h.
36490         * m4/filenamecat.m4: Renamed from path-concat.m4.
36491         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
36492         Rename files from path-concat.c to filenamecat.c,
36493         and from path-concat.h to filenamecat.h.
36494         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
36495         "file name" in local variables or comments.
36496         * m4/rename.m4: Likewise.
36497
36498 2005-06-01  Bruno Haible  <bruno@clisp.org>
36499
36500         * modules/csharpexec: New file.
36501         * MODULES.html.sh (C#): New section.
36502
36503 2005-06-01  Bruno Haible  <bruno@clisp.org>
36504
36505         * m4/csharp.m4: New file, from GNU gettext.
36506         * m4/csharpexec.m4: New file, from GNU gettext.
36507
36508 2005-06-01  Bruno Haible  <bruno@clisp.org>
36509
36510         * lib/csharpexec.h: New file, from GNU gettext.
36511         * lib/csharpexec.c: New file, from GNU gettext.
36512         * lib/csharpexec.sh.in: New file, from GNU gettext.
36513
36514 2005-05-31  Derek Price  <derek@ximbiot.com>
36515             Paul Eggert  <eggert@cs.ucla.edu>
36516
36517         Sync from cvs.
36518         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
36519
36520 2005-05-31  Derek Price  <derek@ximbiot.com>
36521             Paul Eggert  <eggert@cs.ucla.edu>
36522
36523         Sync from cvs.
36524         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
36525
36526 2005-05-29  Derek Price  <derek@ximbiot.com>
36527
36528         * config/srclist.txt (glob_.h, glob.c): Add these files.
36529
36530 2005-05-29  Derek Price  <derek@ximbiot.com>
36531
36532         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
36533         * modules/glob: New file.
36534         * modules/getlogin_r: Add link to POSIX spec in description.
36535
36536 2005-05-29  Derek Price  <derek@ximbiot.com>
36537             Paul Eggert  <eggert@cs.ucla.edu>
36538
36539         * m4/glob.m4: New file.
36540
36541 2005-05-29  Derek Price  <derek@ximbiot.com>
36542             Paul Eggert  <eggert@cs.ucla.edu>
36543
36544         * lib/glob_.h, lib/glob.c: New files.
36545
36546 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
36547
36548         * modules/fts (Files): Remove m4/inttypes-pri.m4.
36549         * modules/fts-lgpl (Depends-on): Remove gettext.
36550
36551 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
36552
36553         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
36554         and don't require gt_INTTYPES_PRI.
36555
36556 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
36557
36558         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
36559
36560         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
36561         the configuration hassle isn't worth it.
36562         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
36563         (LONGEST_MODIFIER, PRIuMAX): Remove.
36564
36565 2005-05-27  Bruno Haible  <bruno@clisp.org>
36566
36567         * lib/getlogin_r.h: Remove second include of <stddef.h>.
36568
36569 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
36570
36571         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
36572         _POSIX_PTHREAD_SEMANTICS for Solaris.
36573
36574 2005-05-25  Derek Price  <derek@ximbiot.com>
36575
36576         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
36577
36578 2005-05-25  Derek Price  <derek@ximbiot.com>
36579             Paul Eggert  <eggert@cs.ucla.edu>
36580
36581         * modules/getlogin_r, m4/getlogin_r.m4: New files.
36582         * lib/getlogin_r.c, getlogin_r.h: New files.
36583
36584 2005-05-25  Bruno Haible  <bruno@clisp.org>
36585             Derek Price  <derek@ximbiot.com>
36586
36587         * lib/getlogin_r.h: Simplify API documentation.
36588
36589 2005-05-23  Derek Price  <derek@ximbiot.com>
36590
36591         * modules/minmax (Files): Add m4/minmax.m4.
36592         (configure.ac): Add gl_MINMAX.
36593
36594 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
36595
36596         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
36597         so that unistd-safer.h (GPL'ed code) need not be included.
36598
36599 2005-05-22  Bruno Haible  <bruno@clisp.org>
36600
36601         * m4/minmax.m4: New file.
36602         Based on a patch by Derek Price <derek@ximbiot.com>.
36603
36604 2005-05-22  Bruno Haible  <bruno@clisp.org>
36605
36606         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
36607         (INT64_MIN): Fix definition.
36608         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
36609
36610         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
36611         NEED_SIGNED_INT_TYPES.
36612
36613         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
36614         HAVE_SYSTEM_INTTYPES.
36615
36616 2005-05-22  Bruno Haible  <bruno@clisp.org>
36617
36618         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
36619         Also include <sys/param.h> if it defines MIN, MAX.
36620         Based on a patch by Derek Price <derek@ximbiot.com>.
36621
36622 2005-05-21  Jim Meyering  <jim@meyering.net>
36623
36624         * modules/fts (Files): Add m4/inttypes-pri.m4.
36625         (Depends-on): Add lstat and remove gettext.  Alphabetize.
36626
36627 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
36628
36629         New fts module.
36630         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
36631         (setup_dir, free_dir): New functions.
36632         (enter_dir, leave_dir): Define trivial
36633         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
36634         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
36635         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
36636         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
36637         Move to fts-cycle.c.
36638         (fts_open): Use setup_dir.
36639         (fts_close): Use free_dir.
36640         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
36641         This adds a label and some gotos, but the alternatives were messier.
36642         Check for memory allocation failure when entering a dir.
36643         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
36644         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
36645         (FTS): New member fts_cycle, that is a union that contains the
36646         old active_dir_ht and cycle_state.  All uses changed to mention
36647         fts_cycle.ht and fts_cycle.state.
36648         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
36649         fts.c, with the following changes:
36650         (setup_dir, free_dir): New functions.
36651         (enter_dir): Now returns bool.  Return true if successful, false
36652         if memory exhausted.  All callers changed.
36653         Do not bother partly cleaning up on
36654         memory allocation failure; that is free_dir's job.
36655         However, free ad if hash_insert fails, to avoid memory leak.
36656         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
36657         fts->fts_options to see which union member to use.
36658
36659 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
36660
36661         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
36662         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
36663
36664 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
36665
36666         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
36667
36668 2005-05-20  Jim Meyering  <jim@meyering.net>
36669
36670         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
36671         Now a macro, to pacify GCC.
36672
36673 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
36674
36675         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
36676         of -1.
36677
36678 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
36679
36680         * lib/chown.c (rpl_chown): Return -1 on failure.
36681
36682 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
36683
36684         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
36685         Don't check for stddef.h.
36686         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
36687         don't use its results.
36688         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
36689         since we include them unconditionally.  Don't require
36690         AM_STDBOOL_H, since stdbool is a prerequisite.
36691         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
36692         since we assume C89 or better.
36693         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
36694         as we don't use their results.
36695         Don't check for fchdir, memmove, memset, strrchr, as we use
36696         them unconditionally.
36697         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
36698         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
36699
36700 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
36701
36702         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
36703         Include <stddef.h> unconditionally, since we assume C89 now.
36704         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
36705         * lib/fts.c: Include fts_.h first, to check interface.
36706         Do not include intprops.h; no longer needed.
36707         Include cycle-check.h and hash.h, since fts_.h no longer does.
36708         Remove unnecessary casts of closedir to void.
36709         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
36710         decide whether to decrement nlinks.
36711         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
36712         (FTS): Use struct hash_table * instead of Hash_table, so that
36713         we no longer need to include hash.h here.
36714
36715 2005-05-18  Jim Meyering  <jim@meyering.net>
36716
36717         * modules/dirfd (License): Change to LGPL.  Most of the code
36718         is already in the public domain.
36719
36720 2005-05-18  Jim Meyering  <jim@meyering.net>
36721
36722         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
36723         Reported by Yoann Vandoorselaere.
36724
36725 2005-05-17  Jim Meyering  <jim@meyering.net>
36726
36727         * m4/fts.m4: New file, from coreutils.
36728
36729 2005-05-17  Jim Meyering  <jim@meyering.net>
36730
36731         * lib/fts.c, lib/fts_.h: New files, from coreutils.
36732
36733 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36734
36735         Sync from coreutils.
36736         * m4/unlinkdir.m4: New file.
36737
36738 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36739
36740         Sync from coreutils.
36741         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
36742         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
36743         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
36744         White space changes only.
36745         * lib/makepath.c (make_path): Port to hosts where leading "//" is
36746         special.
36747         * lib/yesno.c: Include getline.h, not ctype.h.
36748         (yesno): Don't remove leading white space; POSIX doesn't allow it.
36749         Use getline to remove arbitrary restriction on response length.
36750
36751 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36752
36753         * config/srclist-update: Spell out "Street" in FSF postal
36754         mail address; this is the style the FSF seems to prefer.
36755
36756         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
36757         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
36758         this updates FSF postal mail address.
36759
36760         Sync from coreutils.
36761         * modules/unlinkdir: New file.
36762         * modules/yesno (Depends-on): Add getline.
36763         * MODULES.html.sh (File system functions): Add unlinkdir.
36764
36765 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
36766
36767         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
36768         lib/strsep.h:
36769         Change the initial comment to refer to GPL, not LGPL.
36770         gnulib-tool will change it to LGPL as needed.
36771
36772         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
36773         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
36774         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
36775         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
36776         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
36777         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
36778         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
36779         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
36780         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
36781         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
36782         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
36783         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
36784         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
36785         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
36786         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
36787         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
36788         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
36789         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
36790         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
36791         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
36792         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
36793         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
36794         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
36795         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
36796         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
36797         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
36798         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
36799         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
36800         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
36801         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
36802         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
36803         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
36804         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
36805         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
36806         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
36807         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
36808         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
36809         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
36810         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
36811         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
36812         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
36813         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
36814         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
36815         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
36816         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
36817         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
36818         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
36819         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
36820         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
36821         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
36822         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
36823         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
36824         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
36825         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
36826         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
36827         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
36828         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
36829         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
36830         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
36831         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
36832         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
36833         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
36834         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
36835         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
36836         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
36837         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
36838         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
36839         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
36840         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
36841         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
36842         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
36843         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
36844         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
36845         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
36846         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
36847         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
36848         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
36849         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
36850         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
36851         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
36852         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
36853         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
36854         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
36855         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
36856         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
36857         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
36858         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
36859         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
36860         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
36861         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
36862         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
36863         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
36864         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
36865         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
36866         lib/yesno.c, lib/yesno.h:
36867         Update FSF postal mail address.
36868
36869 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
36870
36871         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
36872         tests/test-memmem.c, tests/test-stpncpy.c:
36873         Update FSF postal mail address.
36874
36875 2005-05-13  Bruno Haible  <bruno@clisp.org>
36876
36877         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
36878         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
36879         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
36880         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
36881         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
36882         Add support for 64-bit integers in the MSVC compiler.
36883
36884 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36885
36886         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
36887
36888 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
36889
36890         * gnulib-tool (func_import): Sort and uniquify recommended includes.
36891
36892 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
36893
36894         * doc/getdate.texi (General date syntax): Don't say that date
36895         date --iso-8601=ns generates acceptable dates; it doesn't yet.
36896         Problem reported by Nic Ferrier.
36897
36898 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36899
36900         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
36901         specified in ai_socktype. Fix invalid ai_protocol
36902         check. ai_protocol is usually set to 0 or depending on
36903         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
36904         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
36905         ai_socktype / ai_protocol in the returned addrinfo structure.
36906
36907 2005-05-10  Simon Josefsson  <jas@extundo.com>
36908
36909         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
36910         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
36911
36912 2005-05-10  Karl Berry  <karl@gnu.org>
36913
36914         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
36915         (from http://www.gnu.org/licenses).
36916         * doc/COPYING.LIB: also rename to COPYING.LESSER.
36917         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
36918         fdl.texi suffices.
36919
36920 2005-05-10  Karl Berry  <karl@gnu.org>
36921
36922         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
36923         (COPYING.DOC): remove.
36924
36925         * config/srclist-update: new FSF address.
36926
36927 2005-05-10  Derek Price  <derek@ximbiot.com>
36928
36929         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
36930         possible.
36931
36932 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36933             Bruno Haible  <bruno@clisp.org>
36934
36935         * modules/inet_ntop: New file.
36936         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
36937         inet_ntop.
36938
36939 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36940             Bruno Haible  <bruno@clisp.org>
36941
36942         * m4/inet_ntop.m4: New file.
36943
36944 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36945             Bruno Haible  <bruno@clisp.org>
36946
36947         * lib/inet_ntop.h: New file.
36948         * lib/inet_ntop.c: New file, from glibc with modifications.
36949
36950 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
36951
36952         * modules/time_r (License): Change to LGPL.
36953         * modules/extensions (License): Change to LGPL.  Actually,
36954         the license is more permissive than that, but currently gnulib-tool
36955         doesn't know how to handle more-permissive licenses.
36956
36957         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
36958         Problem reported by Dave Love.
36959
36960 2005-05-08  Jim Meyering  <jim@meyering.net>
36961
36962         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
36963         blank.
36964
36965 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
36966
36967         * modules/argmatch (Depends-on): Add stdbool.
36968         * modules/backupfile (Depends-on): Likewise.
36969         * modules/chdir-long (Depends-on): Likewise.
36970         * modules/closeout (Depends-on): Likewise.
36971         * modules/cycle-check (Depends-on): Likewise.
36972         * modules/dirname (Depends-on): Likewise.
36973         * modules/fnmatch (Depends-on): Likewise.
36974         * modules/fsusage (Depends-on): Likewise.
36975         * modules/fwriteerror (Depends-on): Likewise.
36976         * modules/getcwd (Depends-on): Likewise.
36977         * modules/getloadavg (Depends-on): Likewise.
36978         * modules/hard-locale (Depends-on): Likewise.
36979         * modules/makepath (Depends-on): Likewise.
36980         * modules/mountlist (Depends-on): Likewise.
36981         * modules/nanosleep (Depends-on): Likewise.
36982         * modules/posixtm (Depends-on): Likewise.
36983         * modules/quotearg (Depends-on): Likewise.
36984         * modules/readtokens (Depends-on): Likewise.
36985         * modules/readtokens0 (Depends-on): Likewise.
36986         * modules/readutmp (Depends-on): Likewise.
36987         * modules/save-cwd (Depends-on): Likewise.
36988         * modules/strftime (Depends-on): Likewise.
36989         * modules/userspec (Depends-on): Likewise.
36990         * modules/utimecmp (Depends-on): Likewise.
36991         * modules/xgetcwd (Depends-on): Likewise.
36992         * modules/xnanosleep (Depends-on): Likewise.
36993         * modules/xstrtod (Depends-on): Likewise.
36994         * modules/yesno (Depends-on): Likewise.
36995
36996 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
36997
36998         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
36999         needless checks.
37000
37001 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
37002
37003         Merge from coreutils.  Among other things,
37004         add bulletproofing for cases where stdin, stdout, or stderr are closed.
37005         * lib/fd-safer.c: New file.
37006         * lib/fcntl-safer.h, open-safer.c: Remove.
37007         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
37008         * lib/dup-safer.c: Include unistd-safer.h first.
37009         Don't include errno.h.
37010         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
37011         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
37012         * lib/file-type.c: Rely on file-type.h change.
37013         * lib/getloadavg.c: Include unistd-safer.h.
37014         (getloadavg): Use safer open.
37015         * lib/getusershell.c: Include "stdio-safer.h".
37016         (getusershell): Use safer fopen.
37017         * lib/long-options.c (long_options): Use NULL rather than 0.
37018         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
37019         'free'.
37020         * lib/modechange.c: Likewise.
37021         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
37022         (MODE_DONE): New constant.
37023         (struct mode_change): Remove 'next' member.
37024         (make_node_op_equals): New function; like the old one of the
37025         same name, except it allocates an array.
37026         (mode_compile, mode_create_from_ref): Use it.
37027         (mode_compile): Allocate result as an array, not a linked list.
37028         Parse octal string ourself, so that we catch mistakes like "+0".
37029         (mode_adjust): Arg is an array, not a linked list.
37030         * lib/modechange.c: Include stat-macros.h, xalloc.h.
37031         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
37032         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
37033         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
37034         Remove.  This is now stat-macros.h's job.
37035         (talloc): Remove.  All callers replaced by xalloc, so that
37036         our invokers don't have to worry about reporting memory failures.
37037         (make_node_op_equals): Remove.
37038         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
37039         New constants.
37040         (struct mode_change): Moved here from modechange.h.
37041         (mode_append_entry): Remove.
37042         (mode_compile): Remove MASKED_OPS arg, since it encouraged
37043         apps to have incorrect behavior.  Use simpler algorithm for head
37044         and tail.  Don't futz with umask; that's now the job of mode_adjust.
37045         Detect more invalid usages rather than having somewhat-random behavior.
37046         Don't insert an "a=" action, as that leads to incorrect behavior.
37047         (mode_compile, mode_create_from_ref): Return NULL on error instead
37048         of an enum, since now there's only one way to have an error.  All
37049         callers changed.
37050         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
37051         at the correct time.  Simplify calculation of "+u" and its ilk.
37052         Don't mishandle "+X".
37053         (mode_free): Remove "register" and localize decls.
37054         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
37055         (struct mode_change): Move to modechange.c; callers don't
37056         need to see this stuff.
37057         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
37058         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
37059         (mode_change, mode_adjust): Reflect the new signatures noted above.
37060         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
37061         that might redefine system include files.
37062         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
37063         (my_usleep): Use NULL rather than (void *) 0.
37064         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
37065         Use siginterrupt to specify that system calls should be interrupted.
37066         (rpl_nanosleep): Move initialization of suspended closer to call of
37067         my_usleep.
37068         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
37069         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
37070         (desirable_utmp_entry): New function.
37071         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
37072         using x2nrealloc, to simplify logic.
37073         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
37074         size calculation.  Do not assume utmp file is a regular file.
37075         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
37076         (READ_UTMP_CHECK_PIDS): New constant.
37077         * lib/save-cwd.c: Include unistd-safer.h.
37078         (save_cwd): Use fd_safer.
37079         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
37080         [!_LIBC] Include "stat-macros.h" instead.
37081         * lib/unistd-safer.h (fd_safer): New decl.
37082
37083 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
37084
37085         * modules/getloadavg (Depends-on): Add unistd-safer.
37086         * modules/getusershell (Depends-on): Add stdio-safer.
37087         * modules/lstat (Depends-on): Remove xalloc.
37088         * modules/mkstemp (Depends-on): Add stat-macros.
37089         * modules/modechange (Depends-on): Remove xstrtol.
37090         Add stat-macros, xalloc.
37091         * modules/save-cwd (Depends-on): Add unistd-safer.
37092         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
37093         * modules/unistd-safer (Files): Add lib/fd-safer.c
37094         (Makefile.am): Remove lib_SOURCES.
37095
37096         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
37097         Remove fcntl-safer; unistd-safer supersedes it.
37098
37099 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
37100
37101         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
37102         AC_HEADER_STAT.
37103         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
37104         (gl_PREREQ_CHOWN): Remove.
37105         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
37106         it.  Don't require AC_HEADER_STAT.
37107         (gl_PREREQ_LSTAT): Remove.
37108         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
37109         Don't require AC_HEADER_STAT.
37110         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
37111         (gl_PREREQ_RMDIR): Remove.
37112         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
37113         mention stat-macros.h or AC_HEADER_STAT, since we'll make
37114         the stat-macros module a prerequisite.
37115         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
37116         * m4/filemode.m4 (gl_FILEMODE): Likewise.
37117         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
37118         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
37119         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
37120         variable names.
37121         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
37122         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
37123         variable prefixes.
37124         * m4/fcntl-safer.m4: Remove.
37125         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
37126         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
37127         Invoke gl_PREREQ_FD_SAFER.
37128         (gl_PREREQ_FD_SAFER): New macro.
37129         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
37130         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
37131         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
37132         Remove duplicate call to AC_LIBOBJ(readutmp).
37133         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
37134
37135         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
37136         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
37137
37138 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
37139
37140         * MODULES.html.sh (Misc): Add byteswap.
37141
37142 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
37143
37144         * modules/getcwd (Depends-on): Add extensions.
37145         * modules/openat (Depends-on): Likewise.
37146
37147 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
37148
37149         * modules/byteswap: New file.
37150
37151 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
37152
37153         * m4/byteswap.m4: New file.
37154
37155 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
37156
37157         * lib/byteswap_.h: New file.
37158
37159 2005-04-25  Karl Berry  <karl@gnu.org>
37160
37161         * m4/gettext.m4: Update from GNU gettext 0.14.4.
37162
37163 2005-04-25  Albert Chin  <china@thewrittenword.com>
37164
37165         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
37166         Toolkit C bug.
37167
37168 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
37169
37170         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
37171         (func_ln_if_changed) Remove forcibly for no error message
37172         in case file does not exist.
37173
37174 2005-04-19  Simon Josefsson  <jas@extundo.com>
37175
37176         * gnulib-tool (Options): Make --symlink mean --symbolic.
37177
37178 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
37179
37180         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
37181
37182 2005-04-16  Simon Josefsson  <jas@extundo.com>
37183
37184         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
37185
37186 2005-04-15  Simon Josefsson  <jas@extundo.com>
37187
37188         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
37189
37190 2005-04-15  Simon Josefsson  <jas@extundo.com>
37191
37192         * gnulib-tool: Rename --symlink to --symbolic.
37193
37194 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
37195
37196         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
37197         symbolic links to files instead of copying/moving.  Add --aux-dir,
37198         specifying directory relative --dir where auxiliary build tools
37199         are placed.
37200
37201 2005-04-14  Bruno Haible  <bruno@clisp.org>
37202
37203         * modules/allocsa (License): Change to LGPL.
37204         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
37205
37206 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
37207
37208         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
37209         that "UTC +1 second" continues to work.  Problem reported
37210         by Dmitry V. Levin.
37211         (relunit_snumber): New rule.
37212         (relunit): Use it.
37213
37214 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
37215
37216         * lib/getdate.y (universal_time_zone_table): New constant.
37217         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
37218         universal_time_zone_table.
37219         (lookup_zone): Prefer universal_time_zone_table to
37220         local_time_zone_table, so that "GMT" time stamps are allowed in
37221         London during the summer.  Problem reported by Ian Abbott.
37222
37223 2005-04-12  Jim Meyering  <jim@meyering.net>
37224
37225         * lib/human.c (humblock): Set *options even when returning due to
37226         xstrtoumax conversion failure.  Thanks to a used-uninitialized
37227         warning from gcc-4.
37228
37229 2005-04-09  Jim Meyering  <jim@meyering.net>
37230
37231         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
37232         -Wuninitialized: initialize tm0.tm_year.
37233
37234 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
37235
37236         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
37237         count, since there's no maximum.  All uses changed.
37238         Add member dsts_seen.
37239         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
37240         not being INT_MAX.
37241         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
37242         Use pc_rels_seen to decide whther a date is absolute.
37243
37244         * lib/getdate.y (number): Don't overwrite year.
37245         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
37246         check.
37247
37248 2005-04-02  Simon Josefsson  <jas@extundo.com>
37249
37250         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
37251         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
37252
37253 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
37254
37255         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
37256         where no absolute path name can be longer than PATH_MAX.
37257
37258 2005-03-27  Jim Meyering  <jim@meyering.net>
37259
37260         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
37261
37262 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
37263
37264         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
37265         "one's complement" -> "ones' complement" in comment, as per Knuth.
37266         "value of type" -> "type or expression" in comment.
37267         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
37268
37269 2005-03-26  Jim Meyering  <jim@meyering.net>
37270
37271         Comment nits.
37272         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
37273         Correct typos: s/or/of/.
37274
37275 2005-03-26  Jim Meyering  <jim@meyering.net>
37276
37277         * modules/check-include-files: Move to ../ and rename to...
37278         * check-module: ...this.
37279
37280 2005-03-25  Jim Meyering  <jim@meyering.net>
37281
37282         * modules/xvasprintf (Files): Add xalloc.h.
37283
37284 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
37285
37286         * modules/gettext (Files): config/config.rpath ->
37287         build-aux/config.rpath
37288         * modules/iconv (Files): Likewise.
37289         Problem reported by Oskar Liljeblad.
37290
37291 2005-03-23  Jim Meyering  <jim@meyering.net>
37292
37293         * modules/check-include-files: New script to check for
37294         missing dependencies, multiple includes, etc.
37295
37296         * modules/c-strtold (Depends-on): Add xalloc.
37297         * modules/c-strtod (Depends-on): Add xalloc.
37298         * modules/hash (Depends-on): Add xalloc.
37299         (Files): Remove lib/xalloc.h.
37300
37301         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
37302         * modules/userspec (Files): Add lib/inttostr.h.
37303
37304 2005-03-23  Jim Meyering  <jim@meyering.net>
37305
37306         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
37307
37308 2005-03-22  Jim Meyering  <jim@meyering.net>
37309
37310         * modules/stat-macros: New module.
37311         * modules/canonicalize, modules/euidaccess, modules/file-type,
37312         * modules/filemode, modules/lchown, modules/makepath,
37313         * modules/rmdir, modules/stat: Depend on new stat-macros module
37314         rather than listing lib/stat-macros.h manually.
37315         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
37316
37317 2005-03-22  Jim Meyering  <jim@meyering.net>
37318
37319         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
37320
37321 2005-03-22  Bruno Haible  <bruno@clisp.org>
37322
37323         * config/srclist.txt: Replace target directory 'config' with
37324         'build-aux'.
37325         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
37326         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
37327         ../build-aux/.
37328
37329 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
37330
37331         * modules/chdir-long (Depends-on): Add mempcpy.
37332
37333         * modules/acl, modules/backupfile, modules/c-strtod,
37334         modules/c-strtold, modules/canon-host, modules/canonicalize,
37335         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
37336         modules/exclude, modules/exitfail, modules/file-type,
37337         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
37338         modules/getdate, modules/getline, modules/getpagesize,
37339         modules/getpass, modules/getugroups, modules/group-member,
37340         modules/hard-locale, modules/hash, modules/human, modules/idcache,
37341         modules/inttostr, modules/long-options, modules/makepath,
37342         modules/md5, modules/memcasecmp, modules/memcoll,
37343         modules/modechange, modules/mountlist, modules/path-concat,
37344         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
37345         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
37346         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
37347         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
37348         modules/strftime, modules/strndup, modules/strverscmp,
37349         modules/timespec, modules/unlocked-io, modules/userspec,
37350         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
37351         modules/yesno:
37352         Remove lib_SOURCES line from Makefile.am section, as this is now
37353         done automatically by the corresponding Autoconf macro.
37354
37355 2005-03-21  Jim Meyering  <jim@meyering.net>
37356
37357         Changes imported from coreutils.
37358
37359         * lib/cycle-check.c: Don't include xalloc.h.
37360
37361         * lib/path-concat.c: Don't include assert.h.
37362         (path_concat): Remove assertion that would have triggered
37363         for ABASE starting with more than one slash.
37364         Reported by Andreas Schwab.
37365
37366         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
37367         properly when ABASE is an absolute file name.
37368         Correct the description of this function.
37369         Include <assert.h>.
37370         Add an assertion and a test driver.
37371         This fixes a bug introduced on 2004-07-02.
37372         Andreas Schwab reported the resulting failure of cp --parents:
37373         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
37374
37375 2005-03-21  Jim Meyering  <jim@meyering.net>
37376
37377         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
37378         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
37379
37380 2005-03-21  Jim Meyering  <jim@meyering.net>
37381         and  Paul Eggert  <eggert@cs.ucla.edu>
37382
37383         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
37384         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
37385         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
37386         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
37387         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
37388         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
37389         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
37390         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
37391         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
37392         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
37393         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
37394         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
37395         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
37396         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
37397         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
37398         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
37399         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
37400         for these modules.
37401
37402 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
37403
37404         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
37405         (which shouldn't happen), generate nothing instead of returning 0
37406         immediately, so that nstrftime (NULL, ...) doesn't return 0.
37407
37408 2005-03-16  Bruno Haible  <bruno@clisp.org>
37409
37410         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
37411         HAVE_LONGLONG_64BIT.
37412
37413 2005-03-16  Bruno Haible  <bruno@clisp.org>
37414
37415         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
37416         HAVE_LONGLONG_64BIT.
37417
37418 2005-03-16  Bruno Haible  <bruno@clisp.org>
37419
37420         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
37421         HAVE_LONGLONG_64BIT.
37422
37423 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
37424
37425         * lib/strftime.c (my_strftime): Prepend space to format so that we can
37426         reliably distinguish strftime failure from empty output on POSIX
37427         hosts.
37428
37429 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
37430
37431         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
37432         (iconv_string): Don't guess a size-zero buffer, as that might cause
37433         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
37434         result would be 'too large', where 'too large' is (heuristically)
37435         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
37436         overflow concerns.  This will prevent some unwanted malloc failures
37437         when the inputs are very large.
37438
37439 2005-03-15  Karl Berry  <karl@gnu.org>
37440
37441         * config/srclist.txt (config.rpath): from gettext.
37442         * config/config.rpath: update.
37443
37444 2005-03-15  Bruno Haible  <bruno@clisp.org>
37445
37446         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
37447         to 'negate'.
37448
37449         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
37450         variable.
37451
37452         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
37453         results.
37454
37455 2005-03-14  Simon Josefsson  <jas@extundo.com>
37456
37457         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
37458         <fx@gnu.org>.
37459
37460 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
37461
37462         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
37463         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
37464         intprops.h.
37465         * lib/strtol.c: Likewise.
37466
37467 2005-03-14  Jim Meyering  <jim@meyering.net>
37468
37469         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
37470         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
37471         to be nonzero so that we (and caller) can detect the difference
37472         between a valid zero-length expansion and an error return, even
37473         when the underlying strftime fails before writing anything into
37474         that location.
37475
37476 2005-03-14  Bruno Haible  <bruno@clisp.org>
37477
37478         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
37479         Update from GNU gettext 0.14.3.
37480
37481 2005-03-10  Jim Meyering  <jim@meyering.net>
37482
37483         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
37484
37485 2005-03-10  Jim Meyering  <jim@meyering.net>
37486
37487         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
37488         so that this module works on systems without fchdir.
37489
37490 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
37491
37492         Factor int-properties macros into a single file, except for
37493         glibc-related files.
37494         * lib/intprops.h: New file.
37495         * lib/getloadavg.c: Include it instead of limits.h.
37496         (INT_STRLEN_BOUND): Remove.
37497         * lib/human.c: Include intprops.h.
37498         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
37499         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
37500         302/1000.
37501         * lib/inttostr.h: Include intprops.h instead of limits.h.
37502         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
37503         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
37504         for consistency with intprops.h.
37505         (time_t_is_integer, twos_complement_arithmetic): Use them.
37506         * lib/sig2str.h: Include <signal.h>, intprops.h.
37507         (INT_STRLEN_BOUND): Remove.
37508         * lib/strftime.c (TYPE_SIGNED): Remove.
37509         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
37510         * lib/strtol.c: Adjust comments to match intprops.h.
37511         * lib/userspec.c: Include intprops.h.
37512         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
37513         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
37514         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
37515         instead of rolling our own expressions.
37516         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
37517
37518         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
37519         instead of int.
37520         (my_strftime): Do not mishandle years close to INT_MAX, by doing
37521         the right thing even if adding 1900 would overflow.  Similarly
37522         for tm_mon + 1 and tm_yday + 1.
37523         Make %Y always equivalent to %C%y, and similarly for %G and %g.
37524         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
37525         (DO_SIGNED_NUMBER): New macro.
37526         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
37527
37528 2005-03-07  Bruno Haible  <bruno@clisp.org>
37529
37530         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
37531
37532 2005-03-07  Bruno Haible  <bruno@clisp.org>
37533
37534         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
37535
37536 2005-03-04  Derek R. Price  <derek@ximbiot.com>
37537
37538         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
37539         (func_import): Only replace files via --import when they have actually
37540         changed.
37541
37542 2005-03-03  Derek R. Price  <derek@ximbiot.com>
37543
37544         * m4/mmap-anon.m4: New file.
37545         * m4/pagealign_alloc.m4: New file.
37546
37547 2005-03-03  Derek R. Price  <derek@ximbiot.com>
37548             Bruno Haible  <bruno@clisp.org>
37549
37550         * modules/pagealign_alloc: New file.
37551         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
37552
37553 2005-03-03  Derek R. Price  <derek@ximbiot.com>
37554             Bruno Haible  <bruno@clisp.org>
37555
37556         * lib/pagealign_alloc.h: New file.
37557         * lib/pagealign_alloc.c: New file.
37558
37559 2005-03-03  Bruno Haible  <bruno@clisp.org>
37560
37561         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
37562         Use an all-permissive copyright notice, recommended by RMS.
37563
37564 2005-03-02  Bruno Haible  <bruno@clisp.org>
37565
37566         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
37567         of AIX, the replacement has to be done only after <string.h> is
37568         included, therefore not in config.h. stpncpy.h does the replacement,
37569         and stpncpy.c uses it.
37570
37571 2005-03-02  Bruno Haible  <bruno@clisp.org>
37572
37573         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
37574         stpncpy.c uses it.
37575
37576 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
37577
37578         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
37579         The workaround isn't strictly needed for POSIX conformance, and
37580         it's too much of a pain to configure and maintain.  We'll ask
37581         people to fix their kernels instead.
37582         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
37583         (NANOSLEEP_BUG_WORKAROUND): Remove.
37584         (xnanosleep): Remove the workaround.
37585
37586 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
37587
37588         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
37589         Reported by Derek Price.
37590         (Include): Add "timespec.h".
37591
37592         * modules/xnanosleep (Depends-on): Remove gethrxtime.
37593
37594 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
37595
37596         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
37597         to detect nanosleep bug.
37598
37599 2005-03-01  Bruno Haible  <bruno@clisp.org>
37600
37601         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
37602
37603 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
37604
37605         * modules/gethrxtime: New file.
37606         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
37607         (Depends-on): Add gethrxtime.
37608         (configure.ac): Add gl_XNANOSLEEP.
37609         (Makefile.am): Remove lib_SOURCES line.
37610
37611 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
37612
37613         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
37614         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
37615
37616 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
37617
37618         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
37619         * lib/timespec.h (gettime): Return void, since it always
37620         succeeds now.  All uses changed.
37621         * lib/gettime.c (gettime) Likewise.
37622         [HAVE_NANOTIME]: Prefer nanotime.
37623         Assume gettimeofday succeeds, as POSIX requires.
37624         Assime time () succeeds, since other code already does.
37625         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
37626         (timespec_subtract): Remove.
37627         (NANOSLEEP_BUG_WORKAROUND): New constant.
37628         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
37629         things considerably.  Use it only on GNU/Linux hosts, since the
37630         workaround shouldn't be needed elsewhere.
37631
37632 2005-02-24  Bruno Haible  <bruno@clisp.org>
37633
37634         * modules/gettext (Files): Add m4/glibc2.m4.
37635
37636 2005-02-24  Bruno Haible  <bruno@clisp.org>
37637
37638         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
37639         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
37640         * m4/progtest.m4:
37641         Update from GNU gettext 0.14.2.
37642         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
37643
37644 2005-02-24  Bruno Haible  <bruno@clisp.org>
37645
37646         * lib/localcharset.c: Update from GNU gettext 0.14.2.
37647         * lib/config.charset: Update from GNU gettext 0.14.2.
37648
37649 2005-02-24  Bruno Haible  <bruno@clisp.org>
37650
37651         * lib/gettext.h: Update from GNU gettext 0.14.2.
37652
37653 2005-02-23  Simon Josefsson  <jas@extundo.com>
37654
37655         * m4/iconvme.m4: New file.
37656
37657 2005-02-23  Jim Meyering  <jim@meyering.net>
37658
37659         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
37660         change.
37661         Thanks to Bruno Haible for catching it.
37662
37663 2005-02-22  Simon Josefsson  <jas@extundo.com>
37664
37665         * modules/iconvme: New file.
37666
37667         * MODULES.html.sh: Add iconvme.
37668
37669 2005-02-22  Simon Josefsson  <jas@extundo.com>
37670
37671         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
37672
37673 2005-02-22  Simon Josefsson  <jas@extundo.com>
37674
37675         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
37676
37677 2005-02-22  Jim Meyering  <jim@meyering.net>
37678
37679         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
37680         s/ifndef/ifdef/.
37681
37682 2005-02-20  Neil Conway  <neilc@samurai.com>
37683
37684         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
37685         returned by OSX/Darwin if the specified buffer is not large
37686         enough for the hostname.
37687
37688 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37689
37690         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
37691         pass it to _help, otherwise the latter coredumps trying to
37692         dereference state.root_argp.
37693
37694 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
37695
37696         * modules/chdir-long (Depends-on): Add memrchr.
37697         * modules/memrchr (Files): Add lib/memrchr.h.
37698         (Include): "memrchr.h".
37699
37700 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
37701
37702         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
37703
37704 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
37705
37706         * lib/memrchr.h: New file.
37707         * lib/chdir-long.c: Include it.
37708         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
37709         Don't bother including stddef.h.
37710
37711 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
37712
37713         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
37714         inclusion.
37715         Include <sys/types.h>, for dev_t.
37716         (ME_DUMMY, ME_REMOTE): Move from here....
37717         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
37718         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
37719         Dmitry V. Levin.
37720         Include mountlist.h first, to test the interface.
37721
37722 2005-01-29  Bruno Haible  <bruno@clisp.org>
37723
37724         * lib/progname.c (program_name): Initialize.
37725         Needed when linking statically on MacOS X.
37726
37727 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
37728
37729         Sync from coreutils.
37730         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
37731         (Depends-on): Add c-strtod.
37732         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
37733
37734 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
37735
37736         Sync from coreutils.
37737         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
37738
37739         Remove files that are specific to coreutils.
37740         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
37741
37742 2005-01-28  Bruno Haible  <bruno@clisp.org>
37743
37744         * modules/javacomp: New file.
37745         * MODULES.html.sh (Java): Add javacomp.
37746
37747 2005-01-28  Bruno Haible  <bruno@clisp.org>
37748
37749         * m4/javacomp.m4: New file, from GNU gettext.
37750
37751 2005-01-28  Bruno Haible  <bruno@clisp.org>
37752
37753         * lib/javacomp.sh.in: New file, from GNU gettext.
37754         * lib/javacomp.h: New file, from GNU gettext.
37755         * lib/javacomp.c: New file, from GNU gettext.
37756
37757 2005-01-26  Simon Josefsson  <jas@extundo.com>
37758
37759         * lib/gai_strerror.c: Use GPL in header.
37760
37761 2005-01-26  Bruno Haible  <bruno@clisp.org>
37762
37763         * modules/javaexec: New file.
37764         * MODULES.html.sh (Java): Add javaexec.
37765
37766 2005-01-26  Bruno Haible  <bruno@clisp.org>
37767
37768         * m4/javaexec.m4: New file, from GNU gettext.
37769
37770 2005-01-26  Bruno Haible  <bruno@clisp.org>
37771
37772         * lib/javaexec.sh.in: New file, from GNU gettext.
37773         * lib/javaexec.h: New file, from GNU gettext.
37774         * lib/javaexec.c: New file, from GNU gettext.
37775
37776 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37777
37778         * modules/lchown (Depends-on): Remove lchown.h
37779
37780 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37781
37782         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
37783         must be defined if the header file was not found, in order
37784         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
37785
37786 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37787
37788         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
37789         initializers for struct pentry_state.
37790         (__argp_error): Check return value of __asprintf
37791         (__argp_failure): Translate error message
37792
37793         * lib/argp-parse.c: Removed braces around the expansion of N_()
37794
37795 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
37796
37797         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
37798         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
37799         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
37800         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
37801         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
37802         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
37803         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
37804         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
37805         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
37806         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
37807         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
37808         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
37809         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
37810         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
37811         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
37812         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
37813         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
37814         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
37815         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
37816         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
37817         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
37818         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
37819         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
37820         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
37821         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
37822         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
37823         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
37824         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
37825         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
37826         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
37827         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
37828         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
37829         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
37830         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
37831         xstrtol.m4, xstrtoumax.m4, yesno.m4:
37832         Use an all-permissive copyright notice, recommended by RMS.
37833
37834 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
37835
37836         * modules/chdir-long (Depends-on): Remove mempcpy.
37837
37838 2005-01-21  Jim Meyering  <jim@meyering.net>
37839
37840         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
37841         same value as for Solaris 9.
37842
37843         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
37844         component length.  This included changing the parameter to be
37845         of type `char *' rather than `char const *'.
37846         * lib/chdir-long.h (chdir_long): Update prototype.
37847
37848         * lib/openat.c (fdopendir, fstatat): New functions.
37849         * lib/openat.h: Include headers required for use of DIR and struct
37850         stat.
37851         [AT_SYMLINK_NOFOLLOW]: Define.
37852         (fdopendir, fstatat): Add prototypes.
37853
37854 2005-01-21  Bruno Haible  <bruno@clisp.org>
37855
37856         * modules/classpath: New file.
37857         * MODULES.html.sh (Java): Add classpath.
37858
37859 2005-01-21  Bruno Haible  <bruno@clisp.org>
37860
37861         * lib/classpath.h: New file, from GNU gettext.
37862         * lib/classpath.c: New file, from GNU gettext.
37863
37864 2005-01-20  Simon Josefsson  <jas@extundo.com>
37865
37866         * modules/version-etc-fsf: New file.
37867
37868 2005-01-20  Simon Josefsson  <jas@extundo.com>
37869
37870         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
37871         * lib/version-etc.c: Remove version_etc_copyright.
37872         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
37873         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
37874
37875 2005-01-20  Simon Josefsson  <jas@extundo.com>
37876
37877         * lib/base64.h (isbase64): Add.
37878
37879         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
37880         using a unsigned prototype, don't inline.
37881         (base64_decode): Use it.
37882
37883 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37884
37885         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
37886         it.
37887
37888 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37889
37890         * lib/save-cwd.c (save_cwd): Remove code to support the case
37891         where fchdir is missing or flaky.
37892
37893 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37894
37895         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
37896
37897 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
37898
37899         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
37900         AC_LIBSOURCES now does this.
37901         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
37902         with new ullong_max module.
37903
37904 2005-01-19  Bruno Haible  <bruno@clisp.org>
37905
37906         * modules/sh-quote: New file.
37907         * MODULES.html.sh (Executing programs): Add sh-quote.
37908
37909 2005-01-19  Bruno Haible  <bruno@clisp.org>
37910
37911         * lib/sh-quote.h: New file, from GNU gettext.
37912         * lib/sh-quote.c: New file, from GNU gettext.
37913
37914 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
37915
37916         Merge from coreutils.
37917         * m4/ullong_max.m4: New file.
37918         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
37919         (gl_MACROS): Assume localeconv exists.
37920
37921 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
37922
37923         Merge changes from coreutils, as described below in several
37924         changelogs dated today.
37925
37926         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
37927         (O_DIRECTORY): Remove; not needed here, since "." must be
37928         a directory.  All uses removed.
37929         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
37930         universal on Suns, and we also need to test for IRIX.
37931         Revamp code to use 'if' rather than '#if'.
37932         Avoid unnecessary comparison of cwd->desc to 0.
37933
37934         * lib/utimens.c (futimens): Robustify the previous patch, by checking
37935         for known valid error numbers rather than observed invalid ones.
37936
37937 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
37938
37939         * modules/ullong_max: New file.
37940
37941         * modules/chdir-long, modules/openat: New files.
37942         * modules/save-cwd (Depends-on): Depend on chdir-long.
37943         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
37944
37945 2005-01-18  Jim Meyering  <jim@meyering.net>
37946
37947         Merge from coreutils.
37948         * m4/chdir-long.m4, m4/openat.m4: New files.
37949         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
37950         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
37951         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
37952         is sane and DOES follow symlinks.  Besides, testing 20 different
37953         systems found no broken chown implementations.
37954         Prompted by a change in rsync's copy of this macro.
37955         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
37956
37957         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
37958
37959         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
37960         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
37961         NULL-means-set-to-current-time semantics.
37962         Remove temporary file immediately, rather than waiting
37963         for configure's at-exit trap code to do it.
37964
37965 2005-01-18  Jim Meyering  <jim@meyering.net>
37966
37967         * lib/version-etc.c (version_etc_copyright): Update copyright date.
37968
37969         * lib/utimens.c (futimens): Account for the fact that futimes
37970         can also fail with errno == ENOSYS or errno == ENOENT.
37971         Patch from Dmitry V. Levin.
37972
37973         Change the name of the robust chdir function from chdir to chdir_long.
37974         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
37975         (restore_cwd): Use chdir_long, not chdir.
37976         * lib/chdir-long.c: Renamed from chdir.c.
37977         * lib/chdir-long.h: Renamed from chdir.h.
37978         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
37979         Hurd.
37980
37981 2005-01-18  Bruno Haible  <bruno@clisp.org>
37982
37983         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
37984         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
37985         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
37986         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
37987         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
37988         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
37989         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
37990         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
37991         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
37992         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
37993         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
37994         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
37995         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
37996         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
37997         Use an all-permissive copyright notice, recommended by RMS.
37998
37999 2005-01-18  Bob Proulx  <bob@proulx.com>
38000
38001         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
38002         simplify offsetof() macro construct to avoid compile failure with
38003         native HP-UX 11.0 ANSI C compiler.
38004
38005 2005-01-17  Bruno Haible  <bruno@clisp.org>
38006
38007         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
38008         redundant because stpncpy.m4 takes care of it.
38009
38010 2005-01-17  Bruno Haible  <bruno@clisp.org>
38011
38012         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
38013
38014 2005-01-17  Bruno Haible  <bruno@clisp.org>
38015
38016         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
38017         used.
38018
38019 2005-01-17  Bruno Haible  <bruno@clisp.org>
38020
38021         * lib/fwriteerror.h (fwriteerror): Change specification to include
38022         fclose.
38023         * lib/fwriteerror.c: Include <stdbool.h>.
38024         (fwriteerror): At the end, close the file stream. Record whether
38025         stdout was already closed.
38026
38027 2005-01-17  Bruno Haible  <bruno@clisp.org>
38028
38029         * lib/execute.c (environ): Declare if needed.
38030         * lib/pipe.c (environ): Likewise.
38031         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
38032
38033 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
38034
38035         * modules/argp: Depend on vsnprintf
38036
38037 2005-01-10  Jim Meyering  <jim@meyering.net>
38038
38039         * modules/closeout (Depends-on): Add atexit.
38040
38041 2005-01-06  Bruno Haible  <bruno@clisp.org>
38042
38043         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
38044
38045 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
38046
38047         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
38048         definitions to be after all include files, to avoid collisions.
38049         Problem reported by Bob Proulx.
38050
38051 2005-01-04  Jim Meyering  <jim@meyering.net>
38052
38053         Changes imported from coreutils.
38054         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
38055         as the mkstemp template, use a temporary directory and an
38056         8.3-friendly template to avoid trouble on systems like DJGPP.
38057         Reported by Juan M. Guerrero via Stepan Kasal.
38058         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
38059         close. Remove the temporary directory right away, rather than waiting
38060         for configure's at-exit trap code to do it.
38061         Suggestion from Stepan Kasal.
38062
38063 2005-01-01  Simon Josefsson  <jas@extundo.com>
38064
38065         * gnulib-tool: Print #include directives when --import'ing.
38066
38067 2004-12-28  Simon Josefsson  <jas@extundo.com>
38068
38069         * tests/test-base64.c: Include required header files.  Remove
38070         unused variables.
38071
38072 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
38073
38074         * modules/error (Depends-on): Remove gettext.
38075
38076 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
38077
38078         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
38079         not needed.  This removes a dependency on the gettext module.
38080         [defined _LIBC]: Do not include <libintl.h>; not needed.
38081
38082 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
38083
38084         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
38085         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
38086
38087 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
38088
38089         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
38090         HAVE_DECL_STRTOLD.
38091
38092 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
38093
38094         * modules/getdate (Depends-on): Remove alloca-opt.
38095
38096 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
38097
38098         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
38099
38100 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
38101
38102         * lib/argp-parse.c: Include <stddef.h>.
38103         (alignof, alignto): New macros.
38104         (parser_init): Don't assume that void * is aligned sufficiently
38105         for struct option.
38106
38107         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
38108         need to extend the stack.
38109         (YYINITDEPTH): New macro, so that the initial stack isn't overly
38110         large.
38111
38112 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
38113
38114         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
38115
38116 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
38117
38118         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
38119         (2004-10-24) change.  Apparently this was a false alarm.
38120
38121         * modules/getdate: Depend on alloca-opt, not alloca.
38122
38123 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
38124
38125         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
38126         Remove now-obsolete comment about AIX.
38127         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
38128         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
38129         (YYMAXDEPTH): New macro.
38130
38131 2004-12-18  Simon Josefsson  <jas@extundo.com>
38132
38133         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
38134
38135 2004-12-18  Bruno Haible  <bruno@clisp.org>
38136
38137         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
38138
38139 2004-12-18  Bruno Haible  <bruno@clisp.org>
38140
38141         * lib/fatal-signal.c (fatal_signals): Make non-const.
38142         (init_fatal_signals): New function.
38143         (uninstall_handlers, install_handlers): Ignore signals that were set to
38144         SIG_IGN.
38145         (at_fatal_signal): Call init_fatal_signals.
38146         (init_fatal_signal_set): Likewise. Ignore signals that were set to
38147         SIG_IGN.
38148         Reported by Paul Eggert.
38149
38150 2004-12-18  Bruno Haible  <bruno@clisp.org>
38151
38152         * doc/alloca.texi: New file.
38153         * doc/alloca-opt.texi: New file.
38154
38155 2004-12-17  Jim Meyering  <jim@meyering.net>
38156
38157         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
38158         Otherwise, install-sh could exit with improper exit status when
38159         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
38160
38161 2004-12-16  Simon Josefsson  <jas@extundo.com>
38162
38163         * tests/test-base64.c: Add license.
38164
38165 2004-12-15  Stepan Kasal  <address@hidden>
38166
38167         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
38168
38169 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
38170
38171         * modules/getcwd (Files): Add m4/d-ino.m4.
38172         Suggested by Mark D. Baushke.
38173
38174 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
38175
38176         * lib/getdate.y (textint): New member "negative".
38177         (time_zone_hhmm): New function.
38178         Expect 14 shift-reduce conflicts, not 13.
38179         (o_colon_minutes): New rule.
38180         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
38181         (yylex): Set the "negative" member of signed numbers.
38182
38183 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
38184
38185         * doc/getdate.texi (Time of day items, Time zone items):
38186         Describe new formats +00:00, UTC+00:00.
38187
38188 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
38189
38190         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
38191         spurious "-l"s.  Problem reported by Stepan Kasal.
38192
38193 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
38194
38195         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
38196         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
38197
38198 2004-12-04  Simon Josefsson  <jas@extundo.com>
38199
38200         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
38201         Vandoorselaere <yoann@prelude-ids.org>.
38202
38203 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
38204
38205         Changes imported from coreutils.
38206         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
38207         exist.
38208         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
38209
38210 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
38211
38212         Changes imported from coreutils.
38213         * lib/hard-locale.c: Assume <locale.h> exists.
38214         Include "strdup.h".
38215         (GLIBC_VERSION): New macro.
38216         (hard_locale): Assume setlocale exists.
38217         Rewrite to avoid #ifdef.
38218         Use strdup rather than malloc + strcpy.
38219         * lib/human.c: Assume <locale.h> exists.
38220         (human_readable): Assume localeconv exists.
38221
38222 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
38223
38224         * modules/hard-locale (Depends-on): Add strdup.
38225
38226 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
38227
38228         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
38229         convert T2, not T.  (Imported from libc.)
38230
38231 2004-11-30  Simon Josefsson  <jas@extundo.com>
38232
38233         * modules/restrict (License): Change to LGPL.
38234
38235 2004-11-30  Simon Josefsson  <jas@extundo.com>
38236
38237         * m4/restrict.m4: Add copyright and copying conditions.
38238
38239 2004-11-30  Simon Josefsson  <jas@extundo.com>
38240
38241         * m4/base64.m4: New file.
38242
38243 2004-11-30  Simon Josefsson  <jas@extundo.com>
38244
38245         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
38246         base64.
38247
38248         * tests/test-base64.c: New file.
38249
38250         * modules/base64: New file.
38251
38252 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
38253
38254         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
38255         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
38256
38257         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
38258
38259 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
38260
38261         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
38262         (__getcwd.c): Don't restore errno; glibc doesn't.
38263         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
38264         first, falling back to our code only if its results look suspicious.
38265         Ensure that the resulting buffer is only as large as necessary.
38266
38267         * lib/readutmp.c: Include readutmp.h first.
38268         Include <errno.h>, since readutmp.h no longer does that.
38269         * lib/readutmp.h: Don't include <errno.h>,
38270         <sys/param.h>, <time.h>; not needed to establish interface.
38271         (errno): Remove decl.
38272         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
38273         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
38274         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
38275
38276 2004-11-28  Simon Josefsson  <jas@extundo.com>
38277
38278         * lib/base64.h, base64.c: New file.
38279
38280 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
38281
38282         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
38283
38284 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
38285
38286         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
38287         (Depends-on): Remove pathmax, same.  Add mempcpy.
38288         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
38289         (Makefile.am): Append getcwd.h to lib_SOURCES.
38290         (Include): Add getcwd.h.
38291         (Maintainer): Change from Jim Meyering to "all, glibc",
38292         since getdate now uses intended-for-glibc code.
38293         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
38294         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
38295
38296 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
38297
38298         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
38299         HP's ANSI C compiler.
38300         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
38301         Declaring int functions causes warnings on some modern systems and
38302         shouldn't be needed to compile on ancient ones.
38303         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
38304         defined.
38305
38306         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
38307         with the following changes.
38308         (__set_errno): Parenthesize properly.
38309         Include <stdbool.h>.
38310         (MIN, MAX, MATCHING_INO): New macros.
38311         (__getcwd): Define with prototype, not K&R form.
38312         Use heuristics to allocate default buffer on stack if possible.
38313         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
38314         behavior, and to avoid the PATH_MAX limit when computing
38315         ../../../../...
38316         Use MATCHING_INO to compare inode number to file.
38317         Check for arithmetic overflow in size calculations.
38318         Fix bug in reallocation of dot array that caused getcwd to fail
38319         on directories nested deeper than 75.
38320         Be more careful about saving errno on error.
38321         Do not use realloc; use only free+malloc, as this is a bit
38322         more flexible and avoids a needless copy operation.
38323         Do not inspect st_dev and st_ino for symbolic links; POSIX
38324         doesn't specify the latter.
38325         Check for closedir errors.
38326         Avoid needless casts.
38327         Use "#ifdef weak_alias" around weak_alias, to be like other
38328         glibc code.
38329         The following changes to getcwd.c have effect only when used in
38330         gnulib; they have no effect inside glibc proper.
38331         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
38332         as alloca isn't used.
38333         (alloca, __alloca): Likewise.
38334         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
38335         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
38336         unconditionally, as gnulib assumes C89 or better.
38337         Do not include <sys/param.h>.
38338         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
38339         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
38340         better.
38341         (NULL) [!defined NULL]: Remove; we assume C89 or better.
38342         Include <dirent.h> in a way that is compatible with modern Autoconf.
38343         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
38344         New macros, if not already defined.
38345         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
38346         Use "_LIBC", not "defined _LIBC", for consistency.
38347         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
38348         a mempcpy module.
38349         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
38350         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
38351         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
38352         credit only to Jim Meyering and adjust the copyright dates.
38353         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
38354         <stdlib.h>, <unistd.h>, "pathmax.h".
38355         Instead, include "xgetcwd.h" (first) and "getcwd.h".
38356         (INITIAL_BUFFER_SIZE): Remove.
38357         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
38358
38359 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
38360
38361         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
38362         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
38363         Use the _ONCE methods, for efficiency.
38364         Check for fcntl.h.  In test program, include <errno.h>
38365         and <fcntl.h> if available.  Remove old K&R cruft from
38366         test program.  Check for common errors in GNU/Linux,
38367         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
38368         don't do AC_LIBOBJ, as that's getcwd.m4's job.
38369         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
38370         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
38371         name accordingly.
38372         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
38373         accommodate new getcwd.c.
38374         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
38375         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
38376         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
38377         that's all we need now.
38378
38379 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
38380
38381         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
38382         argp-parse.c depends on getopt internals, that means we should
38383         always use our getopt, to be on the safe side.
38384         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
38385         order not to spoil the result of an eventual previous invocation
38386         of gl_GETOPT_SUBSTITUTE.
38387
38388 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
38389
38390         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
38391         redefinition warnings. To avoid them, include the defines
38392         in `#if !defined __need_getopt ... #endif'. The only place
38393         where __getopt_argv_const is used is in definitions
38394         of getopt_long and getopt_long_only below, which are as well
38395         protected by `#ifndef __need_getopt'.
38396         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
38397         __need_getopt after including <stdio.h> and <unistd.h> These
38398         headers might have defined it.
38399
38400 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
38401
38402         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
38403
38404 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
38405
38406         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
38407         (futimens): New function, which uses futimes if available.
38408         (futimens, utimens): Support timespec==NULL, with same semantics
38409         as utime and utimens.
38410         * lib/utimens.h (futimens): New decl.
38411
38412 2004-11-23  Jim Meyering  <jim@meyering.net>
38413
38414         * lib/getopt_.h: Remove trailing blanks.
38415
38416 2004-11-23  Jim Meyering  <jim@meyering.net>
38417
38418         * lib/__fpending.c: Add comment.
38419
38420 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
38421
38422         * modules/canonicalize (Depends-on): Add xreadlink.
38423         Problem reported by James Youngman.
38424
38425 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
38426
38427         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
38428         New macros.
38429         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
38430         optopt): Use them instead of invoking ## directly; otherwise, the
38431         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
38432
38433 2004-11-19  Bruno Haible  <bruno@clisp.org>
38434
38435         * lib/strtok_r.c: Move comments from here...
38436         * lib/strtok_r.h: ... to here.
38437
38438 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
38439
38440         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
38441         implementations that mishandle size_t overflow.
38442
38443 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
38444
38445         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
38446         might fail.  Problem reported by Yoann Vandoorselaere.
38447         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
38448         implementations that mishandle size_t overflow.
38449
38450 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
38451
38452         * modules/canon-host (Depends-on): Add strdup.
38453
38454 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
38455
38456         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
38457
38458 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
38459
38460         * lib/canon-host.c: Include "strdup.h".
38461         (canon_host): Use getaddrinfo if available, so that IPv6 works.
38462         Use strdup instead of malloc/strcpy to duplicate strings.
38463
38464         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
38465         (human_space_before_unit): New constant.
38466         * lib/human.c (human_readable): Support it.
38467
38468         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
38469         (xgetcwd): Set errno correctly when failing.
38470         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
38471         the failure is actually due to a PATH_MAX problem.
38472
38473         Further getopt changes to make it more likely that glibc will
38474         buy the changes back.
38475         * lib/getopt.c (POSIXLY_CORRECT): New constant.
38476         (getopt): Use it, so to preserve glibc semantic
38477         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
38478         when compiling for libc.
38479         * lib/getopt_.h (__getopt_argv_const): Bring it back.
38480         (getopt_long, getopt_long_only): Use it.
38481
38482         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
38483         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
38484         (getopt): Argv is now char * const *, as per standard.
38485         (_getopt_internal_r, _getopt_internal): Argv is now char **,
38486         not char *__getopt_argv_const *.
38487         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
38488         _getopt_long_only_r): Likewise.
38489         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
38490         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
38491         _getopt_long_r, _getopt_long_only_r): Likewise.
38492         * lib/getopt_.h (__getopt_argv_const): Remove.
38493         (getopt): Argv is now char * const *, as per standard.
38494
38495         * lib/getdate.y (tORDINAL): New token.
38496         (day, relunit): Allow it for relative times.
38497         (relative_time_table): Use tORDINAL for ordinals.
38498
38499 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
38500
38501         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
38502         Document that "second" isn't allowed as an ordinal number.
38503
38504 2004-11-16  Jim Meyering  <jim@meyering.net>
38505
38506         * modules/closeout (Depends-on): Add fpending.
38507
38508 2004-11-15  Jim Meyering  <jim@meyering.net>
38509
38510         * lib/closeout.c: Include "__fpending.h" once again.
38511         Include <stdbool.h>.
38512         (close_stdout): Don't fail just because stdout was closed initially,
38513         since some programs don't write to stdout in the normal course of
38514         operation (other than --version and --help), and we don't want this
38515         function to make e.g. `touch file >&-' fail.
38516         But do fail if it was closed and someone has tried to write to it.
38517         E.g., `printf foo >&-' must fail.
38518
38519 2004-11-13  Jim Meyering  <jim@meyering.net>
38520
38521         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
38522
38523 2004-11-12  Simon Josefsson  <jas@extundo.com>
38524
38525         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
38526         small doc fix is still pending.
38527
38528 2004-11-11  Simon Josefsson  <jas@extundo.com>
38529
38530         * modules/strtok_r: New file.
38531
38532         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
38533         strtok_r.
38534
38535 2004-11-11  Simon Josefsson  <jas@extundo.com>
38536
38537         * m4/strtok_r.m4: New file.
38538
38539         * m4/getopt.m4: Replace opterr.
38540
38541 2004-11-11  Simon Josefsson  <jas@extundo.com>
38542
38543         * lib/strtok_r.h, strtok_r.c: New file.
38544
38545 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
38546
38547         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
38548         of replacing opterr, getopt, etc.  This should handle the
38549         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
38550
38551 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
38552
38553         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
38554         we can stop lying to compilers about the constness of argv when we
38555         are compiled outside glibc.
38556         (getopt, getopt_long, getopt_long_only): Use it.
38557         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
38558         _getopt_internal, getopt): Likewise.
38559         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
38560         _getopt_long_only_r): Likewise.
38561         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
38562         _getopt_long_r, _getopt_long_only_r): Likewise.
38563
38564         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
38565         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
38566         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
38567         the other external symbols.
38568         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
38569         declaration, since the above renaming now works around collisions.
38570
38571 2004-11-11  Jim Meyering  <jim@meyering.net>
38572
38573         * lib/linebreak.c: Remove trailing blanks.
38574         * lib/alloca_.h: Likewise.
38575         * lib/acosl.c: Likewise.
38576         * lib/euidaccess.c: Likewise.
38577         * lib/allocsa.h: Likewise.
38578
38579 2004-11-10  Simon Josefsson  <jas@extundo.com>
38580
38581         * m4/getaddrinfo.m4: New file.
38582
38583 2004-11-10  Simon Josefsson  <jas@extundo.com>
38584
38585         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
38586
38587 2004-11-10  Simon Josefsson  <jas@extundo.com>
38588
38589         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
38590         getaddrinfo.
38591
38592         * modules/getaddrinfo: New file.
38593
38594 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
38595
38596         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
38597
38598 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
38599
38600         * lib/mktime.c (SHR): New macro, which is a portable
38601         substitute for >> that should work even on Crays.
38602         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
38603         Problem reported by Mark D. Baushke in
38604         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
38605         * lib/getdate.y (SHR): Likewise.
38606         (tm_diff): Use it.
38607         * lib/strftime.c (SHR): Likewise.
38608         (tm_diff): Use it.
38609         * lib/quotearg.c (struct quoting_options): Use unsigned int for
38610         quote_these_too, so that right shifts are well defined.  All uses
38611         changed.
38612
38613 2004-11-10  Jim Meyering  <jim@meyering.net>
38614
38615         Ensure that no close failure goes unreported.
38616         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
38617         return early when it seems there's nothing to flush.
38618         Don't include __fpending.h.
38619
38620 2004-11-10  Jim Meyering  <jim@meyering.net>
38621
38622         * modules/closeout (Depends-on): Remove fpending.
38623
38624 2004-11-10  Jim Meyering  <jim@meyering.net>
38625
38626         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
38627
38628 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
38629
38630         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
38631         gl_FUNC_STRFTIME.
38632         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
38633         and AC_REQUIRE when possible, to avoid duplicate checks.
38634         Check for <wchar.h>.
38635
38636 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
38637
38638         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
38639
38640 2004-11-09  Bruno Haible  <bruno@clisp.org>
38641
38642         * m4/sockpfaf.m4: New file.
38643
38644 2004-11-05  Bruno Haible  <bruno@clisp.org>
38645
38646         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
38647         Reported by Mark D. Baushke <mdb@cvshome.org>.
38648
38649 2004-11-04  Bruno Haible  <bruno@clisp.org>
38650
38651         2004-09-11  Bruno Haible  <bruno@clisp.org>
38652                 * allocsa.valgrind: New file.
38653         2004-02-06  Bruno Haible  <bruno@clisp.org>
38654                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
38655                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
38656                 Reported by Christopher Seip <chris.seip@hp.com>.
38657
38658 2004-11-04  Bruno Haible  <bruno@clisp.org>
38659
38660         * modules/allocsa (Files): Add lib/allocsa.valgrind.
38661         (Makefile.am): Distribute it.
38662
38663 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
38664
38665         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
38666         with errno == ERANGE if the buffer is too small.
38667         Problem reported by Mark D. Baushke.
38668
38669 2004-11-03  Albert Chin  <china@thewrittenword.com>
38670             Paul Eggert  <eggert@cs.ucla.edu>
38671
38672         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
38673         equivalent, substitute $ac_type for equivalent type rather than
38674         blindly using uint32_t *always* which won't work if uint32_t is not
38675         available.  Define _UINT32_T to work around typedef of uint32_t if
38676         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
38677         2.5.1.
38678
38679 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
38680
38681         * m4/jm-macros.m4: Sync from coreutils.
38682         (gl_MACROS): Check for mbrlen, for pathchk.
38683         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
38684
38685 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
38686
38687         * lib/xreadlink.c (MAXSIZE): New macro.
38688         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
38689         size does not exceed MAXSIZE.  Avoid cast.
38690         As suggested by Mark D. Baushke in
38691         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
38692         if readlink fails with buffer size just under MAXSIZE, try again
38693         with MAXSIZE.
38694
38695 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
38696
38697         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
38698
38699 2004-11-02  Derek R. Price  <derek@ximbiot.com>
38700         and  Paul Eggert  <eggert@cs.ucla.edu>
38701
38702         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
38703         (get_date): Overparenthesize to avoid GCC warning.
38704
38705 2004-11-02  Bruno Haible  <bruno@clisp.org>
38706
38707         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
38708         returns void.
38709
38710 2004-11-02  Bruno Haible  <bruno@clisp.org>
38711
38712         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
38713         function returns void.
38714
38715 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
38716
38717         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
38718         fflush_unlocked, flockfile, funlockfile, funlockfile,
38719         fputs_unlocked, putc_unlocked.
38720
38721 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
38722
38723         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
38724         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
38725         already declared.
38726
38727 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
38728
38729         * modules/getdate (Files): Add doc/getdate.texi.
38730         (Depends-on): Add setenv, xalloc.
38731
38732 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
38733
38734         * lib/getdate.y: Add support for TZ="foo" within a date string.
38735         Fix some bugs near time_t boundaries.  Reject dates with
38736         out-of-range components, e.g., "Sept 31".
38737         Include <stdlib.h>, "setenv.h", "xalloc.h".
38738         (ISDIGIT_LOCALE): Remove; unused.
38739         Note that the TZ and time functions used here are not reentrant.
38740         (mktime_ok, get_tz): New functions.
38741         (TZBUFSIZE): New constant.
38742         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
38743         This requires that we sometimes generate our own TZ="XXX..." setting.
38744
38745 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
38746
38747         * doc/getdate.texi: New file, from coreutils with modifications for
38748         the new TZ parsing.
38749
38750 2004-10-27  Derek R. Price  <derek@ximbiot.com>
38751
38752         * lib/mktime.c (not_equal_tm): Remove redundant check.
38753
38754 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
38755
38756         * modules/regex (lib_SOURCES): Add regex.c.
38757         Reported by James Youngman in
38758         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
38759
38760 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
38761
38762         * lib/getdate.y: Use Bison 1.875 features, and some minor
38763         code cleanups.  This change does not affect semantics.
38764         Don't include <stdlib.h>; no longer needed.
38765         Don't include unlocked-io.h; only the "#if TEST" code uses
38766         stdio, and performance isn't crucial there.
38767         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
38768         Bison 1.875 features as described below.
38769         All uses of "PC." replaced by "pc->".
38770         (YYSTYPE): Add a forward declaration.
38771         (yylex, yyerror): Use full prototypes in forward decls.
38772         Use "%pure-parser" rather than obsolescent "%pure_parser".
38773         Use %parse-param and %lex-param instead of obsolescent
38774         YYPARSE_PARAM and YYLEX_PARAM.
38775         (meridian_table, month_and_day_table, time_units_table,
38776         relative_time_table, time_zone_table, military_table,
38777         lookup_zone, lookup_word, get_date):
38778         Use NULL instead of 0 where appropriate.
38779         (to_hour): Avoid abort (), to avoid a dependency on
38780         stdlib.h.
38781         (yyerror, yylex): Now accepts parser_control * arg.
38782         (main) [TEST]: Use '\0' rather than 0 for char.
38783
38784 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
38785
38786         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
38787
38788 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
38789
38790         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
38791         It's now the caller's responsibility to handle the case where
38792         !HAVE_GETPAGESIZE && !defined getpagesize.
38793
38794         * lib/mktime.c (leapyear): Arg is long int, not int.
38795
38796 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
38797
38798         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
38799
38800 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
38801
38802         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
38803         missing.  Problem reported by James Youngman.
38804
38805 2004-10-16  Simon Josefsson  <jas@extundo.com>
38806
38807         * gnulib-tool: Fix comments.  Fix parse problem.
38808         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
38809
38810 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
38811
38812         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
38813         implementation of getopt_long.  Problem reported by Alexander Taler in:
38814         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
38815
38816 2004-10-15  Bruno Haible  <bruno@clisp.org>
38817
38818         * gnulib-tool: Untabify. Initialize supplied_libname.
38819         (func_usage): More homogenous output.
38820         (func_modules_transitive_closure, func_modules_to_filelist,
38821         func_emit_lib_Makefile_am): New functions.
38822         (func_import): New function, extracted from big case statement. Use
38823         func_get_license, func_modules_transitive_closure,
38824         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
38825         opt_lgpl. Don't use test -a, as it's not portable.
38826         (func_create_testdir): Use func_modules_transitive_closure,
38827         func_modules_to_filelist, func_emit_lib_Makefile_am.
38828
38829 2004-10-15  Bruno Haible  <bruno@clisp.org>
38830
38831         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
38832
38833 2004-10-15  Bruno Haible  <bruno@clisp.org>
38834
38835         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
38836         the portions belonging to each module.
38837         Suggested by Derek Robert Price <derek@ximbiot.com>.
38838
38839 2004-10-12  Simon Josefsson  <jas@extundo.com>
38840
38841         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
38842         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
38843         to real functions.
38844
38845 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38846
38847         * modules/vsnprintf: New file.
38848
38849 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38850
38851         * m4/vsnprintf.m4: New file.
38852
38853 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38854
38855         * lib/vsnprintf.h: New file.
38856         * lib/vsnprintf.c: New file.
38857
38858 2004-10-11  Bruno Haible  <bruno@clisp.org>
38859
38860         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
38861         vsnprintf.
38862
38863 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
38864
38865         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
38866
38867 2004-10-07  Bruno Haible  <bruno@clisp.org>
38868
38869         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
38870         fits into the provided buffer.
38871
38872 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
38873
38874         * lib/diacrit.c, diacrit.h: Add GPL notice.
38875
38876         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
38877         notice.
38878         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
38879         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
38880         This avoids a potential constant-folding bug.
38881
38882 2004-10-05  Bruno Haible  <bruno@clisp.org>
38883
38884         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
38885         for the declaration of strsep.
38886
38887 2004-10-05  Bruno Haible  <bruno@clisp.org>
38888
38889         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
38890
38891 2004-10-04  Simon Josefsson  <jas@extundo.com>
38892
38893         * modules/memmem: New file.
38894         * tests/test-memmem.c: New file.
38895         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
38896
38897 2004-10-04  Simon Josefsson  <jas@extundo.com>
38898
38899         * m4/memmem.m4: New file.
38900
38901 2004-10-04  Simon Josefsson  <jas@extundo.com>
38902
38903         * lib/memmem.h: New file.
38904         * lib/memmem.c: New file, taken from glibc.
38905
38906 2004-10-04  Simon Josefsson  <jas@extundo.com>
38907
38908         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
38909         '#ifdef USE_UNLOCKED_IO'.
38910
38911 2004-10-04  Simon Josefsson  <jas@extundo.com>
38912
38913         * config/srclist.txt: Add memmem from glibc.
38914
38915 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38916
38917         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
38918
38919         * modules/argmatch, modules/argp, modules/closeout, modules/error,
38920         modules/exclude, modules/getdate, modules/getline,
38921         modules/getndelim2, modules/getpass, modules/getpass-gnu,
38922         modules/getusershell, modules/linebuffer, modules/md5,
38923         modules/mountlist, modules/posixtm, modules/readtokens,
38924         modules/readutmp, modules/regex, modules/sha1,
38925         modules/version-etc, modules/yesno:
38926         Remove dependency on unlocked-io.
38927
38928 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38929
38930         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
38931
38932         * m4/unlocked-io.m4: Add copyright notice.
38933         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
38934
38935 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38936
38937         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
38938         * lib/xmalloc.c (xmemdup): Likewise.
38939         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
38940         XFREE): Remove these long-obsolescent macros.
38941         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
38942         * lib/xstrdup.c: Remove.
38943
38944         * lib/regex.c (re_comp): Cast gettext return value to char *,
38945         Problem reported by Martin Neitzel via Mark D. Baushke.
38946
38947 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38948
38949         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
38950         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
38951         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
38952         regex.c, sha1.c, version-etc.c, yesno.c:
38953         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
38954         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
38955         the includer's responsibility.
38956
38957         Sync from coreutils.
38958
38959         * lib/modechange.c (mode_compile): Don't decrement a pointer that
38960         points to the start of a string, as the C Standard says the
38961         resulting behavior is undefined.
38962
38963         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
38964         simple -> simple_backups, numbered_existing ->
38965         numbered_existing_backups, numbered -> numbered_backups
38966         to avoid shadowing problems.  All uses changed.
38967         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
38968         * lib/backupfile.c (check_extension, numbered_backup):
38969         Rename locals to avoid shadowing 'basename'.
38970         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
38971         once.
38972
38973         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
38974         * lib/.cvsignore: Add getopt.h.
38975
38976 2004-10-04  Bruno Haible  <bruno@clisp.org>
38977
38978         * modules/README: New file.
38979         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
38980         not a module.
38981
38982 2004-10-02  Jim Meyering  <jim@meyering.net>
38983
38984         * lib/dirfd.h, getpagesize.h: Add copyright notice.
38985
38986 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38987
38988         * modules/strsep: New file.
38989
38990 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38991
38992         * m4/strsep.m4: New file.
38993
38994 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38995
38996         * lib/strsep.h: New file.
38997         * lib/strsep.c: New file.
38998
38999 2004-10-01  Simon Josefsson  <jas@extundo.com>
39000
39001         * lib/snprintf.c (snprintf): Handle size==0.
39002
39003 2004-10-01  Simon Josefsson  <jas@extundo.com>
39004             Bruno Haible  <bruno@clisp.org>
39005
39006         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
39007         (snprintf): Declare 'args'.
39008
39009 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
39010
39011         * lib/snprintf.c: Remove comments as to why each header is needed.
39012
39013 2004-10-01  Bruno Haible  <bruno@clisp.org>
39014
39015         * MODULES.html.sh: Add strsep.
39016
39017 2004-09-30  Simon Josefsson  <jas@extundo.com>
39018
39019         * modules/snprintf: New file.
39020
39021 2004-09-30  Simon Josefsson  <jas@extundo.com>
39022
39023         * m4/snprintf.m4: New file.
39024
39025 2004-09-30  Simon Josefsson  <jas@extundo.com>
39026
39027         * lib/snprintf.h, lib/snprintf.c: New files.
39028
39029 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
39030
39031         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
39032         (hol_entry_help): Never translate an empty string.
39033         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
39034         * lib/argp.h (OPTION_NO_TRANS): New option.
39035
39036 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
39037
39038         * modules/argp (Maintainer): Replace Simon Josefsson
39039         by Sergey Poznyakoff.
39040
39041 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
39042
39043         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
39044         changes merged back into glibc.
39045
39046 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
39047
39048         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
39049
39050 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
39051
39052         * lib/xvasprintf.c: Include xalloc.h.
39053         (xvasprintf): Use xalloc_die, not xmalloc_die.
39054
39055 2004-09-29  Bruno Haible  <bruno@clisp.org>
39056
39057         * modules/alloca-opt: New file, derived from modules/alloca.
39058         * modules/allocsa: Depend on alloca-opt instead of alloca.
39059         * modules/setenv: Likewise.
39060         * modules/vasnprintf: Likewise.
39061         * MODULES.html.sh: Add alloca-opt.
39062
39063 2004-09-28  Simon Josefsson  <jas@extundo.com>
39064
39065         * gnulib-tool: New parameter --lgpl, to asseert that modules are
39066         LGPL, and to replace license template from GPL to LGPL.
39067
39068 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
39069
39070         * modules/dummy: Change license to LGPL.
39071
39072 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
39073
39074         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
39075
39076 2004-09-24  Simon Josefsson  <jas@extundo.com>
39077
39078         * modules/minmax (License): Change from GPL to LGPL.
39079
39080 2004-09-23  Simon Josefsson  <jas@extundo.com>
39081
39082         * gnulib-tool (--import): Typo.
39083
39084 2004-09-23  Simon Josefsson  <jas@extundo.com>
39085
39086         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
39087
39088 2004-09-22  Bruno Haible  <bruno@clisp.org>
39089
39090         * modules/*: Add 'License' field.
39091         * gnulib-tool: Accept --extract-license option.
39092         (func_get_license): New function.
39093
39094 2004-09-21  Bruno Haible  <bruno@clisp.org>
39095
39096         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
39097         Reported by Simon Josefsson.
39098
39099 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
39100
39101         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
39102         gl_AC_TYPE_LONG_LONG.
39103
39104 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
39105
39106         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
39107
39108 2004-09-18  Simon Josefsson  <jas@extundo.com>
39109         and  Paul Eggert  <eggert@cs.ucla.edu>
39110
39111         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
39112         calls with autoreconf.  Define GL_LIB.
39113
39114 2004-09-14  Karl Berry  <karl@gnu.org>
39115
39116         * config/srclist.txt: unsync setenv.c, sigh.
39117
39118 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
39119
39120         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
39121         Problem reported by Bruno Haible in:
39122         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
39123
39124 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
39125
39126         * config/srclist.txt: Comment out argp-pvh.c.
39127
39128 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
39129
39130         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
39131         in case some system header has #define'd it.  Problem reported by
39132         Soeren D. Schulze in
39133         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
39134
39135 2004-09-09  Karl Berry  <karl@gnu.org>
39136
39137         * regex.[ch]: delete from the root.  These were supposed to be
39138                 synced with emacs cvs, but this has not happened for about
39139                 a year, and anyway nothing else uses emacs regex.[ch].
39140                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
39141                 lib/regex[.ch] is untouched.
39142
39143 2004-09-09  Bruno Haible  <bruno@clisp.org>
39144
39145         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
39146
39147 2004-09-09  Bruno Haible  <bruno@clisp.org>
39148
39149         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
39150         modifications.
39151         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
39152
39153 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
39154
39155         * modules/xvasprintf: New file.
39156         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
39157
39158 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
39159
39160         * lib/xvasprintf.h: New file.
39161         * lib/xvasprintf.c: New file.
39162         * lib/xasprintf.c: New file.
39163
39164 2004-09-08  Bruno Haible  <bruno@clisp.org>
39165
39166         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
39167
39168 2004-09-08  Bruno Haible  <bruno@clisp.org>
39169
39170         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
39171         length is > INT_MAX.
39172         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
39173         more.
39174
39175 2004-09-08  Bruno Haible  <bruno@clisp.org>
39176
39177         * lib/stdint_.h: New file, taken from GNU clisp.
39178
39179 2004-09-08  Bruno Haible  <bruno@clisp.org>
39180             Oskar Liljeblad  <oskar@osk.mine.nu>
39181
39182         * modules/stdint: New file.
39183         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
39184
39185 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
39186
39187         Import from coreutils.
39188         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
39189         strings on unbounded length.  alloca's performance benefits aren't
39190         that important here.
39191         (V_STRDUP): Remove.
39192         (parse_with_separator): New function, with most of the internals
39193         of the old parse_user_spec.  Allow user to omit both user and group,
39194         for compatibility with FreeBSD.
39195         Clone only the user name, not the entire spec.
39196         Do not set *uid, *gid unless entirely successful.
39197         Avoid memory leak in some failing cases.
39198         Fix regression for USER.GROUP reported by Dmitry V. Levin in
39199         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
39200         (parse_user_spec): Rewrite to use parse_with_separator.
39201
39202 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
39203
39204         * modules/userspec: Don't depend on alloca.
39205
39206 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
39207
39208         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
39209
39210 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
39211
39212         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
39213         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
39214         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
39215
39216 2004-08-16  Simon Josefsson  <jas@extundo.com>
39217
39218         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
39219         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
39220         Add --dry-run for --import.
39221         Let user provided command line parameters override configure.ac
39222         settings.
39223
39224 2004-08-12  Simon Josefsson  <jas@extundo.com>
39225
39226         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
39227         as discussed with Paul Eggert in threads rooted at
39228         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
39229         and
39230         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
39231         Before, the test was empty, and relied on ELIDE_CODE in source
39232         code.)
39233         (gl_PREREQ_GETOPT): New macro.
39234         (gl_GETOPT): Use them.
39235
39236 2004-08-12  Simon Josefsson  <jas@extundo.com>
39237
39238         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
39239         * lib/getopt_.h: Renamed from getopt.h.
39240
39241 2004-08-12  Simon Josefsson  <jas@extundo.com>
39242
39243         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
39244         Change default library name from libfoo to libgnu.
39245         Now, if you have a configure.ac that says:
39246                 gl_SOURCE_BASE(gl)
39247                 gl_M4_BASE(gl/m4)
39248                 gl_MODULES(error getopt etcetera)
39249                 gl_INIT
39250         you can import all you need by running:
39251                 ../gnulib/gnulib-tool --import
39252
39253         * modules/getopt (Files): Rename getopt.h to getopt_.h.
39254         (Makefile.am): Rewrite, use logic from argz.
39255         (Include): Use <getopt.h> instead of "getopt.h".
39256
39257 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
39258
39259         * modules/argp (Files): Add m4/unlocked-io.m4.
39260         (Depends-on): Add extensions.
39261
39262 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
39263
39264         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
39265         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
39266         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
39267         Check for program_invocation_name, program_invocation_short_name,
39268         flockfile, funlockfile, features.h, _getopt_long_only_r.
39269
39270 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
39271
39272         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
39273         its complicated substitute.
39274         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
39275         and program_invocation_name.
39276         (__argp_basename) [!_LIBC]: Remove; the only use was
39277         replaced by its body.
39278         (__argp_short_program_name): Change condition from
39279         !defined __argp_short_program_name to
39280         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
39281         to match argp-namefrob.h.
39282         (__argp_failure): Don't assume strerror_r returns char *.
39283         * lib/argp-parse.c (N_): Define unconditionally.
39284         (argp_default_options): Fill out initializers with 0 to avoid
39285         gcc warnings.
39286
39287 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
39288
39289         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
39290         getopt1.c.
39291
39292 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
39293
39294         Merge from coreutils.
39295
39296         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
39297
39298         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
39299         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
39300
39301 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
39302
39303         Merge from coreutils.
39304
39305         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
39306         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
39307         for Reliant Unix 5.43.
39308
39309         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
39310         (union fooround): Use uintmax_t, not long int.
39311         The rest is a merge from libc:
39312         [defined _LIBC]: Include <shlib-compat.h>.
39313         (_obstack) [defined _LIBC]: Remove after 2.3.4.
39314
39315         * lib/settime.c (settime): Recode to avoid warning with
39316         Sun Forte C 6U2.
39317
39318         * lib/strverscmp.c: Convert to UTF-8.
39319
39320 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
39321
39322         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
39323         m4/uintmax_t.m4.
39324
39325 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
39326
39327         * modules/xalloc-die: New file.
39328         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
39329
39330         * modules/md5 (Files): Add m4/uint32_t.m4.
39331         * modules/sha1: Renamed from modules/sha.
39332         (Files):
39333         Rename lib/sha.h to lib/sha1.h.
39334         Rename lib/sha.c to lib/sha1.c.
39335         Rename m4/sha.m4 to m4/sha1.m4.
39336         (lib_SOURCES): Likewise.
39337         (configure.ac): Rename gl_SHA to gl_SHA1.
39338         (Include): sha.h -> sha1.h.
39339
39340 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
39341
39342         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
39343         * m4/sha1.m4: Renamed from sha.m4.
39344         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
39345
39346 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
39347
39348         * lib/obstack.h (obstack_empty_p):
39349         Don't assume that chunk->contents is suitably aligned.
39350         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
39351         Likewise. Problem reported by Benno in
39352         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
39353
39354         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
39355         readable.  This could be improved further but it'd take some work.
39356
39357 2004-08-08  Simon Josefsson  <jas@extundo.com>
39358
39359         * modules/xgethostname (Depends-on): Remove exit and error (not
39360         used).
39361
39362         * modules/getpass-gnu: Add getpass.h.
39363         (Depends-on): Add stdbool.
39364         * modules/getpass: Add getpass.h.
39365
39366 2004-08-08  Simon Josefsson  <jas@extundo.com>
39367
39368         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
39369         Check getpass declaration.
39370
39371 2004-08-08  Simon Josefsson  <jas@extundo.com>
39372
39373         * lib/xgethostname.c: Don't include error.h (not used).
39374
39375         * lib/getpass.h: Add.
39376         * lib/getpass.c: Include getpass.h first.
39377
39378 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
39379
39380         * lib/xalloc-die.c: New file.
39381         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
39382         All uses removed.
39383         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
39384         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
39385         xalloc-die.c.
39386         (_, N_, xalloc_die): Move to xalloc-die.c.
39387         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
39388         so that we needn't mess with xalloc_msg_memory_exhausted.
39389
39390         * lib/sha1.h: Renamed from sha.h.
39391         (SHA1_H): Renamed from _SHA_H.
39392         (sha1_ctx): Renamed from sha_ctx.
39393         (sha1_init_ctx): Renamed from sha_init_ctx.
39394         (sha1_process_block): Renamed from sha_process_block.
39395         (sha1_process_bytes): Renamed from sha_process_bytes.
39396         (sha1_finish_ctx): Renamed from sha_finish_ctx.
39397         (sha1_read_ctx): Renamed from sha_read_ctx.
39398         (sha1_stream): Renamed from sha_stream.
39399         (sha1_buffer): Renamed from sha_buffer.
39400         * lib/sha1.c: Likewise; renamed from sha.c.
39401         Do not include <sys/types.h>.
39402         Include <stddef.h> rather than <stdlib.h>.
39403
39404 2004-08-08  Bruno Haible  <bruno@clisp.org>
39405
39406         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
39407         FILESYSTEM_PREFIX_LEN.
39408         * lib/progreloc.c: Likewise.
39409         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
39410
39411 2004-08-06  Simon Josefsson  <jas@extundo.com>
39412
39413         * modules/progname (Depends-on): Don't depend on stdbool.
39414
39415 2004-08-06  Simon Josefsson  <jas@extundo.com>
39416
39417         * modules/getsubopt: New file.
39418         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
39419         getsubopt.
39420
39421 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
39422
39423         More merge from coreutils.
39424
39425         * m4/utimens.m4, m4/utimecmp.m4: New files.
39426         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
39427         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
39428         prereq.m4, sha.m4: Import changes from coreutils.
39429
39430 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
39431
39432         More merge from coreutils.
39433         * modules/raise, modules/readtokens0, modules/utimens:
39434         * modules/utimecmp, module/xnanosleep: New files.
39435         * modules/strftime: Add lib/strftime.h.
39436         Change include from <time.h> to "strftime.h".
39437         * modules/yesno: Add lib/yesno.h.
39438         * modules/backupfile: Remove lib/addext.c.
39439         * modules/euidaccess: Add stat-macros.h.
39440         * modules/canonicalize, modules/euidaccess,
39441         modules/filemode, modules/lchown, modules/makepath,
39442         modules/rmdir, modules/stat: Likewise.
39443
39444 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
39445
39446         Merge from tar.
39447         * lib/argp-help.c (make_hol, hol_append): Don't assume that
39448         SIZE_MAX is a valid preprocessor constant.
39449         (__argp_basename): Change from "#ifndef _LIBC"
39450         to "#ifndef __argp_short_program_name", so that
39451         we don't compile these functions for tar.
39452
39453         More merges from coreutils.
39454         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
39455         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
39456         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
39457         * lib/addext.c: Remove; no longer needed.
39458         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
39459         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
39460         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
39461         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
39462         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
39463         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
39464         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
39465         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
39466         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
39467         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
39468         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
39469         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
39470         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
39471         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
39472         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
39473         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
39474         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
39475         Import changes from coreutils.
39476
39477 2004-08-05  Simon Josefsson  <jas@extundo.com>
39478
39479         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
39480
39481 2004-08-05  Simon Josefsson  <jas@extundo.com>
39482
39483         * m4/getsubopt.m4: New file.
39484
39485 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
39486
39487         Merge from coreutils.
39488
39489         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
39490         * m4/getcwd-path-max.m4: New files.
39491
39492         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
39493         FILESYSTEM_PREFIX_LEN ->
39494         FILE_SYSTEM_PREFIX_LEN.
39495         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
39496         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
39497         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
39498         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
39499
39500         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
39501         prerequisite modules now handle the DOS stuff.
39502         Don't check for unistd.h.
39503
39504 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
39505
39506         Merge from coreutils.
39507
39508         * lib/.gdb-history: Remove; this doesn't belong here.
39509
39510         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
39511         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
39512         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
39513         * lib/getcwd.c: New files.
39514
39515         * lib/dirname.h: Include <stdbool.h>.
39516         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
39517         for consistency with POSIX terminology.  All uses changed.
39518         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
39519         (strip_trailing_slashes): Use bool for booleans.
39520         * lib/stripslash.c (strip_trailing_slashes): Likewise.
39521
39522         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
39523         sometimes returns a positive errno value even when it succeeds.
39524         (print_errno_message) [!LIBC]: Fall back on strerror if
39525         __strerror_r fails.
39526
39527         * lib/path-concat.c (mempcpy): Don't define if a system header defines
39528         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
39529         (longest_relative_suffix): New function.
39530         (path_concat): Use it.  Assume first argument is not NULL.
39531         Port to DOS.  Omit redundant separators.
39532         Report an error instead of returning NULL.
39533         Use mempcpy instead of memcpy.
39534         (xpath_concat): Remove: not declared or used.
39535
39536         * lib/same.h: Include <stdbool.h>
39537         (same_name): Return bool, not int.
39538         * lib/same.c (same_name): Likewise.
39539         (errno): Don't declare; we assume C89 or better now.
39540
39541         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
39542         if not already defined.
39543
39544         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
39545         * lib/dup-safer.c (errno): Likewise.
39546
39547 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
39548
39549         Merge from coreutils.
39550         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
39551         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
39552         * modules/path-concat: Don't depend on strdup.
39553
39554 2004-08-03  Simon Josefsson  <jas@extundo.com>
39555
39556         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
39557         * lib/progname.h: Don't include stdbool.h.
39558
39559 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
39560
39561         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
39562         * MODULES.html.sh (func_all_modules): Remove fatal.
39563
39564 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
39565
39566         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
39567
39568 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
39569
39570         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
39571         working.
39572
39573 2004-08-02  Simon Josefsson  <jas@extundo.com>
39574
39575         * lib/getsubopt.h: New file, with comments from Bruno Haible.
39576         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
39577         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
39578
39579 2004-08-01  Simon Josefsson  <jas@extundo.com>
39580
39581         * lib/xgetdomainname.c: Include stdlib.h, for free().
39582
39583 2004-07-19  Bruno Haible  <bruno@clisp.org>
39584
39585         * MODULES.html.sh (func_all_modules): Add dummy.
39586
39587 2004-07-16  Simon Josefsson  <jas@extundo.com>
39588
39589         * modules/dummy: New file.
39590
39591 2004-07-16  Simon Josefsson  <jas@extundo.com>
39592
39593         * lib/dummy.c: New file.
39594
39595 2004-07-16  Bruno Haible  <bruno@clisp.org>
39596
39597         * lib/backupfile.h: Add extern "C" for C++.
39598         * lib/closeout.h: Likewise.
39599         * lib/copy-file.h: Likewise.
39600         * lib/findprog.h: Likewise.
39601         * lib/full-write.h: Likewise.
39602         * lib/pathname.h: Likewise.
39603         * lib/progname.h: Likewise.
39604         * lib/stpcpy.h: Likewise.
39605         * lib/stpncpy.h: Likewise.
39606         * lib/strcase.h: Likewise.
39607         * lib/strstr.h: Likewise.
39608         * lib/xalloc.h: Likewise.
39609
39610         * lib/mbswidth.h: Add extern "C" for C++.
39611         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
39612
39613 2004-07-13  Robert Millan  <robertmh@gnu.org>
39614
39615         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
39616
39617 2004-07-09  Simon Josefsson  <jas@extundo.com>
39618
39619         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
39620         failed without this.)
39621
39622 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
39623
39624         * modules/chown (Files): Add lib/fchown-stub.c, since
39625         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
39626
39627 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
39628
39629         * lib/fchown-stub.c: New file.
39630
39631 2004-06-24  Jim Meyering  <jim@meyering.net>
39632
39633         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
39634
39635 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39636
39637         * modules/argz: Omit "#include".
39638
39639         * MODULES.html.sh (func_all_modules): Add calloc, to match
39640         2004-06-01 addition of calloc module.
39641
39642 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39643
39644         * m4/argz.m4: New file, which is autoupdated from libtool.
39645
39646 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39647
39648         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
39649         libtool.
39650
39651 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39652
39653         * config/srclist-update: Don't insist on "USA." before the
39654         close-comment, as libtool omits the period and puts the */ on a
39655         separate line.
39656         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
39657         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
39658
39659 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
39660
39661         * modules/argz: New file.
39662         * MODULES.html.sh (func_all_modules): Add argz.
39663
39664 2004-06-12  Jim Meyering  <jim@meyering.net>
39665         and  Paul Eggert  <eggert@cs.ucla.edu>
39666
39667         * modules/hash (Files): Add lib/xalloc.h.
39668         * modules/pipe (Depends-on): Add wait-process.
39669         * modules/stat (Depends-on): Add xalloc.
39670         * modules/userspec (Files): Add lib/userspec.h.
39671         * modules/xstrto
39672
39673         Upgrade from gettext-0.13.
39674         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
39675         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
39676         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
39677
39678 2004-06-10  Jim Meyering  <jim@meyering.net>
39679
39680         * lib/calloc.c: New file.
39681
39682 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
39683
39684         * lib/getdate.y (yylex): Allow space between sign and number.
39685         Problem reported by Dan Jacobson.
39686
39687 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
39688
39689         Merge from coreutils CVS.
39690
39691         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
39692         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
39693         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
39694         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
39695         xstrtol.m4: Fix copyright date and/or serial number.
39696
39697         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
39698         See if we need an fchown replacement.
39699         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
39700         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
39701         and use the replacement function if we detect either defect.
39702
39703         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
39704         gl_UTIMECMP.
39705
39706 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
39707         and  Jim Meyering  <jim@meyering.net>
39708
39709         Merge from coreutils CVS.
39710
39711         * lib/stat-macros.h: New file, with contents from file-type.h
39712         and coreutils' system.h.
39713         * lib/file-type.c: Include "stat-macros.h".
39714         * lib/file-type.h (file_type): Move all macro definitions to new file,
39715         stat-macros.h.
39716
39717         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
39718         Wrap old code with this conditional.
39719         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
39720         function that does not dereference symlinks.
39721         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
39722
39723         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
39724         dependency problems.
39725         (xreadlink): Accept new arg SIZE, for efficiency.
39726         All decls and uses changed.
39727         * lib/xreadlink.h: Include <stddef.h>, for size_t.
39728
39729         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
39730         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
39731
39732         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
39733         sysexits.h.
39734
39735 2004-06-01  Jim Meyering  <jim@meyering.net>
39736
39737         * m4/calloc.m4: New file.
39738
39739 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
39740
39741         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
39742         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
39743         Also, fix a typo in a diagnostic.
39744
39745 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
39746
39747         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
39748         or AC_FUNC_REALLOC.
39749
39750 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
39751
39752         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
39753         macros to be defined.
39754         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
39755         the allocator returns NULL because the requested size is zero.
39756
39757 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
39758
39759         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
39760         var.  Add comment explaining why libc still defines it.  This
39761         merges the following patch from glibc:
39762         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
39763
39764 2004-05-20  Andreas Schwab  <schwab@suse.de>
39765
39766         * m4/free.m4: Replace free if it not known to work, not the other
39767         way round.
39768
39769 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
39770
39771         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
39772         present in glibc since revision 1.1 of this file.
39773         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
39774         obstack_alignment_mask, obstack_alloc, obstack_base,
39775         obstack_blank, obstack_blank_fast, obstack_chunk_size,
39776         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
39777         obstack_grow0, obstack_init, obstack_int_grow,
39778         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
39779         obstack_next_free, obstack_object_size, obstack_ptr_grow,
39780         obstack_ptr_grow_fast, obstack_room): Remove declarations of
39781         nonexistent functions.
39782
39783 2004-05-18  Karl Berry  <karl@gnu.org>
39784
39785         * config/srclist.txt: break link for vasnprintf.c.
39786
39787 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
39788
39789         Port obstack to the AS/400, where pointers are 16 bytes wide and
39790         you cannot cast an integer to a valid pointer.  This patch is
39791         currently waiting to be integrated into glibc; see
39792         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
39793
39794         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
39795         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
39796         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
39797         (struct obstack): temp member is now a union of a pointer and
39798         an integer, instead of an integer.  All integer uses changed.
39799         This does not affect the physical layout of struct obstack,
39800         except on hosts (like the AS/400) where the size or alignment of
39801         void * is greater than that of ptrdiff_t.
39802         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
39803         __STDC__)]: Store temporary in pointer member of union, not
39804         integer member.
39805         * lib/obstack.c: Include <stddef.h>, for offsetof.
39806         (struct fooalign): Remove; it doesn't need a name.
39807         (union fooround): Change double to long double, and add void *.
39808         (DEFAULT_ALIGNMENT): Use offsetof to compute.
39809         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
39810         not a macro.  Hence the values are always int; so remove all
39811         casts-to-int in uses.
39812
39813 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
39814
39815         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
39816         we can get this patch merged into glibc.
39817
39818 2004-05-17  Derek R. Price  <derek@ximbiot.com>
39819             Paul Eggert  <eggert@cs.ucla.edu>
39820
39821         * m4/argp: Depend on alloca.
39822
39823 2004-05-17  Derek R. Price  <derek@ximbiot.com>
39824             Paul Eggert  <eggert@cs.ucla.edu>
39825
39826         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
39827         freecoding.
39828
39829 2004-05-17  Bruno Haible  <bruno@clisp.org>
39830
39831         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
39832         precision that consists of a '.' followed by an empty digit string.
39833         Patch by Tor Lillqvist <tml@iki.fi>.
39834
39835 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
39836
39837         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
39838         for backward compatibility with older code.  We need our own
39839         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
39840         it under some other name, and our alloca.h will define it.
39841
39842 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
39843             Derek Price  <derek@ximbiot.com>
39844
39845         * lib/alloca.c: Include <alloca.h>, to get our interface.
39846         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
39847         include <alloca.h> first.  Use C89 prototype for alloca; this
39848         requires including <stddef.h> for size_t.  Use extern "C" if C++.
39849         Use #elif for simplicity, since we can assume C89 now.
39850         Don't try to source the system alloca.h since it will not be found
39851         and to prevent recursively including its replacement.
39852         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
39853         * lib/regex.c: Likewise.
39854
39855 2004-05-16  Derek Price  <derek@ximbiot.com>
39856             Paul Eggert  <eggert@cs.ucla.edu>
39857
39858         getline cleanup.  This changes the getndelim2 API: both order of
39859         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
39860         no delimiter).
39861
39862         * lib/getline.c: Don't include stddef.h or stdio.h, since our
39863         interface does that.
39864         (getline): Always use getdelim, so that we don't have two
39865         copies of this code.
39866         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
39867         if available.
39868         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
39869         (GETNDELIM2_MAXIMUM): New macro.
39870         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
39871         instead of the old practice of delim2==0.  All callers changed.
39872         Return -1 on overflow, instead of returning junk.
39873         Do not set *linesize unless allocation succeeds.
39874         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
39875         that we include sys/types.h.
39876         * lib/getnline.h: Likewise.
39877         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
39878         (getndelim2): Reorder arguments.
39879         * lib/getnline.c (getnline, getndelim):
39880         Don't discard the NMAX argument.
39881         (getnline): Invoke getndelim, to avoid code duplication.
39882         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
39883         of (size_t) -1 by callers of the getnline family.
39884
39885 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
39886
39887         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
39888         Check for gettimeofday.
39889         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
39890         Check for settimeofday, stime.
39891
39892 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
39893
39894         * lib/nanosleep.c (suspended): Change its type from int to
39895         sig_atomic_t volatile.
39896         (first_call): Make it private to rpl_nanosleep, and have it
39897         be zero initially as that's a bit faster.
39898         (my_usleep): Round up fractional times instead of truncating them,
39899         as this is the usual meaning for 'sleep'.
39900
39901         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
39902         doesn't work.
39903         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
39904         (ENOSYS): Define if not defined.
39905         (settime): Fall back on stime if it exists and settimeofday fails.
39906         But don't bother with fallbacks if a method fails with errno == EPERM.
39907
39908 2004-05-11  Jim Meyering  <jim@meyering.net>
39909
39910         Prior to this change, the save_cwd caller required read access to the
39911         current directory on most systems (ones with the fchdir function).
39912
39913         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
39914         fails, try write-only, and finally, resort to using xgetcwd.
39915
39916 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
39917
39918         * lib/obstack.c, obstack.h: Import changes from libc.
39919
39920 2004-04-28  Bruno Haible  <bruno@clisp.org>
39921
39922         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
39923         also implicitly appends .exe to executables.
39924         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
39925         accepts Windows pathnames.
39926         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
39927         Treat Cygwin like Windows, since it now accepts Windows pathnames.
39928         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
39929         Treat Cygwin like Windows, since it now accepts Windows pathnames.
39930         Reported by Derek Robert Price <derek@ximbiot.com>.
39931
39932 2004-04-21  Karl Berry  <karl@gnu.org>
39933
39934         * config/srclist.txt (localcharset.c): break sync.
39935
39936 2004-04-20  Paul Eggert  <eggert@twinsun.com>
39937
39938         * m4/host-os.m4: Add a copyright notice.
39939
39940 2004-04-20  Jim Meyering  <jim@meyering.net>
39941
39942         Change UTILS_ to gl_ in AC_DEFINE'd names.
39943         Change utils_- and jm_-prefixed variables, too.
39944         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
39945         UTILS_FUNC_MKDIR_TRAILING_SLASH.
39946         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
39947
39948         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
39949         Don't emit trailing blanks.
39950         Also rename jm_-prefixed variables to have gl_ prefix.
39951
39952         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
39953         Also rename jm_-prefixed variables to have gl_ prefix.
39954
39955         * m4/jm-macros.m4: Reflect the renamings.
39956         * m4/prereq.m4: Likewise.
39957
39958 2004-04-20  Jim Meyering  <jim@meyering.net>
39959
39960         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
39961         memory.
39962
39963 2004-04-20  Jim Meyering  <jim@meyering.net>
39964             Bruno Haible  <bruno@clisp.org>
39965
39966         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
39967         memory when realloc fails.
39968
39969 2004-04-19  Jim Meyering  <jim@meyering.net>
39970
39971         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
39972         now that readutmp.c may call `free (0)'.
39973
39974 2004-04-19  Bruno Haible  <bruno@clisp.org>
39975
39976         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
39977         * m4/inttypes_h.m4: Likewise.
39978         * m4/stdint_h.m4: Likewise.
39979         * m4/intmax_t.m4: Likewise.
39980         * m4/uintmax_t.m4: Likewise.
39981
39982 2004-04-18  Jim Meyering  <jim@meyering.net>
39983
39984         * m4/prereq.m4: Don't forbid jm_ prefix.
39985
39986         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
39987         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
39988         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
39989         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
39990         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
39991         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
39992         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
39993         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
39994         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
39995         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
39996         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
39997         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
39998         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
39999         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
40000         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
40001         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
40002         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
40003         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
40004         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
40005
40006 2004-04-18  Jim Meyering  <jim@meyering.net>
40007
40008         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
40009         failure, don't leak memory and do call END_UTMP_ENT.
40010
40011 2004-04-16  Jim Meyering  <jim@meyering.net>
40012
40013         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
40014         coreutils' stat program.
40015         (gl_PREREQ): Don't require jm_PREREQ_STAT.
40016
40017 2004-04-11  Paul Eggert  <eggert@twinsun.com>
40018
40019         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
40020         C89.
40021         (CHAR_BIT): Remove, since we assume C89.
40022         Include <stdint.h> if available, as per current Autoconf CVS advice.
40023
40024 2004-03-31  Jim Meyering  <jim@meyering.net>
40025
40026         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
40027         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
40028         * m4/xalloc.m4: Likewise.
40029
40030 2004-03-30  Paul Eggert  <eggert@twinsun.com>
40031
40032         Merge from coreutils.
40033
40034         * m4/inttostr.m4: New file.
40035         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
40036         Require AM_STDBOOL_H and gl_TIMESPEC instead.
40037         Require gl_CLOCK_TIME.
40038         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
40039
40040 2004-03-30  Paul Eggert  <eggert@twinsun.com>
40041
40042         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
40043         not bool, to be more consistent with Unix conventions.
40044         Suggested by Bruno Haible.
40045
40046         Merge from coreutils.
40047
40048         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
40049         * lib/umaxtostr.c: New files.
40050
40051         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
40052         the usual <time.h> dance.
40053         (get_date): Change signature to support fractional time stamps.
40054         All callers changed.
40055         * lib/getdate.y: Include "getdate.h" first, as we can now
40056         assume C89 and don't need to worry about 'const'.
40057         Similarly, include "unlocked-io.h" near start, not in middle.
40058         Include <limits.h>.
40059         (textint.value): Use long int rather than int.
40060         (textint.digits): Use size_t rather than int.
40061         (BILLION, LOG10_BILLION): New constants.
40062         (parser_control): New member rel_ns.  Members day_ordinal,
40063         time_zone, month, day, hour, minutes, rel_year, rel_month,
40064         rel_day, rel_hour, rel_minutes, rel_seconds
40065         are now long int, not int.  Member seconds is now struct timespec,
40066         not int.  New member timespec_seen.  Members dates_seen, days_seen,
40067         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
40068         not int.
40069         (%union.intval): Now long int, not int.
40070         New member timespec.
40071         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
40072         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
40073         (spec): Now is a timespec or an item list.
40074         (timespec, items): New nonterminals.
40075         (time, rel, relunit, number, get_date):
40076         Add support for fractional seconds.
40077         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
40078         (gmtime, localtime, mktime): Remove decls; not needed with C89.
40079         (to_hour): First arg is now long int, not int.
40080         (to_year): Returns long int, not int.
40081         Don't treat year -70 like 70.
40082         (tm_diff): Returns long int, not int.
40083         (lookup_word): Use bool instead of int when appropriate.
40084         (yylex): Use size_t for count, not int.
40085         Detect overflow when parsing large integer constants.
40086         Add support for fractions.
40087         (get_date): Make pointers 'const' if possible.
40088         Use more-portable code to detect integer overflow.
40089         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
40090         Don't use ctime; it's not reliable if the year has >4 digits.
40091
40092         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
40093         This is for compatibility with BSD.
40094
40095         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
40096         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
40097         From coreutils' system.h.
40098
40099         * lib/userspec.c: Don't include "posixver.h".
40100         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
40101         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
40102         compatible extension.  Simplify code by removing a boolean int
40103         that was always nonzero if a string was nonnull.
40104
40105 2004-03-30  Jim Meyering  <jim@meyering.net>
40106
40107         Merge from coreutils.
40108
40109         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
40110         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
40111         on some systems one must include <grp.h> before it.
40112         Reported by Christian Krackowizer.
40113
40114 2004-03-30  Jim Meyering  <jim@meyering.net>
40115
40116         Merge from coreutils.
40117
40118         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
40119
40120         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
40121         an empty input stream.
40122
40123         * lib/readtokens.c: Include <stdbool.h>.
40124         (readtoken): Use `size_t' rather than int/long.
40125         All callers adjusted.
40126         Use `bool' rather than `int' where appropriate.
40127         Use memset rather than an explicit loop.
40128         Use x2nrealloc rather than xrealloc.
40129         Allow the use of `\0' as a delimiter.
40130         (readtokens): Likewise.
40131         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
40132
40133 2004-03-30  Jim Meyering  <jim@meyering.net>
40134
40135         * m4/realloc.m4: Remove file, since now it does no more than
40136         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
40137         the `configure.ac' section of module/realloc.
40138         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
40139
40140 2004-03-30  Bruno Haible  <bruno@clisp.org>
40141
40142         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
40143         nonnull.
40144
40145 2004-03-29  Paul Eggert  <eggert@twinsun.com>
40146
40147         Merge changes to getloadavg.c from coreutils and Emacs.
40148
40149         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
40150         Define to an expression, not to the empty string.
40151         Include cloexec.h and xalloc.h.
40152         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
40153         Use set_cloexec_flag rather than rolling our own.
40154         * lib/cloexec.c, lib/cloexec.h: New files.
40155
40156 2004-03-29  Paul Eggert  <eggert@twinsun.com>
40157
40158         * m4/cloexec.m4: New file.
40159
40160 2004-03-18  Paul Eggert  <eggert@twinsun.com>
40161
40162         * lib/getopt.h: Sync with libc CVS.
40163
40164 2004-03-18  Paul Eggert  <eggert@twinsun.com>
40165             Bruno Haible  <bruno@clisp.org>
40166
40167         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
40168         mbswidth.
40169
40170 2004-03-18  Paul Eggert  <eggert@twinsun.com>
40171             Bruno Haible  <bruno@clisp.org>
40172
40173         * lib/mbswidth.h: Include <wchar.h> only if
40174         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
40175         <wchar.h>.
40176         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
40177
40178 2004-03-09  Paul Eggert  <eggert@twinsun.com>
40179
40180         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
40181         Sync with libc CVS.
40182         * lib/getopt_int.h: New file, also synced from libc.
40183
40184 2004-03-09  Paul Eggert  <eggert@twinsun.com>
40185
40186         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
40187         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
40188         Bring back getopt.c, getopt.h, getopt1.c.
40189
40190 2004-03-07  Paul Eggert  <eggert@twinsun.com>
40191
40192         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
40193         All uses changed.  Check for sa_sigaction member; this fixes
40194         a bug first reported by Jason Andrade in
40195         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
40196
40197 2004-03-07  Paul Eggert  <eggert@twinsun.com>
40198
40199         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
40200         '#if' expressions.  Unlike the code it replaces, it does not
40201         depend on (defined _SC_PAGESIZE).  However, it does depend on
40202         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
40203         first reported by Jason Andrade in
40204         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
40205
40206 2004-02-25  Simon Josefsson  <jas@extundo.com>
40207
40208         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
40209
40210 2004-02-25  Simon Josefsson  <jas@extundo.com>
40211
40212         * lib/strdup.h: New file.
40213         * lib/strdup.c: Include it.
40214         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
40215         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
40216
40217 2004-02-23  Karl Berry  <karl@gnu.org>
40218
40219         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
40220         (from fencepost.gnu.org:/gd/gnuorg).
40221
40222 2004-02-23  Karl Berry  <karl@gnu.org>
40223
40224         * config/srclistvars.sh (GNUORG) [karl]: redefine.
40225         * config/srclist.txt: add maintain/standards documents.
40226
40227 2004-02-18  Bruno Haible  <bruno@clisp.org>
40228
40229         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
40230         Reported by Derek Robert Price <derek@ximbiot.com>.
40231
40232 2004-02-16  Karl Berry  <karl@gnu.org>
40233
40234         * config/mkinstalldirs, install-sh: update from automake.
40235
40236 2004-02-06  Karl Berry  <karl@gnu.org>
40237
40238         * m4/po.m4: update from gettext 0.14.1.
40239
40240 2004-02-06  Karl Berry  <karl@gnu.org>
40241
40242         * lib/config.charset: update from gettext 0.14.1.
40243
40244 2004-02-05  Paul Eggert  <eggert@twinsun.com>
40245
40246         Add comments and code, prompted by suggestions from Bruno Haible
40247         for sh-quote.
40248         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
40249         describing the enum quoting_style values.
40250         * lib/quotearg.c (quotearg_alloc): New function.
40251         (quotearg_buffer_restyled): Treat lone { and } as special.
40252         Treat = as special.  Work around bug with older shells
40253         that "see" a '\' that is really the 2nd byte of a multibyte char.
40254         Quote empty string with shell_quoting_style.
40255
40256 2004-02-03  Bruno Haible  <bruno@clisp.org>
40257
40258         * m4/pipe.m4: New file, from GNU gettext.
40259
40260 2004-02-03  Bruno Haible  <bruno@clisp.org>
40261
40262         * lib/pipe.h: New file, from GNU gettext.
40263         * lib/pipe.c: New file, from GNU gettext.
40264
40265 2004-01-27  Bruno Haible  <bruno@clisp.org>
40266
40267         * m4/execute.m4: New file, from GNU gettext.
40268
40269 2004-01-27  Bruno Haible  <bruno@clisp.org>
40270
40271         * lib/execute.h: New file, from GNU gettext.
40272         * lib/execute.c: New file, from GNU gettext.
40273         * lib/w32spawn.h: New file, from GNU gettext.
40274
40275 2004-01-24  Paul Eggert  <eggert@twinsun.com>
40276
40277         Merge from diffutils.
40278
40279         * lib/file-type.c (file_type): Add typed memory objects.
40280         * lib/file-type.h (S_TYPEISTMO): New macro.
40281
40282         * lib/c-stack.h (c_stack_action): Remove argv argument.
40283         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
40284         (die): Don't calculate message unless segv_action returns.
40285         (get_stack_location, min_address_from_argv, max_address_from_argv,
40286         volatile stack_base, volatile_stack_size): Remove.
40287         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
40288         that every segmentation violation is a stack overflow.  (Ouch!)
40289         See Debian bug 136249 (still outstanding) for more info about why
40290         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
40291
40292 2004-01-24  Paul Eggert  <eggert@twinsun.com>
40293
40294         Exit-status fix from coreutils.
40295
40296         Use exit_failure consistently in place of EXIT_FAILURE,
40297         so that program exit statuses are consistent on failure.
40298
40299         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
40300         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
40301         * lib/argmatch.h: Comment fix to match the above.
40302         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
40303         Now a macro referring to exit_failure, instead of a separate
40304         variable.  Include "exitfail.h" to get it.
40305         * lib/xstrtol.h: Include "exitfail.h".
40306         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
40307
40308         * lib/long-options.c (parse_long_options): Use prototype
40309         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
40310         for clarity.
40311
40312 2004-01-21  Jim Meyering  <jim@meyering.net>
40313
40314         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
40315         so as not to conflict with a different-sized __mktime_internal
40316         function in GNU libc.
40317         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
40318         Problem building statically-linked `ls' reported by Michael Brunnbauer.
40319
40320 2004-01-20  Karl Berry  <karl@gnu.org>
40321
40322         * config/config.guess: update from config.
40323
40324         * config/srclistvars.sh: GNUWWWLICENSES for karl.
40325
40326 2004-01-20  Bruno Haible  <bruno@clisp.org>
40327
40328         Safer stack allocation.
40329         * lib/setenv.c: Include allocsa.h.
40330         (alloca): Remove fallback definition.
40331         (freea): Remove macro.
40332         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
40333         instead of freea.
40334
40335 2004-01-20  Bruno Haible  <bruno@clisp.org>
40336
40337         * m4/eealloc.m4: New file, from GNU gettext.
40338
40339 2004-01-20  Bruno Haible  <bruno@clisp.org>
40340
40341         * m4/allocsa.m4: New file, from GNU gettext.
40342
40343 2004-01-20  Bruno Haible  <bruno@clisp.org>
40344
40345         * lib/xallocsa.h: New file, from GNU gettext.
40346         * lib/xallocsa.c: New file, from GNU gettext.
40347
40348 2004-01-20  Bruno Haible  <bruno@clisp.org>
40349
40350         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
40351
40352 2004-01-20  Bruno Haible  <bruno@clisp.org>
40353
40354         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
40355         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
40356         specially.
40357
40358 2004-01-20  Bruno Haible  <bruno@clisp.org>
40359
40360         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
40361         patch.
40362
40363 2004-01-20  Bruno Haible  <bruno@clisp.org>
40364
40365         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
40366
40367 2004-01-20  Bruno Haible  <bruno@clisp.org>
40368
40369         * lib/eealloc.h: New file.
40370
40371 2004-01-20  Bruno Haible  <bruno@clisp.org>
40372
40373         * lib/binary-io.h: Avoid warnings on Cygwin.
40374
40375 2004-01-20  Bruno Haible  <bruno@clisp.org>
40376
40377         * lib/allocsa.h: New file, from GNU gettext.
40378         * lib/allocsa.c: New file, from GNU gettext.
40379
40380 2004-01-18  Karl Berry  <karl@gnu.org>
40381
40382         * doc/gpl.texi, doc/lgpl.texi: new files.
40383
40384 2004-01-18  Karl Berry  <karl@gnu.org>
40385
40386         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
40387         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
40388
40389 2004-01-15  Paul Eggert  <eggert@twinsun.com>
40390
40391         Merge from coreutils.
40392
40393         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
40394         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
40395         (gl_DEFAULT_POSIX2_VERSION): Move
40396         the documentation from 'configure' into 'config.hin',
40397         so that 'configure --help' isn't burdened by it and
40398         we don't have to worry about its formatting there.
40399         Reword the documentation so that it's more succinct
40400         and can be run together into a single paragraph.
40401         * m4/same.m4 (gl_SAME): Check for pathconf.
40402
40403 2004-01-15  Paul Eggert  <eggert@twinsun.com>
40404
40405         Merge from coreutils.
40406
40407         * lib/posixver.c: Include posixver.h.
40408
40409         * lib/same.c: Include <stdbool.h>, <limits.h>.
40410         (_POSIX_NAME_MAX): Define if not defined.
40411         (MIN): New macro.
40412         (same_name): If file names are silently truncated, report
40413         that the file names are the same if they are the same after
40414         the silent truncation.
40415
40416         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
40417         conversion function.
40418         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
40419         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
40420         longer needed.
40421
40422 2004-01-15  Jim Meyering  <jim@meyering.net>
40423
40424         Merge from coreutils.
40425
40426         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
40427         if no library is required.
40428         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
40429         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
40430         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
40431         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
40432         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
40433         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
40434         value, $ac_cv_search_crypt, if it's "none required".
40435         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
40436         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
40437         not gl_FUNC_GETLOADAVG.
40438         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
40439         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
40440
40441 2004-01-15  Jim Meyering  <jim@meyering.net>
40442
40443         Merge from coreutils.
40444
40445         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
40446         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
40447         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
40448
40449         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
40450         optional configure-time default.
40451
40452         * lib/version-etc.c (version_etc_copyright): Update copyright date.
40453
40454         * lib/xreadlink.c (xreadlink): Correct outdated comment.
40455
40456 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
40457
40458         Merge from coreutils.
40459
40460         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
40461         value, $ac_cv_search_nanosleep, if it's "none required".
40462
40463 2004-01-14  Paul Eggert  <eggert@twinsun.com>
40464
40465         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
40466         with like-named macro in fnmatch.c.
40467         (EXT): Use an internal constant instead.
40468
40469         Merge fnmatch patches from glibc.
40470         * lib/fnmatch.c (mbsinit): Remove define.
40471         Add libc_hidden_ver (__fnmatch, fnmatch).
40472         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
40473         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
40474
40475 2004-01-14  Karl Berry  <karl@gnu.org>
40476
40477         * config/install-sh: update from automake.
40478
40479 2004-01-13  Karl Berry  <karl@gnu.org>
40480
40481         * config/install-sh: update from automake.
40482
40483 2004-01-09  Karl Berry  <karl@gnu.org>
40484
40485         * config/install-sh: update from automake.
40486
40487 2004-01-05  Karl Berry  <karl@gnu.org>
40488
40489         * config/config.{sub,guess}: update from config.
40490
40491 2003-12-31  Karl Berry  <karl@gnu.org>
40492
40493         * config/depcomp: update from automake.
40494
40495 2003-12-14  Karl Berry  <karl@gnu.org>
40496
40497         * lib/config.charset: update from gettext-runtime.
40498
40499 2003-12-03  Paul Eggert  <eggert@twinsun.com>
40500
40501         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
40502         Bug reported by Alfred M. Szmidt.
40503
40504 2003-12-03  Bruno Haible  <bruno@clisp.org>
40505
40506         * m4/gettext.m4: Upgrade from gettext-0.13.
40507         * m4/po.m4: Upgrade from gettext-0.13.
40508         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
40509         * m4/intmax.m4: New file, from gettext-0.13.
40510         * m4/printf-posix.m4: New file, from gettext-0.13.
40511
40512 2003-11-29  Karl Berry  <karl@gnu.org>
40513
40514         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
40515
40516 2003-11-25  Paul Eggert  <eggert@twinsun.com>
40517             Bruno Haible  <bruno@clisp.org>
40518
40519         * lib/printf-parse.h: Don't include sys/types.h.
40520         (ARG_NONE): New macro.
40521         (char_directive): Change type of *arg_index fields to size_t.
40522         * lib/printf-parse.c: Don't include sys/types.h.
40523         (SSIZE_MAX): Remove macro.
40524         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
40525         Remove unnecessary overflow check.
40526         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
40527         fields.
40528
40529 2003-11-25  Bruno Haible  <bruno@clisp.org>
40530
40531         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
40532
40533 2003-11-25  Bruno Haible  <bruno@clisp.org>
40534
40535         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
40536         gt_TYPE_SSIZE_T.
40537
40538 2003-11-24  Paul Eggert  <eggert@twinsun.com>
40539
40540         * modules/alloca: Remove dependency on xalloc.
40541
40542 2003-11-24  Paul Eggert  <eggert@twinsun.com>
40543
40544         * lib/alloca.c: Remove dependency on xalloc module.
40545         (xalloc_die): Remove.
40546         (memory_full) [!defined emacs]: New macro.
40547         [!defined emacs]: Don't include xalloc.h.
40548         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
40549         address arithmetic overflows.  Change datatypes a bit to avoid
40550         unnecessary casts.
40551
40552 2003-11-22  Jim Meyering  <jim@meyering.net>
40553
40554         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
40555         s/size/size_t/.
40556
40557 2003-11-21  Karl Berry  <karl@gnu.org>
40558
40559         * config/config.{sub,guess}: update from config.
40560
40561 2003-11-18  Karl Berry  <karl@gnu.org>
40562
40563         * config/config.{sub,guess}: update from config.
40564
40565         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
40566
40567 2003-11-17  Paul Eggert  <eggert@twinsun.com>
40568
40569         * README: Mention that S+T cannot overflow if S is the size of
40570         an existing object and T is sufficiently small.
40571
40572 2003-11-17  Jim Meyering  <jim@meyering.net>
40573
40574         On systems without utime and without a utimes function capable of
40575         dealing with a NULL struct utimbuf* argument, this utime replacement
40576         could -- in unusual circumstances -- leak a file descriptor.
40577         * lib/utime.c: Include <unistd.h> and <errno.h>.
40578         (utime_null): Be sure to close `fd' and to preserve errno.
40579         Reported by Geoff Collyer via Arnold Robbins.
40580
40581 2003-11-17  Bruno Haible  <bruno@clisp.org>
40582
40583         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
40584         (Depends-on): Add xsize.
40585
40586 2003-11-17  Bruno Haible  <bruno@clisp.org>
40587
40588         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
40589
40590 2003-11-17  Bruno Haible  <bruno@clisp.org>
40591
40592         * lib/vasnprintf.c (alloca): Remove fallback definition.
40593         (freea): Remove definition.
40594         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
40595         Reported by Paul Eggert.
40596
40597 2003-11-16  Paul Eggert  <eggert@twinsun.com>
40598             Bruno Haible  <bruno@clisp.org>
40599
40600         Protect against address arithmetic overflow.
40601         * lib/printf-args.h: Include stddef.h.
40602         (arguments): Change type of field 'count' to size_t.
40603         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
40604         'unsigned int' where appropriate.
40605         * lib/printf-parse.h: Include sys/types.h.
40606         (char_directive): Change type of *arg_index fields to ssize_t.
40607         (char_directives): Change type of fields 'count', max_*_length to
40608         size_t.
40609         * lib/printf-parse.c: Include sys/types.h and xsize.h.
40610         (SSIZE_MAX): Define fallback value.
40611         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
40612         instead of 'int' where appropriate. Check a_allocated, d_allocated
40613         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
40614         * lib/vasnprintf.c: Include xsize.h.
40615         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
40616         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
40617         overflow. Avoid wraparound when converting a width or precision from
40618         decimal to binary.
40619
40620 2003-11-16  Bruno Haible  <bruno@clisp.org>
40621
40622         Update from GNU gettext.
40623         * lib/printf-parse.c: Generalize to it can be compiled for wide
40624         strings.
40625         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
40626         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
40627         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
40628         SNPRINTF): New macros.
40629         Don't include <alloca.h> if the file is used inside libintl.
40630         (local_wcslen): New function, for Solaris 2.5.1.
40631         (VASNPRINTF): Use it instead of wcslen.
40632
40633 2003-11-16  Bruno Haible  <bruno@clisp.org>
40634
40635         * lib/xsize.h (xmax): New function.
40636         (xsum, xsum3, xsum4): Declare as "pure" functions.
40637
40638 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40639
40640         * modules/xalloc (Files): Undo latest change, since xalloc.h
40641         no longer needs SIZE_MAX or PTRDIFF_MAX.
40642
40643 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40644
40645         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
40646         gl_PTRDIFF_MAX.
40647
40648 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40649
40650         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
40651         "return", to pacify some unknown compiler.  Problem reported
40652         by Joerg Schilling.
40653
40654 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40655
40656         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
40657         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
40658         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
40659         heuristic is just as accurate as far as we know, and it removes a
40660         dependency on size_max.m4 and ptrdiff_max.m4.
40661
40662 2003-11-11  Bruno Haible  <bruno@clisp.org>
40663
40664         * modules/xsize (Files): Add m4/size_max.m4.
40665         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
40666
40667 2003-11-11  Bruno Haible  <bruno@clisp.org>
40668
40669         * m4/size_max.m4: New file.
40670         * m4/ptrdiff_max.m4: New file.
40671         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
40672         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
40673         (gl_XALLOC): Invoke it.
40674
40675 2003-11-11  Bruno Haible  <bruno@clisp.org>
40676
40677         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
40678         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
40679         defined.
40680
40681 2003-11-10  Paul Eggert  <eggert@twinsun.com>
40682
40683         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
40684         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
40685         rejected some allocations of exactly SIZE_MAX - 2 bytes.
40686         From Bruno Haible.
40687         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
40688         not (size_t) -1, since it's defined here.
40689
40690 2003-11-09  Karl Berry  <karl@gnu.org>
40691
40692         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
40693
40694 2003-11-06  Paul Eggert  <eggert@twinsun.com>
40695
40696         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
40697         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
40698         Reject sizes of exactly SIZE_MAX bytes.
40699         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
40700         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
40701
40702 2003-11-05  Bruno Haible  <bruno@clisp.org>
40703
40704         * lib/xsize.h: Include limits.h, to avoid a possible collision with
40705         SIZE_MAX defined in <limits.h> on Solaris.
40706
40707 2003-11-04  Jim Meyering  <jim@meyering.net>
40708
40709         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
40710         variable names, rather than @VAR@.
40711         * modules/poll: Likewise.
40712
40713 2003-11-04  Bruno Haible  <bruno@clisp.org>
40714
40715         * modules/xsize: New file.
40716         * modules/linebreak: Depend on xsize.
40717         * MODULES.html.sh (func_all_modules): Add xsize.
40718
40719 2003-11-04  Bruno Haible  <bruno@clisp.org>
40720
40721         * m4/xsize.m4: New file.
40722
40723 2003-11-04  Bruno Haible  <bruno@clisp.org>
40724
40725         * lib/xsize.h: New file.
40726         * lib/linebreak.c: Include xsize.h.
40727         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
40728         argument for overflow.
40729         Suggested by Paul Eggert.
40730
40731 2003-11-03  Karl Berry  <karl@gnu.org>
40732
40733         * config/config.{guess,sub}: update from config.
40734
40735 2003-11-03  Jim Meyering  <jim@meyering.net>
40736
40737         * modules/userspec (lib_SOURCES): Add userspec.h.
40738         (Include): Add "userspec.h".
40739         Improve description.
40740
40741 2003-11-03  Jim Meyering  <jim@meyering.net>
40742
40743         * lib/userspec.c: Include "userspec.h".
40744         * lib/userspec.h: New file.
40745
40746 2003-11-03  Bruno Haible  <bruno@clisp.org>
40747
40748         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
40749
40750 2003-11-03  Bruno Haible  <bruno@clisp.org>
40751
40752         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
40753         available, to avoid (extremely rare) race condition.
40754         Suggested by Paul Eggert.
40755
40756 2003-11-02  Karl Berry  <karl@gnu.org>
40757
40758         * config/srclist.txt (vasprintf.c): sync broken, sigh.
40759
40760 2003-10-31  Paul Eggert  <eggert@twinsun.com>
40761
40762         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
40763         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
40764         (read_filesystem_list): Set and use me_type_malloced.
40765         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
40766         whatever the type happens to be), for brevity and consistency.
40767         Check for size calculation overflow on Alphas running OSF/1.
40768
40769 2003-10-31  Jim Meyering  <jim@meyering.net>
40770
40771         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
40772
40773         * lib/linebuffer.c: Include <string.h> for declaration of memset.
40774
40775 2003-10-30  Paul Eggert  <eggert@twinsun.com>
40776             Bruno Haible  <bruno@clisp.org>
40777
40778         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
40779         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
40780
40781 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
40782
40783         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
40784         netbsd*-gnu*.  Suggested by Robert Millan.
40785
40786 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40787
40788         * modules/group-member: Depend on stdbool.
40789
40790 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40791
40792         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
40793
40794 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40795
40796         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
40797         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
40798         after the 'gnu' in these cases.  This fixes some bugs in the
40799         previous change, and is based on suggestions by Robert Millan.
40800
40801 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40802
40803         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
40804         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
40805         no longer needed.
40806         * lib/quotearg.c (quotearg_n_options): Use it.
40807         * lib/group-member.c: Include <stdbool.h>.
40808         (free_group_info): Arg is now const *; don't free arg.
40809         (get_group_info): Now returns bool and accepts struct group_info *,
40810         rather than returning a malloc'ed struct group_info *.
40811         All uses changed.  Check for overflow in internal size calculation.
40812
40813         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
40814         rather than xmalloc/xrealloc.
40815         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
40816         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
40817         conformance bug: the old code used a pointer after freeing the
40818         storage that it addressed.
40819         * lib/hash.c (hash_initialize): Simplify the code by using
40820         xalloc_oversized rather than doing it by hand.
40821         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
40822         the buffer preserved.  Use free and xmalloc instead.
40823         * lib/quotearg.c (quotearg_n_options): Likewise.
40824         Use a simpler test for size overflow.  Don't use xalloc_oversized
40825         because unsigned int might be wider than size_t (!); this suggests
40826         that we should switch from unsigned int to size_t for slot numbers.
40827
40828 2003-10-28  Paul Eggert  <eggert@twinsun.com>
40829
40830         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
40831         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
40832         NetBSD kernels.  Requested by Richard Stallman.
40833
40834 2003-10-27  Paul Eggert  <eggert@twinsun.com>
40835
40836         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
40837         to allocate the returned structure.  Do not allocate a subarray,
40838         as x2nrealloc will do that.
40839         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
40840         instead of xnrealloc.
40841         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
40842
40843 2003-10-27  Bruno Haible  <bruno@clisp.org>
40844
40845         * lib/stdbool_.h: Better support for BeOS.
40846
40847 2003-10-26  Paul Eggert  <eggert@twinsun.com>
40848
40849         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
40850         now uses inline.
40851
40852 2003-10-26  Paul Eggert  <eggert@twinsun.com>
40853
40854         * lib/xalloc.h (xalloc_oversized): New static inline function, for
40855         callers that want to do their own size-overflow checking.  Include
40856         <stdbool.h>, since xalloc_oversized returns bool.
40857         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
40858         to use xalloc_oversized.
40859
40860         Add two functions x2realloc, x2nrealloc, for programs that grow
40861         arrays dynamically by doubling their sizes.
40862         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
40863         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
40864         New functions.
40865
40866         Port to C99 semantics for 'inline' of external functions.
40867         Bug reported by Bruno Haible.
40868         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
40869         with the old contents of xnmalloc.
40870         (xnmalloc, xmalloc): Use it.
40871         (xnrealloc_inline): New static inline function,
40872         with the old contents of xnrealloc.
40873         (xnrealloc, xrealloc): Use it.
40874
40875         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
40876         that.
40877
40878 2003-10-26  Karl Berry  <karl@gnu.org>
40879
40880         * config/srclist.txt (COPYING.DOC): no longer available from
40881         /gd/gnuorg; don't know where the ultimate source is.
40882
40883 2003-10-25  Paul Eggert  <eggert@twinsun.com>
40884
40885         Fix several address-calculation bugs in the hash modules,
40886         plus some minor code cleanup.
40887
40888         * lib/hash.h: Include <stdbool.h>, for bool.
40889         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
40890         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
40891         hash_get_n_entries, hash_get_max_bucket_length,
40892         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
40893         hash_rehash): Use size_t rather than unsigned.
40894         * lib/hash.c (struct hash_table, hash_get_n_buckets,
40895         hash_get_n_buckets_used, hash_get_n_entries,
40896         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
40897         hash_get_entries, hash_do_for_each, hash_string, is_prime,
40898         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
40899         Likewise.
40900         (SIZE_MAX): Define if not defined.
40901         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
40902         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
40903         hash_print):
40904         Use const * when possible.
40905         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
40906         (check_tuning): Fix bug: if tuning parameters were very close to
40907         0 or 1, rounding errors could have caused subscript violations.
40908         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
40909         (hash_initialize): Add 'fail:' label
40910         to free table and return NULL, and use it to simplify code.
40911         Use calloc rather than clearing the storage ourself.
40912         (hash_initialize, hash_rehash): Check for arithmetic overflow in
40913         buffer size calculations.
40914         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
40915         Include <stddef.h>, for size_t.
40916         * lib/hash-pjw.c (hash_pjw): Likewise.
40917         Switch to method described by Bruno Haible.
40918         Include <limits.h>, for CHAR_BIT.
40919         (SIZE_BITS): New macro.
40920
40921 2003-10-23  Paul Eggert  <eggert@twinsun.com>
40922
40923         * m4/getline.m4 (AM_FUNC_GETLINE):
40924         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
40925         hosts.  Problem reported by Derek Robert Price in
40926         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
40927         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
40928         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
40929
40930 2003-10-21  Paul Eggert  <eggert@twinsun.com>
40931
40932         * lib/getndelim2.c (getndelim2): When size calculation overflows,
40933         ceiling the allocation at NMAX bytes rather than silently
40934         discarding input bytes before NMAX is reached.  This makes
40935         a difference only if NMAX exceeds SIZE_MAX / 2.
40936
40937         * lib/obstack.c: Merge from glibc.
40938         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
40939         Add libc_hidden_def (_obstack_newchunk).
40940         (_obstack_free) [! defined _LIBC]: Remove.
40941         [defined _LIBC]: Make a strong alias from obstack_free, rather than
40942         a clone of the function body.
40943         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
40944         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
40945
40946         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
40947         glibc.
40948         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
40949         arg to memcpy.
40950
40951         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
40952         (obstack_ptr_grow_fast, obstack_int_grow_fast):
40953         Don't use lvalue casts, as GCC plans to remove support for them
40954         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
40955         was also present in the non-GCC version, indicating that this
40956         code had always been buggy and had never been widely used.
40957         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
40958         Use the fast variant of each macro, rather than copying the
40959         definiens of the fast variant; that way, we'll be more likely to
40960         catch future bugs in the fast variants.
40961
40962 2003-10-20  Bruno Haible  <bruno@clisp.org>
40963
40964         * modules/wait-process: New file.
40965         * MODULES.html.sh (func_all_modules): Add wait-process.
40966
40967 2003-10-20  Bruno Haible  <bruno@clisp.org>
40968
40969         * m4/wait-process.m4: New file.
40970
40971 2003-10-20  Bruno Haible  <bruno@clisp.org>
40972
40973         * lib/wait-process.h: New file, from GNU gettext.
40974         * lib/wait-process.c: New file, from GNU gettext.
40975
40976 2003-10-19  Jim Meyering  <jim@meyering.net>
40977
40978         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
40979         HPUX 10.20.
40980
40981 2003-10-18  Karl Berry  <karl@gnu.org>
40982
40983         * config/config.guess: update from config.
40984
40985 2003-10-16  Paul Eggert  <eggert@twinsun.com>
40986
40987         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
40988         (getgroups): First arg is int, not size_t.
40989         Don't let 'free' mangle errno.
40990
40991 2003-10-16  Paul Eggert  <eggert@twinsun.com>
40992
40993         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
40994
40995 2003-10-16  Karl Berry  <karl@gnu.org>
40996
40997         * config/config.{guess,sub}: update from config.
40998
40999 2003-10-16  Jim Meyering  <jim@meyering.net>
41000
41001         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
41002         memcpy.
41003
41004 2003-10-15  Paul Eggert  <eggert@twinsun.com>
41005
41006         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
41007         (SIZE_MAX): Remove.
41008         (new_exclude, add_exclude_file): Initial size no longer needs to
41009         be a power of 2.
41010         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
41011         our own address arithmetic overflow checking.
41012
41013         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
41014         (fnmatch): Do not alloca more than 2000 wide characters;
41015         instead, use malloc for large buffers.
41016         Check for address arithmetic overflow, and return -1
41017         with errno set to ENOMEM in that case.
41018         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
41019         (NEW_PATTERN): Do not alloca more than 8000 bytes;
41020         instead, return -1.  Check for address arithmetic overflow.
41021
41022 2003-10-14  Paul Eggert  <eggert@twinsun.com>
41023
41024         Handle invalid suffixes and overflow independently, so that
41025         callers can treat them independently as needed.  Fix some bugs in
41026         suffix handling, e.g., "100k@" was not diagnosed as an invalid
41027         suffix for a human-readable blocksize.  The major caller-visible
41028         change is the addition of a new
41029         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
41030         that both overflow and suffix chars were found.
41031
41032         * lib/human.c (humblock): Don't check separately for invalid suffix
41033         char; that is xstrtoumax's job (now that its bug is fixed).
41034         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
41035         INTMAX_MAX]: New macros.
41036         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
41037         TYPE_MAXIMUM): New macros.
41038         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
41039         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
41040         if overflow occurs, as it's what __strtol does and it's more useful
41041         in practice.
41042         (__xstrtol): If __strtol reports some error other than ERANGE,
41043         reflect it to the caller as LONGINT_INVALID.  If it reports
41044         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
41045         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
41046         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
41047         value.
41048         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
41049         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
41050         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
41051         [defined UINTMAX_MAX]: New macros.
41052
41053 2003-10-14  Bruno Haible  <bruno@clisp.org>
41054
41055         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
41056
41057 2003-10-14  Bruno Haible  <bruno@clisp.org>
41058
41059         * m4/sig_atomic_t: New file, from GNU gettext.
41060         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
41061
41062 2003-10-14  Bruno Haible  <bruno@clisp.org>
41063
41064         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
41065         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
41066         Also use volatile where needed.
41067
41068 2003-10-12  Paul Eggert  <eggert@twinsun.com>
41069
41070         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
41071         Change maintainer from Bruno Haible to 'all'.
41072
41073 2003-10-12  Paul Eggert  <eggert@twinsun.com>
41074
41075         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
41076
41077 2003-10-12  Paul Eggert  <eggert@twinsun.com>
41078
41079         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
41080         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
41081         and define in terms of the other primitives.
41082         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
41083         (SIZE_MAX): Define if not already defined.
41084         (array_size_overflow): New function.
41085         (xalloc_die): Abort instead of exiting if 'error' returns.
41086         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
41087         (xmalloc, xrealloc): Use them.
41088         (xcalloc): Check for address arithmetic overflow.
41089         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
41090         a bit faster than strcpy.
41091
41092 2003-10-10  Simon Josefsson  <jas@extundo.com>
41093
41094         * modules/argp (Depends-on): Add restrict and strcase.
41095
41096 2003-10-10  Simon Josefsson  <jas@extundo.com>
41097
41098         * m4/argp.m4: Add AC_C_INLINE.
41099
41100 2003-10-08  Paul Eggert  <eggert@twinsun.com>
41101
41102         Merge getpass from libc, plus a few fixes.
41103
41104         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
41105         Include <stdbool.h>.
41106         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
41107         __fsetlocking to empty.
41108         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
41109         do include <bits/libc-lock.h>.
41110         Do not include <fcntl.h>; not needed.
41111         [_LIBC]: Include <wchar.h>.
41112         (NOTCANCEL_MODE): New macro.
41113         (flockfile, funlockfile) [_LIBC]: New macros.
41114         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
41115         [!_LIBC]: New macros.
41116         (call_fclose): New function.
41117         (getpass): Use it.  Save tty stream separately; this simplifies the
41118         code and makes it more reliable if stdin happens to equal stdout.
41119         Invoke __fsetlocking on tty.
41120         Handle thread cancellation if needed.
41121         Namespace cleanup (use __tcgetattr, __getline).
41122         Use bool for Booleans.
41123         [USE_IN_LIBIO]: Handle wide streams.
41124         [!_LIBC]: Unconditionally do the fseek, since we don't know what
41125         stream might go where.
41126
41127         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
41128         doesn't have to include <stdio.h> before us.
41129         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
41130         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
41131         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
41132         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
41133         if not declared, so that we can use getpass.c code from libc without
41134         rewriting it.
41135         (flockfile, ftrylockfile, funlockfile): New macros.
41136
41137 2003-10-08  Paul Eggert  <eggert@twinsun.com>
41138
41139         * modules/getpass: Depend on stdbool.
41140
41141 2003-10-08  Paul Eggert  <eggert@twinsun.com>
41142
41143         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
41144
41145 2003-10-07  Karl Berry  <karl@gnu.org>
41146
41147         * config/config.{guess,sub}: update from config.
41148
41149 2003-10-06  Jim Meyering  <jim@meyering.net>
41150             Bruno Haible  <bruno@clisp.org>
41151
41152         This lets translators provide better translations for the
41153         "Written by ..." part of --version output.
41154         * lib/version-etc.h: Include stdarg.h.
41155         (version_etc_copyright): Declare as readonly.
41156         (version_etc): Make this function variadic with a NULL-terminated list
41157         of author name strings.
41158         (version_etc_va): New declaration.
41159         * lib/version-etc.c: Include stdarg.h, stdlib.h.
41160         (version_etc_copyright): Declare as readonly.
41161         (version_etc_va): New function. Provide a different translatable string
41162         for each possible number of authors < 10. Abbreviate when there are 10
41163         authors or more.
41164         (version_etc): Make this function variadic. Call version_etc_va.
41165         Suggestion from Gary V. Vaughan.
41166
41167         * lib/long-options.h (parse_long_options): Change prototype: the
41168         authors string is moved to the end and becomes variadic.
41169         * lib/long-options.c: Include stdarg.h.
41170         (parse_long_options): Make this function variadic, too.
41171         Call version_etc_va, not version_etc.
41172
41173 2003-10-06  Bruno Haible  <bruno@clisp.org>
41174
41175         * modules/version-etc-2: Remove file.
41176         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
41177
41178 2003-10-06  Bruno Haible  <bruno@clisp.org>
41179
41180         * modules/fatal-signal: New file.
41181         * MODULES.html.sh (func_all_modules): Add fatal-signal.
41182
41183 2003-10-06  Bruno Haible  <bruno@clisp.org>
41184
41185         * m4/fatal-signal.m4: New file.
41186         * m4/signalblocking.m4: New file, from GNU gettext.
41187
41188 2003-10-06  Bruno Haible  <bruno@clisp.org>
41189
41190         * lib/version-etc-2.h: Remove file.
41191         * lib/version-etc-2.c: Remove file.
41192
41193 2003-10-06  Bruno Haible  <bruno@clisp.org>
41194
41195         * lib/fatal-signal.h: New file, from GNU gettext.
41196         * lib/fatal-signal.c: New file, from GNU gettext.
41197
41198 2003-10-05  Paul Eggert  <eggert@twinsun.com>
41199
41200         * README: Rework advice for preventing empty .o files.
41201         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
41202         not <sys/types.h>.
41203
41204 2003-10-04  Karl Berry  <karl@gnu.org>
41205
41206         * lib/argp*: update from libc.
41207
41208 2003-10-04  Karl Berry  <karl@gnu.org>
41209
41210         * config/config.{guess,sub}: update from config.
41211
41212 2003-10-02  Bruno Haible  <bruno@clisp.org>
41213
41214         * modules/lchown (Include): Add lchown.h.
41215         * modules/time_r (Include): Use "..." syntax.
41216         * modules/xgetdomainname (Include): Add xgetdomainname.h.
41217
41218 2003-10-01  Simon Josefsson  <jas@extundo.com>
41219
41220         * MODULES.html.sh (func_all_modules): Move gethostname from section
41221         'based on' to section 'lacking' POSIX:2001.
41222
41223 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
41224
41225         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
41226         to output mode on the same stream.
41227
41228 2003-09-29  Paul Eggert  <eggert@twinsun.com>
41229
41230         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
41231         Fix arg typo in previous patch.
41232
41233 2003-09-28  Jim Meyering  <jim@meyering.net>
41234
41235         * lib/error.c: Correct cpp indentation.
41236
41237 2003-09-27  Paul Eggert  <eggert@twinsun.com>
41238
41239         * modules/free: New file.
41240
41241 2003-09-27  Paul Eggert  <eggert@twinsun.com>
41242
41243         * m4/free.m4: New file.
41244
41245 2003-09-27  Paul Eggert  <eggert@twinsun.com>
41246
41247         * lib/minmax.h (MIN, MAX)
41248         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
41249         Omit the special code that used __typeof__, since we worry that
41250         it could be more trouble than it's worth.  See:
41251         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
41252         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
41253
41254         * lib/free.c: New file.
41255
41256 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
41257
41258         Trivial fixes to Makefile.am parts of module listings.
41259         * modules/strstr: Append strstr.h to lib_SOURCES.
41260         * modules/strcase: Likewise, for strcase.h.
41261
41262 2003-09-27  Karl Berry  <karl@gnu.org>
41263
41264         * config/mkinstalldirs: update from automake.
41265
41266 2003-09-26  Paul Eggert  <eggert@twinsun.com>
41267
41268         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
41269         (error_tail): Do not loop, reallocating temporary buffer, since
41270         the output cannot contain more wide characters than the input
41271         contains bytes, the size must be big enough already.  This avoids
41272         one potential size overflow calculation.  Check for size overflow
41273         when calculating temporary buffer size.  Free temporary buffer
41274         when done, if it was allocated with malloc; this plugs a memory
41275         leak.  Remove casts from void * to pointers, that are no longer
41276         needed now that we're assuming C89 or better.
41277
41278         Merge error changes from glibc.
41279
41280         * lib/error.c, error.h: Update copyright notice header to match glibc.
41281         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
41282         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
41283         Disable cancellation while printing error.
41284         * lib/error.h: Prepend __ to parameter names.
41285
41286 2003-09-26  Jim Meyering  <jim@meyering.net>
41287
41288         * lib/error.c (error_tail): Move some declarations
41289         into inner scope where the local variables are used.
41290
41291 2003-09-26  Bruno Haible  <bruno@clisp.org>
41292
41293         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
41294         stpncpy().
41295         Don't define stpncpy through config.h; it's now done through stpncpy.h.
41296
41297 2003-09-26  Bruno Haible  <bruno@clisp.org>
41298
41299         * lib/stpncpy.h (gnu_stpncpy): New declaration.
41300         (stpncpy): Define as alias for gnu_stpncpy.
41301         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
41302
41303 2003-09-25  Simon Josefsson  <jas@extundo.com>
41304
41305         * lib/xgetdomainname.h: New file.
41306         * lib/xgetdomainname.c: New file.
41307
41308 2003-09-25  Simon Josefsson  <jas@extundo.com>
41309             Bruno Haible  <bruno@clisp.org>
41310
41311         * modules/getdomainname: New file.
41312         * modules/xgetdomainname: New file.
41313         * MODULES.html.sh (func_all_modules): Add getdomainname,
41314         xgetdomainname.
41315
41316 2003-09-25  Simon Josefsson  <jas@extundo.com>
41317             Bruno Haible  <bruno@clisp.org>
41318
41319         * m4/getdomainname.m4: New file.
41320
41321 2003-09-25  Simon Josefsson  <jas@extundo.com>
41322             Bruno Haible  <bruno@clisp.org>
41323
41324         * lib/getdomainname.h: New file.
41325         * lib/getdomainname.c: New file.
41326
41327 2003-09-25  Karl Berry  <karl@gnu.org>
41328
41329         * lib/argp-fmtstream.c, argp-help.c: update from libc.
41330
41331 2003-09-25  Karl Berry  <karl@gnu.org>
41332
41333         * config/install-sh: update from automake.
41334
41335 2003-09-25  Bruno Haible  <bruno@clisp.org>
41336
41337         * modules/version-etc-2: New file, from modules/version-etc with
41338         modifications.
41339         * MODULES.html.sh (func_all_modules): Add version-etc-2.
41340
41341 2003-09-25  Bruno Haible  <bruno@clisp.org>
41342
41343         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
41344         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
41345
41346 2003-09-24  Simon Josefsson  <jas@extundo.com>
41347
41348         * modules/xgethostname: Add xgethostname.h.
41349
41350 2003-09-24  Paul Eggert  <eggert@twinsun.com>
41351
41352         * lib/linebuffer.c (freebuffer): Don't free the argument, just
41353         the buffer associated with the argument.  Bug reported by
41354         Simon Josefsson.
41355
41356 2003-09-24  Paul Eggert  <eggert@twinsun.com>
41357
41358         * README: Document assumptions that 'int' is at least 32 bits
41359         wide, that integer arithmetic is 2's complement without overflow,
41360         that there are no holes in integer values, that adding sizes of
41361         two nonoverlapping objects can't overflow, and that all-bits-zero
41362         yields scalar zero.  Fix spelling and capitalization typos.
41363
41364 2003-09-19  Karl Berry  <karl@gnu.org>
41365
41366         * lib/argp.h: update from libc.
41367
41368 2003-09-17  Paul Eggert  <eggert@twinsun.com>
41369
41370         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
41371         to avoid spurious warnings like "AC_RUN_IFELSE was called before
41372         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
41373
41374 2003-09-17  Paul Eggert  <eggert@twinsun.com>
41375
41376         * gnulib-tool: Use "test -h", not "test -L", for portability
41377         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
41378         (tags_regexp): Remove, since \| doesn't conform to POSIX.
41379         (sed_extract_prog): Issue s commands one-by-one, rather than
41380         using \| in one s command.
41381
41382 2003-09-16  Paul Eggert  <eggert@twinsun.com>
41383
41384         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
41385         input error, instead of returning NULL the next time we are called
41386         (and therefore losing track of errno).
41387
41388 2003-09-16  Bruno Haible  <bruno@clisp.org>
41389
41390         * gnulib-tool (func_create_testdir): Warn about duplicated
41391         dependencies.
41392
41393 2003-09-15  Paul Eggert  <eggert@twinsun.com>
41394
41395         * modules/argmatch, modules/fatal, modules/obstack,
41396         modules/xalloc, modules/xgethostname: Sort dependencies by
41397         importance, not alphabetically.
41398
41399 2003-09-15  Paul Eggert  <eggert@twinsun.com>
41400
41401         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
41402         fails, so that the caller gets the proper errno.
41403
41404         * lib/readutmp.c (read_utmp): Likewise.
41405         Check for fstat error.  Close stream and free storage
41406         when failing.
41407
41408 2003-09-14  Karl Berry  <karl@gnu.org>
41409
41410         * config/srclist.txt (strdup.c): disable for c89 changes.
41411
41412 2003-09-14  Jim Meyering  <jim@meyering.net>
41413
41414         * lib/getloadavg.c: Correct cpp indentation.
41415         * lib/strdup.c: Likewise.
41416         * lib/vasnprintf.c: Likewise.
41417
41418 2003-09-14  Bruno Haible  <bruno@clisp.org>
41419
41420         * modules/fwriteerror: New file.
41421         * MODULES.html.sh (func_all_modules): Add fwriteerror.
41422
41423 2003-09-14  Bruno Haible  <bruno@clisp.org>
41424
41425         * lib/fwriteerror.h: New file.
41426         * lib/fwriteerror.c: New file.
41427
41428 2003-09-12  Paul Eggert  <eggert@twinsun.com>
41429
41430         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
41431         modules/xgethostname, modules/xalloc: Depend on exit.
41432
41433 2003-09-12  Paul Eggert  <eggert@twinsun.com>
41434
41435         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
41436
41437         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
41438         and AC_MINIX, too, so that their extensions are available.
41439
41440         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
41441         This macro has been superseded by gl_BACKUPFILE.
41442
41443         More patches to assume C89 or better.
41444
41445         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
41446
41447         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
41448         unconditionally.
41449         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
41450         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
41451         Include <string.h>, <stdlib.h> unconditionally.
41452         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
41453         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
41454         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
41455         headers or for string.h.
41456         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
41457         or strtoul.
41458
41459         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
41460         headers.
41461         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
41462         * m4/userspec.m4 (gl_USERSPEC): Likewise.
41463         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
41464         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
41465         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
41466         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
41467         memcpy, memset.
41468         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
41469         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
41470         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
41471         strtol.
41472         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
41473         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
41474         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
41475         strtoul.
41476
41477 2003-09-12  Paul Eggert  <eggert@twinsun.com>
41478
41479         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
41480         * lib/obstack.c [!defined _LIBC]: Likewise.
41481         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
41482         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
41483         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
41484
41485         More changes to assume C89 or better.
41486
41487         * lib/error.c (error_tail): Assume vprintf.
41488
41489         * lib/argmatch.c (getenv): Remove decl.
41490         * lib/progreloc.c (get_full_program_name): Define via prototype.
41491         * lib/setenv.c (clearenv): Likewise.
41492         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
41493         needed.
41494         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
41495         (malloc, memcpy): Remove decls.
41496         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
41497         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
41498         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
41499         (memcpy): Remove macro.
41500         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
41501         (__P): Remove.  All uses removed.
41502         (PTR): Remove.  All uses changed to void *.
41503         (CHAR_BIT, NULL): Remove.
41504         (spaces, zeros, memset_space, memset_zero)
41505         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
41506         Remove.
41507         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
41508         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
41509         Define with prototype.
41510         Remove now-unnecessary prototype decl.
41511         (extra_args_spec): Assume ANSI C.  All uses changed.
41512         (extra_args_spec_iso): Remove.
41513         (my_strftime, emacs_strftimeu): Define via prototype.
41514         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
41515         unconditionally.
41516         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
41517         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
41518         (strtoul, strtol): Remove decls.
41519         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
41520         LONG_MAX): Remove.
41521         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
41522         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
41523         (LOCALE_PARAM_PROTO): New macro.
41524         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
41525         (INTERNAL (strtol), strtol): Define with a prototype.
41526         (PARAMS): Remove.  All uses removed.
41527         * lib/tempname.c: Include <string.h> unconditionally.
41528         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
41529         * lib/xgethostname.c (main): Define with a prototype.
41530         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
41531         Include <stdlib.h> unconditionally.
41532         (calloc, malloc, realloc, free): Remove decls.
41533         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
41534         Include <stdlib.h> unconditionally.  Sort include file names.
41535         (strtod): Remove.
41536         (xstrtod): Define with a prototype.
41537         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
41538         (strtol, strtoul): Remove decls.
41539
41540 2003-09-11  Paul Eggert  <eggert@twinsun.com>
41541
41542         More patches to assume C89 or better.
41543         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
41544         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
41545         string.h, memchr, STDC_HEADERS.
41546
41547 2003-09-11  Paul Eggert  <eggert@twinsun.com>
41548
41549         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
41550         Include <stdlib.h>, <string.h> unconditionally.
41551         Remove now-unnecessary cast to char *.
41552         * lib/strnlen.c: Include <string.h> unconditionally.
41553         * lib/yesno.c (yesno): Define with a prototype.
41554
41555 2003-09-11  Bruno Haible  <bruno@clisp.org>
41556
41557         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
41558
41559 2003-09-10  Jim Meyering  <jim@meyering.net>
41560
41561         * lib/error.c: Correct indentation of cpp directives.
41562
41563 2003-09-10  Bruno Haible  <bruno@clisp.org>
41564
41565         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
41566         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
41567         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
41568         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
41569         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
41570         <stdlib.h> and <string.h> checks.
41571         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
41572         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
41573
41574 2003-09-10  Bruno Haible  <bruno@clisp.org>
41575
41576         * lib/strcspn.c: Include <string.h> unconditionally.
41577         * lib/strpbrk.c: Include <string.h> unconditionally.
41578         * lib/strstr.c: Include <string.h> unconditionally.
41579         * lib/unicodeio.c: Include <string.h> unconditionally.
41580         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
41581         * lib/unsetenv.c: Likewise.
41582         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
41583         * lib/yesno.c: Include <stdlib.h> unconditionally.
41584         (rpmatch): Add prototype.
41585
41586 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41587
41588         More patches to assume C89 or better.
41589         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
41590         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
41591         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
41592         or for string.h.
41593         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
41594         stdlib.h.
41595         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
41596         C headers.
41597         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
41598         string.h.
41599         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
41600         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
41601         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
41602         or for string.h.
41603         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
41604         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
41605         C headers.
41606         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
41607         memcpy.
41608         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
41609         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
41610         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
41611         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
41612         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
41613         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
41614         string.h, free.
41615         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
41616         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
41617         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
41618         C headers, or for string.h.
41619         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
41620         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
41621         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
41622         headers, memory.h, stdlib.h, string.h, strings.h.
41623         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
41624         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
41625         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
41626         strchr.
41627         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
41628         headers, memory.h, string.h.
41629         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
41630         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
41631         free.
41632         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
41633         headers.
41634         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
41635         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
41636         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
41637         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
41638         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
41639
41640 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41641
41642         More K&R removal.
41643
41644         * lib/acosl.c (main): Use a prototype.
41645         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
41646         tanl.c: Likewise.
41647
41648         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
41649
41650         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
41651         (getopt, etopt_long, getopt_long_only, _getopt_internal)
41652         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
41653         with a prototype.
41654         * lib/getopt.c (const): Remove macro.
41655         Include <string.h> unconditionally.
41656         (my_index): Remove; all uses changed to strchr.
41657         (strlen): Remove decl.
41658         (exchange): Remove forward decl; no longer needed.
41659         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
41660         Define with prototype.
41661         * lib/getopt1.c (const): Remove macro.
41662         (getopt_long, getopt_long_only, main): Define with prototype.
41663
41664         * lib/getugroups.c: Include <string.h> unconditionally.
41665
41666         * lib/getusershell.c: Include <stdlib.h> unconditionally.
41667         (getusershell, setusershell, endusershell, readname, main):
41668         Define with prototypes.
41669
41670         * lib/group-member.c: Include group-member.h first.
41671         Include <stdlib.h> unconditionally.
41672
41673         * lib/hard-locale.c: Include hard-locale.h first.
41674         Include <stdlib.h>, <string.h> unconditionally.
41675
41676         * lib/hash.c (free, malloc): Remove decls.
41677         Include <stdlib.h> unconditionally.
41678
41679         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
41680         (getenv): Do not declare.
41681
41682         * lib/idcache.c: Include <string.h> unconditionally.
41683
41684         * lib/long-options.c: Include long-options.h first, to test interface.
41685         Include <stdlib.h> unconditionally.
41686
41687         * lib/makepath.c: Include makepath.h first, to test interface.
41688         Include <stdlib.h> and <string.h> unconditionally.
41689
41690         * lib/linebuffer.c: Include <stdlib.h>.
41691         (free): Remove decl.
41692
41693         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
41694         stddef.h. rpl_malloc returns void *, not char *.
41695         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
41696         prototype.
41697
41698         * lib/md5.h: Include <limits.h> unconditionally.
41699         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
41700         (__P): Remove; all uses removed.
41701         * lib/md5.c: Include "md5.h" first.
41702         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
41703         md5_buffer, md5_process_bytes, md5_process_block):
41704         Define with prototypes.
41705         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
41706         * lib/sha.c: Include "sha.h" first.
41707         Include <stdlib.h>, <string.h> unconditionally.
41708
41709         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
41710         * lib/memcmp.c (__ptr_t): Likewise.
41711         * lib/memrchr.c (__ptr_t): Likewise.
41712         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
41713         Include <string.h> unconditionally.
41714         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
41715         * lib/memchr.c: Include <stdlib.h> unconditionally.
41716         * lib/memchr.c (LONG_MAX): Remove.
41717         * lib/memrchr.c (LONG_MAX): Likewise.
41718         * lib/memchr.c (__memchr): Define via a prototype.
41719         * lib/memrchr.c (__memrchr): Likewise.
41720         * lib/memcmp.c (__P): Remove, and remove all uses.
41721         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
41722         Remove forward decls; no longer needed.
41723         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
41724         Use types required by C89 in prototype.
41725
41726         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
41727         * lib/savedir.c: Likewise.
41728         * lib/mkdir.c (free): Remove decl.
41729         * lib/rmdir.c (rmdir): Define with a prototype.
41730         * lib/savedir.c: Include savedir.h first, to test interface.
41731
41732         * lib/mktime.c (STDC_HEADERS): Remove.
41733         Include <stdlib.h>, <string.h> unconditionally.
41734
41735         * lib/modechange.c: Include <stdlib.h> unconditionally.
41736         (malloc): Remove decl.
41737
41738         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
41739         (free): Remove decl.
41740
41741         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
41742         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
41743         (This type really should be intptr_t, but that's a C99ism.)
41744         (_obstack_memcpy): Remove: all uses changed to memcpy.
41745         Include <string.h> unconditionally.
41746         (struct obstack): Assume __STDC__ for types of members
41747         chunkfun, freefun, extra_arg.
41748         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
41749         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
41750         obstack_begin, obstack_specify_allocation,
41751         obstack_specify_allocation_with_arg, obstack_chunkfun,
41752         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
41753         Remove unprototyped decls and the macros that use them.
41754         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
41755         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
41756         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
41757         (defined __STDC__ && __STDC__)]:
41758         Remove nonprototyped code.
41759         Include <stdlib.h> unconditionally.
41760         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
41761         _obstack_allocated_p, _obstack_free, obstack_free,
41762         _obstack_memory_used, print_and_abort):
41763         Define using prototypes.
41764         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
41765         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
41766         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
41767         obstack_next_free, obstack_object_size, obstack_room) [0]:
41768         Remove unused, unprototyped code.
41769
41770         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
41771
41772         * lib/physmem.c (physmem_total, physmem_available, main): Define
41773         with prototypes.
41774
41775         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
41776         (main): Define with a prototype.
41777
41778         * lib/posixver.c (getenv): Remove decl.
41779
41780         * lib/putenv.c (malloc): Returns void *, not char *.
41781         Include <string.h> unconditionally.
41782         (strchr, memcpy, NULL): Do not define.
41783
41784         * lib/readtokens.c: Include readtokens.h first, to test interface.
41785         Include <stdlib.h>, <string.h> unconditionally.
41786         (init_tokenbuffer): Define with a prototype.
41787
41788         * lib/regex.c (PARAMS): Remove.  All uses removed.
41789         All uses of _RE_ARGS removed, too.
41790         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
41791         unconditionally.
41792         (bzero): Assume memset exists.
41793         (memcmp, memcpy, NULL): Remove.
41794         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
41795         char, or assignments to local vars of type signed char.
41796         (init_syntax_once, PREFIX(extract_number_and_incr),
41797         PREFIX(print_partial_compiled_pattern),
41798         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
41799         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
41800         PREFIX(regex_grow_registers), PREFIX(regex_compile),
41801         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
41802         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
41803         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
41804         wcs_compile_range, byte_compile_range, truncate_wchar,
41805         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
41806         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
41807         count_mbs_length, wcs_re_match_2_internal,
41808         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
41809         PREFIX(alt_match_null_string_p),
41810         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
41811         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
41812         regfree, PREFIX(extract_number)): Define with prototype.  Remove
41813         now-unnecessary declaration, if any.
41814         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
41815         regcomp, regexec):
41816         Remove now-unnecessary casts among pointer types.
41817         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
41818
41819         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
41820         (free): Remove decl.
41821
41822         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
41823
41824         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
41825         (free): Remove decl.
41826
41827         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
41828         * lib/xgetcwd.c: Likewise.
41829
41830         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
41831         (free): Remove decl.
41832
41833         * lib/strchrnul.c (strchrnul): Define with a prototype.
41834         Fix bug: c_in was not converted to char before searching.
41835
41836         The following changes are not K&R related:
41837
41838         * lib/group-member.h: Include <sys/types.h>, so that this file is
41839         self-contained.
41840         * lib/makepath.h: Likewise.
41841
41842         * lib/getusershell.c (readname, default_index, line_size, readname):
41843         Use size_t, not int, for sizes.
41844         (readname): If the size overflows, report an error instead of
41845         looping forever.
41846
41847 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41848
41849         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
41850         libc.
41851
41852 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41853
41854         * README: New section: portability guidelines.
41855
41856 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
41857
41858         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
41859         C89 spec.
41860
41861 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
41862
41863         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
41864
41865 2003-09-08  Paul Eggert  <eggert@twinsun.com>
41866
41867         Assume C89 or better; remove K&R cruft.
41868         A few of these changes were first proposed by Derek Robert Price
41869         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
41870
41871         * lib/addext.c: Include <string.h> unconditionally.
41872         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
41873         Don't declare getenv or malloc.
41874
41875         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
41876         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
41877         (NULL): Remove.
41878         (find_stack_direction, alloca): Use prototypes.
41879
41880         * lib/atexit.c (atexit): Define using a prototype.
41881
41882         * lib/basename.c, dirname.c, stripslash.c:
41883         Include <string.h> unconditionally.
41884
41885         * lib/bcopy.c: Include <stddef.h>.
41886         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
41887
41888         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
41889
41890         * lib/error.h (error, error_at_line, error_print_progname)
41891         [! (defined (__STDC__) && __STDC__)]: Remove decls.
41892         * lib/error.c: Include error.h first, to check interface.
41893         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
41894         (VA_START): Remove; all uses changeed to va_start.
41895         (exit, strerror): Remove decls.
41896         (error_print_progname): Prototype uncondionally.
41897         Don't include <errno.h>; no longer needed.
41898         (private_strerror): Remove.
41899         (error_tail): Always define.
41900         (error, error_at_line): Assume C89 or better; always use prototypes.
41901         * lib/fatal.c: Include "fatal.h" first, to test interface.
41902         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
41903         (VA_START): Remove; all uses changed to va_start.
41904         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
41905         this case.
41906         (exit): Remove decl.
41907         (fatal): Prototype unconditionally.  Assume va_start works.
41908         Abort at end, to pacify gcc.
41909
41910         * lib/euidaccess.c (main): Define with a prototype.
41911
41912         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
41913
41914         * lib/exitfail.c: Include <stdlib.h> unconditionally.
41915
41916         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
41917         prototypes.
41918         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
41919         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
41920         (getenv): Remove decl.
41921         (fnmatch): Define using a prototype.
41922         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
41923         (FCT): Define using a prototype.
41924
41925         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
41926
41927         * lib/gethostname.c: Include <stddef.h>.
41928         (gethostname): Define with prototype.  Length is size_t, not int.
41929
41930 2003-09-08  Paul Eggert  <eggert@twinsun.com>
41931
41932         Assume C89 or better; remove K&R cruft.
41933         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
41934         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
41935         string.h, getenv, malloc.
41936         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
41937         headers.
41938         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
41939         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
41940         do not check for strerror.
41941         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
41942         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
41943         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
41944         do not check for doprnt or vprintf.
41945         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
41946         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
41947
41948 2003-09-08  Paul Eggert  <eggert@twinsun.com>
41949
41950         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
41951         getversion.c should have been removed then, but was accidentally
41952         preserved.
41953
41954         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
41955         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
41956
41957 2003-09-08  Karl Berry  <karl@gnu.org>
41958
41959         * config/config.sub, config.guess, srclistvars.sh: update from savannah
41960                 config, forget about prep.
41961
41962         * config/depcomp, missing: update from automake.
41963
41964 2003-09-07  Paul Eggert  <eggert@twinsun.com>
41965
41966         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
41967         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
41968
41969 2003-09-07  Paul Eggert  <eggert@twinsun.com>
41970
41971         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
41972         copy_tm_result.  Bug reported by Simon Josefsson in
41973         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
41974
41975 2003-09-06  Paul Eggert  <eggert@twinsun.com>
41976
41977         * m4/time_r.m4: New file.
41978         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
41979         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
41980         is. Check for timegm declaration.
41981         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
41982         Do not check for gmtime_r.
41983         Replace mktime if __mktime_internal does not exist and if mktime
41984         hasn't been replaced already.
41985
41986 2003-09-06  Paul Eggert  <eggert@twinsun.com>
41987
41988         * lib/time_r.c, lib/time_r.h: New files.
41989
41990         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
41991         __localtime_r.
41992         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
41993         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
41994
41995         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
41996         __gmtime_r.
41997         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
41998         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
41999         Include <time_r.h>.
42000
42001         * lib/timegm.c: Switch to glibc implementation, with the following
42002         changes:
42003         [defined HAVE_CONFIG_H]: Include <config.h>.
42004         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
42005         (__mktime_internal) [!defined _LIBC]: New decl.
42006         (__gmtime_r) [!defined _LIBC]: New macro and function.
42007         (timegm): Use a prototype, since gnulib assumes C89.
42008         Do not bother declaring tmp to be const, as it's not really usefu.
42009         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
42010         (timegm): Declare only if HAVE_DECL_TIMEGM.
42011
42012 2003-09-06  Paul Eggert  <eggert@twinsun.com>
42013
42014         * MODULES.html.sh (func_all_modules): Add time_r.
42015         * modules/time_r: New file.
42016         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
42017         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
42018
42019 2003-09-03  Paul Eggert  <eggert@twinsun.com>
42020
42021         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
42022         Bug reported by Lute Kamstra in
42023         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
42024
42025         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
42026         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
42027         course with correspondingly smaller numbers for tomorrow and
42028         yesterday.  From Tadayoshi Funaba.  Originally installed into
42029         sh-utils on 1999-08-07, but the patch got lost (I guess during the
42030         coreutils merge?).
42031
42032 2003-08-31  Simon Josefsson  <jas@extundo.com>
42033
42034         * modules/timegm: New file.
42035         * MODULES.html.sh (func_all_modules): Add timegm.
42036
42037 2003-08-31  Simon Josefsson  <jas@extundo.com>
42038
42039         * m4/timegm.m4: New file.
42040
42041 2003-08-31  Simon Josefsson  <jas@extundo.com>
42042
42043         * lib/timegm.h: New file.
42044         * lib/timegm.c: New file.  Based on
42045         wget-1.8.2/src/http.c:mktime_from_utc.
42046
42047 2003-08-31  Karl Berry  <karl@gnu.org>
42048
42049         * lib/argp.h: update from libc.
42050
42051 2003-08-28  Bruno Haible  <bruno@clisp.org>
42052
42053         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
42054         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
42055         followed by '#define fnmatch fnmatch_posix' gives an error.
42056
42057 2003-08-28  Bruno Haible  <bruno@clisp.org>
42058
42059         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
42060         warning on QNX, which defines O_BINARY to 000000.
42061
42062 2003-08-27  Jim Meyering  <jim@meyering.net>
42063
42064         * m4/mkstemp.m4: Require that the system mkstemp be able to create
42065         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
42066         would fail after 32.  Reported by Danny Levinson.  Details here:
42067         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
42068
42069 2003-08-24  Bruno Haible  <bruno@clisp.org>
42070
42071         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
42072         MSVC7 <stdio.h> is included later.
42073
42074 2003-08-22  Simon Josefsson  <jas@extundo.com>
42075
42076         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
42077
42078 2003-08-20  Karl Berry  <karl@gnu.org>
42079
42080         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
42081
42082 2003-08-20  Bruno Haible  <bruno@clisp.org>
42083
42084         * modules/progname: New file.
42085         * MODULES.html.sh (func_all_modules): Add progname.
42086
42087 2003-08-20  Bruno Haible  <bruno@clisp.org>
42088
42089         * lib/progname.h: New file, from GNU gettext.
42090         * lib/progname.c: New file, from GNU gettext.
42091         * lib/progreloc.c: New file, from GNU gettext.
42092
42093 2003-08-19  Jim Meyering  <jim@meyering.net>
42094
42095         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
42096         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
42097
42098 2003-08-19  Bruno Haible  <bruno@clisp.org>
42099
42100         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
42101         more.
42102
42103 2003-08-19  Bruno Haible  <bruno@clisp.org>
42104
42105         * lib/xstrdup.c: Assume <string.h> exists.
42106
42107 2003-08-18  Paul Eggert  <eggert@twinsun.com>
42108
42109         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
42110         in makefile rules.
42111
42112 2003-08-18  Jim Meyering  <jim@meyering.net>
42113
42114         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
42115         * m4/lib-ld.m4: Likewise.
42116
42117 2003-08-18  Jim Meyering  <jim@meyering.net>
42118
42119         * lib/setenv.h: Indent nested cpp directive.
42120         * lib/vasnprintf.c: Remove trailing blanks.
42121
42122 2003-08-17  Simon Josefsson  <jas@extundo.com>
42123
42124         * modules/xstrndup: New file.
42125         * MODULES.html.sh (func_all_modules): Add xstrndup.
42126
42127 2003-08-17  Simon Josefsson  <jas@extundo.com>
42128
42129         * modules/argp: Fix autoconf macro name. Add more dependencies.
42130
42131 2003-08-17  Simon Josefsson  <jas@extundo.com>
42132
42133         * m4/xstrndup.m4: New file.
42134
42135 2003-08-17  Simon Josefsson  <jas@extundo.com>
42136
42137         * m4/argp.m4: New file.
42138
42139 2003-08-17  Simon Josefsson  <jas@extundo.com>
42140             Bruno Haible  <bruno@clisp.org>
42141
42142         * lib/xstrndup.h: New file.
42143         * lib/xstrndup.c: New file.
42144
42145 2003-08-17  Bruno Haible  <bruno@clisp.org>
42146
42147         * modules/strndup (Files, Include): Add lib/strndup.h.
42148
42149 2003-08-17  Bruno Haible  <bruno@clisp.org>
42150
42151         * modules/euidaccess (Files): Add lib/euidaccess.h.
42152
42153 2003-08-17  Bruno Haible  <bruno@clisp.org>
42154
42155         * lib/strndup.h: New file.
42156
42157 2003-08-17  Bruno Haible  <bruno@clisp.org>
42158
42159         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
42160         like AC_GNU_SOURCE.
42161         * modules/extensions (configure.ac): Comment out the invocation of
42162         gl_USE_SYSTEM_EXTENSIONS.
42163
42164 2003-08-16  Paul Eggert  <eggert@twinsun.com>
42165
42166         Merges from coreutils, etc.
42167         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
42168         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
42169         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
42170         fixing a typo.
42171         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
42172         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
42173
42174 2003-08-16  Paul Eggert  <eggert@twinsun.com>
42175
42176         Document merge from coreutils.
42177         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
42178         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
42179         * modules/utime: Add m4/utimes-null.m4.
42180
42181 2003-08-16  Paul Eggert  <eggert@twinsun.com>
42182
42183         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
42184         space, undoing this 2003-08-12 change:
42185         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
42186
42187 2003-08-16  Paul Eggert  <eggert@twinsun.com>
42188
42189         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
42190         strtoul.c from libc, undoing this 2003-08-12 change:
42191         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
42192
42193 2003-08-16  Jim Meyering  <jim@meyering.net>
42194
42195         Merges from coreutils.
42196         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
42197         prefix.  Adjust cache variables similarly.  Create 500 rather than
42198         just 300 files, to exercise bug on Darwin6.5, too.
42199         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
42200         $missing_dir.
42201         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
42202         AM_SYS_POSIX_TERMIOS.
42203         Reported by mkc@mathdogs.com.
42204         Also change use of $am_cv_sys_posix_termios
42205         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
42206         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
42207         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
42208         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
42209         in /proc/mounts until it finds one with matching device number.  This
42210         is unnecessary when the FILE argument *is* a mount point.  No stat call
42211         is necessary in that case.  So, disable the statvfs-testing code on
42212         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
42213         as RedHat bug# 84846.
42214         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
42215         to 1MB, so as not to render systems with no stack size limit (e.g.,
42216         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
42217         Include <unistd.h>.  On some systems,
42218         it is required for the definition of _SC_PAGESIZE.
42219
42220 2003-08-16  Jim Meyering  <jim@meyering.net>
42221
42222         Merge from coreutils.
42223         * lib/xstrtoimax.c: #else #if -> #elif.
42224         * lib/xstrtoumax.c: Likewise.
42225
42226 2003-08-16  Jim Meyering  <jim@meyering.net>
42227
42228         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
42229         * m4/utimes.m4: Removed.
42230         * m4/utimes-null.m4: Renamed from utimes.m4.
42231
42232         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
42233         to 1MB, so as not to render systems with no stack size limit (e.g.,
42234         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
42235         Include <unistd.h>.  On some systems,
42236         it is required for the definition of _SC_PAGESIZE.
42237
42238 2003-08-16  Jim Meyering  <jim@meyering.net>
42239         and Paul Eggert  <eggert@cs.ucla.edu>
42240
42241         Merges from coreutils, etc.
42242
42243         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
42244         using the latest version from cvs.  This avoids problems with #line
42245         directives using a vendor (Sun) compiler.
42246         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
42247         Don't set GETGROUPS_LIB here; now it's
42248         done via getgroups.m4's wrapper function.
42249         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
42250         rather than just in sh-util/configure.in, so that the
42251         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
42252         same.
42253         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
42254         AC_FUNC_GETLOADAVG where to find getloadavg.c.
42255         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
42256         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
42257         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
42258         Remove code that is now done by the newly-required macros.
42259         Append $(EXEEXT) to DF_PROG.
42260         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
42261         Do not invoke or require the following here,
42262         since prereq.m4 or some gnulib .m4 now does this for us:
42263         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
42264         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
42265         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
42266         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
42267         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
42268         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
42269         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
42270         AC_FUNC_OBSTACK.
42271         Do not replace the following functions, as this is now the job
42272         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
42273         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
42274         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
42275         atexit getpass, strdup, getpagesize.
42276         Replace 'raise'.
42277         Do not check for the following functions, as this is now the job
42278         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
42279         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
42280         setregid.
42281         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
42282         Check for sys/sysctl.h.
42283         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
42284         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
42285         of checking for ssize_t ourselves.
42286
42287         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
42288         Require every macro that gnulib/modules/* suggests for us.
42289         (jm_PREREQ_ADDEXT): New macro.
42290         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
42291         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
42292
42293         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
42294         (gl_PHYSMEM): Use it.
42295         Also check for `table' function.
42296         Check for new headers and functions.
42297         Add check for sys/sysmp.h.
42298         With suggestions from Kaveh Ghazi.
42299         Ignore headers that are present but cannot be compiled.  This
42300         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
42301         C 5.4.
42302
42303 2003-08-15  Paul Eggert  <eggert@twinsun.com>
42304
42305         Document merge from coreutils.
42306         * modules/userspec: Depend on posixver.
42307         * modules/strftime: Depend on tzset.
42308
42309 2003-08-15  Paul Eggert  <eggert@twinsun.com>
42310
42311         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
42312         rather than tab, after '#' in shell-script copyright notices.
42313         Suggested by Bruno Haible.
42314
42315 2003-08-15  Paul Eggert  <eggert@twinsun.com>
42316
42317         * config/srclist-update: Use three spaces, rather than tab, after '#'
42318         in shell-script copyright notices.  Suggested by Bruno Haible.
42319         Remove unnecessary parenthesization in regular expression.
42320
42321 2003-08-15  Jim Meyering  <jim@meyering.net>
42322
42323         Merge from coreutils.
42324         * lib/xgethostname.c: Include <stdlib.h>.
42325         (xghostname): Don't exit for anything other than memory-related
42326         failure; just return NULL.
42327         * lib/userspec.c: Include "posixver.h".
42328         (parse_user_spec): Accept `.' as a separator only
42329         in pre-POSIX-200112 mode.
42330         * lib/strtoimax.c: Use #elif rather than #else #if.
42331         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
42332         Remove function, now that we can rely on a working tzset function.
42333         [!_LIBC]: Ensure that the required autoconf test has been run.
42334         [!defined _NL_CURRENT && HAVE_STRFTIME]:
42335         Use underlying_strftime for %r.
42336         * lib/sha.c: Merge in some clean-up and optimization changes from
42337         glibc.
42338         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
42339         Ensure that it is a multiple of 64.
42340         Rearrange loop exit tests so as to avoid performing an
42341         additional fread after encountering an error or EOF.
42342         * lib/realloc.c: Update copyright date.
42343
42344 2003-08-15  Jim Meyering  <jim@meyering.net>
42345         and Paul Eggert  <eggert@twinsun.com>
42346
42347         Merge from coreutils.
42348         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
42349         member but strut utmpx does not.  Needed for AIX 4.3.3.
42350         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
42351
42352 2003-08-15  Jim Meyering  <jim@meyering.net>
42353         and Paul Eggert  <eggert@cs.ucla.edu>
42354
42355         Merges from coreutils, etc.
42356         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
42357         Require gl_FUNC_TZSET_CLOBBER.
42358         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
42359         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
42360         members.
42361
42362 2003-08-14  Paul Eggert  <eggert@twinsun.com>
42363
42364         Help the merge from coreutils.
42365         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
42366         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
42367         * m4/tzset.m4: Use it too.
42368
42369 2003-08-14  Paul Eggert  <eggert@twinsun.com>
42370
42371         * modules/tzset: New file.
42372
42373 2003-08-14  Jim Meyering  <jim@meyering.net>
42374
42375         Merges from coreutils.
42376         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
42377         variable names, rather than @FNMATCH_H@.
42378         * modules/alloca: Likewise for $(ALLOCA_H).
42379
42380         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
42381         the three copies of the literal target, `fnmatch.h'.
42382         * modules/alloca (alloca.h): Likewise.
42383
42384 2003-08-14  Jim Meyering  <jim@meyering.net>
42385
42386         Merge from coreutils.
42387         * m4/tzset.m4: New file.
42388         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
42389         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
42390         otherwise, AIX 5.1 systems would end up using the latter.
42391         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
42392         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
42393         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
42394         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
42395
42396 2003-08-14  Jim Meyering  <jim@meyering.net>
42397
42398         Merge from coreutils.
42399         * lib/obstack.h: Whitespace changes.
42400         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
42401         and xcalloc return values.
42402         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
42403         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
42404         hang on OSF/1 5.1 for DIR on both local and remote file systems.
42405         Reported by (and fix confirmed by) Nelson H. F. Beebe.
42406         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
42407         error from mntctl.
42408         Use mntctl's return value to drive the entry-processing loop, since
42409         we can't rely on the value of the vmt_length member in the last
42410         entry.  On some systems doing so could result in exhausting
42411         virtual memory.  Based in part on a patch from Mike Jetzer.
42412
42413 2003-08-14  Jim Meyering  <jim@meyering.net>
42414         and Paul Eggert  <eggert@twinsun.com>
42415
42416         Merges from coreutils, plus other fixes.
42417         * lib/physmem.c: Merge in portability changes from gcc/libiberty
42418         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
42419         for credits and details.  Thanks to Kaveh Ghazi for helping
42420         to keep these files in sync.
42421         (ARRAY_SIZE): Define it.
42422         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
42423         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
42424         (memcasecmp): Don't assume size_t fits in unsigned int.
42425         Remove casts and duplicate code.
42426         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
42427         (memcpy): Remove definition.
42428         Merge in some clean-up and optimization changes from glibc.
42429         [BLOCKSIZE]: Move definition to top of file.
42430         Ensure that it is a multiple of 64.
42431         Rearrange loop exit tests so as to avoid performing an
42432         additional fread after encountering an error or EOF.
42433         * lib/md5.h (md5_uintptr): Define.
42434         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
42435         return to the initial working directory.  Preserve errno
42436         for caller.
42437         * lib/idcache.c: Include "xalloc.h".
42438         (xmalloc, xrealloc): Remove decls.
42439         (getuser): Remove casts no longer required in C89.
42440         * lib/human.c: Include stdio.h, for sprintf.
42441         * lib/group-member.c: Include "xalloc.h".
42442         (xmalloc, xrealloc): Remove decls.
42443         (get_group_info): Remove casts no longer required in C89.
42444         * lib/getusershell.c (readname): Remove casts no longer required in
42445         C89.
42446         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
42447         * lib/getline.c: Whitespace fix, from coreutils.
42448
42449 2003-08-13  Paul Eggert  <eggert@twinsun.com>
42450
42451         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
42452         Check for isascii.
42453
42454         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
42455         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
42456         Undo previous (whitespace-only) change.
42457
42458 2003-08-13  Paul Eggert  <eggert@twinsun.com>
42459
42460         * lib/exclude.c: Include <ctype.h>
42461         (IN_CTYPE_DOMAIN): New macro.
42462         (is_space): New fn.
42463         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
42464         and empty lines.
42465
42466         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
42467         Undo previous (whitespace-only) change.
42468
42469 2003-08-13  Paul Eggert  <eggert@twinsun.com>
42470
42471         * config/srclist-update: Change update back to the old behavior,
42472         leaving whitespace alone.  Use one 'sed' command rather than a
42473         pipeline.
42474         (fixlicense): Now a variable, not a function.
42475         (remove_trailing_blanks): Remove.
42476         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
42477         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
42478         Undo previous (whitespace-only) change.
42479
42480 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42481
42482         Merge from coreutils.
42483         * modules/euidaccess: Add lib_SOURCES, include for new
42484         file euidaccess.h
42485
42486 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42487
42488         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
42489         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
42490         Normalize leading white space and remove trailing white space.
42491
42492         Merge from coreutils
42493         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
42494
42495         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
42496         0.12.1.  These files are now being upgraded automatically by
42497         ../config/srclist-update.
42498
42499 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42500
42501         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
42502         Normalize leading white space and remove trailing white space.
42503         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
42504         notice, as per ../config/srclist-update.
42505
42506         Merge from coreutils.
42507         * lib/euidaccess.h: New file.
42508         * lib/euidaccess.c: Include it.
42509         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
42510         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
42511         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
42512
42513 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42514
42515         * config/srclist-update: Add copyright notice.
42516         (remove_id_lines, remove_trailing_blanks): New constants.
42517         (fixfile): Use them to normalize spacing a bit in copied files.
42518         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
42519         Normalize leading white space and remove trailing white space.
42520
42521         * config/texinfo.tex: Sync with texinfo.
42522
42523         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
42524         strtoul.c from libc, to merge coreutils whitespace changes.
42525
42526         * config/srclist.txt: Get the following m4 files from gettext:
42527         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
42528         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
42529         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
42530         wint_t.m4.
42531
42532 2003-08-12  Karl Berry  <karl@gnu.org>
42533
42534         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
42535         been made.
42536
42537 2003-08-11  Paul Eggert  <eggert@twinsun.com>
42538
42539         * modules/gnu-source, m4/gnu-source.m4:
42540         Remove; we're assuming Autoconf 2.54 or later now.
42541         Suggested by Bruno Haible.
42542         * MODULES.html.sh (func_all_modules): Remove gnu-source.
42543
42544 2003-08-11  Bruno Haible  <bruno@clisp.org>
42545
42546         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
42547
42548 2003-08-11  Bruno Haible  <bruno@clisp.org>
42549
42550         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
42551         (vasnprintf): Use it instead of wcslen.
42552
42553 2003-08-11  Bruno Haible  <bruno@clisp.org>
42554
42555         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
42556         value to ensure that _Bool promotes to int. Use #define for _Bool when
42557         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
42558
42559 2003-08-10  Karl Berry  <karl@gnu.org>
42560
42561         * lib/regex.h: update from libc (whitespace fix).
42562
42563 2003-08-09  Paul Eggert  <eggert@twinsun.com>
42564
42565         Merge some files from coreutils.  These changes were
42566         originally made by Jim Meyering.
42567         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
42568         many older Unixes require this.
42569         * lib/alloca.c (alloca): Remove cast to argument of free;
42570         no longer needed in C89.
42571         * lib/alloca_.h, regex.h: Fix white space to match
42572         what GNU indent does.
42573
42574 2003-08-09  Paul Eggert  <eggert@twinsun.com>
42575
42576         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
42577         apparently Emacs's Unicode mode got confused before my 2003-08-05
42578         checkin.
42579
42580 2003-08-08  Paul Eggert  <eggert@twinsun.com>
42581
42582         * m4/extensions.m4: New file.
42583         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
42584         Require gl_USE_SYSTEM_EXTENSIONS.
42585         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
42586         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
42587
42588 2003-08-08  Paul Eggert  <eggert@twinsun.com>
42589
42590         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
42591         * modules/extensions, modules/gnu-source: New files.
42592         * modules/timespec, modules/unlocked-io: Depend on extensions.
42593
42594 2003-08-07  Paul Eggert  <eggert@twinsun.com>
42595
42596         * modules/restrict: New file.
42597         * MODULES.html.sh (func_all_modules): Add restrict.
42598         * modules/regex: Depend on restrict.
42599
42600 2003-08-07  Paul Eggert  <eggert@twinsun.com>
42601
42602         * m4/restrict.m4: New file.
42603         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
42604
42605 2003-08-07  Bruno Haible  <bruno@clisp.org>
42606
42607         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
42608         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
42609
42610 2003-08-07  Bruno Haible  <bruno@clisp.org>
42611
42612         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
42613         makes the module 'getndelim2' compatible with the module 'getline'.
42614
42615 2003-08-05  Paul Eggert  <eggert@twinsun.com>
42616
42617         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
42618         byte with "\201" to avoid glitches when editing that source file
42619         with multi-gnome-terminal.
42620
42621 2003-08-05  Paul Eggert  <eggert@twinsun.com>
42622
42623         * lib/bumpalloc.h: Remove.
42624
42625 2003-08-05  Paul Eggert  <eggert@twinsun.com>
42626
42627         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
42628         * modules/bumpalloc: Remove.
42629
42630 2003-08-04  Paul Eggert  <eggert@twinsun.com>
42631
42632         * lib/getloadavg.c: Change copyright notice and spacing to conform to
42633         GNU coding style.
42634
42635         Merge from coreutils.
42636         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
42637         1. From glibc.
42638         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
42639         from Karl Berry, implemented by Jim Meyering.
42640         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
42641         from Dmitry V. Levin.
42642         Remove anachronistic cast of xrealloc.
42643         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
42644         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
42645         type. Otherwise, it wouldn't compile with at least /bin/cc on
42646         ymp-cray-unicos9.0.2.X.
42647         Combine two mostly-identical uses of alloca into one.
42648         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
42649
42650 2003-08-04  Dave Love  <d.love@dl.ac.uk>
42651
42652         [From Emacs.]
42653
42654         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
42655         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
42656         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
42657         obsolete NLIST_NAME_UNION.
42658         [__GNU__]: Undef BSD and FSCALE.
42659         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
42660
42661 2003-08-03  Paul Eggert  <eggert@twinsun.com>
42662
42663         * lib/stdbool_.h (_Bool): Make it signed char, instead of
42664         an enum type, so that it's guaranteed to promote to int.  See:
42665         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
42666
42667 2003-08-03  Karl Berry  <karl@gnu.org>
42668
42669         * config/depcomp: update from automake.
42670
42671 2003-07-31  Paul Eggert  <eggert@twinsun.com>
42672
42673         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
42674         (strerror): Don't assume that a printable int fits in 14 bytes.
42675
42676 2003-07-31  Bruno Haible  <bruno@clisp.org>
42677
42678         * modules/getpass-gnu: New file.
42679         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
42680
42681 2003-07-31  Bruno Haible  <bruno@clisp.org>
42682
42683         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
42684
42685 2003-07-24  Karl Berry  <karl@gnu.org>
42686
42687         * config/missing: update from automake.
42688
42689 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
42690             Bruno Haible  <bruno@clisp.org>
42691
42692         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
42693         * lib/getline.c (getline, getdelim): Likewise.
42694         Remove _GNU_SOURCE define; now it's defined in config.h through
42695         m4/getline.m4.
42696
42697 2003-07-23  Karl Berry  <karl@gnu.org>
42698
42699         * config/config.sub: update from prep.
42700
42701 2003-07-22  Paul Eggert  <eggert@twinsun.com>
42702
42703         * modules/xalloc (Depends-on): Add exitfail.
42704         * modules/xmemcoll: Likewise.
42705
42706 2003-07-22  Paul Eggert  <eggert@twinsun.com>
42707
42708         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
42709         over-parenthesization in macros.
42710
42711         Sync with coreutils.
42712
42713         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
42714         required by C99.
42715
42716         Use `exit_failure' for xalloc and xmemcoll instead of their own
42717         private exit-failure variables.
42718         * lib/xalloc.h (xalloc_exit_failure): Remove.
42719         * lib/xmalloc.c: Likewise.  Include exitfail.h.
42720         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
42721         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
42722         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
42723         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
42724
42725 2003-07-20  Jim Meyering  <jim@meyering.net>
42726
42727         * modules/closeout (Depends-on): Add exitfail.
42728         Suggestion from Bruno Haible.
42729
42730 2003-07-19  Karl Berry  <karl@gnu.org>
42731
42732         * config/config.sub: update from prep.
42733
42734 2003-07-18  Paul Eggert  <eggert@twinsun.com>
42735
42736         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
42737         Remove.
42738         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
42739         to test that it can stand by itself.  Include "exitfail.h".
42740         Clients should set exit_failure instead.
42741         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
42742
42743 2003-07-18  Bruno Haible  <bruno@clisp.org>
42744
42745         * modules/getndelim2: New file.
42746         * modules/getline: Share files with module getndelim2.
42747         * modules/getnline: Depend on getndelim2 instead of sharing files with
42748         it. Add getnline.c to lib_SOURCES.
42749         * MODULES.html.sh (func_all_modules): Add getndelim2.
42750
42751 2003-07-18  Bruno Haible  <bruno@clisp.org>
42752
42753         * m4/getndelim2.m4: New file.
42754         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
42755         invoke gl_PREREQ_GETNDELIM2.
42756         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
42757         gl_PREREQ_GETNDELIM2.
42758         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
42759         gl_GETNDELIM2.
42760
42761 2003-07-18  Bruno Haible  <bruno@clisp.org>
42762
42763         * lib/getndelim2.h: New file.
42764         * lib/getndelim2.c: Make into a module of its own. Include config.h,
42765         getndelim2.h.
42766         (getndelim2): Make non-static. Change return type to ssize_t.
42767         * lib/getline.h: Change argument names.
42768         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
42769         * lib/getnline.c: Include getndelim2.h.
42770
42771 2003-07-18  Andreas Schwab  <schwab@suse.de>
42772
42773         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
42774
42775 2003-07-17  Karl Berry  <karl@gnu.org>
42776
42777         * config/config.sub: update from prep.
42778
42779 2003-07-17  Bruno Haible  <bruno@clisp.org>
42780
42781         * modules/getnline: New file.
42782         * modules/getline: Add lib/getndelim2.c to source file list.
42783         * MODULES.html.sh (func_all_modules): Add getnline.
42784
42785 2003-07-17  Bruno Haible  <bruno@clisp.org>
42786
42787         * m4/getnline.m4: New file.
42788
42789 2003-07-17  Bruno Haible  <bruno@clisp.org>
42790
42791         * m4/Makefile.am.in: Remove file.
42792         * m4/Makefile.am: Remove file.
42793         * m4/Makefile.in: Remove file.
42794
42795 2003-07-17  Bruno Haible  <bruno@clisp.org>
42796
42797         * lib/getnline.h: New file.
42798         * lib/getnline.c: New file.
42799         * lib/getndelim2.c: New file, extracted from getline.c.
42800         (getndelim2): Renamed from getdelim2, with added nmax argument.
42801         * lib/getline.c: Include getndelim2.c.
42802         (getdelim2): Moved out to getndelim2.c.
42803         (getline, getdelim): Update.
42804
42805 2003-07-17  Bruno Haible  <bruno@clisp.org>
42806
42807         * lib/Makefile.am: Remove file.
42808         * lib/Makefile.in: Remove file.
42809
42810 2003-07-17  Bruno Haible  <bruno@clisp.org>
42811
42812         * configure.in: Remove file.
42813         * Makefile.in: Remove file.
42814
42815 2003-07-17  Bruno Haible  <bruno@clisp.org>
42816
42817         * MODULES.html.sh: Put the </BODY> right before </HTML>.
42818
42819 2003-07-16  Karl Berry  <karl@gnu.org>
42820
42821         * config/srclist-update: was running fixlicense twice, which caused
42822                 texinfo.tex to be nullified for some reason.  Simplify,
42823                 $gplsrc is no longer needed as far as I can see?
42824
42825 2003-07-16  Jim Meyering  <jim@meyering.net>
42826
42827         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
42828
42829 2003-07-15  Paul Eggert  <eggert@twinsun.com>
42830
42831         * config/srclist.txt: Get the following files from gettext-runtime/intl
42832         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
42833         ref-del.sin.  From Bruno Haible.
42834         * config/srclist-update (fixfile): Change grep pattern again, since the
42835         previous fix didn't work (there was another trailing $).  Use
42836         '[$]' to escape the $s.
42837
42838 2003-07-15  Karl Berry  <karl@gnu.org>
42839
42840         * lib/vasnprintf.c: update from gettext.
42841
42842 2003-07-15  Karl Berry  <karl@gnu.org>
42843
42844         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
42845         gets expanded when surrounded by '$'.
42846
42847 2003-07-15  Jim Meyering  <jim@meyering.net>
42848
42849         * modules/save-cwd: Don't depend on error.  From Derek Price.
42850
42851 2003-07-15  Jim Meyering  <jim@meyering.net>
42852
42853         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
42854
42855 2003-07-14  Simon Josefsson  <jas@extundo.com>
42856
42857         * modules/mempcpy: New file.
42858         * MODULES.html.sh (func_all_modules): Add mempcpy.
42859
42860 2003-07-14  Simon Josefsson  <jas@extundo.com>
42861
42862         * m4/mempcpy.m4: New file.
42863
42864 2003-07-14  Simon Josefsson  <jas@extundo.com>
42865
42866         * lib/mempcpy.h: New file.
42867         * lib/mempcpy.c: New file.
42868
42869 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42870
42871         * modules/getdate, modules/posixtm: Depend on mktime.
42872
42873 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42874
42875         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
42876         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
42877         unicodeio.c, unicodeio.h, unlocked-io.h:
42878         Switch from LGPL to GPL.
42879
42880 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42881
42882         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
42883         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
42884         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
42885         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
42886         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
42887         updated automatically by ../config/srclist-update.  This changes
42888         their license from LPGL to GPL.
42889
42890 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42891
42892         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
42893         assumed to refer to the root of the most recent stable gettext version.
42894         * config/srclistvars.sh: Add defaults for eggert.
42895         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
42896         Match "This program" as well as "The program".  This is needed
42897         for gettext.
42898
42899 2003-07-14  Jim Meyering  <jim@meyering.net>
42900
42901         Don't emit diagnostics.  Let callers do that.
42902         * lib/save-cwd.c: Don't include "error.h".
42903         (save_cwd): Don't call error.  Ensure that errno is valid
42904         when returning nonzero.
42905
42906         * lib/save-cwd.h (restore_cwd): Update prototype.
42907         * lib/save-cwd.c (restore_cwd): Remove two parameters.
42908         Simplify.  Don't call error upon failure.  Let callers do that.
42909         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
42910         when auditing is enabled.  But don't bother updating the #if.
42911
42912 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
42913
42914         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
42915         it breaks C++ compilation.
42916         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
42917
42918 2003-07-10  Simon Josefsson  <jas@extundo.com>
42919
42920         * modules/strchrnul (Makefile.am): Add strchrnul.h.
42921
42922 2003-07-10  Jim Meyering  <jim@meyering.net>
42923
42924         * m4/clock_time.m4: Remove trailing blank.
42925         * m4/intmax_t.m4: Likewise.
42926
42927 2003-07-10  Jim Meyering  <jim@meyering.net>
42928
42929         * lib/vasnprintf.c: Remove trailing blanks.
42930         Make cpp indentation consistent.
42931
42932 2003-07-09  Paul Eggert  <eggert@twinsun.com>
42933
42934         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
42935         posixver.c, strftime.c, strnlen.c, strverscmp.c:
42936         Switch from LGPL to GPL.
42937
42938 2003-07-09  Paul Eggert  <eggert@twinsun.com>
42939
42940         * config/srclist.txt: Sort sublists.  Add
42941         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
42942         that differ from gnulib for one reason or another; we'd like this list
42943         to be smaller but for now let's document what we have.
42944
42945 2003-07-08  Paul Eggert  <eggert@twinsun.com>
42946
42947         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
42948         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
42949         and sweeter "eval x=$x".
42950         * config/srclist.txt: Get lib/argp* from glibc.
42951
42952 2003-07-07  Paul Eggert  <eggert@twinsun.com>
42953
42954         * lib/mktime.c: Fix some boundary cases and remove need for floating
42955         point.
42956
42957         Issue a compile-time diagnostic if time_t is floating point, or if
42958         two's complement arithmetic is not in effect, or if arithmetic
42959         right shift does not propagate the sign.  These assumptions were
42960         all in the original code but they weren't checked.
42961
42962         (TIME_T_MIDPOINT, verify): New macros.
42963         (__isleap): Remove; it has integer overflow problems.
42964         (leapyear): New function, without those problems.
42965         (ydhms_tm_diff): Remove; splitting into two parts.
42966         (ydhms_diff): New function, containing the arithmetic part of
42967         the old ydhms_tm_diff function.  Issue a compile-time
42968         diagnostic if we are not using C99 integer division.
42969         Avoid casts when possible.
42970         (guess_time_tm): New function, containing the checking part of
42971         the old ydhms_tm_diff function.  Return the new value, rather than
42972         the difference between it and the old.  Accept a new argument T
42973         so that *T specifies the old value.  Check for overflow in the result.
42974
42975         (__mktime_internal): Use a time_t offset, not a long int offset.
42976         This undoes the 2003-06-04 change, which is no longer needed now
42977         that we have better overflow checking.
42978         (localtime_offset): Likewise.
42979
42980         (__mktime_internal): Avoid harmful overflow on hosts where time_t
42981         and long are 64-bit but int is only 32-bit.
42982         (ydhms_diff): Use long int to store year1 and yday1.
42983         Issue a compile-time diagnostic if long int is not wide enough.
42984
42985         (__mktime_internal): Use long int to store adjusted year and yday.
42986         Use plain C rather than preprocessor commands, if that doesn't
42987         affect efficiency.
42988         Check for overflow (and try to repair) after each probe
42989         rather than checking only at the very end.  This avoids some bugs
42990         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
42991         does not equal GMT offset at maximum time).
42992         Use integer to check for overflow rather than floating point; this
42993         is more portable to non-IEEE hosts, and is a tad faster.
42994         When we detect that we are oscillating between two values,
42995         don't check whether tm_isdst has the requested value, since
42996         we already know the answer.  When tm_isdst has the wrong value,
42997         use a different heuristic to find the right one, based on the
42998         extreme values actually observed in practice in tz2003a,
42999         rather than the (overly optimistic) "previous 3 calendar quarters".
43000
43001         (not_equal_tm, print_tm, check_result): Use "const T" rather than
43002         "T const" to accommodate glibc style.
43003         (check_result): Use less-confusing report format.  "long" -> "long int.
43004         (main): Likewise.
43005         Don't loop if the iteration overflows time_t.
43006         Allow a negative step in the iteration.
43007
43008 2003-07-06  Karl Berry  <karl@gnu.org>
43009
43010         * config/depcomp: update from automake.
43011         * config/config.sub: update from prep.
43012
43013 2003-07-03  Karl Berry  <karl@gnu.org>
43014
43015         * config/config.guess: update from prep.
43016
43017 2003-07-01  Paul Eggert  <eggert@twinsun.com>
43018
43019         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
43020         xreadlink.c now includes it unconditionally.
43021
43022 2003-07-01  Paul Eggert  <eggert@twinsun.com>
43023
43024         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
43025         having it depend on HAVE_SYS_TYPES_H.
43026
43027 2003-07-01  Bruno Haible  <bruno@clisp.org>
43028
43029         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
43030         <sys/types.h> should be sufficient.
43031         Reported by Paul Eggert.
43032
43033 2003-06-26  Karl Berry  <karl@gnu.org>
43034
43035         * config/depcomp: update from automake.
43036
43037 2003-06-26  Bruno Haible  <bruno@clisp.org>
43038
43039         * modules/human: Depend on module stdbool.
43040
43041 2003-06-25  Bruno Haible  <bruno@clisp.org>
43042
43043         * modules/readlink: New file.
43044         * modules/xreadlink: Depend on it.
43045         * MODULES.html.sh (func_all_modules): Add readlink.
43046
43047 2003-06-25  Bruno Haible  <bruno@clisp.org>
43048
43049         * m4/readlink.m4: New file.
43050
43051 2003-06-25  Bruno Haible  <bruno@clisp.org>
43052
43053         * lib/readlink.c: New file.
43054
43055 2003-06-22  Karl Berry  <karl@gnu.org>
43056
43057         * config/srclist.txt: update mkinstalldirs from automake.
43058         * config/mkinstalldirs: update.
43059
43060 2003-06-22  Bruno Haible  <bruno@clisp.org>
43061
43062         Portability to mingw32.
43063         * m4/ssize_t.m4: New file, from GNU gettext.
43064         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
43065         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
43066
43067 2003-06-22  Bruno Haible  <bruno@clisp.org>
43068
43069         * modules/safe-read: Add m4/ssize_t.m4.
43070         * modules/xreadlink: Add m4/ssize_t.m4.
43071
43072 2003-06-20  Bruno Haible  <bruno@clisp.org>
43073
43074         Assume C89, so PARAMS isn't needed.
43075         * lib/unicodeio.h (PARAMS): Remove.
43076         * lib/unicodeio.c: Don't use PARAMS.
43077
43078 2003-06-18  Karl Berry  <karl@gnu.org>
43079
43080         * config/config.{guess,sub}: update from prep.
43081
43082 2003-06-18  Jim Meyering  <jim@meyering.net>
43083
43084         Merge changes from coreutils.
43085         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
43086         Remove explicit declarations of xmalloc and realloc.
43087         Include xalloc.h.
43088         (read_utmp): Remove anachronistic cast of xmalloc.
43089
43090 2003-06-17  Paul Eggert  <eggert@twinsun.com>
43091
43092         Assume C89, so PARAMS isn't needed.
43093         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
43094         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
43095         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
43096         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
43097         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
43098         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
43099         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
43100         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
43101         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
43102         lib/xstrtod.h, lib/xstrtol.h: Likewise.
43103         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
43104         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
43105         no longer needed. Anyway, config.h should always be included before any
43106         other file.
43107
43108 2003-06-11  Simon Josefsson  <jas@extundo.com>
43109
43110         * modules/sysexits: New file.
43111         * MODULES.html.sh (func_all_modules): Add sysexits.
43112
43113 2003-06-11  Simon Josefsson  <jas@extundo.com>
43114
43115         * lib/sysexit_.h: New file.
43116
43117 2003-06-11  Derek Price  <derek@ximbiot.com>
43118
43119         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
43120         necessary.
43121
43122 2003-06-11  Bruno Haible  <bruno@clisp.org>
43123
43124         * m4/sysexits.m4: New file.
43125
43126 2003-06-10  Simon Josefsson  <jas@extundo.com>
43127
43128         * lib/argp.h: New file, from glibc.
43129         * lib/argp-ba.c: New file, from glibc.
43130         * lib/argp-eexst.c: New file, from glibc.
43131         * lib/argp-fmtstream.c: New file, from glibc.
43132         * lib/argp-fmtstream.h: New file, from glibc.
43133         * lib/argp-fs-xinl.c: New file, from glibc.
43134         * lib/argp-help.c: New file, from glibc.
43135         * lib/argp-namefrob.h: New file, from glibc.
43136         * lib/argp-parse.c: New file, from glibc.
43137         * lib/argp-pv.c: New file, from glibc.
43138         * lib/argp-pvh.c: New file, from glibc.
43139         * lib/argp-xinl.c: New file, from glibc.
43140
43141 2003-06-10  Simon Josefsson  <jas@extundo.com>
43142
43143         * modules/strchrnul: New file.
43144
43145 2003-06-10  Simon Josefsson  <jas@extundo.com>
43146
43147         * modules/argp: New file.
43148
43149 2003-06-10  Simon Josefsson  <jas@extundo.com>
43150
43151         * m4/strchrnul.m4: New file.
43152
43153 2003-06-10  Simon Josefsson  <jas@extundo.com>
43154
43155         * lib/strchrnul.h: New file.
43156         * lib/strchrnul.c: New file.
43157
43158 2003-06-10  Bruno Haible  <bruno@clisp.org>
43159
43160         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
43161
43162 2003-06-07  Karl Berry  <karl@gnu.org>
43163
43164         * config/config.{guess,sub}: update from prep.
43165
43166 2003-06-07  Jim Meyering  <jim@meyering.net>
43167
43168         * modules/strtod: Use $(...) notation, not @...@ for
43169         AC_REPLACE'd variables.
43170         * modules/localcharset: Likewise.
43171
43172 2003-06-07  Jim Meyering  <jim@meyering.net>
43173
43174         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
43175         in place of my name in the copyright comment.
43176         Remove definition and uses of __P.
43177
43178         From coreutils.
43179         * lib/stat.c: Don't declare xmalloc explicitly.
43180         Instead, include "xalloc.h".
43181         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
43182         xrealloc, and xcalloc return values.
43183         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
43184         Improve comment.
43185         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
43186
43187 2003-06-07  Bruno Haible  <bruno@clisp.org>
43188
43189         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
43190         avoid AC_CONFIG_LINKS.
43191         * modules/fnmatch (Makefile.am): Use explicit creation rule for
43192         fnmatch.h, to avoid AC_CONFIG_LINKS.
43193         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
43194
43195 2003-06-07  Bruno Haible  <bruno@clisp.org>
43196
43197         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
43198         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
43199         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
43200         directory.
43201         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
43202         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
43203         directory.
43204
43205 2003-06-06  Jim Meyering  <jim@meyering.net>
43206
43207         Merge from coreutils.
43208         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
43209         Consolidate declarations and initializations of *_base* locals.
43210
43211         Merge from coreutils.
43212         This avoids a core dump on systems without GNU putenv,
43213         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
43214         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
43215         (unsetenv): New static function, from GNU libc.
43216         (rpl_putenv): Use it.
43217
43218         * lib/modechange.c: Remove trailing blanks.
43219
43220         Merge from coreutils.
43221         * lib/fsusage.c: Remove declaration of statfs.
43222         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
43223
43224         * lib/posixtm.c: Include <stdbool.h> unconditionally.
43225
43226 2003-06-06  Jim Meyering  <jim@meyering.net>
43227
43228         * lib/stdbool_.h: Renamed from stdbool.h.in.
43229
43230 2003-06-06  Jim Meyering  <jim@meyering.net>
43231             Bruno Haible  <bruno@clisp.org>
43232
43233         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
43234         Adjust Makefile.am snippet not to redirect directly to target.
43235         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
43236
43237 2003-06-05  Paul Eggert  <eggert@twinsun.com>
43238
43239         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
43240         mismatch, look in future quarters as well as past.  This fixes a
43241         bug when processing fall-backwards gaps immediately after a long
43242         period of daylight-saving time.
43243
43244         * lib/mktime.c: Assume freestanding C89 or better.
43245         (HAVE_LIMITS_H): Remove.  Assume it's 1.
43246         (__P): Remove; not used.
43247         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
43248         (mktime, not_equal_tm, print_tm, check_result,
43249         main): Use prototypes.  Use const * where appropriate.
43250         (main): Fix typo in testing code that uncovered by above changes.
43251         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
43252
43253 2003-06-04  Paul Eggert  <eggert@twinsun.com>
43254
43255         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
43256         locale.h, localeconv.  This merges changes from coreutils.
43257
43258         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
43259         It can be removed after the next Autoconf is released.
43260         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
43261         needed.
43262
43263 2003-06-04  Paul Eggert  <eggert@twinsun.com>
43264
43265         * lib/mktime.c: Fix Debian bug 177940
43266         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
43267         (localtime_offset): Now long int, not time_t, because we want it
43268         to be guaranteed to be signed.  All uses changed.
43269         (__mktime_internal): If overflow would occur when adding offset,
43270         don't add it.
43271
43272         Merge 'human' changes from coreutils.  Rewrite to support
43273         locale-specific notations like thousands separators.
43274         * lib/human.c: Simplify authorship notice.
43275         Include human.h immediately after config.h.
43276         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
43277         <limits.h>: Do not include, since human.h does.
43278         (SIZE_MAX, UINTMAX_MAX): New macros.
43279         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
43280         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
43281         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
43282         (power_letter): Renamed from suffixes.
43283         (generate_suffix_backwards): Remove.
43284         (adjust_value): Now takes int style (because of human.h changes)
43285         and long double value (for greater precision on some platforms).
43286         (group_number): New function.
43287         (human_readable): Use it.  Use integer options, not enum.
43288         Put the options before the sizes in the arg list.
43289         Support all the new options.
43290         The old human_readable function has been removed;
43291         use inttostr.h instead.
43292         (human_readable, default_block_size, humblock):
43293         Use uintmax_t, not int, for block sizes.
43294         (human_readable_inexact, block_size_types): Remove.
43295         (block_size_opts): New constant.
43296         (human_options): Renamed from human_block_size, with new signature
43297         that allows block sizes up to UINTMAX_MAX.  All callers changed.
43298         * lib/human.h: Add copyright and authorship notice.
43299         Include <limits.h> and <stdbool.h> unconditionally.
43300         (PARAMS): Remove.  All uses removed.
43301         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
43302         (enum human_inexact_style): Remove tag; now a nameless enum.
43303         (human_floor, human_ceiling, human_round_to_even): Now have
43304         values 2, 0, 1 rather than -1, 1, 0.
43305         (human_group_digits, human_suppress_point_zero, human_autoscale,
43306         human_base_1024, human_SI, human_B): New constants.
43307         (human_readable_inexact, human_block_size): Remove.
43308         (human_readable): Size args are now uintmax_t, not int.
43309         (human_options): New decl.
43310
43311         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
43312         unnecessary now that we assume C89 or better.  This change
43313         imported from coreutils.
43314
43315         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
43316         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
43317         in the 2003-05-30 sync from glibc.
43318
43319         .h files should stand alone, but we shouldn't include <sys/types.h>
43320         if we can get away with just <stddef.h>.
43321
43322         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
43323         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
43324         rather than <sys/types.h>, as we merely need size_t.
43325         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
43326         to get size_t.
43327         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
43328         Include <stdio.h>, to get FILE.
43329         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
43330         memcasecmp.h has included <stddef.h> and all we need is size_t.
43331         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
43332         our interface, instead of including <sys/types.h>
43333
43334 2003-06-04  Paul Eggert  <eggert@twinsun.com>
43335
43336         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
43337         now, as glibc mktime is buggy on non-glibc systems.
43338
43339 2003-06-03  Karl Berry  <karl@gnu.org>
43340
43341         * config/config.sub: update from prep.
43342
43343 2003-06-02  Paul Eggert  <eggert@twinsun.com>
43344
43345         [from coreutils]
43346         Fix some minor time-related bugs with POSIX time arguments.
43347         Some valid time stamps were being rejected (notably -1, and
43348         time stamps before 1900 on 64-bit hosts).  And some invalid
43349         time stamps were being accepted, e.g. September 31.
43350
43351         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
43352         that we can return (time_t) -1 successfully.
43353         * lib/posixtm.c: Likewise.
43354         [HAVE_STDBOOL_H]: Include <stdbool.h>.
43355         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
43356         (t): Remove static var.
43357         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
43358         of static var.  All uses changed.
43359         (year): Do not reject years before 1900; they can occur with
43360         64-bit time_t.
43361         (posix_time_parse): Do not check for out-of-range components;
43362         that is now the caller's responsibility, since our checks were
43363         only approximations.
43364         (posixtime): Use mktime to check for out-of-range components,
43365         since it knows them exactly.
43366         If mktime returns (time_t) -1, check whether an error actually occurred
43367         by invoking localtime on -1.
43368         (main) [TEST_POSIXTIME]: Check for input data errors, and report
43369         posixtime failures better.
43370         Improve the test data (in comments only).
43371
43372 2003-06-02  Karl Berry  <karl@gnu.org>
43373
43374         * config/mkinstalldirs (version): new variable.
43375         (--version): new option.
43376         (usage): improve message.
43377
43378 2003-05-30  Karl Berry  <karl@gnu.org>
43379
43380         * lib/mktime.c: update from libc.
43381
43382 2003-05-30  Bruno Haible  <bruno@clisp.org>
43383
43384         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
43385         * config/config.rpath: Upgrade to gettext-0.12.1.
43386
43387 2003-05-30  Bruno Haible  <bruno@clisp.org>
43388
43389         * m4/gettext.m4: Upgrade to gettext-0.12.1.
43390         * m4/nls.m4: New file, from gettext-0.12.1.
43391         * m4/po.m4: New file, from gettext-0.12.1.
43392         * m4/progtest.m4: Upgrade to gettext-0.12.1.
43393
43394 2003-05-30  Bruno Haible  <bruno@clisp.org>
43395
43396         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
43397         * lib/localcharset.h: Likewise.
43398         * lib/localcharset.c: Likewise.
43399
43400 2003-05-29  Karl Berry  <karl@gnu.org>
43401
43402         * config/config.rpath: update from gettext.
43403
43404 2003-05-28  Paul Eggert  <eggert@twinsun.com>
43405
43406         Assume the headers required for C89 freestanding compilers.
43407         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
43408         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
43409         * m4/human.m4 (gl_HUMAN): Likewise.
43410         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
43411         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
43412         * m4/userspec.m4 (gl_USERSPEC): Likewise.
43413         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
43414         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
43415         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
43416
43417 2003-05-28  Paul Eggert  <eggert@twinsun.com>
43418
43419         Assume the headers required for C89 freestanding compilers.
43420         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
43421         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
43422         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
43423         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
43424         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
43425         define, since <limits.h> is guaranteed to do that.
43426         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
43427         * lib/exclude.c: Include <stdbool.h> unconditionally.
43428         * lib/tempname.c: Include <stddef.h> unconditionally.
43429         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
43430         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
43431         <stddef.h> does that.
43432         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
43433         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
43434         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
43435         needed.
43436         * lib/xstrtol.c: Likewise.
43437         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
43438         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
43439
43440         * lib/addext.c (addext): Use assignment rather than cast, to avoid
43441         warnings on some platforms.
43442
43443         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
43444         arbitrarily.
43445
43446 2003-05-26  Jim Meyering  <jim@meyering.net>
43447
43448         Merge in a change from coreutils:
43449         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
43450         that is guaranteed to be `no'.  Use `no_such_member' to indicate
43451         that condition, rather than `-1' which is slightly misleading.
43452         Change the name of the cache variable to have the gl_ prefix.
43453         Prompted by a patch from Richard Dawe for DJGPP.
43454
43455 2003-05-24  Karl Berry  <karl@gnu.org>
43456
43457         * config/config.guess: update from prep.
43458
43459 2003-05-22  Karl Berry  <karl@gnu.org>
43460
43461         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
43462
43463 2003-05-20  Karl Berry  <karl@gnu.org>
43464
43465         * config/config.guess: update from prep.
43466
43467 2003-05-18  Karl Berry  <karl@gnu.org>
43468
43469         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
43470         might actually be set by the user.
43471
43472         * config/depcomp, install-sh, mdate-sh: update from automake.
43473
43474 2003-05-17  Bruno Haible  <bruno@clisp.org>
43475
43476         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
43477         invalid expansion for AC_EGREP_CPP.
43478         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
43479         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
43480         Suggested by Akim Demaille <akim@epita.fr> in
43481         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
43482
43483 2003-05-12  Jim Meyering  <jim@meyering.net>
43484
43485         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
43486         the space-padded-by-default conversion specifiers, %e, %k, %l.
43487
43488 2003-05-12  Bruno Haible  <bruno@clisp.org>
43489
43490         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
43491         the string is longer than 4 KB.
43492
43493 2003-05-11  Karl Berry  <karl@gnu.org>
43494
43495         * config/config.{guess,sub}: update from prep.
43496
43497 2003-05-09  Bruno Haible  <bruno@clisp.org>
43498
43499         * modules/error: Add m4/strerror_r.m4 to file list.
43500
43501 2003-05-03  Bruno Haible  <bruno@clisp.org>
43502
43503         Upgrade to Unicode-4.0.
43504         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
43505         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
43506         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
43507         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
43508         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
43509         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
43510         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
43511         Change width of U+E0100..U+E01EF from 1 to 0.
43512
43513 2003-04-25  Jim Meyering  <jim@meyering.net>
43514
43515         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
43516         of type size_t, not int.
43517
43518 2003-04-25  Bruno Haible  <bruno@clisp.org>
43519
43520         * lib/copy-file.c: Include <stddef.h>, for size_t.
43521
43522 2003-04-21  Paul Eggert  <eggert@twinsun.com>
43523
43524         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
43525         code which expansion is under static control.  Patch imported from
43526         Akim Demaille's patch to Bison; see
43527         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
43528
43529 2003-04-14  Bruno Haible  <bruno@clisp.org>
43530
43531         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
43532
43533 2003-04-11  Jim Meyering  <jim@meyering.net>
43534
43535         Merge changes from Coreutils.
43536
43537         2003-03-22  Jim Meyering  <jim@meyering.net>
43538
43539         * lib/strftime.c (widen): Cast alloca return value to proper type.
43540
43541         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
43542
43543         From GNU libc.
43544         * lib/strftime.c (my_strftime): Handle very large width
43545         specifications for numeric values correctly.  Improve checks for
43546         overflow.
43547
43548         2003-01-19  Jim Meyering  <jim@meyering.net>
43549
43550         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
43551         definitions.
43552         (nl_get_alt_digit) [! defined my_strftime]: Define.
43553         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
43554         _nl_get_alt_digit and _nl_get_walt_digit.
43555
43556         * lib/strftime.c (my_strftime): Merge in locale-related changes from
43557         libc. These changes have no effect outside of _LIBC.
43558
43559 2003-04-10  Bruno Haible  <bruno@clisp.org>
43560
43561         * modules/findprog: New file.
43562         * MODULES.html.sh (func_all_modules): Add it.
43563
43564 2003-04-10  Bruno Haible  <bruno@clisp.org>
43565
43566         * m4/findprog.m4: New file.
43567         * m4/eaccess.m4: New file.
43568
43569 2003-04-10  Bruno Haible  <bruno@clisp.org>
43570
43571         * lib/findprog.h: New file, from GNU gettext.
43572         * lib/findprog.c: New file, from GNU gettext.
43573
43574 2003-04-05  Jim Meyering  <jim@meyering.net>
43575
43576         Merge changes from Coreutils.
43577
43578         * lib/exclude.h (PARAMS): Remove definition and uses.
43579         * lib/exclude.c: Remove uses of `PARAMS'.
43580
43581         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
43582         Add test-cases for DOS filenames. Declare program_name.
43583         (main): Set up program_name.  Patch by Rich Dawe.
43584
43585         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
43586         error from mntctl.
43587         Use mntctl's return value to drive the entry-processing loop, since
43588         we can't rely on the value of the vmt_length member in the last
43589         entry.  On some systems doing so could result in exhausting
43590         virtual memory.  Based in part on a patch from Mike Jetzer.
43591
43592 2003-04-04  Bruno Haible  <bruno@clisp.org>
43593
43594         * modules/linebreak: New file.
43595         * MODULES.html.sh (func_all_modules): Add it.
43596
43597 2003-04-04  Bruno Haible  <bruno@clisp.org>
43598
43599         * m4/linebreak.m4: New file.
43600
43601 2003-04-04  Bruno Haible  <bruno@clisp.org>
43602
43603         * lib/linebreak.h: New file, from GNU gettext.
43604         * lib/linebreak.c: New file, from GNU gettext with slight
43605         modifications.
43606         * lib/lbrkprop.h: New file, from GNU gettext.
43607
43608 2003-04-03  Bruno Haible  <bruno@clisp.org>
43609
43610         * modules/utf8-ucs4: New file.
43611         * modules/utf16-ucs4: New file.
43612         * modules/ucs4-utf8: New file.
43613         * modules/ucs4-utf16: New file.
43614         * MODULES.html.sh (func_all_modules): Add them.
43615
43616 2003-04-03  Bruno Haible  <bruno@clisp.org>
43617
43618         * m4/utf-ucs4.m4: New file.
43619         * m4/ucs4-utf.m4: New file.
43620
43621 2003-04-03  Bruno Haible  <bruno@clisp.org>
43622
43623         * lib/utf8-ucs4.h: New file, from GNU gettext.
43624         * lib/utf16-ucs4.h: New file, from GNU gettext.
43625         * lib/ucs4-utf8.h: New file, from GNU gettext.
43626         * lib/ucs4-utf16.h: New file, from GNU gettext.
43627
43628 2003-04-02  Bruno Haible  <bruno@clisp.org>
43629
43630         * modules/binary-io: New file.
43631         * MODULES.html.sh (func_all_modules): Add it.
43632
43633 2003-04-02  Bruno Haible  <bruno@clisp.org>
43634
43635         * lib/binary-io.h: New file, from GNU gettext.
43636
43637 2003-04-01  Bruno Haible  <bruno@clisp.org>
43638
43639         * modules/pathname: New file.
43640         * MODULES.html.sh (func_all_modules): Add it.
43641
43642 2003-04-01  Bruno Haible  <bruno@clisp.org>
43643
43644         * lib/pathname.h: New file, from GNU gettext.
43645         * lib/concatpath.c: New file, from GNU gettext.
43646
43647 2003-03-30  Bruno Haible  <bruno@clisp.org>
43648
43649         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
43650
43651 2003-03-30  Bruno Haible  <bruno@clisp.org>
43652
43653         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
43654         function chown() doesn't exist.
43655
43656 2003-03-28  Bruno Haible  <bruno@clisp.org>
43657
43658         * modules/copy-file: New file.
43659         * MODULES.html.sh (func_all_modules): Add it.
43660
43661 2003-03-28  Bruno Haible  <bruno@clisp.org>
43662
43663         * m4/copy-file.m4: New file.
43664
43665 2003-03-28  Bruno Haible  <bruno@clisp.org>
43666
43667         * lib/copy-file.h: New file, from GNU gettext.
43668         * lib/copy-file.c: New file, from GNU gettext.
43669
43670 2003-03-18  Jim Meyering  <jim@meyering.net>
43671
43672         * lib/quote.c (quote_n): Fix typo in comment.
43673
43674 2003-03-18  Bruno Haible  <bruno@clisp.org>
43675
43676         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
43677         checking.
43678         * m4/onceonly_2_57.m4: Likewise.
43679
43680 2003-03-17  Bruno Haible  <bruno@clisp.org>
43681
43682         * m4/onceonly.m4: Require autoconf 2.54 or newer.
43683         (m4_quote): Remove macro.
43684         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
43685
43686 2003-03-14  Jim Meyering  <jim@meyering.net>
43687
43688         Merge changes from Coreutils.
43689         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
43690         to be const, in order to avoid warnings.
43691         (obstack_room): Likewise.
43692         (obstack_empty_p): Likewise.
43693
43694 2003-03-14  Bruno Haible  <bruno@clisp.org>
43695
43696         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
43697         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
43698
43699 2003-03-13  Paul Eggert  <eggert@twinsun.com>
43700
43701         Merge changes from Bison.
43702         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
43703         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
43704         when compiling Bison 1.875's `bitset bset = obstack_alloc
43705         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
43706         * lib/hash.c: Include <stdbool.h> unconditionally.
43707
43708 2003-03-13  Paul Eggert  <eggert@twinsun.com>
43709
43710         * m4/onceonly.m4 (m4_quote): New macro.
43711         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
43712         Quote AC_FOREACH variable-expansions properly.
43713
43714 2003-03-13  Paul Eggert  <eggert@twinsun.com>
43715
43716         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
43717
43718 2003-03-09  Paul Eggert  <eggert@twinsun.com>
43719
43720         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
43721         Reported by Bruce Becker; see:
43722         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
43723
43724 2003-03-03  Paul Eggert  <eggert@twinsun.com>
43725             Bruno Haible  <bruno@clisp.org>
43726
43727         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
43728         Reported by John Hughes, see
43729         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
43730
43731 2003-02-20  Bruno Haible  <bruno@clisp.org>
43732
43733         * MODULES.html.sh (func_all_modules): Add poll.
43734
43735 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
43736
43737         * modules/poll: New file.
43738
43739 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
43740
43741         * lib/poll_.h: New file.
43742         * lib/poll.c: New file.
43743
43744 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
43745
43746         * m4/poll.m4: New file.
43747
43748 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
43749
43750         * modules/mathl: New file.
43751
43752 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
43753
43754         * lib/mathl.h: New file.
43755         * lib/acosl.c: New file.
43756         * lib/asinl.c: New file.
43757         * lib/atanl.c: New file.
43758         * lib/ceill.c: New file.
43759         * lib/cosl.c: New file.
43760         * lib/expl.c: New file.
43761         * lib/floorl.c: New file.
43762         * lib/frexpl.c: New file.
43763         * lib/ldexpl.c: New file.
43764         * lib/logl.c: New file.
43765         * lib/sincosl.c: New file.
43766         * lib/sinl.c: New file.
43767         * lib/sqrtl.c: New file.
43768         * lib/tanl.c: New file.
43769         * lib/trigl.c: New file.
43770         * lib/trigl.h: New file.
43771
43772 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
43773
43774         * m4/mathl.m4: New file.
43775
43776 2003-02-18  Bruno Haible  <bruno@clisp.org>
43777
43778         * MODULES.html.sh (func_all_modules): Add mathl.
43779
43780 2003-02-17  Bruno Haible  <bruno@clisp.org>
43781
43782         * modules/mkdtemp: New module.
43783         * MODULES.html.sh (func_all_modules): Add it.
43784
43785 2003-02-17  Bruno Haible  <bruno@clisp.org>
43786
43787         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
43788
43789 2003-02-17  Bruno Haible  <bruno@clisp.org>
43790
43791         * lib/mkdtemp.h: New file, from GNU gettext.
43792         * lib/mkdtemp.c: New file, from GNU gettext.
43793
43794 2003-02-02  Jim Meyering  <jim@meyering.net>
43795
43796         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
43797         e.g. glibc-2.2.93.
43798
43799 2003-01-31  Bruno Haible  <bruno@clisp.org>
43800
43801         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
43802         'rpl_rename'.
43803         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
43804         'rpl_strnlen'.
43805         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
43806         'rpl_strtod'.
43807         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
43808         'rpl_utime'.
43809
43810 2003-01-31  Bruno Haible  <bruno@clisp.org>
43811
43812         * lib/rename.c: #undef rename before defining rpl_rename.
43813         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
43814
43815 2003-01-30  Bruno Haible  <bruno@clisp.org>
43816
43817         * modules/vasnprintf, modules/vasprintf: New modules.
43818         * MODULES.html.sh (func_all_modules): Add them.
43819
43820 2003-01-30  Bruno Haible  <bruno@clisp.org>
43821
43822         * m4/signed.m4: New file, from GNU gettext.
43823         * m4/longdouble.m4: New file, from GNU gettext.
43824         * m4/wchar_t.m4: New file, from GNU gettext.
43825         * m4/wint_t.m4: New file, from GNU gettext.
43826         * m4/vasnprintf.m4: New file.
43827         * m4/vasprintf.m4: New file.
43828
43829 2003-01-30  Bruno Haible  <bruno@clisp.org>
43830
43831         * lib/printf-args.h: New file, from GNU gettext.
43832         * lib/printf-args.c: New file, from GNU gettext.
43833         * lib/printf-parse.h: New file, from GNU gettext.
43834         * lib/printf-parse.c: New file, from GNU gettext.
43835         * lib/vasnprintf.h: New file, from GNU gettext.
43836         * lib/vasnprintf.c: New file, from GNU gettext.
43837         * lib/asnprintf.c: New file, from GNU gettext.
43838         * lib/vasprintf.h: New file, from GNU gettext with modifications.
43839         * lib/vasprintf.c: New file, from GNU gettext.
43840         * lib/asprintf.c: New file, from GNU gettext.
43841
43842 2003-01-29  Bruno Haible  <bruno@clisp.org>
43843
43844         * modules/stpncpy: New module.
43845         * MODULES.html.sh (func_all_modules): Add it.
43846
43847 2003-01-29  Bruno Haible  <bruno@clisp.org>
43848
43849         * m4/stpncpy.m4: New file.
43850
43851 2003-01-29  Bruno Haible  <bruno@clisp.org>
43852
43853         * lib/stpncpy.h: New file, from GNU gettext with modifications.
43854         * lib/stpncpy.c: New file, from GNU gettext with modifications.
43855
43856 2003-01-28  Bruno Haible  <bruno@clisp.org>
43857
43858         * modules/c-ctype: New module.
43859         * MODULES.html.sh (func_all_modules): Add it.
43860
43861 2003-01-28  Bruno Haible  <bruno@clisp.org>
43862
43863         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
43864         Paul Eggert.
43865         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
43866         Paul Eggert.
43867
43868 2003-01-27  Bruno Haible  <bruno@clisp.org>
43869
43870         * modules/xsetenv: New module.
43871         * MODULES.html.sh (func_all_modules): Add it.
43872
43873 2003-01-27  Bruno Haible  <bruno@clisp.org>
43874
43875         * lib/xsetenv.h: New file, from GNU gettext.
43876         * lib/xsetenv.c: New file, from GNU gettext.
43877
43878 2003-01-23  Jim Meyering  <jim@meyering.net>
43879
43880         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
43881         from working on systems without dirfd (at least Irix and OSF1/Tru64).
43882
43883 2003-01-23  Bruno Haible  <bruno@clisp.org>
43884
43885         * modules/minmax: New module.
43886         * MODULES.html.sh (func_all_modules): Add it.
43887
43888 2003-01-23  Bruno Haible  <bruno@clisp.org>
43889
43890         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
43891         Eggert.
43892
43893 2003-01-22  Bruno Haible  <bruno@clisp.org>
43894
43895         * modules/exit: New module.
43896         * MODULES.html.sh (func_all_modules): Add it.
43897
43898 2003-01-22  Bruno Haible  <bruno@clisp.org>
43899
43900         * lib/exit.h: New file, from GNU gettext.
43901
43902 2003-01-19  Bruno Haible  <bruno@clisp.org>
43903
43904         * gnulib-tool: Recognize option --extract-maintainer.
43905         (func_get_maintainer): New function.
43906         * modules/*: Add Maintainer entry.
43907
43908 2003-01-16  Jim Meyering  <jim@meyering.net>
43909
43910         * m4/regex.m4: The `regex' struct is both input and output.
43911         Initialize it before each use.  Patch by Tim Waugh.
43912
43913 2003-01-16  Bruno Haible  <bruno@clisp.org>
43914
43915         * MODULES.html.sh: Add a table of contents. Add the module name as
43916         leftmost column. Add hyperlinks.
43917
43918 2003-01-15  Bruno Haible  <bruno@clisp.org>
43919
43920         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
43921
43922 2003-01-15  Bruno Haible  <bruno@clisp.org>
43923
43924         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
43925         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
43926         suffix.
43927
43928 2003-01-15  Bruno Haible  <bruno@clisp.org>
43929
43930         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
43931
43932 2003-01-15  Bruno Haible  <bruno@clisp.org>
43933
43934         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
43935         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
43936
43937 2003-01-14  Jim Meyering  <jim@meyering.net>
43938
43939         * lib/same.c (same_name): Tweak a comment.
43940
43941 2003-01-14  Bruno Haible  <bruno@clisp.org>
43942
43943         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
43944         when a string comparison is sufficient.
43945
43946 2003-01-14  Bruno Haible  <bruno@clisp.org>
43947
43948         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
43949         'unsigned int'.
43950
43951 2003-01-14  Bruno Haible  <bruno@clisp.org>
43952
43953         * lib/hash-pjw.c: Add comment about low quality of this function.
43954
43955 2003-01-13  Bruno Haible  <bruno@clisp.org>
43956
43957         * modules/stpcpy: Distribute lib/stpcpy.h.
43958         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
43959
43960 2003-01-13  Bruno Haible  <bruno@clisp.org>
43961
43962         * modules/*: Add a description.
43963         * modules/strpbrk: Fix Makefile.am snippet.
43964         * modules/strtoimax: Fix dependencies.
43965         * modules/strtoumax: Likewise.
43966
43967 2003-01-13  Bruno Haible  <bruno@clisp.org>
43968
43969         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
43970         * modules/alloca (Makefile.am): All object files depend on alloca.h.
43971         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
43972
43973 2003-01-13  Bruno Haible  <bruno@clisp.org>
43974
43975         * gnulib-tool (func_create_testdir): Store config/* files in the main
43976         directory.
43977         * config.rpath: Move to ...
43978         * config/config.rpath: ... here.
43979         * modules/gettext: Contains config/config.rpath, not config.rpath.
43980         * modules/iconv: Likewise.
43981
43982 2003-01-12  Paul Eggert  <eggert@twinsun.com>
43983
43984         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
43985         to avoid collisions with libcurses and libreadline.
43986
43987         * m4/getstr.m4: Remove.
43988         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
43989
43990 2003-01-12  Paul Eggert  <eggert@twinsun.com>
43991
43992         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
43993         to avoid collisions with libcurses and libreadline.
43994
43995         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
43996         * lib/getstr.h, getstr.c: Remove.
43997         * lib/getline.c: Include "getline.h", to check interface.
43998         Move body of old getstr.c here: this defines MIN_CHUNK and
43999         declares getdelim2, which is renamed from getstr.
44000         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
44001
44002         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
44003         All uses changed.
44004         * lib/linebuffer.h: Likewise.
44005         (readline): Remove backward-compatibility macro.
44006
44007 2003-01-12  Paul Eggert  <eggert@twinsun.com>
44008
44009         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
44010         to avoid collisions with libcurses and libreadline.
44011         * getstr: Remove.
44012         * MODULES.html.sh: Remove getstr.
44013         * modules/getline: Depend on unlocked-io, not getstr.
44014
44015 2003-01-12  Jim Meyering  <jim@meyering.net>
44016
44017         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
44018
44019 2003-01-10  Bruno Haible  <bruno@clisp.org>
44020
44021         * modules/alloca: Change Makefile.am requirements. Simplify Include
44022         requirements. Add lib/alloca_.h to file list.
44023
44024 2003-01-10  Bruno Haible  <bruno@clisp.org>
44025
44026         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
44027
44028 2003-01-10  Bruno Haible  <bruno@clisp.org>
44029
44030         * lib/alloca_.h: New file.
44031         * lib/getdate.y: Unconditionally include alloca.h.
44032         * lib/makepath.c: Likewise.
44033         * lib/setenv.c: Likewise.
44034         * lib/userspec.c: Likewise.
44035
44036 2003-01-09  Karl Berry  <karl@gnu.org>
44037
44038         * MODULES.html.sh: include `dirname $0` in PATH, to find
44039         gnulib-tool.
44040
44041 2003-01-09  Bruno Haible  <bruno@clisp.org>
44042
44043         * modules/stdbool: Change configure.ac, Makefile.am requirements.
44044         Simplify Include requirements. Add lib/stdbool.h.in to file list.
44045
44046 2003-01-09  Bruno Haible  <bruno@clisp.org>
44047
44048         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
44049
44050 2003-01-09  Bruno Haible  <bruno@clisp.org>
44051
44052         * lib/stdbool.h.in: New file.
44053
44054 2003-01-09  Bruno Haible  <bruno@clisp.org>
44055
44056         * gnulib-tool (func_all_modules): Ignore files ending in ~.
44057         * MODULES.html.sh: Likewise.
44058
44059 2003-01-08  Jim Meyering  <jim@meyering.net>
44060
44061         * lib/full-write.c: Undefine and define-away `const' after inclusion
44062         of errno.h, not before.  Suggestion from Bruno Haible.
44063
44064 2003-01-08  Bruno Haible  <bruno@clisp.org>
44065
44066         * modules/full-read: Depend on full-write.
44067
44068 2003-01-08  Bruno Haible  <bruno@clisp.org>
44069
44070         * lib/safe-read.c: Include specification header first, to ensure its
44071         selfcontainedness.
44072         * lib/full-write.c: Likewise.
44073
44074 2003-01-07  Jim Meyering  <jim@meyering.net>
44075
44076         * lib/full-write.c: Rework so that it may serve to define full_read,
44077         too.
44078         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
44079
44080 2003-01-07  Bruno Haible  <bruno@clisp.org>
44081
44082         * lib/strtoimax.c: Include <stdint.h> as an alternative to
44083         <inttypes.h>.
44084         * lib/xstrtol.h: Likewise.
44085         * lib/xstrtoimax.c: Likewise.
44086         * lib/xstrtoumax.c: Likewise.
44087         * lib/human.h: Likewise.
44088
44089         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
44090         on systems that have <inttypes.h> but not <stdint.h>.
44091
44092 2003-01-07  Bruno Haible  <bruno@clisp.org>
44093
44094         * MODULES.html.sh: Add copyright notice.
44095         (missed_files): Omit CVS directory entries.
44096         (func_module): Make it work with sed-3.02.
44097         * MODULES.txt: Remove file.
44098
44099 2003-01-06  Jim Meyering  <jim@meyering.net>
44100
44101         * lib/version-etc.c: Update year in translatable copyright string.
44102
44103 2003-01-03  Karl Berry  <karl@gnu.org>
44104
44105         * config/config.{guess,sub}: update from prep.
44106
44107 2003-01-02  Karl Berry  <karl@gnu.org>
44108
44109         * doc/COPYING.DOC: belatedly updated to 1.2.
44110
44111 2003-01-01  Karl Berry  <karl@gnu.org>
44112
44113         * gnulib-tool (func_verify_module): report module name $module in
44114         error message, not $1.
44115         * gnulib-tool (create-testdir): don't complain if destdir couldn't
44116         be created, only if it doesn't exist.
44117         * gnulib-tool (last_checkin_date): don't expand the $Date here.
44118
44119 2002-12-31  Paul Eggert  <eggert@twinsun.com>
44120
44121         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
44122
44123 2002-12-31  Paul Eggert  <eggert@twinsun.com>
44124
44125         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
44126         memcmp if strcoll doesn't work.
44127
44128 2002-12-31  Bruno Haible  <bruno@clisp.org>
44129
44130         * lib/utime.c (utime_null): No need to call ftruncate if the file was
44131         nonempty.
44132
44133 2002-12-31  Bruno Haible  <bruno@clisp.org>
44134
44135         * lib/memcoll.c (STRCOLL): New macro.
44136         (memcoll): Use it.
44137
44138 2002-12-31  Bruno Haible  <bruno@clisp.org>
44139
44140         * lib/localcharset.h: New file.
44141         * lib/localcharset.c: Include it.
44142         * lib/unicodeio.c: Likewise.
44143
44144 2002-12-31  Bruno Haible  <bruno@clisp.org>
44145
44146         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
44147         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
44148
44149 2002-12-31  Bruno Haible  <bruno@clisp.org>
44150
44151         * lib/getline.h: Include <stddef.h>, for size_t.
44152
44153         * lib/unicodeio.h: Include <stddef.h>, for size_t.
44154         * lib/unicodeio.c: Don't include <stddef.h>.
44155
44156 2002-12-31  Bruno Haible  <bruno@clisp.org>
44157
44158         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
44159         HAVE_TM_ZONE.
44160
44161 2002-12-24  Karl Berry  <karl@gnu.org>
44162
44163         * config/config.guess: update from prep.
44164
44165 2002-12-24  Bruno Haible  <bruno@clisp.org>
44166
44167         General infrasructure.
44168         * m4/README: Rewritten.
44169         * m4/onceonly.m4: New file.
44170         * m4/onceonly_2_57.m4: New file.
44171
44172         Module atexit.
44173         * m4/atexit.m4: New file.
44174
44175         Module strtod.
44176         * m4/strtod.m4: New file.
44177
44178         Module strtol.
44179         * m4/strtol.m4: New file.
44180
44181         Module strtoul.
44182         * m4/strtoul.m4: New file.
44183
44184         Module memchr.
44185         * m4/memchr.m4: New file.
44186
44187         Module memcmp.
44188         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
44189         (jm_FUNC_MEMCMP): Invoke it.
44190
44191         Module memcpy.
44192         * m4/memcpy.m4: New file.
44193
44194         Module memmove.
44195         * m4/memmove.m4: New file.
44196
44197         Module memset.
44198         * m4/memset.m4: New file.
44199
44200         Module strcspn.
44201         * m4/strcspn.m4: New file.
44202
44203         Module strpbrk.
44204         * m4/strpbrk.m4: New file.
44205
44206         Module strstr.
44207         * m4/strstr.m4: New file.
44208
44209         Module strerror.
44210         * m4/strerror.m4: New file.
44211
44212         Module mktime.
44213         * m4/mktime.m4: Renamed from jm-mktime.m4.
44214         (gl_PREREQ_MKTIME): New macro.
44215         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
44216
44217         Module malloc.
44218         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
44219         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
44220         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
44221
44222         Module realloc.
44223         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
44224         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
44225         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
44226
44227         Module strftime.
44228         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
44229         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
44230         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
44231         gl_TM_GMTOFF.
44232         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
44233
44234         Module xalloc.
44235         * m4/xalloc.m4: New file.
44236
44237         Module alloca.
44238         * m4/alloca.m4: New file.
44239
44240         Module putenv.
44241         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
44242         (jm_FUNC_PUTENV): Invoke it.
44243
44244         Module setenv.
44245         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
44246         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
44247         when invoked twice.
44248         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
44249         gt_FUNC_SETENV.
44250
44251         Module memrchr.
44252         * m4/memrchr.m4: New file.
44253
44254         Module stpcpy.
44255         * m4/stpcpy.m4: New file.
44256
44257         Module strcase.
44258         * m4/strcase.m4: New file.
44259
44260         Module strdup.
44261         * m4/strdup.m4: New file.
44262
44263         Module strnlen.
44264         * m4/strnlen.m4: New file.
44265
44266         Module strndup.
44267         * m4/strndup.m4: New file.
44268
44269         Module xstrtod.
44270         * m4/xstrtod.m4: New file.
44271
44272         Module xstrtol.
44273         * m4/xstrtol.m4: New file.
44274
44275         Module getdate.
44276         * m4/getdate.m4: New file.
44277
44278         Module unlocked-io.
44279         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
44280         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
44281         * m4/jm-glibc-io.m4n: Remove file.
44282
44283         Module long-options.
44284         * m4/long-options.m4: New file.
44285
44286         Module md5.
44287         * m4/md5.m4: New file.
44288
44289         Module sha.
44290         * m4/sha.m4: New file.
44291
44292         Module getstr.
44293         * m4/getstr.m4: New file.
44294
44295         Module getline.
44296         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
44297         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
44298         <sys/types.h>, for size_t. Use the function name gnu_getline, not
44299         simply getline. Infoke gl_PREREQ_GETLINE.
44300
44301         Module obstack.
44302         * m4/obstack.m4: New file.
44303
44304         Module hash.
44305         * m4/hash.m4: New file.
44306
44307         Module readtokens.
44308         * m4/readtokens.m4: New file.
44309
44310         Module strverscmp.
44311         * m4/strverscmp.m4: New file.
44312
44313         Module stdbool.
44314         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
44315         OSF/1.
44316
44317         Module strtoll.
44318         * m4/strtoll.m4: New file.
44319
44320         Module strtoull.
44321         * m4/strtoull.m4: New file.
44322
44323         Module strtoimax.
44324         * m4/strtoimax.m4: New file.
44325
44326         Module strtoumax.
44327         * m4/strtoumax.m4: New file.
44328
44329         Module xstrtoimax.
44330         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
44331         jm_AC_PREREQ_XSTRTOIMAX.
44332         Moved the strtol prerequisites to strtol.m4.
44333         Moved the strtoll prerequisites to strtoll.m4.
44334         Moved the strtoimax prerequisites to strtoimax.m4.
44335
44336         Module xstrtoumax.
44337         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
44338         jm_AC_PREREQ_XSTRTOUMAX.
44339         Moved the strtoul prerequisites to strtoul.m4.
44340         Moved the strtoull prerequisites to strtoull.m4.
44341         Moved the strtoumax prerequisites to strtoumax.m4.
44342
44343         Module chown.
44344         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
44345         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
44346
44347         Module dup2.
44348         * m4/dup2.m4: New file.
44349
44350         Module ftruncate.
44351         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
44352         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
44353
44354         Module getgroups.
44355         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
44356         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
44357
44358         Module gettimeofday.
44359         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
44360         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
44361         gl_PREREQ_GETTIMEOFDAY.
44362
44363         Module mkdir.
44364         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
44365         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
44366
44367         Module mkstemp.
44368         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
44369         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
44370         jm_AC_TYPE_UINTMAX_T.
44371         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
44372
44373         Module stat.
44374         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
44375         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
44376
44377         Module lstat.
44378         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
44379         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
44380
44381         Module timespec.
44382         * m4/timespec.m4 (gl_TIMESPEC): New macro.
44383         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
44384         * m4/st_mtim.m4: Indentation.
44385
44386         Module nanosleep.
44387         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
44388         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
44389         gl_PREREQ_NANOSLEEP.
44390
44391         Module regex.
44392         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
44393         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
44394         (gl_REGEX): New macro.
44395
44396         Module rename.
44397         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
44398         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
44399
44400         Module rmdir.
44401         * m4/rmdir.m4: New file.
44402
44403         Module utime.
44404         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
44405         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
44406         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
44407
44408         Module dirname.
44409         * m4/dirname.m4: New file.
44410
44411         Module getopt.
44412         * m4/getopt.m4: New file.
44413
44414         Module unistd-safer.
44415         * m4/unistd-safer.m4: New file.
44416
44417         Module fnmatch.
44418         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
44419         declaration.
44420         (gl_PREREQ_FNMATCH_EXTRA): New macro.
44421         (gl_FUNC_FNMATCH_POSIX): New macro.
44422         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
44423         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
44424         simply fnmatch.
44425
44426         Module exclude.
44427         * m4/exclude.m4: New file.
44428
44429         Module human.
44430         * m4/human.m4: New file.
44431
44432         Module acl.
44433         * m4/acl.m4: Nop.
44434
44435         Module backupfile.
44436         * m4/backupfile.m4: New file.
44437         * m4/d-ino.m4: Indentation.
44438
44439         Module fsusage.
44440         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
44441         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
44442         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
44443
44444         Module dirfd.
44445         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
44446         requirements.
44447
44448         Module euidaccess.
44449         * m4/euidaccess.m4: New file.
44450
44451         Module file-type.
44452         * m4/file-type.m4: New file.
44453
44454         Module fileblocks.
44455         * m4/fileblocks.m4: New file.
44456
44457         Module filemode.
44458         * m4/filemode.m4: New file.
44459
44460         Module isdir.
44461         * m4/isdir.m4: New file.
44462
44463         Module lchown.
44464         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
44465         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
44466
44467         Module makepath.
44468         * m4/makepath.m4: New file.
44469
44470         Module modechange.
44471         * m4/modechange.m4: New file.
44472
44473         Module mountlist.
44474         * m4/mountlist.m4: New file.
44475         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
44476         Indentation.
44477
44478         Module path-concat.
44479         * m4/path-concat.m4: New file.
44480
44481         Module pathmax.
44482         * m4/pathmax.m4: New file.
44483
44484         Module same.
44485         * m4/same.m4: New file.
44486
44487         Module save-cwd.
44488         * m4/save-cwd.m4: New file.
44489
44490         Module savedir.
44491         * m4/savedir.m4: New file.
44492
44493         Module xgetcwd.
44494         * m4/xgetcwd.m4: New file.
44495         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
44496
44497         Module xreadlink.
44498         * m4/xreadlink.m4: New file.
44499
44500         Module safe-read.
44501         * m4/safe-read.m4: New file.
44502
44503         Module safe-write.
44504         * m4/safe-write.m4: New file.
44505
44506         Module closeout.
44507         * m4/closeout.m4: New file.
44508
44509         Module stdio-safer.
44510         * m4/stdio-safer.m4: New file.
44511
44512         Module getpass.
44513         * m4/getpass.m4: New file.
44514
44515         Module getugroups.
44516         * m4/getugroups.m4: New file.
44517
44518         Module group-member.
44519         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
44520         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
44521
44522         Module idcache.
44523         * m4/idcache.m4: New file.
44524
44525         Module userspec.
44526         * m4/userspec.m4: New file.
44527
44528         Module gettime.
44529         * m4/clock_time.m4: New file.
44530         * m4/gettime.m4: New file.
44531
44532         Module settime.
44533         * m4/settime.m4: New file.
44534
44535         Module posixtm.
44536         * m4/posixtm.m4: New file.
44537
44538         Module gethostname.
44539         * m4/gethostname.m4: New file.
44540
44541         Module canon-host.
44542         * m4/canon-host.m4: New file.
44543
44544         Module gettext.
44545         * m4/codeset.m4: New file, from gettext-0.11.5.
44546         * m4/gettext.m4: New file, from gettext-0.11.5.
44547         * m4/glibc21.m4: New file, from gettext-0.11.5.
44548         * m4/iconv.m4: New file, from gettext-0.11.5.
44549         * m4/intdiv0.m4: New file, from gettext-0.11.5.
44550         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
44551         * m4/inttypes.m4: New file, from gettext-0.11.5.
44552         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
44553         * m4/isc-posix.m4: New file, from gettext-0.11.5.
44554         * m4/lcmessage.m4: New file, from gettext-0.11.5.
44555         * m4/lib-ld.m4: New file, from gettext-0.11.5.
44556         * m4/lib-link.m4: New file, from gettext-0.11.5.
44557         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
44558         * m4/progtest.m4: New file, from gettext-0.11.5.
44559         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
44560         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
44561         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
44562
44563         Module localcharset.
44564         * m4/localcharset.m4: New file.
44565
44566         Module hard-locale.
44567         * m4/hard-locale.m4: New file.
44568
44569         Module mbswidth.
44570         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
44571         onceonly macros.
44572         * m4/mbrtowc.m4: Add comment.
44573
44574         Module memcasecmp.
44575         * m4/memcasecmp.m4: New file.
44576
44577         Module memcoll.
44578         * m4/memcoll.m4: New file.
44579
44580         Module unicodeio.
44581         * m4/unicodeio.m4: New file.
44582
44583         Module rpmatch.
44584         * m4/rpmatch.m4: New file.
44585
44586         Module yesno.
44587         * m4/yesno.m4: New file.
44588
44589         Module exitfail.
44590         * m4/exitfail.m4: New file.
44591
44592         Module c-stack.
44593         * m4/c-stack.m4 (gl_C_STACK): New macro.
44594         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
44595
44596         Module error.
44597         * m4/error.m4 (gl_ERROR): New macro.
44598         (jm_PREREQ_ERROR): Use onceonly macros.
44599
44600         Module fatal.
44601         * m4/fatal.m4: New file.
44602
44603         Module getloadavg.
44604         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
44605         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
44606
44607         Module getpagesize.
44608         * m4/getpagesize.m4: New file.
44609
44610         Module getusershell.
44611         * m4/getusershell.m4: New file.
44612
44613         Module physmem.
44614         * m4/physmem.m4: New file.
44615
44616         Module posixver.
44617         * m4/posixver.m4: New file.
44618
44619         Module quotearg.
44620         * m4/quotearg.m4: New file.
44621
44622         Module quote.
44623         * m4/quote.m4: New file.
44624
44625         Module readutmp.
44626         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
44627
44628         Module sig2str.
44629         * m4/sig2str.m4: New file.
44630
44631         Other.
44632         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
44633         ulonglong.m4.
44634         * m4/intmax_t.m4: New file.
44635         * m4/d-type.m4: Indentation.
44636         * m4/jm-macros.m4: Update.
44637         * m4/prereq.m4 (jm_PREREQ): Update.
44638         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
44639         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
44640         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
44641         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
44642         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
44643         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
44644         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
44645         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
44646         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
44647         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
44648         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
44649         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
44650         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
44651         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
44652         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
44653         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
44654         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
44655         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
44656         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
44657
44658 2002-12-24  Bruno Haible  <bruno@clisp.org>
44659
44660         * MODULES.txt: Update according to m4/ changes.
44661
44662         Module gettext.
44663         * config.rpath: New file, from gettext-0.11.5.
44664
44665         * modules/*: New module descriptions.
44666         * gnulib-tool: New file.
44667         * MODULES.html.sh: New file.
44668
44669 2002-12-21  Karl Berry  <karl@gnu.org>
44670
44671         * doc/fdl.texi: update to version 1.2.
44672
44673 2002-12-19  Karl Berry  <karl@gnu.org>
44674
44675         * config/config.guess: update from prep.
44676
44677 2002-12-18  Bruno Haible  <bruno@clisp.org>
44678
44679         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
44680         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
44681
44682 2002-12-17  Bruno Haible  <bruno@clisp.org>
44683
44684         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
44685         stdlib.h, string.h.
44686
44687 2002-12-17  Bruno Haible  <bruno@clisp.org>
44688
44689         * lib/canon-host.c (strdup): Remove unused declaration.
44690
44691         * lib/fsusage.c: Include full_read.h.
44692         (get_fs_usage): Use full_read instead of safe_read.
44693
44694         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
44695
44696 2002-12-12  Karl Berry  <karl@gnu.org>
44697
44698         * config/config.guess: update from prep.
44699
44700 2002-12-11  Bruno Haible  <bruno@clisp.org>
44701
44702         * m4/setenv.m4: New file, from gettext-0.11.5.
44703
44704 2002-12-11  Bruno Haible  <bruno@clisp.org>
44705
44706         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
44707         not unsetenv().
44708         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
44709         modifications:
44710
44711         2002-12-11  Bruno Haible  <bruno@clisp.org>
44712
44713                 * setenv.c (alloca): Fall back to malloc.
44714                 (freea): New macro.
44715                 (setenv): Use freea() to free memory allocated with alloca().
44716
44717         2002-11-13  Bruno Haible  <bruno@clisp.org>
44718
44719                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
44720                 function declarations.
44721                 * unsetenv.c (unsetenv): Likewise.
44722
44723         2002-03-04  Bruno Haible  <bruno@clisp.org>
44724
44725                 Portability to AIX 4.3.3.
44726                 * unsetenv.c: New file, extracted from setenv.c.
44727                 * setenv.c: Move the unsetenv() function to unsetenv.c.
44728
44729         2001-12-20  Bruno Haible  <bruno@clisp.org>
44730
44731                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
44732                 use malloc instead. For SunOS 4.
44733
44734         2001-12-11  Bruno Haible  <bruno@clisp.org>
44735
44736                 * setenv.c: Declare alloca.
44737                 (compar_fn_t): New typedef.
44738                 (KNOWN_VALUE, STORE_VALUE): Use it.
44739
44740         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
44741         setenv.h.
44742
44743 2002-12-10  Paul Eggert  <eggert@twinsun.com>
44744
44745         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
44746         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
44747         Choose values that are less likely to collide with system fnmatch
44748         options.
44749         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
44750         defined (e.g., a pure POSIX system).
44751         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
44752         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
44753
44754 2002-12-06  Paul Eggert  <eggert@twinsun.com>
44755
44756         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
44757         a pain in practice to deal with generated m4 files.  This change
44758         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
44759
44760         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
44761         and jm-glibc-io.m4, as they are no longer a special case.
44762         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
44763         kludge and the auto-generation stuff.  Check only whether the
44764         functions are declared, not whether they exist, since older hosts
44765         that don't declare the functions can't use the optimization anyway.
44766
44767 2002-12-06  Jim Meyering  <jim@meyering.net>
44768
44769         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
44770
44771         Merge in changes from libc's misc/error.c, in preparation
44772         for the merge of gnulib's changes back into libc.
44773
44774         * lib/error.c (_): Define only if not already defined.
44775         Move definition to follow all #include directives.
44776         Include unlocked-io.h only if !_LIBC.
44777         [_LIBC]: Include <libio/libioP.h>.
44778         [USE_IN_LIBIO]: Include <libio/iolibio.h>
44779         (fflush): Tweak definition to use INTUSE.
44780         (putc): Define.
44781
44782 2002-12-05  Paul Eggert  <eggert@twinsun.com>
44783
44784         * lib/alloca.c [defined emacs]: Include "lisp.h".
44785         (xalloc_die) [defined emacs]: New macro.
44786         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
44787         [! defined emacs]: Include <xalloc.h>.
44788         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
44789         (pointer): Typedef to POINTER_TYPE *.
44790         (malloc): Remove decl; we now always use xmalloc.
44791         (alloca): Use old-style definition, since Emacs needs this.
44792         Check for arithmetic overflow when computing combined size.
44793
44794 2002-12-04  Paul Eggert  <eggert@twinsun.com>
44795
44796         Do not generate unlocked-io.h automatically, since it's easier to
44797         maintain it by hand.
44798
44799         * lib/unlocked-io.h: New file, from GNU diffutils,
44800         but with proper copyright notice and attribution.
44801         * lib/gen-uio: Remove.
44802         * lib/Makefile.am: Add copyright notice.
44803         (libfetish_a_SOURCES): Add unlocked-io.h.
44804         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
44805         (DISTCLEANFILES, io_functions): Remove macros.
44806         (EXTRA_DIST): Remove gen_uio.
44807         (unlocked-io.h): Remove rule.
44808
44809 2002-12-04  Jim Meyering  <jim@meyering.net>
44810
44811         Reflect the fact that stat.c and lstat.c are no longer generated.
44812         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
44813         (DISTCLEANFILES): Likewise.
44814         (EXTRA_DIST): Likewise.
44815         (all_local): Don't depend on stat.c or lstat.c.
44816         (stat.c, lstat.c): Remove rules.
44817         (EXTRA_DIST): Remove xstat.in.
44818
44819         * lib/xstat.in: Remove file.  Contents moved into stat.c.
44820         * lib/stat.c: New file.  Contents mostly from xstat.in.
44821         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
44822         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
44823
44824         * lib/safe-read.c: Rework so that it may serve to define safe_write,
44825         too.
44826         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
44827
44828 2002-12-03  Jim Meyering  <jim@meyering.net>
44829
44830         * lib/safe-read.c, safe-write.c: Change variable names and comments,
44831         but not semantics, to minimize the differences between these two files.
44832         (safe_read): Change comment to mention SAFE_READ_ERROR.
44833
44834         * lib/safe-read.c (IS_EINTR): Define.
44835         (safe_read): Use IS_EINTR in place of in-function cpp directives.
44836
44837 2002-12-02  Jim Meyering  <jim@meyering.net>
44838
44839         * lib/safe-read.c (EINTR): Define.
44840         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
44841         (INT_MAX): Provide fallback.
44842         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
44843
44844         * lib/safe-read.h (SAFE_READ_ERROR): Define.
44845
44846 2002-12-02  Bruno Haible  <bruno@clisp.org>
44847
44848         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
44849         Define, taken from safe-read.c.
44850         (INT_MAX): Provide fallback.
44851         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
44852         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
44853
44854         * lib/safe-read.c (EINTR): Remove definition.
44855         (safe_read): Don't use EINTR if it is absent.
44856
44857 2002-12-01  Jim Meyering  <jim@meyering.net>
44858
44859         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
44860         zero.
44861         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
44862
44863 2002-11-27  Paul Eggert  <eggert@twinsun.com>
44864
44865         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
44866         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
44867         with `if (! (value < limit)) abort ();', for readability.
44868
44869 2002-11-26  Karl Berry  <karl@gnu.org>
44870
44871         * lib/strdup.c: copy from libc again, with jim's ok.
44872         * lib/.cppi-disable: re-add strdup.c
44873
44874 2002-11-25  Karl Berry  <karl@gnu.org>
44875
44876         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
44877         instead of "strtol.c".
44878
44879 2002-11-25  Karl Berry  <karl@gnu.org>
44880
44881         * config/install-sh: update from automake for variable quoting, $0 in
44882         error msgs, etc.
44883
44884         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
44885         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
44886         entry.
44887
44888 2002-11-25  Jim Meyering  <jim@meyering.net>
44889
44890         * lib/mktime.c: Sync from libc, now that it has the latest fix.
44891
44892 2002-11-24  Karl Berry  <karl@gnu.org>
44893
44894         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
44895         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
44896
44897 2002-11-24  Jim Meyering  <jim@meyering.net>
44898
44899         Update from coreutils:
44900
44901         * lib/mktime.c: Merge in changes from libc.
44902
44903         Avoid a link-time failure on some Linux systems.
44904         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
44905         (otherwise).
44906         (__mon_yday): Declare with the STATIC attribute.
44907         (__mktime_internal): Likewise.
44908         Based on a report from Greg Schafer.
44909
44910 2002-11-23  Jim Meyering  <jim@meyering.net>
44911
44912         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
44913         Use `unsigned', not `int', as type of index.
44914
44915         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
44916
44917         * lib/fsusage.c: Remove unneeded parentheses around operands of
44918         `defined'.
44919
44920 2002-11-22  Paul Eggert  <eggert@twinsun.com>
44921
44922         * lib/quotearg.h: Allow multiple inclusion by surrounding with
44923         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
44924         so that we can be included first.
44925         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
44926         * lib/quotearg.c: Include quotearg.h immediately after config.h.
44927         No need to include stddef.h or sys/types.h any more.
44928         Surround local include files with "", not "<>".
44929         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
44930         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
44931         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
44932         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
44933         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
44934         (ISPRINT): Remove; no longer needed now that we assume C89.
44935
44936         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
44937         Preserve errno.
44938
44939         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
44940         quotearg_char): Use SIZE_MAX rather than
44941         (size_t) -1 when we are talking about "infinity".
44942
44943         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
44944
44945 2002-11-22  Paul Eggert  <eggert@twinsun.com>
44946
44947         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
44948         hint that one should use `if (! x) abort ();' rather than `assert
44949         (x);', and anyway it's one less thing to worry about configuring.
44950         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
44951         hash_rehash, hash_insert): Use abort rather than assert.
44952
44953 2002-11-22  Bruno Haible  <bruno@clisp.org>
44954
44955         * lib/safe-read.h: Assume C89. Add comments.
44956         (safe_read): Change return type to size_t.
44957         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
44958         byte counts > SSIZE_MAX correctly.
44959         * lib/safe-write.h: New file.
44960         * lib/safe-write.c: New file.
44961         * lib/full-read.h: New file.
44962         * lib/full-read.c: New file.
44963         * lib/full-write.h: Assume C89. Add comments.
44964         * lib/full-write.c: Include safe-write.h.
44965         (full_write): Rewritten to use safe_write.
44966         Suggested by Jim Meyering and Paul Eggert.
44967
44968 2002-11-21  Jim Meyering  <jim@meyering.net>
44969
44970         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
44971
44972         Merge in changes from the coreutils.
44973
44974         2002-09-25  Paul Eggert  <eggert@twinsun.com>
44975         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
44976         <stdint.h>.
44977         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
44978         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
44979         int.  Work more efficiently if X is the same width as uintmax_t.
44980         Do not compare X to -1, to avoid bogus compiler warning.
44981         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
44982         Don't assume that f_frsize and f_bsize are the same type.
44983
44984         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
44985         warning on FreeBSD.
44986
44987         * lib/makepath.c (make_path): Restore umask *before* creating the final
44988         component.
44989         (make_path): Minor reformatting.
44990
44991         * lib/xmalloc.c: Adjust to work with new autoconf macros,
44992         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
44993         HAVE_MALLOC/HAVE_REALLOC.
44994
44995         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
44996         dummy ones.  At least on GNU/Linux systems, `auto' means something
44997         else.
44998         From Michael Stone.
44999
45000 2002-11-21  Bruno Haible  <bruno@clisp.org>
45001
45002         Remove case insensitive option matching.
45003         * lib/argmatch.h (argcasematch): Remove declaration.
45004         (ARGCASEMATCH): Remove macro.
45005         (__xargmatch_internal): Remove case_sensitive argument.
45006         (XARGMATCH): Update.
45007         (XARGCASEMATCH): Remove macro.
45008         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
45009         case_sensitive argument.
45010         (argcasematch): Remove function.
45011         (__xargmatch_internal): Remove case_sensitive argument.
45012         (main): Use XARGMATCH instead of XARGCASEMATCH.
45013
45014         * lib/xmalloc.c: Change compile-time error message. Add comment about
45015         required autoconf version.
45016
45017 2002-11-20  Paul Eggert  <eggert@twinsun.com>
45018
45019         Merge argmatch cleanups from Bison.  Assume C89.
45020
45021         * lib/argmatch.c: Include config.h here, not in argmatch.h.
45022         Include stdlib.h, for EXIT_FAILURE.
45023         Always include <string.h>, since we assume C89.
45024         (EXIT_FAILURE): Remove pre-C89 bug workaround.
45025         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
45026         Include <stddef.h> instead, since it's all we need for size_t.
45027         (PARAMS): Remove.  All uses removed.
45028         (ARRAY_CARDINALITY): Do not bother to #undef.
45029         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
45030         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
45031         Remove unnecessary parentheses.
45032         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
45033         Insert necessary parentheses.
45034         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
45035         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
45036
45037 2002-11-19  Bruno Haible  <bruno@clisp.org>
45038
45039         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
45040         * lib/mbswidth.h: Include <stddef.h>, for size_t.
45041
45042         * lib/mbswidth.h (PARAMS): Remove macro.
45043         (mbswidth, mbsnwidth): Use ANSI C function declarations.
45044         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
45045
45046         * lib/gcd.h (PARAMS): Remove macro.
45047         (gcd): Use ANSI C function declarations.
45048         * lib/gcd.c (gcd): Likewise.
45049
45050 2002-11-15  Bruno Haible  <bruno@clisp.org>
45051
45052         * lib/strcspn.c: Include <stddef.h>.
45053         (strcspn): Use ANSI C function declaration. Change return type to
45054         size_t. Use NULL.
45055         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
45056         (strpbrk): Use NULL.
45057         * lib/strpbrk.h (PARAMS): Remove macro.
45058         (strpbrk): Use ANSI C function declaration.
45059         * lib/strstr.c: Don't include <sys/types.h>.
45060         * lib/strstr.h (PARAMS): Remove macro.
45061         (strstr): Use ANSI C function declarations.
45062
45063 2002-11-14  Karl Berry  <karl@gnu.org>
45064
45065         * config/mkinstalldirs: `do' on separate line, instead of
45066         `for var; do'.
45067
45068 2002-11-06  Bruno Haible  <bruno@clisp.org>
45069
45070         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
45071         * lib/gcd.c (gcd): Likewise.
45072
45073 2002-11-05  Bruno Haible  <bruno@clisp.org>
45074
45075         * lib/gcd.h: New file, from gettext-0.11.5.
45076         * lib/gcd.c: New file, from gettext-0.11.5.
45077
45078 2002-11-05  Bruno Haible  <bruno@clisp.org>
45079
45080         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
45081         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
45082         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
45083         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
45084
45085         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
45086         <libintl.h>.
45087         * lib/makepath.c: Include gettext.h instead of <locale.h> and
45088         <libintl.h>.
45089
45090         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
45091         * lib/human.c: Include gettext.h instead of <libintl.h>.
45092         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
45093         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
45094         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
45095         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
45096         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
45097         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
45098         (textdomain): Remove definition.
45099         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
45100
45101         * lib/long-options.c: Remove include of <libintl.h> and definition of
45102         _.
45103         * lib/same.c: Remove include of <libintl.h> and definition of _.
45104
45105 2002-11-04  Owen Taylor  <otaylor@redhat.com>
45106
45107         * lib/config.charset: A few additions for Solaris.
45108
45109 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
45110
45111         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
45112         * lib/localcharset.c (locale_charset): Declare as extern "C".
45113
45114 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
45115
45116         * lib/config.charset: msdos in uk_UA uses CP1125.
45117
45118 2002-11-04  Bruno Haible  <bruno@clisp.org>
45119
45120         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
45121         * lib/strcase.h: New file, from GNU gettext-0.11.5.
45122         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
45123         * lib/strstr.h: New file, from GNU gettext-0.11.5.
45124         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
45125
45126 2002-11-04  Bruno Haible  <bruno@clisp.org>
45127
45128         * lib/localcharset.c (locale_charset): Don't return an empty string.
45129
45130 2002-11-04  Bruno Haible  <bruno@clisp.org>
45131
45132         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
45133         aliases.
45134
45135 2002-11-04  Bruno Haible  <bruno@clisp.org>
45136
45137         * lib/config.charset: Update for newest glibc. Add canonical names
45138         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
45139
45140 2002-11-04  Bruno Haible  <bruno@clisp.org>
45141
45142         * lib/config.charset: Add support for NetBSD.
45143
45144 2002-11-04  Bruno Haible  <bruno@clisp.org>
45145
45146         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
45147
45148 2002-11-01  Bruno Haible  <bruno@clisp.org>
45149
45150         * configure.in: Add AC_CONFIG_AUX_DIR call.
45151         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
45152         test/Makefile.
45153         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
45154
45155 2002-09-28  Karl Berry  <karl@gnu.org>
45156
45157         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
45158         installed automake until the next release, since changes have been
45159         made.
45160
45161 2002-09-25  Karl Berry  <karl@gnu.org>
45162
45163         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
45164         * lib/getopt*: copy from libc/posix.
45165         * lib/gettext.h: copy from gettext.
45166         * lib/.cppi-disable: add strdup.c, gettext.h.
45167
45168 2002-09-25  Karl Berry  <karl@gnu.org>
45169
45170         * config/srclist.txt: enable gettext.h check.
45171         * config/config.{guess,sub}: update from prep.
45172         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
45173                 from automake 1.6.3.
45174         See srclist*.
45175
45176 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
45177
45178         * regex.c (PATFETCH): Remove the translating fetch.
45179         (PATFETCH_RAW): Rename to PATFETCH.
45180         (set_image_of_range): New fun.
45181         (SET_RANGE_TABLE_WORK_AREA): Use it.
45182         (regex_compile): Don't translate the pattern chars so eagerly.
45183         Only do it when inserting an `exactn' bytecode or when handling
45184         a char-range.
45185         (mutually_exclusive_p): Avoid empty statement.
45186
45187 2002-07-06  Jim Meyering  <meyering@lucent.com>
45188
45189         * m4/README: Don't mention Makefile.am.in.
45190         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
45191
45192 2002-07-01  Jim Meyering  <meyering@lucent.com>
45193
45194         * lib/c-stack.c: Include sys/time.h.
45195         From Volker Borchert.
45196
45197 2002-06-26  Paul Eggert  <eggert@twinsun.com>
45198
45199         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
45200
45201 2002-06-26  Paul Eggert  <eggert@twinsun.com>
45202
45203         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
45204         New macro.  Use it uniformly instead of
45205         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
45206         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
45207         reported by Vin Shelton.
45208
45209 2002-06-22  Paul Eggert  <eggert@twinsun.com>
45210
45211         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
45212         Do not assume SA_SIGINFO behavior.
45213         Bug reported by Jim Meyering on NetBSD 1.5.2.
45214
45215 2002-06-22  Jim Meyering  <meyering@lucent.com>
45216
45217         * m4/c-stack.m4: New file, from diffutils-2.8.2.
45218         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
45219
45220         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
45221         now that configure.ac uses AC_GNU_SOURCE.
45222         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
45223         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
45224
45225         Update to latest tools.  Suggestions from Paul Eggert.
45226         * m4/stdbool.m4: New file, from diffutils-2.8.2.
45227         * m4/gnu-source.m4: Update from diffutils-2.8.2.
45228         * m4/fnmatch.m4: Likewise.
45229         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
45230         to AC_HEADER_STDBOOL
45231
45232 2002-06-22  Jim Meyering  <meyering@lucent.com>
45233
45234         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
45235         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
45236
45237 2002-06-22  Jim Meyering  <meyering@lucent.com>
45238
45239         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
45240
45241         * lib/exitfail.c, exitfail.h: Likewise.
45242         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
45243
45244         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
45245         of fnmatch.h.
45246         (EXTRA_DIST): Add fnmatch_loop.c.
45247         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
45248
45249         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
45250         * lib/fnmatch.c: Update from diffutils-2.8.2.
45251         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
45252         * lib/fnmatch.h: Remove file.
45253
45254 2002-06-21  Jim Meyering  <meyering@lucent.com>
45255
45256         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
45257         * m4/mbrtowc.m4: Likewise.
45258
45259         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
45260         * m4/mbswidth.m4: Reflect name change:
45261         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
45262         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
45263
45264         * m4/lib-link.m4: Update from gettext-0.11.2.
45265         * m4/gettext.m4: Likewise.
45266
45267         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
45268         From Alfred M. Szmidt.
45269
45270 2002-06-18  Paul Eggert  <eggert@twinsun.com>
45271
45272         * lib/file-type.h: Report an error if neither S_ISREG nor
45273         S_IFREG is defined, instead of using a test specific to glibc
45274         2.2.  This should be safe, since POSIX requires S_ISREG and
45275         Unix Version 7 had S_IFREG.  We don't need to check for
45276         <sys/types.h> since we don't use any symbols that it defines.
45277
45278 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
45279
45280         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
45281         $@-t, so that each temporary file name is unique and valid in the first
45282         8 characters, for operation under DOS.
45283
45284 2002-06-15  Paul Eggert  <eggert@twinsun.com>
45285
45286         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
45287
45288 2002-06-15  Jim Meyering  <meyering@lucent.com>
45289
45290         Work even with DJGPP 2.03, which lacks support for symlinks.
45291         From Richard Dawe.
45292         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
45293         is defined.
45294         * lib/lchown.c (S_ISLNK): Likewise.
45295
45296 2002-06-15  Jim Meyering  <meyering@lucent.com>
45297
45298         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
45299         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
45300         have been included before this file.
45301
45302 2002-06-14  Jim Meyering  <meyering@lucent.com>
45303
45304         * lib/file-type.h: Use the version from diffutils-2.8.2.
45305         * lib/file-type.c: Likewise.
45306
45307 2002-06-07  Jim Meyering  <meyering@lucent.com>
45308
45309         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
45310         They're needed at least for NetBSD 1.5.2.
45311         ($statxfs_includes): Include those same headers.
45312         ($statxfs_includes): Include sys/vfs.h if available.
45313         ($statxfs_includes): Likewise for sys/statvfs.h.
45314         Check for the following members in both structs statfs and statvfs:
45315         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
45316
45317 2002-06-01  Jim Meyering  <meyering@lucent.com>
45318
45319         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
45320         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
45321
45322 2002-05-28  Jim Meyering  <meyering@lucent.com>
45323
45324         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
45325         Reported by Volker Borchert.
45326
45327 2002-05-27  Jim Meyering  <meyering@lucent.com>
45328
45329         Fix a problem seen only on nonconforming systems whereby ls.c's
45330         use of localtime, and then of gettimeofday would cause trouble:
45331         the localtime call used to initialize rpl_gettimeofday's save
45332         mechanism would clobber ls's current local time information so
45333         that in any long listing the first file would always be listed
45334         with date 1970-01-01.  Analysis by Volker Borchert.
45335
45336         * lib/gettimeofday.c (localtime): Undefine.
45337         (rpl_localtime): New function.
45338
45339 2002-05-27  Jim Meyering  <meyering@lucent.com>
45340
45341         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
45342         localtime.
45343
45344         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
45345         use the replacement function; it wouldn't resolve at link time.
45346         Reported by Volker Borchert.
45347
45348 2002-05-22  Jim Meyering  <meyering@lucent.com>
45349
45350         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
45351         file-type.h.
45352         * lib/file-type.h: New file.
45353         * lib/file-type.c (file_type): New file/function.  Extracted from
45354         diffutils.
45355
45356 2002-04-30  Jim Meyering  <meyering@lucent.com>
45357
45358         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
45359
45360 2002-04-29  Paul Eggert  <eggert@twinsun.com>
45361
45362         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
45363
45364 2002-04-29  Paul Eggert  <eggert@twinsun.com>
45365
45366         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
45367         Do not check for alloca.h (no longer used) or stdbool.h (was never
45368         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
45369
45370 2002-04-29  Paul Eggert  <eggert@twinsun.com>
45371
45372         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
45373
45374 2002-04-29  Jim Meyering  <meyering@lucent.com>
45375
45376         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
45377         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
45378         Use AC_FUNC_STRNLEN here instead.
45379
45380         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
45381         With autoconf-2.53a, it's part of AC_PROG_CC.
45382
45383 2002-04-28  Paul Eggert  <eggert@twinsun.com>
45384
45385         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
45386         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
45387
45388 2002-04-28  Paul Eggert  <eggert@twinsun.com>
45389
45390         * lib/sig2str.h, lib/sig2str.c: New files.
45391         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
45392
45393 2002-04-28  Paul Eggert  <eggert@twinsun.com>
45394
45395         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
45396         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
45397         of 127, since 64 is the largest conceivable number for ancient
45398         nonstandard hosts.
45399         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
45400
45401 2002-04-28  Jim Meyering  <meyering@lucent.com>
45402
45403         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
45404
45405 2002-04-24  Jim Meyering  <meyering@lucent.com>
45406
45407         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
45408         (jm_PREREQ): Use it.
45409
45410         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
45411         mach/mach.h fcntl.h.
45412         Check for this function: setlocale.
45413
45414 2002-04-24  Jim Meyering  <meyering@lucent.com>
45415
45416         * lib/gettext.h: New file, from Gettext.
45417         * lib/Makefile.am (INCLUDES): Remove -I../intl.
45418         (libfetish_a_SOURCES): Add gettext.h.
45419
45420 2002-04-16  Jim Meyering  <meyering@lucent.com>
45421
45422         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
45423         ut_pid, ut_id, ut_exit.
45424
45425 2002-04-16  Jim Meyering  <meyering@lucent.com>
45426
45427         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
45428         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
45429         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
45430
45431 2002-04-12  Jim Meyering  <meyering@lucent.com>
45432
45433         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
45434         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
45435         existence of the getmntinfo function.  Needed for Darwin 5.3.
45436
45437         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
45438         This is necessary at least on Darwin 5.3.
45439
45440         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
45441         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
45442         strnlen.o in the library, and that makes some versions of ranlib
45443         object.
45444
45445 2002-04-12  Jim Meyering  <meyering@lucent.com>
45446
45447         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
45448
45449 2002-04-09  Jim Meyering  <meyering@lucent.com>
45450
45451         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
45452         to be more precise.  Rather than saying we're checking whether the
45453         function `works', say what we're testing.
45454         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
45455         Reported by Bruno Haible.
45456
45457 2002-03-10  Jim Meyering  <meyering@lucent.com>
45458
45459         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
45460         Suggestion from Santiago Vila.
45461
45462 2002-03-08  Jim Meyering  <meyering@lucent.com>
45463
45464         * lib/rename.c: Mention that this wrapper is needed also on
45465         mips-dec-ultrix4.4 systems.
45466
45467 2002-03-02  Jim Meyering  <meyering@lucent.com>
45468
45469         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
45470         not HAVE_CLOCK_SETTIME.
45471
45472 2002-02-27  Paul Eggert  <eggert@twinsun.com>
45473
45474         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
45475         Check for clock_settime.
45476
45477 2002-02-27  Paul Eggert  <eggert@twinsun.com>
45478
45479         * lib/nanosleep.h: Rename to....
45480         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
45481
45482         * lib/gettime.c: New file.
45483         * lib/settime.c: New file.
45484         * lib/stime.c: Remove.
45485
45486         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
45487         timespec.h.  Remove nanosleep.h.
45488
45489 2002-02-25  Paul Eggert  <eggert@twinsun.com>
45490
45491         * m4/acl.m4: New file.
45492         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
45493         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
45494
45495 2002-02-25  Paul Eggert  <eggert@twinsun.com>
45496
45497         * lib/acl.c, lib/acl.h: New files.
45498         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
45499
45500 2002-02-24  Jim Meyering  <meyering@lucent.com>
45501
45502         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
45503         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
45504         cause trouble.  Reported by Nelson Beebe.
45505
45506 2002-02-23  Paul Eggert  <eggert@twinsun.com>
45507
45508         * lib/path-concat.c (xpath_concat): Reorder code to pacify
45509         compilers that don't know that xalloc_die never returns.
45510
45511 2002-02-20  Jim Meyering  <meyering@lucent.com>
45512
45513         * lib/getdate.c: Regenerate using bison-1.33.
45514
45515 2002-02-17  Jim Meyering  <meyering@lucent.com>
45516
45517         * config/config.guess (main): Don't use `head -1'; it's no longer
45518         portable. Use `sed 1q' instead.
45519
45520 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
45521
45522         * m4/codeset.m4: Upgrade to gettext-0.11.
45523         * m4/gettext.m4: Upgrade to gettext-0.11.
45524         * m4/glibc21.m4: Upgrade to gettext-0.11.
45525         * m4/iconv.m4: Upgrade to gettext-0.11.
45526         * m4/isc-posix.m4: Upgrade to gettext-0.11.
45527         * m4/lcmessage.m4: Upgrade to gettext-0.11.
45528         * m4/lib-ld.m4: New file, from gettext-0.11.
45529         * m4/lib-link.m4: New file, from gettext-0.11.
45530         * m4/lib-prefix.m4: New file, from gettext-0.11.
45531         * m4/progtest.m4: Upgrade to gettext-0.11.
45532
45533 2002-02-15  Paul Eggert  <eggert@twinsun.com>
45534
45535         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
45536         (jm_PREREQ): Use it.
45537
45538 2002-02-15  Paul Eggert  <eggert@twinsun.com>
45539
45540         * lib/posixver.c, lib/posixver.h: New files.
45541         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
45542
45543 2002-02-02  Paul Eggert  <eggert@twinsun.com>
45544             Bruno Haible  <bruno@clisp.org>
45545
45546         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
45547         (fwrite_success_callback): New declaration.
45548         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
45549         print_unicode_char. Call failure callback instead of error.
45550         (fwrite_success_callback): New function.
45551         (exit_failure_callback): New function.
45552         (fallback_failure_callback): New function.
45553         (print_unicode_char): Call unicode_to_mb.
45554
45555 2002-01-26  Jim Meyering  <meyering@lucent.com>
45556
45557         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
45558         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
45559
45560 2002-01-26  Jim Meyering  <meyering@lucent.com>
45561
45562         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
45563
45564 2002-01-22  Paul Eggert  <eggert@twinsun.com>
45565
45566         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
45567
45568 2002-01-22  Jim Meyering  <meyering@lucent.com>
45569
45570         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
45571         Otherwise, some versions of automake would omit the rule that makes
45572         Makefile from Makefile.in.
45573
45574 2002-01-21  Paul Eggert  <eggert@twinsun.com>
45575
45576         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
45577         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
45578         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
45579         (memcoll): Set errno to zero if there is no error.
45580
45581         * lib/quotearg.c (quotearg_buffer_restyled):
45582         Fix bug with quoting buffers containing NUL when backslashing escapes.
45583         This bug was exposed by the other changes in this patch.
45584         (quotearg_n_options): New arg ARGSIZE.
45585         All callers changed.
45586         (quoting_options_from_style): New function.
45587         (quotearg_n_style): Use it.
45588         (quotearg_n_style_mem): New function.
45589
45590         * lib/quotearg.h (quotearg_n_style_mem): New function.
45591
45592 2002-01-19  Jim Meyering  <meyering@lucent.com>
45593
45594         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
45595         Remove useless quotes: DF_PROG="df".
45596         * m4/strnlen.m4: New file.
45597
45598 2002-01-16  Paul Eggert  <eggert@twinsun.com>
45599
45600         * lib/backupfile.c (ISDIGIT): Comment fix.
45601         * lib/getdate.y (ISDIGIT): Likewise.
45602         * lib/posixtm.c (ISDIGIT, year): Likewise.
45603         * lib/strverscmp.c (ISDIGIT): Likewise.
45604         * lib/userspec.c (ISDIGIT): Likewise.
45605
45606 2002-01-16  Jim Meyering  <meyering@lucent.com>
45607
45608         * lib/getdate.y: Add three semicolons, each just before a closing
45609         brace. Bison (as of version 1.31) no longer papers over that mistake.
45610
45611 2002-01-05  Jim Meyering  <meyering@lucent.com>
45612
45613         * lib/version-etc.c (version_etc_copyright): Update copyright year.
45614
45615 2001-12-19  Paul Eggert  <eggert@twinsun.com>
45616
45617         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
45618         not silently exit merely because the output buffer happens to
45619         have nothing pending.
45620
45621 2001-12-18  Paul Eggert  <eggert@twinsun.com>
45622
45623         See the big note in ../ChangeLog.
45624         * lib/human.c (suffixes): Prefer K to k for 1024.
45625         (generate_suffix_backwards): New function.
45626         (human_readable_inexact): Use it.
45627         * lib/xstrtol.c (__xstrtol): If there is no number but there
45628         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
45629         Accept 'K' as well as 'k'.
45630
45631 2001-12-15  Jim Meyering  <meyering@lucent.com>
45632
45633         * lib/regex.h (__restrict_arr): Update from libc.
45634
45635         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
45636         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
45637         (STREQ): Define.
45638
45639 2001-12-14  Jim Meyering  <meyering@lucent.com>
45640
45641         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
45642         Suggestion from Bruno Haible.
45643
45644 2001-12-10  Jim Meyering  <meyering@lucent.com>
45645
45646         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
45647         xrealloc, Instead, include "xalloc.h".
45648         (initbuffer): Don't cast xmalloc return value to char*.
45649         (readline): Reword comment.
45650         Don't cast xrealloc return value to char*
45651         Return NULL, not 0.
45652
45653 2001-12-09  Jim Meyering  <meyering@lucent.com>
45654
45655         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
45656         about `signed and unsigned type in conditional expression'.
45657         * lib/posixtm.c (posix_time_parse): Likewise.
45658
45659         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
45660
45661         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
45662         to avoid a pedantic warning.
45663
45664         * lib/getstr.c: Don't include assert.h.
45665         (getstr): Remove warning-evoking assertions.
45666         Return -1 if offset parameter is out of bounds.
45667         Change the type of a local from int to size_t.
45668
45669         * lib/strftime.c (my_strftime_localtime_r): Include this function
45670         definition in the `#if ! HAVE_TM_GMTOFF' block.
45671
45672         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
45673         Include xalloc.h instead.
45674
45675 2001-12-02  Jim Meyering  <meyering@lucent.com>
45676
45677         * lib/tempname.c: Don't declare getenv, thus reverting the change of
45678         2001-11-18.  It's no longer necessary, now that stdlib.h is always
45679         included.
45680
45681         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
45682         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
45683
45684 2001-11-30  Akim Demaille  <akim@epita.fr>
45685
45686         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
45687         before being defined.
45688
45689 2001-11-27  Paul Eggert  <eggert@twinsun.com>
45690
45691         * lib/quotearg.h (quotearg_n, quotearg_n_style):
45692         First arg is int, not unsigned.
45693         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
45694         (SIZE_MAX, UINT_MAX): New macros.
45695         (quotearg_n_options): Abort if N is negative.
45696         Avoid overflow check on hosts where size_t is 64 bits and int
45697         is 32 bits, as overflow is impossible there.
45698         Fix off-by-one typo that caused unnecessary reallocation.
45699
45700 2001-11-27  Jim Meyering  <meyering@lucent.com>
45701
45702         * lib/tempname.c: Merge with version from libc.
45703         * lib/regex.c: Likewise.
45704
45705         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
45706         systems for which STDC_HEADERS is 0, it was not included, resulting in
45707         a warning about an integer-to-pointer conversion problem with getenv.
45708         Reported by Volker Borchert.
45709
45710 2001-11-26  Jim Meyering  <meyering@lucent.com>
45711
45712         * lib/gtod.h: Remove file.
45713         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
45714         * lib/gettimeofday.c: Don't include gtod.h.
45715         (GTOD_init): Remove function.
45716         (rpl_gettimeofday): Do its job here instead, rather than aborting.
45717         Suggestion from Volker Borchert.
45718
45719 2001-11-23  Jim Meyering  <meyering@lucent.com>
45720
45721         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
45722         it.
45723         * lib/hash.c (struct hash_table): Define it here instead.
45724
45725 2001-11-22  Jim Meyering  <meyering@lucent.com>
45726
45727         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
45728
45729 2001-11-20  Jim Meyering  <meyering@lucent.com>
45730
45731         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
45732         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
45733
45734 2001-11-19  Jim Meyering  <meyering@lucent.com>
45735
45736         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
45737         directory.  Use "conftestXXXXXX" as the template.
45738         Suggestion from Paul Eggert.
45739
45740         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
45741         immediately, so the test doesn't mistakenly hit the max-open-files
45742         limit.
45743
45744 2001-11-18  Paul Eggert  <eggert@twinsun.com>
45745
45746         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
45747         (TEMPORARIES): New macro.
45748         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
45749         removes an artificial limitation (e.g. HP-UX 10.20, where
45750         TMP_MAX is 17576).
45751
45752 2001-11-18  Jim Meyering  <meyering@lucent.com>
45753
45754         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
45755
45756 2001-11-18  Jim Meyering  <meyering@lucent.com>
45757
45758         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
45759         on SunOS 4.
45760
45761         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
45762         files will be created before anything else.
45763
45764 2001-11-17  Paul Eggert  <eggert@twinsun.com>
45765
45766         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
45767         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
45768
45769 2001-11-17  Jim Meyering  <meyering@lucent.com>
45770
45771         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
45772         Prompted by a report from Bob Proulx.
45773
45774         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
45775         Instead, require UTILS_FUNC_MKSTEMP.
45776
45777 2001-11-17  Jim Meyering  <meyering@lucent.com>
45778
45779         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
45780         Now, that's done as part of AC_FUNC_STRTOD.
45781
45782 2001-11-17  Jim Meyering  <meyering@lucent.com>
45783
45784         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
45785         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
45786         rather than group writable.  Patch by Juan F. Codagnone.
45787
45788         * lib/readtokens.c: Remove explicit declarations of xmalloc and
45789         xrealloc, Instead, include "xalloc.h".
45790
45791         * lib/mountlist.c: Include unlocked-io.h after all system headers.
45792         Remove explicit declarations of xmalloc, xrealloc,
45793         and xstrdup.  Instead, include "xalloc.h".
45794
45795         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
45796         unlocked-io.h.
45797         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
45798         Likewise.
45799         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
45800
45801         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
45802         Reported by Padraig Brady.
45803
45804         * lib/mkstemp.c: #undef mkstemp.
45805         Include config.h.
45806         (rpl_mkstemp): Rename from mkstemp.
45807         Protoize.
45808
45809 2001-11-16  Jim Meyering  <meyering@lucent.com>
45810
45811         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
45812         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
45813         determine the amount of total physical memory, use pstat_getstatic.
45814         HPUX-11 doesn't define _SC_PHYS_PAGES.
45815         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
45816         If sysconf couldn't be used to determine the amount of available
45817         physical memory, use both pstat_getstatic and pstat_getdynamic.
45818         Based on a patch from Bob Proulx.
45819
45820 2001-11-10  Jim Meyering  <meyering@lucent.com>
45821
45822         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
45823         (jm_PREREQ): Use it.
45824
45825 2001-11-09  Jim Meyering  <meyering@lucent.com>
45826
45827         * m4/jm-macros.m4: Require autoconf-2.52f.
45828         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
45829         Use these AC_-prefixed names, not the AM_-prefixed ones.
45830
45831         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
45832
45833 2001-11-05  Jim Meyering  <meyering@lucent.com>
45834
45835         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
45836
45837 2001-11-04  Jim Meyering  <meyering@lucent.com>
45838
45839         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
45840         $DEFS.
45841
45842 2001-11-03  Jim Meyering  <meyering@lucent.com>
45843
45844         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
45845         of AC_DEFUN.
45846
45847         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
45848         know the name of the variable in the macro definition.
45849
45850 2001-11-03  Jim Meyering  <meyering@lucent.com>
45851
45852         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
45853         in argmatch_to_argument call.
45854
45855         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
45856         argument.
45857
45858         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
45859         e.g., a fault due to an attempt to free a NULL pointer.
45860
45861 2001-11-01  Jim Meyering  <meyering@lucent.com>
45862
45863         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
45864         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
45865
45866 2001-11-01  Jim Meyering  <meyering@lucent.com>
45867
45868         * lib/dirfd.c, lib/dirfd.h: New files.
45869         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
45870
45871         * lib/hash.c (hash_print) [TESTING]: Clean up.
45872
45873 2001-10-22  Paul Eggert  <eggert@twinsun.com>
45874
45875         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
45876         to avoid a warning if -Wall.
45877
45878 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
45879
45880         * README: New file
45881         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
45882         (per RMS's instructions, this is now the canonical source)
45883         * lgpl/, gpl/: New directories.
45884
45885 2001-10-21  Paul Eggert  <eggert@twinsun.com>
45886
45887         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
45888
45889 2001-10-21  Jim Meyering  <meyering@lucent.com>
45890
45891         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
45892         this code would end up calling gettext even in packages built
45893         with --disable-nls.
45894         * lib/getopt.c (_): Likewise.
45895         * lib/regex.c (_): Likewise.
45896
45897 2001-10-20  Paul Eggert  <eggert@twinsun.com>
45898
45899         * m4/error.m4 (jm_PREREQ_ERROR):
45900         Do not invoke AC_CHECK_FUNCS with strerror_r, as
45901         AC_FUNC_STRERROR_R does that.
45902         Check for strerror declaration.
45903
45904         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
45905         are supposed to have them these days.
45906         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
45907         Merge changes from latest Autoconf CVS.
45908         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
45909         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
45910         POSIX decided to standardize on the int flavor of strerror_r.
45911
45912 2001-10-20  Paul Eggert  <eggert@twinsun.com>
45913
45914         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
45915         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
45916         Use strerror_r that is only a macro, even if it is not a function.
45917         (strerror): Check for HAVE_DECL_STRERROR before declaring.
45918         (private_strerror): Use prototypes, not old-style function definition.
45919         (print_errno_message): New function.
45920         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
45921         char*-flavored one.
45922         (error_tail, error, error_at_line): Use it.
45923
45924 2001-10-11  Jim Meyering  <meyering@lucent.com>
45925
45926         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
45927         and quote_n (1, ... to avoid clobbering a buffer.
45928
45929 2001-10-05  Jim Meyering  <meyering@lucent.com>
45930
45931         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
45932         hash-pjw.h.
45933         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
45934         * lib/hash-pjw.h: New file.
45935
45936 2001-09-30  Jim Meyering  <meyering@lucent.com>
45937
45938         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
45939         `struct fsstat' has the `f_fstypename' member.
45940         Use that to define FS_TYPE, which is now used to make
45941         the getfsstat link test tighter.
45942
45943 2001-09-30  Jim Meyering  <meyering@lucent.com>
45944
45945         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
45946         Include <sys/ucred.h>, for Apple Darwin.
45947         Include sys/mount.h and sys/fs_types.h only if available.
45948         (FS_TYPE): Define.
45949         (read_filesystem_list): Use FS_TYPE.
45950
45951 2001-09-29  Paul Eggert  <eggert@twinsun.com>
45952
45953         * lib/exclude.c (excluded_filename): 0 -> false, since it's
45954         a boolean context.
45955
45956 2001-09-29  Jim Meyering  <meyering@lucent.com>
45957
45958         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
45959         [one-argument getmntent function]): Include stdio.h before mntent.h.
45960         SunOS 4.1.x needs it for the declaration of `FILE'.
45961         Patch by Volker Borchert.
45962
45963         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
45964         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
45965         sys/fs_types.h, and make the link-test for getfsstat guard #include
45966         directives with appropriate #if HAVE_*_H tests so that we can
45967         detect getfsstat on Apple Darwin1.3.7 systems.
45968         Reported by Nelson Beebe.
45969         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
45970
45971 2001-09-28  Paul Eggert  <eggert@twinsun.com>
45972
45973         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
45974         #defines strtoimax.  Also treat the other strto* functions
45975         like strtoimax.
45976
45977         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
45978         Check for strtoul and strtoumax,
45979         as those declarations are made even in the signed case.
45980         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
45981         Likewise, for strtol and strtoimax.
45982
45983 2001-09-28  Paul Eggert  <eggert@twinsun.com>
45984
45985         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
45986         #defines strtoimax.  Also treat the other strto* functions
45987         like strtoimax.
45988
45989         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
45990         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
45991         (strtoimax, strtoumax): Do not declare if already defined as a macro.
45992
45993 2001-09-26  Jim Meyering  <meyering@lucent.com>
45994
45995         Most macros in unlocked-io.h had the wrong number of arguments.
45996         * lib/gen-uio: New script.
45997         (USE_UNLOCKED_IO): Define to 1 if not already defined.
45998         * lib/unlocked-io.hin: Remove file.
45999         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
46000         rather than trying to embed it here.
46001         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
46002         Reported by Padraig Brady.
46003
46004 2001-09-25  Volker Borchert  <bt@teknon.de>
46005
46006         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
46007         `result'.
46008
46009 2001-09-24  Jim Meyering  <meyering@lucent.com>
46010
46011         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
46012
46013 2001-09-23  Jim Meyering  <meyering@lucent.com>
46014
46015         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
46016         instead of the mere test for existence of mntent.h.  The latter
46017         would get a false-positive on AIX 3.4 systems.
46018         In the outer getmntent if-block, don't die if neither of the getmntent
46019         tests succeeds.  Instead, just fall through and continue with the
46020         remaining tests.
46021
46022 2001-09-23  Jim Meyering  <meyering@lucent.com>
46023
46024         * lib/mountlist.c: Remove useless parentheses in #if directives.
46025         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
46026         the deprecated MOUNTED symbol is no longer defined in mntent.h.
46027
46028 2001-09-22  Jim Meyering  <meyering@lucent.com>
46029
46030         * m4/gettext.m4: New file.  From gettext.
46031         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
46032         * m4/progtest.m4: Likewise
46033         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
46034         * m4/glibc21.m4: Likewise.
46035
46036         * m4/libintl.m4: Remove.  No longer used.
46037
46038 2001-09-22  Jim Meyering  <meyering@lucent.com>
46039
46040         * lib/localcharset.c: Update from latest gettext.
46041         * lib/config.charset: Likewise.
46042
46043 2001-09-20  Jim Meyering  <meyering@lucent.com>
46044
46045         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
46046         strtoimax.
46047         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
46048         strtoumax.
46049
46050 2001-09-20  Jim Meyering  <meyering@lucent.com>
46051
46052         * lib/xstrtol.c (strtoimax): Guard declaration with
46053         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
46054         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
46055         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
46056         (strtoumax): Likewise, for completeness (it wasn't necessary).
46057
46058 2001-09-17  Paul Eggert  <eggert@twinsun.com>
46059
46060         * lib/strtoimax.c (HAVE_LONG_LONG):
46061         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
46062         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
46063         to work around bug in IBM C compiler.
46064
46065 2001-09-17  Jim Meyering  <meyering@lucent.com>
46066
46067         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
46068         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
46069         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
46070         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
46071         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
46072         whenever the right hand side need not be expanded by the shell.
46073
46074 2001-09-16  Paul Eggert  <eggert@twinsun.com>
46075
46076         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
46077         library.  It's not correct, as some older glibcs are buggy.
46078         fnmatch wasn't fixed until glibc 2.2.
46079
46080         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
46081         special shell magic here.
46082
46083 2001-09-16  Jim Meyering  <meyering@lucent.com>
46084
46085         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
46086         * m4/jm-macros.m4: Require it.
46087
46088 2001-09-16  Jim Meyering  <meyering@lucent.com>
46089
46090         * lib/mkdir.c: New file.
46091
46092 2001-09-15  Jim Meyering  <meyering@lucent.com>
46093
46094         * m4/jm-macros.m4: Check for help2man.
46095
46096 2001-09-11  Jim Meyering  <meyering@lucent.com>
46097
46098         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
46099         The body, by Paul Eggert, was moved here from configure.in.
46100         * m4/jm-macros.m4: Require UTILS_HOST_OS.
46101
46102 2001-09-04  Paul Eggert  <eggert@twinsun.com>
46103
46104         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
46105         (jm_PREREQ): Use it.
46106
46107 2001-09-04  Paul Eggert  <eggert@twinsun.com>
46108
46109         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
46110         Use ssize_t, not int, to store result of readlink.
46111         Check for ssize_t overflow as well as size_t overflow,
46112         as POSIX says the result of readlink is implementation-defined
46113         when ssize_t overflows.
46114         Remove unnecessary cast to char*.
46115         Use free+malloc instead of realloc, as the storage doesn't need
46116         to be preserved and it's clearer and can be more efficient that way.
46117         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
46118         * lib/xreadlink.h (xreadlink): Update prototype.
46119
46120 2001-09-04  Paul Eggert  <eggert@twinsun.com>
46121
46122         * lib/xgetcwd.c: Revert some of the previous change; intead,
46123         fix the HAVE_GETCWD_NULL code to behave more like the
46124         !HAVE_GETCWD_NULL code used to.
46125
46126         Include "xalloc.h".
46127         (xgetcwd): Do not return NULL when memory is exhausted; instead,
46128         invoke xalloc_die.
46129
46130 2001-09-03  Paul Eggert  <eggert@twinsun.com>
46131
46132         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
46133         sys/param.h, as pathmax.h includes them.
46134
46135 2001-09-03  Paul Eggert  <eggert@twinsun.com>
46136
46137         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
46138         (jm_PREREQ_XGETCWD): New macro.
46139
46140         * m4/getcwd.m4: New file.
46141
46142 2001-09-03  Paul Eggert  <eggert@twinsun.com>
46143
46144         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
46145         like the HAVE_GETCWD_NULL code.
46146         Include pathmax.h if not HAVE_GETCWD.
46147         Do not include xalloc.h.
46148         (INITIAL_BUFFER_SIZE): New symbol.
46149         Do not use xmalloc / xrealloc, since the caller is responsible for
46150         handling errors.  Preserve errno around `free' during failure.
46151         Do not overrun buffer when using getwd.
46152
46153 2001-09-03  Paul Eggert  <eggert@twinsun.com>
46154
46155         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
46156         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
46157         getcwd (NULL, 0).
46158
46159 2001-09-03  Paul Eggert  <eggert@twinsun.com>
46160
46161         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
46162         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
46163         spotted by Jim Meyering.
46164
46165 2001-09-03  Jim Meyering  <meyering@lucent.com>
46166
46167         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
46168         failure.
46169
46170 2001-09-02  Jim Meyering  <meyering@lucent.com>
46171
46172         * lib/error.c: Update from GNU libc.
46173
46174 2001-09-01  Jim Meyering  <meyering@lucent.com>
46175
46176         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
46177         Used by df.
46178
46179 2001-09-01  Jim Meyering  <meyering@lucent.com>
46180
46181         * lib/xreadlink.c: New file.
46182         * lib/xreadlink.h: New file.
46183         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
46184         xreadlink.h.
46185
46186         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
46187         doesn't conflict with sparc Solaris 7's definition in
46188         /usr/include/sys/int_types.h.
46189
46190         * lib/exclude.c: Use `""', not `<>' to #include non-system header
46191         files.
46192         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
46193         and strncasecmp as r-values.  Unixware didn't have declarations.
46194
46195 2001-08-31  Paul Eggert  <eggert@twinsun.com>
46196
46197         * lib/xstrtol.h: Add copyright notice.
46198         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
46199         LONGINT_INVALID_SUFFIX_CHAR.
46200
46201 2001-08-31  Paul Eggert  <eggert@twinsun.com>
46202
46203         * lib/xstrtol.c (strtoimax): New decl.
46204
46205 2001-08-31  Paul Eggert  <eggert@twinsun.com>
46206
46207         * lib/xgetcwd.c: Don't include pathmax.h.
46208         Include stdlib.h and unistd.h if available.
46209         Include xalloc.h.
46210         (xmalloc, xstrdup, free): Remove decls.
46211         (xgetcwd): Don't assume sizes fit in unsigned.
46212         Check for overflow when computing sizes.
46213         Simplify reallocation code.
46214
46215 2001-08-31  Paul Eggert  <eggert@twinsun.com>
46216
46217         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
46218         a directory's st_size can have an arbitrary value, so the old
46219         usage could waste an arbitrary amount of memory.  All uses
46220         changed.
46221         * lib/savedir.h: Update prototype.
46222
46223 2001-08-31  Paul Eggert  <eggert@twinsun.com>
46224
46225         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
46226
46227         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
46228         old strtoimax.c.
46229
46230         Also, make the following further changes to make this file's
46231         configuration more similar to that of strtol.c:
46232         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
46233         (strtoumax, uintmax_t, strtoull, strtol): Remove.
46234         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
46235         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
46236         changed to signed values.
46237
46238         And make the following changes as well:
46239         Fix copyright notice, as 1999 was missing.
46240         (verify): New macro.
46241         (strtoimax): Check sizes at compile-time, not run-time.
46242         Prefer strtol to strtoll if both work.
46243         (main): Remove; it was not that useful and was a pain to maintain.
46244
46245         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
46246
46247 2001-08-31  Jim Meyering  <meyering@lucent.com>
46248
46249         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
46250         Use an initial, malloc'd, buffer of length 128 rather than
46251         a statically allocated one of length 1024.
46252
46253 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46254
46255         Simplify code, partly by assuming autoconf 2.52 semantics.
46256
46257         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
46258
46259         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
46260         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
46261         All uses removed.
46262         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
46263         Move AC_REQUIRE to next-to-top level, to avoid confusion.
46264         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
46265         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
46266         jm_AC_HEADER_INTTYPES_H.
46267         * m4/jm-macros.m4 (jm_MACROS): Likewise.
46268
46269         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
46270
46271         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
46272         Quote first arg of AC_DEFUN.
46273         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
46274         since they are needed to parse the include file even if we need
46275         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
46276         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
46277         but with opposite signedness.
46278
46279 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46280
46281         Merge 'exclude' changes from tar 1.13.22.
46282         This fixes one or two unlikely storage allocation overflow bugs,
46283         but doesn't change user-visible behavior otherwise.
46284
46285 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46286
46287         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
46288         (jm_PREREQ_EXCLUDE): New macro.
46289
46290 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46291
46292         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
46293         tm to be declared.
46294
46295 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46296
46297         * lib/hash.c: Remove '2001' from copyright notice.
46298
46299 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46300
46301         * lib/full-write.h: New file.
46302         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
46303         * lib/full-write.c: Correct credits, as cccp.c no longer
46304         exists and anyway it was so heavily changed from the old cccp
46305         code as to be unrecognizable.  Include full-write.h.
46306         (full_write) Return size_t, with short writes meaning failure.
46307         All callers changed.  This fixes a bug with large buffers
46308         on 64-bit hosts.
46309         * lib/utime.c: Include full-write.h.
46310
46311 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46312
46313         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
46314         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
46315         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
46316         Include if available.
46317         (<xalloc.h>): Include
46318         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
46319         (verify): New macro.  Use it to verify that EXCLUDE macros do not
46320         collide with FNM macros.
46321         (struct patopts): New struct.
46322         (struct exclude): Use it, as exclude patterns now come with options.
46323         (new_exclude): Support above changes.
46324         (new_exclude, add_exclude_file):
46325         Initial size must now be a power of two to simplify overflow checking.
46326         (free_exclude, fnmatch_no_wildcards): New function.
46327         (excluded_filename): No longer requires options arg, as the options
46328         are determined by add_exclude.  Now returns bool, not int.
46329         (excluded_filename, add_exclude):
46330         Add support for the fancy new exclusion options.
46331         (add_exclude, add_exclude_file): Now takes int options arg.
46332         Check for arithmetic overflow when computing sizes.
46333         (add_exclude_file): xrealloc might modify errno, so don't
46334         realloc until after errno might be used.
46335
46336         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
46337         New macros.
46338         (free_exclude): New decl.
46339         (add_exclude, add_exclude_file): Now takes int options arg.
46340         (excluded_filename): No longer requires options arg, as the options
46341         are determined by add_exclude.  Now returns bool, not int.
46342
46343 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46344
46345         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
46346
46347 2001-08-27  Jim Meyering  <meyering@lucent.com>
46348
46349         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
46350
46351         * lib/version-etc.c (N_): Remove definition.
46352         Revert most of last change.
46353         Instead, simply don't mark the `Copyright...' string for translation.
46354         Based on advice from Paul Eggert.
46355
46356         * lib/strtoxmax.c: Tweak comment.
46357
46358 2001-08-26  Jim Meyering  <meyering@lucent.com>
46359
46360         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
46361
46362         * m4/xstrtoimax.m4: New file.
46363         * m4/xstrtoumax.m4: Add comments explaining why we
46364         AC_REPLACE_FUNCS(strtol).
46365
46366 2001-08-26  Jim Meyering  <meyering@lucent.com>
46367
46368         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
46369         of copyright with `%s' so translators don't get an untranslated
46370         message in 2002.
46371         (COPYRIGHT_YEAR): Define.
46372         (version_etc): Use fprintf rather than fputs.
46373         Suggestion from Ulrich Drepper.
46374
46375         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
46376
46377         * lib/strtoll.c: New file, from GNU libc.
46378         * lib/xstrtoimax.c: New file.
46379
46380         * lib/xstrtol.h: Add xstrtoimax.
46381         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
46382         * lib/strtoimax.c: New file.  Likewise, but first define
46383         STRTOUXMAX_SIGNED.
46384
46385         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
46386         ...
46387         * lib/strtoxmax.c: ... then renamed to this.
46388
46389 2001-08-18  Paul Eggert  <eggert@twinsun.com>
46390
46391         * m4/inttypes.m4: Add AC_PREREQ(2.13).
46392         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
46393         (jm_AC_TYPE_INTMAX_T): New macro.
46394         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
46395
46396         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
46397
46398         * m4/longlong.m4: Renamed from ulonglong.m4.
46399         * m4/inttypes.m4: Renamed from inttypes_h.m4.
46400         * m4/uintmax_t.m4: Removed.
46401
46402 2001-08-13  Paul Eggert  <eggert@twinsun.com>
46403
46404         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
46405         Port to Solaris 8, where 'sed' requires a space after the 'r'
46406         command, and where sh dislikes "$/".  Clean up the spacing a bit.
46407         Redirect output to $tmp just once.
46408
46409 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
46410
46411         * lib/addext.c (<errno.h>): Include.
46412         (errno): Declare if not defined.
46413         (addext): Work correctly when pathconf returns -1 and leaves
46414         errno alone because there is no limit.  Also, work even if
46415         pathconf returns a value greater than SIZE_MAX.
46416
46417 2001-08-12  Jim Meyering  <meyering@lucent.com>
46418
46419         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
46420         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
46421         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
46422         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
46423         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
46424         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
46425         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
46426         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
46427         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
46428         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
46429         utime.m4, utimes.m4, xstrtoumax.m4:
46430         Quote the first argument in each use of AC_DEFUN.
46431
46432 2001-08-12  Jim Meyering  <meyering@lucent.com>
46433
46434         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
46435         Simply `return getcwd (NULL, 0);'.
46436         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
46437         Use 1300 as initial value for length, not PATH_MAX.
46438
46439         * lib/pathmax.h: Clean up cpp syntax.
46440
46441 2001-08-12  Jim Meyering  <meyering@lucent.com>
46442
46443         * lib/gettimeofday.c: New file.
46444         * lib/gtod.h: New file.
46445         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
46446
46447 2001-08-05  Jim Meyering  <meyering@lucent.com>
46448
46449         * m4/jm-macros.m4: Require autoconf-2.52.
46450
46451 2001-08-04  Jim Meyering  <meyering@lucent.com>
46452
46453         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
46454         stmt, to get in sync with glibc.
46455
46456 2001-08-03  Paul Eggert  <eggert@twinsun.com>
46457
46458         The following changes are from gettext 0.10.39 as maintained by
46459         Bruno Haible.
46460
46461         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
46462         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
46463         with inverted sense.  All uses changed.
46464
46465         * lib/mbswidth.c: Don't include <limits.h>.
46466         Include <stdlib.h> and <string.h> unconditionally.
46467         (iswcntrl, mbsinit, ISCNTRL): New macros.
46468         (mbsnwidth): Use K&R style function declarations.
46469         Don't bother checking for MB_LEN_MAX == 1, since the compiler
46470         can optimize it when MB_CUR_MAX == 1.
46471         The width of control characters is zero, not 1.
46472
46473 2001-08-03  Paul Eggert  <eggert@twinsun.com>
46474
46475         The following changes are from gettext 0.10.39 as maintained by
46476         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
46477
46478         * m4/codeset.m4: Upgrade to serial AM1.
46479         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
46480         all uses changed.  Quote first arg of AC_DEFUN.
46481         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
46482
46483         * m4/iconv.m4: Upgrade to serial AM2.
46484         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
46485         Add --with-libconv-prefix.
46486         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
46487         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
46488         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
46489         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
46490         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
46491
46492         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
46493         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
46494         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
46495         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
46496         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
46497         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
46498         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
46499         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
46500         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
46501
46502         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
46503         string.h any more.
46504
46505         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
46506         not the default value.
46507
46508         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
46509         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
46510         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
46511         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
46512         Also check for iswcntrl, used for wcwidth fallback.
46513         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
46514         to Autoconf 2.13.
46515
46516 2001-08-03  Jim Meyering  <meyering@lucent.com>
46517
46518         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
46519         as it was in the original.  Reported by Paul Eggert.
46520
46521 2001-07-16  Jim Meyering  <meyering@lucent.com>
46522
46523         * m4/gettimeofday.m4: New file.
46524         Prompted by a report from Bernhard Baehr.
46525
46526 2001-07-15  Jim Meyering  <meyering@lucent.com>
46527
46528         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
46529         stuff. Now it's in ../Makefile.cfg.
46530
46531 2001-07-15  Jim Meyering  <meyering@lucent.com>
46532
46533         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
46534         (BUILT_SOURCES): Add unlocked-io.h.
46535         (io_functions): Define.
46536         (unlocked-io.h): New rule.
46537         (DISTCLEANFILES): Add unlocked-io.h.
46538         (all-local): Depend on unlocked-io.h, to ensure it is created.
46539
46540         * lib/unlocked-io.hin: New file
46541
46542         * lib/regex.c: Update from glibc.
46543
46544 2001-07-05  Jim Meyering  <meyering@lucent.com>
46545
46546         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
46547         recommendation.
46548         (libfetish_a_SOURCES): Put all .h files here instead.
46549         Remove a thus-exposed (better checks in automake) duplicate and
46550         two unnecessary .h files.
46551
46552 2001-07-04  Jim Meyering  <meyering@lucent.com>
46553
46554         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
46555         that generates jm-glibc-io.m4 so that it doesn't trigger any make
46556         distcheck failure.
46557
46558 2001-07-02  Jim Meyering  <meyering@lucent.com>
46559
46560         The following changes were prompted by suggestions from Bruno Haible.
46561
46562         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
46563         is now generated.
46564         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
46565         definition of EXTRA_DIST.
46566         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
46567         ensure that the generated file is created/updated whenever the list
46568         of $(unlocked_functions) is changed.
46569         (jm-glibc-io.m4): New rule.
46570         (unlocked-io.h): New rule -- currently unused.
46571
46572 2001-06-24  Jim Meyering  <meyering@lucent.com>
46573
46574         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
46575         unmatched right bracket, rather than kludging it with an extra,
46576         falsely-matching quote in a comment.  Patch by Akim Demaille.
46577
46578 2001-06-11  Jim Meyering  <meyering@lucent.com>
46579
46580         * lib/regex.c: Update from GNU libc.
46581
46582 2001-05-27  Jim Meyering  <meyering@lucent.com>
46583
46584         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
46585         Check for ut_type in struct utmp.
46586
46587 2001-05-27  Jim Meyering  <meyering@lucent.com>
46588
46589         * lib/readutmp.h (UT_TYPE): Define.
46590
46591 2001-05-24  Jim Meyering  <meyering@lucent.com>
46592
46593         * lib/argmatch.c: Include "quote.h".
46594         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
46595         quote function.  Reported by Göran Uddeborg.
46596
46597 2001-05-22  Jim Meyering  <meyering@lucent.com>
46598
46599         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
46600         now that we use the package-supplied version unconditionally.
46601         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
46602
46603 2001-05-21  Jim Meyering  <meyering@lucent.com>
46604
46605         * m4/regex.m4: Change a couple backticks to single quotes to avoid
46606         shell syntax errors.
46607
46608 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
46609
46610         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
46611
46612 2001-05-20  Paul Eggert  <eggert@twinsun.com>
46613
46614         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
46615         Don't bother to check library strftime, since
46616         we'll be using our own my_strftime function anyway.
46617         Define my_strftime instead of strftime.
46618
46619 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
46620
46621         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
46622         which is not yet declared.
46623
46624 2001-05-15  Jim Meyering  <meyering@lucent.com>
46625
46626         * m4/regex.m4: Use proper quoting so brackets appear in the test
46627         program.
46628         Reported by, and with help from, Bruno Haible.
46629
46630 2001-05-13  Jim Meyering  <meyering@lucent.com>
46631
46632         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
46633         undefined.
46634
46635 2001-05-11  Paul Eggert  <eggert@twinsun.com>
46636
46637         dirname code cleanup.  base_name now behaves more compatibly
46638         with POSIX basename when given file names that have trailing
46639         slashes, and similarly for dir_name.  Add new primitives
46640         base_len and dir_len.  Put the directory-name-related decls
46641         into dirname.h.
46642
46643         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
46644         * lib/backupfile.c (base_name): Likewise.
46645         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
46646         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
46647         * lib/makepath.c (strip_trailing_slashes): Likewise.
46648         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
46649         ISSLASH): Likewise.
46650         * lib/rename.c (strip_trailing_slashes): Likewise.
46651         * lib/same.c (base_name): Likewise.
46652         * lib/stripslash.c (ISSLASH): Likewise.
46653
46654         * lib/addext.c: Include <dirname.h> after size_t is defined.
46655         * lib/backupfile.c: Likewise.
46656
46657         * lib/addext.c (addext): Use base_len to trim redundant
46658         trailing slashes instead of doing it ourselves.
46659         But do not trim the last slash if it is not redundant.
46660
46661         * lib/backupfile.c (find_backup_file_name,
46662         max_backup_version): Use base_len instead of rolling it ourselves.
46663         Handle the case of "" and (on DOS) "C:" correctly.
46664
46665         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
46666         needed. Include <string.h>, <dirname.h>.
46667         (base_name): Allow file names ending in slashes, other than names
46668         that are all slashes.  In this case, return the basename followed
46669         by the slashes.  This is more general, and can be used in places
46670         where the original base_name purposely had an assertion failure.
46671         (base_len): New function.
46672
46673         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
46674         Do not include <assert.h>; no longer needed.
46675         Include xalloc.h.
46676         (memrchr): Remove decl.
46677         (dir_name_r): Remove.
46678         (dir_len): Renamed from dirlen.  All callers changed.
46679         Rewrite in terms of base_name, for simplicity and consistency.
46680         (dir_name): Never return NULL.  All callers changed.
46681         Do not include <stdlib.h> in test program; no longer needed.
46682         return 0; is fine for test program.
46683
46684         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
46685         New macros.
46686         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
46687
46688         * lib/path-concat.c (path_concat): Use base_len to compute
46689         base length, not strlen; this means we cannot rely on memcpy
46690         to null-terminate.
46691
46692         * lib/same.c (STREQ): Remove.
46693         (same_name): Handle the case where the basename ends in trailing '/'.
46694
46695         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
46696         a slash was stripped.  Do not strip the last slash after a
46697         file system prefix.
46698
46699 2001-05-11  Paul Eggert  <eggert@twinsun.com>
46700
46701         * lib/Makefile.am (libfetish_a_SOURCES):
46702         Add strftime.c, since we now compile it on all hosts.
46703
46704         * lib/strftime.c (my_strftime):
46705         Define to nstrftime if emacs, but only if my_strftime is not defined.
46706         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
46707         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
46708         Add one more extra argument: a nanoseconds value.
46709         All uses changed.
46710         (ns): New macro.
46711         (my_strftime function): Add %N format.
46712         (emacs_strftimeu): Renamed from emacs_strftime,
46713         with extra ut argument.
46714
46715 2001-05-09  Paul Eggert  <eggert@twinsun.com>
46716
46717         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
46718
46719 2001-04-21  Jim Meyering  <meyering@lucent.com>
46720
46721         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
46722         doesn't interfere.
46723
46724 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
46725
46726         * m4/ftruncate.m4: Check for chsize.
46727         Link with ftruncate.o unconditionally if ftruncate is missing.
46728         This was required when cross-compiling to i586-mingw32msvc.
46729
46730 2001-04-08  Jim Meyering  <meyering@lucent.com>
46731
46732         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
46733         recomputed; that's necessary when the offset spans a DST transition.
46734         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
46735
46736 2001-04-02  Jim Meyering  <meyering@lucent.com>
46737
46738         * lib/regex.h, regex.c: Update from GNU libc.
46739
46740 2001-03-24  Jim Meyering  <meyering@lucent.com>
46741
46742         * m4/jm-macros.m4: Require autoconf-2.49d.
46743
46744 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
46745
46746         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
46747
46748 2001-03-19  Paul Eggert  <eggert@twinsun.com>
46749
46750         * lib/version-etc.c (version_etc_copyright): Update to 2001.
46751
46752 2001-03-17  Jim Meyering  <meyering@lucent.com>
46753
46754         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
46755         now that the version in autoconf is equivalent.
46756         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
46757
46758         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
46759         Suggestion from Akim Demaille.
46760
46761         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
46762         (jm_PREREQ_TEMPNAME): New function.
46763
46764 2001-03-16  Paul Eggert  <eggert@twinsun.com>
46765
46766         * lib/tempname.c (uint64_t): Define to uintmax_t if
46767         not defined, and if UINT64_MAX is not defined.
46768         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
46769         Reported by John David Anglin.
46770
46771 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
46772
46773         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
46774         resolve alias if codeset is empty.
46775         * lib/config.charset (BeOS): Use wildcard syntax.
46776
46777 2001-03-13  Jim Meyering  <meyering@lucent.com>
46778
46779         * lib/path-concat.c (path_concat)
46780         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
46781         concatenating e.g., `C:' and `foo'.
46782         From Bruno Haible.
46783
46784 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
46785
46786         * lib/localcharset.c (locale_charset): Don't use
46787         setlocale(LC_CTYPE,NULL). Don't return NULL.
46788         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
46789
46790 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
46791
46792         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
46793         support for DOS/DJGPP.
46794
46795 2001-03-01  Paul Eggert  <eggert@twinsun.com>
46796
46797         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
46798         lacks mkstemp.  Compile our own tempname.c if we compile our own
46799         mkstemp.c, as mkstemp relies on tempname.
46800
46801 2001-03-01  Jim Meyering  <meyering@lucent.com>
46802
46803         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
46804         AH_VERBATIM really does output its argument verbatim.
46805
46806 2001-02-28  Paul Eggert  <eggert@twinsun.com>
46807
46808         * lib/Makefile.am (libfetish_a_SOURCES):
46809         Add dup-safer.c, fopen-safer.c.
46810         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
46811
46812         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
46813         * lib/unistd-safer.h: New files.
46814
46815 2001-02-25  Paul Eggert  <eggert@twinsun.com>
46816
46817         The mkstemp replacement is taken from glibc 2.2.2, with some
46818         portability fixes for use outside glibc, as follows:
46819
46820         * lib/tempname.c (struct_stat64): New macro.
46821         (direxists, __gen_tempname): Use it.
46822         This avoids a portability problem with Solaris 8.
46823
46824         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
46825         (<stddef.h>, <stdint.h>, <string.h>):
46826         Include only if STDC_HEADERS || _LIBC.
46827         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
46828         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
46829         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
46830         (__set_errno): Define this macro if <errno.h> doesn't.
46831         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
46832         Define these macros if <stdio.h> doesn't.
46833         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
46834         Define these macros if <sys/stat.h>
46835         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
46836         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
46837         __xstat64): Define if not _LIBC.
46838         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
46839         (__gen_tempname): Invoke gettimeofday only if
46840         HAVE_GETTIMEOFDAY || _LIBC;
46841         otherwise, fall back on plain "time".
46842         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
46843
46844         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
46845
46846         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
46847
46848 2001-02-18  Paul Eggert  <eggert@twinsun.com>
46849
46850         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
46851
46852 2001-02-17  Paul Eggert  <eggert@twinsun.com>
46853
46854         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
46855         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
46856         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
46857         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
46858
46859 2001-02-17  Paul Eggert  <eggert@twinsun.com>
46860
46861         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
46862         Remove workaround macros for hosts that have mbrtowc but not
46863         mbstate_t, as we now insist on proper declarations for both
46864         before using mbrtowc.
46865
46866 2001-02-17  Jim Meyering  <meyering@lucent.com>
46867
46868         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
46869         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
46870         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
46871         UnixWare 7.1.1.
46872
46873         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
46874         rather than AC_CACHE_VAL.
46875
46876 2001-02-17  Jim Meyering  <meyering@lucent.com>
46877
46878         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
46879         around included file name.
46880
46881         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
46882
46883         * lib/strftime.c: Update from GNU libc (the only changes were to
46884         comments).
46885
46886 2001-02-17  Jim Meyering  <meyering@lucent.com>
46887
46888         * lib/regex.c: Update from libc.
46889
46890 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
46891
46892         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
46893         clash.
46894
46895 2001-02-16  Paul Eggert  <eggert@twinsun.com>
46896
46897         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
46898         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
46899         Reported by Mark Hounschell via Paul Eggert.
46900
46901 2001-02-07  Jim Meyering  <meyering@lucent.com>
46902
46903         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
46904
46905 2001-02-05  Jim Meyering  <meyering@lucent.com>
46906
46907         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
46908         it includes the patch required for `large file' support with at least
46909         HP-UX's 10.20 /bin/cc.
46910
46911 2001-02-03  Jim Meyering  <meyering@lucent.com>
46912
46913         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
46914         AS_IF, now that it works once again (mysteriously).
46915         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
46916
46917 2001-01-30  Jim Meyering  <meyering@lucent.com>
46918
46919         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
46920         * m4/chown.m4: Rename conftestchown to conftest.chown.
46921         * m4/rename.m4: s/conftestdir/conftest.d1/ and
46922         s/conftestdir2/conftest.d2/.
46923         * m4/utimes.m4: s/conftestdata/conftest.data/
46924         Inspired by Pavel Roskin's change in autoconf.
46925
46926 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
46927
46928         * lib/config.charset: Update for FreeBSD 4.2.
46929
46930 2001-01-27  Jim Meyering  <meyering@lucent.com>
46931
46932         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
46933         a use of AS_IF.
46934         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
46935
46936 2001-01-26  Jim Meyering  <meyering@lucent.com>
46937
46938         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
46939         quotearg.c includes it.
46940
46941 2001-01-26  Jim Meyering  <meyering@lucent.com>
46942
46943         * lib/quotearg.c: Include stddef.h.
46944         * lib/quote.c: Include stddef.h.
46945         Reported by Axel Kittenberger.
46946
46947         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
46948         line in double quotes so that it evokes a better diagnostic.
46949         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
46950         Reported by Axel Kittenberger.
46951
46952 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
46953
46954         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
46955         as if it was a `charset'.
46956
46957 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
46958
46959         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
46960         has const.
46961
46962 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
46963
46964         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
46965         to avoid a warning.  Add back 'const' to inptr.
46966
46967 2001-01-20  Jim Meyering  <meyering@lucent.com>
46968
46969         Be sure that headers are checked before used in code compiled
46970         for the type checks.
46971         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
46972         In place of that, invoke jm_CHECK_ALL_TYPES.
46973         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
46974         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
46975         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
46976         The check for ssize_t was mistakenly run before the test for unistd.h.
46977
46978         The configure-time check for stdbool.h was missing.
46979         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
46980         (jm_PREREQ_HASH): New function.
46981
46982 2001-01-17  Jim Meyering  <meyering@lucent.com>
46983
46984         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
46985         for autoconf-2.49c.
46986         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
46987
46988 2001-01-16  Jim Meyering  <meyering@lucent.com>
46989
46990         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
46991         From Bruno Haible.
46992
46993 2001-01-14  Jim Meyering  <meyering@lucent.com>
46994
46995         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
46996         foo and bar.  Create conftestdir/ in the script, not in the C code.
46997         Remove directories in the script, not in the C code.
46998         Remove conftestdir{,2} before trying to create the directory.
46999         Make the entire configure script fail if the mkdir fails.
47000
47001 2001-01-14  Jim Meyering  <meyering@lucent.com>
47002
47003         * lib/rename.c: New file.  From Volker Borchert.
47004         Include stdlib.h, string.h or strings.h, and xalloc.h.
47005         Use strip_trailing_slashes rather than open-coding it.
47006
47007 2001-01-03  Paul Eggert  <eggert@twinsun.com>
47008
47009         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
47010
47011 2001-01-03  Jim Meyering  <meyering@lucent.com>
47012
47013         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
47014         of local `inptr' to avoid warning with some system declarations of
47015         iconv.
47016
47017 2001-01-02  Volker Borchert  <bt@teknon.de>
47018
47019         * m4/rename.m4: New file.
47020         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
47021
47022 2001-01-01  Jim Meyering  <meyering@lucent.com>
47023
47024         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
47025         even on systems with utmpx.h.  It's necessary for the declaration of
47026         utmp's ut_user member.  Reported by Andreas Jaeger.
47027
47028         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
47029         available. They are required for the declarations of getgrgid and
47030         getpwuid resp.
47031         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
47032         Reported by Andreas Jaeger.
47033
47034 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
47035
47036         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
47037         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
47038         so `make install' also works in VPATH builds.
47039
47040 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
47041
47042         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
47043         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
47044         can be used in subdirectories.
47045
47046 2000-12-29  Paul Eggert  <eggert@twinsun.com>
47047
47048         * lib/modechange.c: Do not assume that mode_t uses the
47049         traditional octal encoding.  E.g. "chmod 1 FOO" should set
47050         the other-execute bit of FOO even if S_IXOTH != 1.
47051
47052         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
47053         WOTH, XOTH, ALLM): New macros.
47054         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
47055          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
47056         Use them.
47057         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
47058         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
47059         (mode_compile):
47060         No need to use uintmax_t; unsigned long is long enough.
47061         Don't bother to get suffix since we don't use it.
47062
47063 2000-12-26  Jim Meyering  <meyering@lucent.com>
47064
47065         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
47066         better with autoheader.
47067
47068 2000-12-24  Jim Meyering  <meyering@lucent.com>
47069
47070         * lib/hash.c (is_prime): Return explicit boolean values.
47071         (hash_get_first): Return NULL to appease Irix5.6's 89.
47072         Reported by Nelson Beebe.
47073
47074 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
47075
47076         * lib/localcharset.c (locale_charset): Add support for Win32.
47077
47078 2000-12-18  Paul Eggert  <eggert@twinsun.com>
47079
47080         * lib/physmem.h, lib/physmem.c: New files.
47081
47082         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
47083         (noinst_HEADERS): Add physmem.h.
47084
47085         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
47086         't' for compatibility with Solaris 8 sort.
47087
47088 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
47089
47090         * lib/config.charset: Add support for BeOS.
47091
47092 2000-12-17  Jim Meyering  <meyering@lucent.com>
47093
47094         * m4/dos.m4 (jm_AC_DOS): New file and macro.
47095         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
47096
47097 2000-12-16  Jim Meyering  <meyering@lucent.com>
47098
47099         This bug had a serious impact on chown: `chown N:M FILE' (for integer
47100         N and M) would have treated it like `chown N:N FILE'.
47101
47102         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
47103
47104 2000-12-16  Jim Meyering  <meyering@lucent.com>
47105
47106         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
47107         SHELLS_FILE to a file name that's useful on djgpp systems.
47108         Include stdlib.h.
47109         (ADDITIONAL_DEFAULT_SHELLS): Define.
47110         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
47111         Based mostly on a patch from Prashant TR.
47112
47113 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
47114
47115         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
47116         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
47117         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
47118
47119 2000-12-08  Andreas Schwab  <schwab@suse.de>
47120
47121         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
47122         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
47123
47124 2000-12-07  Jim Meyering  <meyering@lucent.com>
47125
47126         * lib/stripslash.c (ISSLASH): Define.
47127         (strip_trailing_slashes): Use ISSLASH rather than comparing against
47128         `/'.
47129         From Prashant TR.
47130
47131         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
47132         (dir_name_r): Declare this function as static.
47133         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
47134         manifest itself on a name containing a mix of slashes and
47135         backslashes.
47136         Make this function work with names starting with a DOS-style
47137         drive letter and colon prefix.
47138         (dir_name): Append `.' if necessary.
47139         Based mostly on patches from Prashant TR and Eli Zaretskii.
47140
47141         * lib/dirname.h (dir_name_r): Remove prototype.
47142
47143 2000-12-06  Paul Eggert  <eggert@twinsun.com>
47144
47145         * m4/off_t-format.m4: Remove this file.
47146         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
47147
47148 2000-12-06  Jim Meyering  <meyering@lucent.com>
47149
47150         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
47151         replacement strtoull, we may well need the replacement strtoul, too.
47152         Check for declarations of strtoul and strtoull.
47153         Check for strtol.  Mainly as a cue to cause automake to include
47154         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
47155         Check for limits.h -- strtol.c needs it.
47156
47157 2000-12-05  Jim Meyering  <meyering@lucent.com>
47158
47159         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
47160
47161 2000-12-04  Jim Meyering  <meyering@lucent.com>
47162
47163         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
47164         Also include memory.h, stdlib.h, unistd.h if appropriate.
47165         Reported by Andreas Jaeger (conflicting declaration of malloc).
47166
47167 2000-12-02  Jim Meyering  <meyering@lucent.com>
47168
47169         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
47170         * m4/jm-macros.m4 (jm_MACROS): require it.
47171
47172 2000-12-02  Jim Meyering  <meyering@lucent.com>
47173
47174         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
47175
47176 2000-12-01  Paul Eggert  <eggert@twinsun.com>
47177
47178         * lib/memrchr.c: Include <config.h> before any system include file.
47179
47180 2000-11-30  Jim Meyering  <meyering@lucent.com>
47181
47182         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
47183
47184 2000-11-30  Jim Meyering  <meyering@lucent.com>
47185
47186         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
47187
47188 2000-11-29  Paul Eggert  <eggert@twinsun.com>
47189
47190         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
47191
47192 2000-11-26  Jim Meyering  <meyering@lucent.com>
47193
47194         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
47195
47196 2000-11-22  Paul Eggert  <eggert@twinsun.com>
47197
47198         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
47199         size of (size_t) -1; it's not portable.
47200
47201 2000-11-17  Jim Meyering  <meyering@lucent.com>
47202
47203         * lib/strstr.c: Update from GNU libc.
47204
47205 2000-11-17  Akim Demaille  <akim@epita.fr>
47206
47207         * lib/obstack.h: Formatting changes.
47208         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
47209         prevent type checking.
47210         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
47211         cast the value to (void *): assigning a `foo *' to a `void *'
47212         variable is valid.
47213         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
47214
47215 2000-11-16  Jim Meyering  <meyering@lucent.com>
47216
47217         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
47218
47219 2000-11-11  Jim Meyering  <meyering@lucent.com>
47220
47221         * lib/error.c: Add a couple #includes, merging from GNU libc version.
47222
47223 2000-11-10  Jim Meyering  <meyering@lucent.com>
47224
47225         * lib/obstack.h: Update from GNU libc.
47226         * lib/obstack.c: Likewise.
47227
47228 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
47229
47230         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
47231
47232 2000-11-06  Paul Eggert  <eggert@twinsun.com>
47233
47234         * lib/getusershell.c (setusershell): Use rewind rather than
47235         fseek/fseeko, to avoid configuration hassles with fseeko.
47236         Don't bother opening SHELLS_FILE if shellstream is NULL;
47237         it's not necessary.
47238
47239 2000-11-05  Jim Meyering  <meyering@lucent.com>
47240
47241         * lib/makepath.h (make_dir): Declare.
47242         * lib/makepath.c (make_dir): Remove `static' attribute.
47243         Tweak a comment.
47244
47245 2000-11-04  Jim Meyering  <meyering@lucent.com>
47246
47247         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
47248
47249 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
47250
47251         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
47252         last one in a bucket, advance to the next bucket.
47253
47254 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
47255
47256         * lib/fnmatch.c: Do not comment out all the code if we are using
47257         the GNU C library, because in some cases we are replacing buggy
47258         code in the GNU C library itself.
47259
47260 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
47261
47262         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
47263         (regex_compile): Catch bogus \(\1\).
47264
47265 2000-10-30  Paul Eggert  <eggert@twinsun.com>
47266
47267         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
47268         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
47269         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
47270
47271 2000-10-30  Paul Eggert  <eggert@twinsun.com>
47272
47273         * lib/error.h, getline.h, modechange.h:
47274         Remove "2000" from Copyright line, as the file hasn't been
47275         changed this year other than in the copyright notice.
47276
47277         * lib/xalloc.h: Add "2000" to Copyright line, as this file
47278         was changed this year.
47279
47280 2000-10-29  Jim Meyering  <meyering@lucent.com>
47281
47282         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
47283         renaming.
47284         * m4/ls-mntd-fs.m4: Likewise
47285
47286 2000-10-29  Jim Meyering  <meyering@lucent.com>
47287
47288         * lib/xstat.in: Fix grammar in comment.
47289
47290 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
47291
47292         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
47293         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
47294         doesn't define __restrict_arr.
47295
47296 2000-10-28  Jim Meyering  <meyering@lucent.com>
47297
47298         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
47299         (jm_PREREQ_MEMCHR): New function.
47300
47301 2000-10-28  Jim Meyering  <meyering@lucent.com>
47302
47303         * lib/memchr.c: Update from libc.
47304         Adjust for portability:
47305         [HAVE_STDLIB_H]: Include stdlib.h.
47306         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
47307         Undef __memchr, too.
47308         [!weak_alias]: Define __memchr to memchr.
47309
47310         * lib/regex.c: Update from libc.
47311         * lib/regex.h: Likewise.
47312         * lib/getopt1.c: Likewise.
47313         * lib/memcmp.c: Likewise.
47314
47315         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
47316         Avoid using fseek, when possible -- it's broken by design.
47317         Patch by Ulrich Drepper.
47318
47319 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
47320
47321         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
47322         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
47323         Giving in to popular pressure to shut up the compiler with casts.
47324
47325 2000-10-26  Jim Meyering  <meyering@lucent.com>
47326
47327         * lib/strftime.c: Update from libc.
47328
47329 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
47330
47331         * regex.c: More `unsigned char' -> `re_char' changes.
47332         Also change several `int' into `re_wchar_t'.
47333         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
47334         (PUSH_FAILURE_POINTER): Don't cast any more.
47335         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
47336         We want GCC to complain, since this piece of code makes
47337         re_match non-reentrant, which *should* be fixed.
47338         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
47339         (EXTEND_BUFFER): Use RETALLOC.
47340         (SET_LIST_BIT): Don't cast.
47341         (re_wchar_t): New type.
47342         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
47343         that those two functions will always properly return.
47344         (IMMEDIATE_QUIT_CHECK): Cast to void.
47345         (analyse_first): Use recursion rather than an explicit stack.
47346         (re_compile_fastmap): Can't fail anymore.
47347         (re_search_2): Don't check re_compile_fastmap for failure.
47348         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
47349         Now also sets the new value (passed in a new argument).
47350         (re_match_2_internal): Use it.
47351         Also, use a new var `reg' of type size_t when looping through regs
47352         rather than reuse the inappropriate `mcnt'.
47353
47354 2000-10-25  Jim Meyering  <meyering@lucent.com>
47355
47356         * lib/obstack.c: Update from libc.
47357
47358 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
47359
47360         * regex.c (regex_compile): Change the way of handling a range from
47361         a char less than 256 to a char not less than 256.
47362
47363 2000-10-24  Andrew Innes  <andrewi@gnu.org>
47364
47365         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
47366         NT-Emacs only.
47367         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
47368         so that re_search functions only quit when callers expect them to.
47369
47370 2000-10-23  Jim Meyering  <meyering@lucent.com>
47371
47372         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
47373         wrong.  That set_locale call must not have any side effects.
47374         From Paul Eggert.
47375
47376 2000-10-22  Jim Meyering  <meyering@lucent.com>
47377
47378         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
47379         [CYCLIC]: Remove now-unused definition.
47380
47381         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
47382         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
47383         Suggestion from Ulrich Drepper.
47384
47385 2000-10-21  Jim Meyering  <meyering@lucent.com>
47386
47387         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
47388         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
47389         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
47390
47391 2000-10-21  Jim Meyering  <meyering@lucent.com>
47392
47393         * lib/dirname.c (memrchr): Declare if necessary.
47394         (dir_name): Remove the restriction that there be no
47395         trailing slashes.  Now, this code skips past them, effectively
47396         ignoring them.
47397         [TEST_DIRNAME] (main): New unit tests.
47398
47399         * lib/memrchr.c: New file from GNU libc.
47400         Undef __memrchr, too.
47401         [!weak_alias]: Define __memrchr to memrchr.
47402         Guard weak_alias use with `#ifdef weak_alias'.
47403
47404 2000-10-21  Jim Meyering  <meyering@lucent.com>
47405
47406         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
47407         (dir_name): Use dir_name_r.
47408         * lib/dirname.h (dir_name_r): Declare it.
47409
47410 2000-10-17  Jim Meyering  <meyering@lucent.com>
47411
47412         * lib/quote.h (PARAMS): Define and use.
47413         Reported by Akim Demaille.
47414
47415         * lib/getopt.c: Update from libc.
47416
47417 2000-10-16  Jim Meyering  <meyering@lucent.com>
47418
47419         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
47420         setlocale.
47421         From Jan Fedak.
47422
47423 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
47424
47425         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
47426
47427 2000-09-25  Jim Meyering  <meyering@lucent.com>
47428
47429         * lib/md5.h (rol): Define (from GnuPG).
47430
47431         * lib/sha.c: Give credit (GnuPG) where due.
47432         (M): Use rol rather than open-coding it.
47433         Add a FIXME comment.
47434
47435 2000-09-21  Jim Meyering  <meyering@lucent.com>
47436
47437         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
47438         Reported by Michael Stone.
47439
47440 2000-09-20  Jim Meyering  <meyering@lucent.com>
47441
47442         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
47443         (noinst_HEADERS): Add sha.h.
47444         Based on code from Scott G. Miller and from GnuPG.
47445
47446 2000-09-18  Jim Meyering  <meyering@lucent.com>
47447
47448         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
47449         LIBS. Otherwise, everyone ends up linking with -lelf for some
47450         configurations.
47451         Reported by Mike Stone.
47452
47453 2000-09-15  Jim Meyering  <meyering@lucent.com>
47454
47455         * lib/regex.c: Update from libc.
47456
47457 2000-09-10  Jim Meyering  <meyering@lucent.com>
47458
47459         * lib/getopt.c (_getopt_internal): Update from glibc.
47460
47461 2000-09-09  Jim Meyering  <meyering@lucent.com>
47462
47463         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
47464         think it should be used as a general replacement for isascii.
47465         * lib/fnmatch.c: Likewise.
47466         * lib/mbswidth.c: Likewise
47467         * lib/regex.c: Likewise.
47468
47469         Don't use atoi.
47470         * lib/userspec.c: Include sys/param.h and limits.h.
47471         Include xstrtol.h.
47472         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
47473         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
47474         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
47475         UID, GID.  Check range.
47476
47477 2000-09-06  Jim Meyering  <meyering@lucent.com>
47478
47479         * lib/getopt.c (_getopt_internal): Update from glibc.
47480
47481 2000-08-30  Jim Meyering  <meyering@lucent.com>
47482
47483         * lib/strftime.c: Merge in changes from GNU libc.
47484
47485 2000-08-26  Jim Meyering  <meyering@lucent.com>
47486
47487         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
47488         * m4/fpending.m4: New file.
47489
47490 2000-08-26  Jim Meyering  <meyering@lucent.com>
47491
47492         * lib/closeout.c: Include "__fpending.h".
47493         (close_stdout_status): Return right away if there's nothing to flush.
47494
47495         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
47496         * lib/__fpending.c: New file.
47497         * lib/__fpending.h: New file.
47498
47499 2000-08-20  Jim Meyering  <meyering@lucent.com>
47500
47501         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
47502         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
47503         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
47504
47505 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
47506
47507         Improve fileutils installation on systems where running
47508         programs (like install) can't be unlinked.
47509         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
47510         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
47511
47512 2000-08-07  Paul Eggert  <eggert@twinsun.com>
47513
47514         Standardize on "memory exhausted" instead of "Memory exhausted"
47515         or "virtual memory exhausted".
47516         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
47517         "virtual memory exhausted".
47518         * lib/same.c (same_name): Invoke xalloc_die instead of printing
47519         our own message.
47520         * lib/userspec.c (parse_user_spec): Likewise.
47521         * lib/bumpalloc.h: comment fix
47522         * lib/same.c, userspec.c: Include xalloc.h.
47523
47524         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
47525         not char *const and pointing to a constant array.
47526         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
47527         (xrealloc): Comment fix.
47528
47529         * lib/userspec.c (parse_user_spec):
47530         Don't translate a message until just before returning,
47531         to avoid unnecessary translation.
47532
47533 2000-08-07  Jim Meyering  <meyering@lucent.com>
47534
47535         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
47536         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
47537         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
47538         getgroups.c, gethostname.c, getopt.h, group-member.c,
47539         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
47540         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
47541         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
47542         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
47543         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
47544         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
47545         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
47546         yesno.c: Back out Copyright date changes for each file with no change
47547         this year.  This eases coordination with other programs using the same
47548         source code modules.  From Paul Eggert.
47549
47550 2000-08-06  Paul Eggert  <eggert@twinsun.com>
47551
47552         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
47553         not char, for compatibility with glibc 2.1.3 strftime.c.
47554
47555 2000-08-03  Greg McGary  <greg@mcgary.org>
47556
47557         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
47558         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
47559         (EXTEND_BUFFER): Use them.
47560
47561 2000-08-01  Jim Meyering  <meyering@lucent.com>
47562
47563         * lib/dirname.c (ISSLASH): Define.
47564         (BACKSLASH_IS_PATH_SEPARATOR): Define.
47565         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
47566         both `\' and `/' may be use as path separators.
47567         Based on a patch from Prashant TR.
47568
47569 2000-07-31  Paul Eggert  <eggert@twinsun.com>
47570
47571         * lib/quotearg.c (quotearg_n_options): Don't make the initial
47572         slot vector a constant, since it might get modified.
47573
47574 2000-07-31  Jim Meyering  <meyering@lucent.com>
47575
47576         * lib/xmalloc.c: Use `virtual memory exhausted', not
47577         `Memory exhausted'.
47578         * lib/obstack.c (print_and_abort): Likewise.
47579
47580 2000-07-30  Paul Eggert  <eggert@twinsun.com>
47581
47582         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
47583         buffer, so that the caller can always quote one small
47584         component of a "memory exhausted" message in slot 0.
47585         From a suggestion by Jim Meyering.
47586
47587 2000-07-30  Jim Meyering  <meyering@lucent.com>
47588
47589         * lib/makepath.c (make_path): Quote the other instance, too.
47590
47591         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
47592         (STATIC_BUF_SIZE): Define.
47593         (quotearg_n_options): Use only statically allocated storage when
47594         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
47595         than STATIC_BUF_SIZE.
47596
47597 2000-07-29  Jim Meyering  <meyering@lucent.com>
47598
47599         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
47600         * lib/dirname.c (dir_name): Likewise.
47601
47602         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
47603         `/'.
47604
47605         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
47606         (dir_name): Assert that there are no trailing slashes.
47607
47608 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
47609
47610         * lib/mbswidth.h (mbswidth): Add a flags argument.
47611         (mbswidth): New declaration.
47612         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
47613         * lib/mbswidth.c (mbswidth): Add a flags argument.
47614         (mbsnwidth): New function.
47615
47616 2000-07-24  Jim Meyering  <meyering@lucent.com>
47617
47618         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
47619
47620 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47621
47622         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
47623
47624 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47625
47626         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
47627         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
47628         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
47629         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
47630         invoke multibyte primitives.
47631
47632 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47633
47634         * lib/quotearg.c:
47635         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
47636         so that mbstate_t is always defined.
47637
47638         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
47639         be 1 in at least one GCC installation, and this configuration
47640         error is likely to be common.  Ignoring MB_LEN_MAX hurts
47641         performance on hosts that have mbrtowc but have only unibyte
47642         locales, but I assume these hosts are rare.
47643
47644 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47645
47646         * lib/mbswidth.c (_XOPEN_SOURCE):
47647         Don't define; this causes problems on Solaris 7.
47648         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
47649
47650 2000-07-23  Jim Meyering  <meyering@lucent.com>
47651
47652         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
47653         too: getgrgid, getpwuid, getuid.
47654
47655 2000-07-23  Jim Meyering  <meyering@lucent.com>
47656
47657         * lib/basename.c (base_name): Add an assertion.
47658
47659 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
47660
47661         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
47662         shadow its mbsinit function.
47663
47664 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
47665
47666         * lib/mbswidth.h: New file.
47667         * lib/mbswidth.c: New file.
47668         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
47669         (noinst_HEADERS): Add mbswidth.h.
47670
47671 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
47672
47673         * lib/config.charset: Add support for FreeBSD. Improve support for
47674         HP-UX and IRIX 6.
47675
47676 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
47677
47678         * m4/mbswidth.m4: New file.
47679         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
47680
47681 2000-07-15  Jim Meyering  <meyering@lucent.com>
47682
47683         * lib/makepath.c: Include quote.h.
47684         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
47685         corresponding argument in a `quote (...)' call.
47686         Give better diagnostics.
47687
47688         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
47689         (noinst_HEADERS): Add quote.h.
47690
47691         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
47692         from tar's src/misc.c.
47693         * lib/quote.h: New file.  Prototypes for same.
47694
47695 2000-07-14  Paul Eggert  <eggert@twinsun.com>
47696
47697         From a suggestion by Bruno Haible.
47698         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
47699         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
47700         to decide whether to define the BeOS workaround macro;
47701         this adjusts to the change to AC_MBSTATE_T.
47702
47703 2000-07-14  Jim Meyering  <meyering@lucent.com>
47704
47705         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
47706         jm_AC_TYPE_UINTMAX_T.
47707
47708 2000-07-13  Paul Eggert  <eggert@twinsun.com>
47709
47710         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
47711
47712         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
47713         quotearg_buffer_restyled): Add support for
47714         clocale_quoting_style.  Undo previous change to
47715         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
47716         and "{RIGHT QUOTATION MARK}" msgids.
47717
47718 2000-07-10  Paul Eggert  <eggert@twinsun.com>
47719
47720         From a suggestion by Bruno Haible.
47721         * m4/mbstate_t.m4 (AC_MBSTATE_T):
47722         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
47723         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
47724         and mbstate_t, to a single-part test that simply defines mbstate_t.
47725         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
47726         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
47727
47728 2000-07-10  Jim Meyering  <meyering@lucent.com>
47729
47730         * m4/strerror_r.m4: Mirror the correction made in autoconf.
47731
47732         * m4/gnu-source.m4: Output to confdefs.h directly.
47733         Suggestion from Akim Demaille.
47734
47735 2000-07-09  Paul Eggert  <eggert@twinsun.com>
47736
47737         The old behavior of quoting `like this' doesn't look good with
47738         newer, ISO-style fonts.  See:
47739         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
47740
47741         Instead, quote "like this" by default.  Let the translator
47742         tailor the locale-specific quoting behavior by providing
47743         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
47744
47745         * lib/quotearg.c (N_): New macro.
47746         (gettext_default): New function.
47747         (quotearg_buffer_restyled): Use
47748         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
47749         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
47750
47751 2000-07-09  Jim Meyering  <meyering@lucent.com>
47752
47753         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
47754         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
47755
47756         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
47757         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
47758
47759 2000-07-09  Jim Meyering  <meyering@lucent.com>
47760
47761         * lib/Most files: Update copyright dates to include 2000.
47762
47763 2000-07-08  Jim Meyering  <meyering@lucent.com>
47764
47765         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
47766         if not defined.
47767         (xgethostname): Remove now-unnecessary #ifdef.
47768         Move declaration of `err' into loop where it's used.
47769
47770 2000-07-05  Paul Eggert  <eggert@twinsun.com>
47771         and Bruno Haible  <haible@clisp.cons.org>
47772
47773         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
47774         only if the test for an object-type mbstate_t fails.  This
47775         prevents us from mistakenly reporting that mbstate_t is a
47776         system object type after we "#define mbstate_t int" to work
47777         around its lack.
47778
47779 2000-07-05  Paul Eggert  <eggert@twinsun.com>
47780         and Bruno Haible  <haible@clisp.cons.org>
47781
47782         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
47783
47784 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
47785
47786         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
47787         to strerror_r.
47788         Include <ctype.h> for use of isalpha.
47789
47790 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
47791
47792         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
47793         by allocating a larger buffer. Test the gethostname return value for
47794         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
47795         returns an error and ENAMETOOLONG isn't defined.
47796
47797 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
47798
47799         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
47800         dimension.
47801
47802 2000-07-04  Jim Meyering  <meyering@lucent.com>
47803
47804         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
47805         of the deprecated AC_CHECKING.
47806
47807 2000-07-04  Jim Meyering  <meyering@lucent.com>
47808
47809         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
47810         Reported by Bruno Haible.
47811
47812 2000-07-04  Jim Meyering  <meyering@lucent.com>
47813
47814         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
47815         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
47816         lacks mbrtowc.
47817
47818 2000-07-03  Paul Eggert  <eggert@twinsun.com>
47819
47820         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
47821         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
47822
47823 2000-07-03  Paul Eggert  <eggert@twinsun.com>
47824         and Bruno Haible  <haible@clisp.cons.org>
47825
47826         * lib/quotearg.c (mbrtowc):
47827         Assign to *pwc, and return 1 only if result is nonzero.
47828         (iswprint): Use ISPRINT when substituting our own mbrtowc.
47829
47830 2000-07-03  Jim Meyering  <meyering@lucent.com>
47831
47832         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
47833
47834 2000-07-03  Jim Meyering  <meyering@lucent.com>
47835
47836         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
47837         This is necessary to get a definition of e.g., UTMP_FILE on
47838         HP-UX 10.20.
47839         From Bob Proulx.
47840
47841 2000-07-02  Jim Meyering  <meyering@lucent.com>
47842
47843         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
47844
47845         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
47846         AC_LIBOBJ(function_name).
47847         * m4/chown.m4: Likewise.
47848         * m4/fnmatch.m4: Likewise.
47849         * m4/ftruncate.m4: Likewise.
47850         * m4/getgroups.m4: Likewise.
47851         * m4/getline.m4: Likewise.
47852         * m4/group-member.m4: Likewise.
47853         * m4/jm-macros.m4: Likewise.
47854         * m4/lstat.m4: Likewise.
47855         * m4/malloc.m4: Likewise.
47856         * m4/memcmp.m4: Likewise.
47857         * m4/nanosleep.m4: Likewise.
47858         * m4/putenv.m4: Likewise.
47859         * m4/realloc.m4: Likewise.
47860         * m4/regex.m4: Likewise.
47861         * m4/stat.m4: Likewise.
47862         * m4/strftime.m4: Likewise.
47863
47864 2000-07-02  Jim Meyering  <meyering@lucent.com>
47865
47866         * lib/quotearg.c (mbstate_t): Don't define here.
47867
47868 2000-07-02  Jim Meyering  <meyering@lucent.com>
47869
47870         * lib/nanosleep.c (SIGCONT): Define if not already defined.
47871
47872 2000-07-01  Jim Meyering  <meyering@lucent.com>
47873
47874         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
47875
47876 2000-07-01  Jim Meyering  <meyering@lucent.com>
47877
47878         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
47879         problem.
47880
47881 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
47882
47883         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
47884         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
47885
47886 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
47887
47888         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
47889         per change in ../m4/ls-mntd-fs.m4.
47890         (read_filesystem_list): Ignore symbolic links.
47891
47892 2000-06-29  Jim Meyering  <meyering@lucent.com>
47893
47894         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
47895         for declaration of strcmp.
47896
47897         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
47898
47899         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
47900         Avoid warning by casting result to `char *' to remove `const'.
47901
47902 2000-06-28  Jim Meyering  <meyering@lucent.com>
47903
47904         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
47905         included by quotearg.c, for which we perform this test.  From
47906         Bruno Haible.
47907
47908 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
47909
47910         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
47911         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
47912         <utmpx.h> exists, put readutmp.o into LIBOBJS.
47913
47914 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
47915
47916         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
47917
47918 2000-06-26  Paul Eggert  <eggert@twinsun.com>
47919
47920         savedir now sets errno on failure and invokes xmalloc to get memory.
47921         Fix a couple of other minor bugs while we're at it.
47922
47923         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
47924         (NAMLEN): Remove macro.
47925         (malloc, realloc): Remove decls.
47926         (stpcpy): Likewise.
47927         ("xalloc.h"): Include.
47928         (NAME_SIZE_DEFAULT): New macro.
47929         (savedir): Use xmalloc / xrealloc to allocate memory.
47930         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
47931         Skip "" directory entries.
47932         Use strlen to calculate directory entry length, since the old method
47933         is rarely used these days and isn't worth supporting.
47934         Don't use a pointer after freeing it.
47935         Check for integer overflow when calculating allocation size.
47936         Use memcpy to copy entries, instead of stpcpy.
47937         Set errno properly when returning NULL.
47938         Check for readdir error.
47939
47940 2000-06-26  Jim Meyering  <meyering@lucent.com>
47941
47942         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
47943
47944 2000-06-25  Jim Meyering  <meyering@lucent.com>
47945
47946         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
47947         Linux header bug when _XOPEN_SOURCE is defined to 500.
47948
47949 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
47950
47951         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
47952         deficiency.
47953
47954 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
47955
47956         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
47957         Include xalloc.h.
47958         Don't include <stdlib.h>.  Don't declare malloc, realloc.
47959
47960 2000-06-24  Jim Meyering  <meyering@lucent.com>
47961
47962         * m4/strerror_r.m4: Revive this file -- to try out an experimental
47963         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
47964         for which strerror does return char*, but which lacks a conveniently
47965         accessible declaration of the function.  If the compile-test says
47966         strerror_r doesn't work, then resort to a `run'-test that works on
47967         BeOS and segfaults on DEC Unix.
47968
47969 2000-06-24  Jim Meyering  <meyering@lucent.com>
47970
47971         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
47972
47973 2000-06-23  Paul Eggert  <eggert@twinsun.com>
47974
47975         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
47976         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
47977
47978 2000-06-23  Paul Eggert  <eggert@twinsun.com>
47979
47980         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
47981         (mbrtowc, mbstate_t): Define substitutes if
47982         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
47983         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
47984         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
47985
47986 2000-06-23  Jim Meyering  <meyering@lucent.com>
47987
47988         * m4/afs.m4: Add missing AC_MSG_RESULT.
47989         Reported by Bruno Haible.
47990
47991         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
47992         Suggestion from Bruno Haible.
47993
47994 2000-06-23  Jim Meyering  <meyering@lucent.com>
47995
47996         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
47997
47998 2000-06-21  Jim Meyering  <meyering@lucent.com>
47999
48000         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
48001
48002 2000-06-21  Jim Meyering  <meyering@lucent.com>
48003
48004         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
48005         (noinst_HEADERS): Add getstr.h.
48006
48007         * lib/getline.c (getstr): Move into a separate file.
48008         * lib/getstr.c (getstr): New file, extracted from getline.c, with
48009         the following changes: new parameter, delim2; both delim[12]
48010         parameters have type `int', not `char'.  The latter would lose
48011         with 8-bit delimiters.
48012         * lib/getstr.h: New file.
48013
48014 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
48015
48016         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
48017         than 1024, return a memory chunk of least possible size, instead
48018         of size PATH_MAX + 2. In the loop, increment the size proportionally.
48019         Use free/xmalloc instead of xrealloc to avoid copying for very long
48020         paths.
48021
48022 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
48023
48024         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
48025         the empty string.
48026
48027 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
48028
48029         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
48030         address, not strdup.  Include <stdlib.h> and don't declare free().
48031
48032 2000-06-19  Jim Meyering  <meyering@lucent.com>
48033
48034         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
48035
48036 2000-06-18  Jim Meyering  <meyering@lucent.com>
48037
48038         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
48039
48040         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
48041         `checking whether...' message to be consistent with that of the
48042         lstat test.
48043
48044 2000-06-18  Jim Meyering  <meyering@lucent.com>
48045
48046         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
48047         Besides, these days every porting target provides a mkdir function.
48048
48049         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
48050         needed. (this snippet comes from src/system.h).
48051
48052 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
48053
48054         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
48055
48056 2000-06-15  Paul Eggert  <eggert@twinsun.com>
48057
48058         * lib/human.c (adjust_value): New function.
48059         (human_readable_inexact): Apply rounding style even when
48060         printing approximate values.
48061
48062 2000-06-14  Paul Eggert  <eggert@twinsun.com>
48063
48064         * lib/human.c (human_readable_inexact): Allow an input block
48065         size that is not a multiple of the output block size, and vice versa.
48066         Reported by Piergiorgio Sartor.
48067
48068 2000-06-14  Paul Eggert  <eggert@twinsun.com>
48069
48070         * lib/getdate.y (get_date): Apply relative times after time
48071         zone indicator, not before.  Reported by Todd A. Jacobs.
48072
48073 2000-06-13  Jim Meyering  <meyering@lucent.com>
48074
48075         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
48076
48077         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
48078
48079 2000-06-12  Paul Eggert  <eggert@twinsun.com>
48080
48081         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
48082
48083 2000-06-12  Jim Meyering  <meyering@lucent.com>
48084
48085         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
48086         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
48087         optional argument.
48088         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
48089         the optional argument, `lib'.
48090
48091 2000-06-08  Jim Meyering  <meyering@lucent.com>
48092
48093         * m4/largefile.m4: Remove file (now that it's part of autoconf).
48094
48095 2000-06-04  Paul Eggert  <eggert@twinsun.com>
48096
48097         Rewrite largefile configuration so that we don't need to run
48098         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
48099         AC_CANONICAL_HOST in configure.in -- jmm]
48100
48101         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
48102         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
48103         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
48104         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
48105         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
48106         All uses changed.
48107         Instead of inspecting the output of getconf, try to compile the
48108         test program without and with the macro definition.
48109         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
48110         for getconf.  Instead, check for the needed flags by compiling
48111         test programs.
48112
48113 2000-06-04  Paul Eggert  <eggert@twinsun.com>
48114
48115         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
48116
48117 2000-06-04  Jim Meyering  <meyering@lucent.com>
48118
48119         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
48120         SunOS 4.1.4 for which gid_t is an unsigned type.
48121
48122 2000-06-03  Jim Meyering  <meyering@lucent.com>
48123
48124         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
48125         now that autoconf requires that.
48126
48127         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
48128         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
48129         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
48130
48131 2000-06-03  Jim Meyering  <meyering@lucent.com>
48132
48133         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
48134
48135 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
48136
48137         * m4/glibc21.m4: New file.
48138         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
48139
48140 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
48141
48142         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
48143         newer, don't install charset.alias.
48144         * lib/config.charset: Change the Linux/glibc rules so they become empty
48145         on glibc-2.1 or newer.
48146
48147 2000-06-02  Jim Meyering  <meyering@lucent.com>
48148
48149         * lib/mountlist.c: Back out last change.  Instead, do this...
48150         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
48151         me_dummy member using the same `ignore'-testing code.
48152         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
48153         fs_type strings.
48154         From Mark D. Roth.
48155
48156 2000-05-29  Jim Meyering  <meyering@lucent.com>
48157
48158         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
48159         mounts with the `ignore' attribute.  Based on a patch from
48160         Mark D. Roth.
48161
48162 2000-05-28  Jim Meyering  <meyering@lucent.com>
48163
48164         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
48165         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
48166         * m4/stat.m4: Likewise.
48167         * m4/lstat.m4: Likewise.
48168         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
48169
48170         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
48171         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
48172
48173 2000-05-26  Jim Meyering  <meyering@lucent.com>
48174
48175         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
48176
48177 2000-05-24  Jim Meyering  <meyering@lucent.com>
48178
48179         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
48180         autoconf requires that.
48181         * m4/lib-check.m4: Likewise.
48182         * m4/jm-macros.m4: Likewise.
48183         * m4/strftime.m4: Likewise.
48184
48185         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
48186         AC_CHECK_DECLS, now that autoconf requires that.
48187
48188 2000-05-22  Jim Meyering  <meyering@lucent.com>
48189
48190         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
48191         * m4/lstat.m4: Likewise.
48192
48193 2000-05-22  Jim Meyering  <meyering@lucent.com>
48194
48195         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
48196
48197 2000-05-20  Jim Meyering  <meyering@lucent.com>
48198
48199         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
48200         (jm_PREREQ): Use it.
48201
48202 2000-05-18  Jim Meyering  <meyering@lucent.com>
48203
48204         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
48205         back, too, since it may have been modified by allocate_entry.
48206         (hash_delete): Rewrite to use neither the assignment operator
48207         nor the comma operator in an if-expression.
48208
48209 2000-05-15  Paul Eggert  <eggert@twinsun.com>
48210
48211         * lib/closeout.c:
48212         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
48213         Remove; no longer needed.
48214         "quotearg.h": Add include.
48215         (file_name): Do not bother to explicitly initialize to NULL; it's less
48216         efficient on some hosts.
48217         (close_stdout_status): Remove test as to whether stdout was already
48218         closed; it breaks for the case "echo x | sort >&-".
48219         Quote file name colons.
48220         Do not assume that _("write error") lacks format strings.
48221
48222 2000-05-15  Jim Meyering  <meyering@lucent.com>
48223
48224         * lib/version-etc.c (version_etc_copyright): Update the copyright
48225         string used in all --version output.
48226
48227 2000-05-14  Jim Meyering  <meyering@lucent.com>
48228
48229         * lib/closeout.c (close_stdout_set_file_name): New function.
48230         (close_stdout_status): Use new file-scoped global.
48231         Return right away if fstat says the stdout file descriptor is invalid.
48232         * lib/closeout.h (close_stdout_set_file_name): Declare.
48233
48234 2000-05-10  Jim Meyering  <meyering@lucent.com>
48235
48236         * lib/closeout.c [default_exit_status]: New file-scoped variable.
48237         (close_stdout_set_status): New function.
48238         * lib/closeout.h (close_stdout_set_status): Declare.
48239
48240 2000-05-09  Jim Meyering  <meyering@lucent.com>
48241
48242         * m4/gettext.m4: Rename this...
48243         * m4/libintl.m4: ...to this.
48244
48245 2000-05-08  Jim Meyering  <meyering@lucent.com>
48246
48247         * lib/long-options.c: Don't include closeout.h.
48248         (parse_long_options): Don't call close_stdout for --version.
48249
48250 2000-05-06  Paul Eggert  <eggert@twinsun.com>
48251
48252         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
48253         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
48254         2.1.3 bug.  This avoids a clash when files like regex.c define
48255         _GNU_SOURCE.
48256
48257 2000-05-06  Jim Meyering  <meyering@lucent.com>
48258
48259         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
48260         (AC_REPLACE_FUNCS): Add strnlen.
48261
48262         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
48263         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
48264
48265         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
48266         AC_SEARCH_LIBS call for nanosleep.
48267         (LIB_NANOSLEEP): Set and AC_SUBST.
48268
48269 2000-05-06  Jim Meyering  <meyering@lucent.com>
48270
48271         * lib/strnlen.c: Undefine __strnlen and strnlen.
48272         [!weak_alias]: Define __strnlen to strnlen.
48273
48274         * lib/atexit.c: New file, from libiberty.
48275
48276 2000-05-06  Jim Meyering  <meyering@lucent.com>
48277
48278         * lib/closeout.c (close_stdout_status): Also check for errors on the
48279         stderr stream.
48280
48281 2000-05-05  Jim Meyering  <meyering@lucent.com>
48282
48283         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
48284         AC_SEARCH_LIBS call for clock_gettime.
48285         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
48286
48287         * m4/search-libs.m4: Update from autoconf.
48288
48289         su doesn't work on Solaris 2.6.
48290         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
48291         <shadow.h>.  Reported by Dragos Harabor.
48292
48293 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
48294
48295         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
48296         memcpy instead of xmalloc, xrealloc, path_concat.
48297         (locale_charset): Treat empty environment variables as absent.
48298         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
48299
48300 2000-05-04  Jim Meyering  <meyering@lucent.com>
48301
48302         * lib/getopt.c: Update from glibc.
48303         * lib/obstack.c: Likewise.
48304         * lib/obstack.h: Likewise.
48305         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
48306         file
48307
48308         * lib/regex.h: Likewise.
48309         * lib/strndup.c: Likewise.
48310         * lib/strnlen.c: New file, from glibc.
48311
48312 2000-05-03  Jim Meyering  <meyering@lucent.com>
48313
48314         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
48315
48316 2000-05-02  Paul Eggert  <eggert@twinsun.com>
48317
48318         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
48319         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
48320         compile-time test, rather than inspecting host and OS, to
48321         decide whether to define _LARGEFILE_SOURCE.
48322
48323 2000-05-01  Jim Meyering  <meyering@lucent.com>
48324
48325         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
48326
48327         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
48328         Based on a patch from Bruno Haible.
48329
48330 2000-05-01  Jim Meyering  <meyering@lucent.com>
48331
48332         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
48333
48334 2000-04-29  Jim Meyering  <meyering@lucent.com>
48335
48336         * lib/path-concat.c: Declare strdup only if it's not defined.
48337         * lib/canon-host.c: Likewise.
48338
48339 2000-04-28  Jim Meyering  <meyering@lucent.com>
48340
48341         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
48342         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
48343         is included first, then limits.h is included by locale.h by libintl.h.
48344         From John David Anglin.
48345
48346 2000-04-25  Jim Meyering  <meyering@lucent.com>
48347
48348         * lib/makepath.c (S_IRWXUGO): Define.
48349         (make_path): Always perform explicit chmod if MODE specifies any
48350         of the `special' permission bits.  Prompted by a bug report against
48351         install from Mate Wierdl and Joost van Baal.
48352
48353 2000-04-18  Jim Meyering  <meyering@lucent.com>
48354
48355         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
48356         (jm_PREREQ): Use it.
48357
48358 2000-04-18  Jim Meyering  <meyering@lucent.com>
48359
48360         * lib/README: New file.
48361
48362         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
48363         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
48364
48365 2000-04-17  Jim Meyering  <meyering@lucent.com>
48366
48367         Get it right :-)
48368         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
48369         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
48370         Suggestion from Akim Demaille.
48371
48372 2000-04-17  Jim Meyering  <meyering@lucent.com>
48373
48374         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
48375         the definition of it to rpl_strftime also defined-away the system's
48376         declaration.
48377
48378 2000-04-15  Jim Meyering  <meyering@lucent.com>
48379
48380         Use `C' to denote so-called `contiguous' files, the same way
48381         that tar does.
48382         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
48383         (ftypelet): Use S_ISCTG.
48384         From Michael Deutschmann.
48385
48386 2000-04-14  Jim Meyering  <meyering@lucent.com>
48387
48388         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
48389         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
48390         clobbered.
48391
48392 2000-04-14  Jim Meyering  <meyering@lucent.com>
48393
48394         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
48395
48396 2000-04-13  Jim Meyering  <meyering@lucent.com>
48397
48398         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
48399         AH_VERBATIM to insert required #ifndef into config.h.in.
48400         Suggestion from Akim Demaille.
48401
48402 2000-04-12  Jim Meyering  <meyering@lucent.com>
48403
48404         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
48405         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
48406         Christian Krackowizer.
48407
48408         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
48409         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
48410         (AC_SYS_LARGEFILE): Require.
48411         (AM_C_PROTOTYPES): Require.
48412
48413 2000-04-08  Jim Meyering  <meyering@lucent.com>
48414
48415         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
48416         names don't conflict.  Reported by Eli Zaretskii.
48417
48418 2000-04-07  Jim Meyering  <meyering@lucent.com>
48419
48420         * lib/putenv.c: Move inclusion of errno.h so it follows that of
48421         sys/types.h, to work around system header problems on AIX 3.2.5.
48422         From Bruno Haible.
48423
48424 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
48425
48426         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
48427         bug.  Deal with the different error behavior of Irix iconv.
48428
48429 2000-04-05  Paul Eggert  <eggert@twinsun.com>
48430
48431         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
48432         IRIX if the installer said otherwise.
48433
48434 2000-04-05  Jim Meyering  <meyering@lucent.com>
48435
48436         Portability tweaks required for ultrix4.3.
48437         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
48438         (jm_CHECK_DECLS): Add getutent to the list of functions.
48439         (_jm_DECL_HEADERS): Add utmpx.h.
48440         From John David Anglin.
48441
48442         * m4/strftime.m4: Back out the 2000-04-02 change.
48443         Instead of that change, simply undefine putenv in the test program.
48444
48445 2000-04-05  Jim Meyering  <meyering@lucent.com>
48446
48447         Portability tweaks required for ultrix4.3.
48448         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
48449         getutent.
48450         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
48451         * lib/canon-host.c: Declare strdup.
48452         * lib/path-concat.c: Likewise.
48453         From John David Anglin.
48454
48455 2000-04-04  Jim Meyering  <meyering@lucent.com>
48456
48457         Be more DOS 8.3-friendly.
48458         * lib/ref-add.sin: Renamed from ref-add.sed.in.
48459         * lib/ref-del.sin: Renamed from ref-del.sed.in.
48460         * lib/Makefile.am: Reflect renaming.
48461         Reported by Eli Zaretskii.
48462
48463         Use a temporary file name that won't clash with `charset.alias'
48464         in the DOS 8.3 name space.
48465         * lib/Makefile.am (charset_tmp): Define.
48466         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
48467         (uninstall-local): Likewise.
48468         Reported by Eli Zaretskii.
48469
48470 2000-04-03  Jim Meyering  <meyering@lucent.com>
48471
48472         * m4/gettext.m4: Fix typo in comment.
48473
48474         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
48475         textutils/configure.in).  Suggestion from Paul Eggert.
48476         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
48477
48478 2000-04-02  Paul Eggert  <eggert@twinsun.com>
48479
48480         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
48481         variable in the shell rather than using putenv, which isn't
48482         portable.  This avoids the configure-time inter-test dependency
48483         on the potentially-renamed putenv function.
48484
48485 2000-03-30  Paul Eggert  <eggert@twinsun.com>
48486
48487         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
48488         before checking struct stat.st_blksize, so that
48489         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
48490
48491 2000-03-29  Paul Eggert  <eggert@twinsun.com>
48492
48493         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
48494         since strftime.c uses HAVE_STRFTIME to decide whether to use
48495         the underlying strftime.
48496
48497 2000-03-29  Paul Eggert  <eggert@twinsun.com>
48498
48499         * lib/time/strftime.c (my_strftime): Make sure we call the system
48500         strftime, not ourselves, when invoking the underlying strftime.
48501
48502 2000-03-24  Jim Meyering  <meyering@lucent.com>
48503
48504         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
48505         (charset_alias): Define.
48506         (install-exec-local): Factor out common code.
48507         (uninstall-local): Split lines longer than 80.
48508         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
48509         (SUFFIXES): Define.
48510         (.sed.in.sed): New rule.  Don't redirect directly to $@.
48511         (CLEANFILES): Add ref-add.sed and ref-del.sed.
48512
48513 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
48514
48515         * lib/config.charset: Output a line containing "Packages using this
48516         file".
48517         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
48518         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
48519         ref-del.sed): New rules.
48520
48521 2000-03-17  Jim Meyering  <meyering@lucent.com>
48522
48523         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
48524         Otherwise, include <strings.h>
48525
48526 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
48527
48528         * lib/unicodeio.c (utf8_wctomb): New function.
48529         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
48530         format instead of in UCS-4 with platform dependent endianness.
48531
48532 2000-03-10  Jim Meyering  <meyering@lucent.com>
48533
48534         * m4/lib-check.m4: Look for getspnam in -lgen, too.
48535         From Marco Franzen.
48536
48537 2000-03-07  Paul Eggert  <eggert@twinsun.com>
48538
48539         * lib/savedir.c (savedir): Work even if directory size is
48540         negative; this can happen with some screwy NFS configurations.
48541
48542 2000-03-06  Jim Meyering  <meyering@lucent.com>
48543
48544         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
48545         if it's NULL (because we ran out of memory).  From Bruno Haible.
48546
48547 2000-03-05  Jim Meyering  <meyering@lucent.com>
48548
48549         * lib/localcharset.c ("path-concat.h"): Include.
48550         (get_charset_aliases): Use path_concat instead of ANSI string
48551         concatenation.
48552
48553         * lib/unicodeio.h (PARAMS): Define.
48554         Use it to guard prototype.
48555
48556 2000-03-04  Jim Meyering  <meyering@lucent.com>
48557
48558         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
48559         for lib/localcharset.c.
48560
48561 2000-03-04  Jim Meyering  <meyering@lucent.com>
48562
48563         * lib/Makefile.am (install-exec-local): Create $(libdir) before
48564         installing into it.
48565         (uninstall-local): Uncomment this rule so `make distcheck' works
48566         once again.
48567
48568         * lib/unicodeio.c (<errno.h>): Include it.
48569         (errno): Declare if not defined.
48570
48571         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
48572
48573         * lib/config.charset: New version, incorporating remarks from a linux
48574         i18n mailing list.  From Bruno Haible.
48575
48576 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
48577
48578         * m4/codeset.m4: New file.
48579         * m4/iconv.m4: New file.
48580         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
48581
48582 2000-03-03  Jim Meyering  <meyering@lucent.com>
48583
48584         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
48585
48586 2000-03-02  Jim Meyering  <meyering@lucent.com>
48587
48588         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
48589         the messages come out on separate lines.
48590
48591         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
48592         rather than jm_CHECK_DECLARATIONS.
48593         * m4/decl.m4: Remove now-unused file.
48594
48595         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
48596         geteuid.
48597
48598 2000-03-02  Jim Meyering  <meyering@lucent.com>
48599
48600         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
48601
48602 2000-03-01  Jim Meyering  <meyering@lucent.com>
48603
48604         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
48605         * lib/unicodeio.c: Likewise.
48606
48607 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
48608
48609         * lib/config.charset: New file.
48610         * lib/localcharset.c: New file.
48611         * lib/unicodeio.h, lib/unicodeio.c: New files.
48612         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
48613         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
48614         (noinst_HEADERS): Add unicodeio.h.
48615         (all-local, install-exec-local, charset.alias): New targets.
48616
48617 2000-02-28  Paul Eggert  <eggert@twinsun.com>
48618
48619         * lib/quotearg.c (ALERT_CHAR): New macro.
48620         (quotearg_buffer_restyled): Use it.
48621
48622 2000-02-27  Jim Meyering  <meyering@lucent.com>
48623
48624         * m4/check-decl.m4: Add getenv to the list.
48625
48626 2000-02-27  Jim Meyering  <meyering@lucent.com>
48627
48628         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
48629         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
48630
48631         * lib/backupfile.c: Guard inclusion of stdlib.h with
48632         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
48633         Declare malloc if needed.
48634
48635         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
48636         `#ifndef HAVE_DECL..'
48637         now that autoconf always defines the HAVE_DECL_ symbols.
48638         * lib/human.c: Likewise.
48639         * lib/same.c: Likewise.
48640         * lib/strtoumax.c: Likewise.
48641
48642         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
48643         declaration check was not run.
48644         * lib/hash.c: Likewise.
48645         * lib/human.c: Likewise.
48646         * lib/same.c: Likewise.
48647         * lib/strtoumax.c: Likewise.
48648
48649         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
48650         `.', then first look up the entire `.'-containing string as a login
48651         name.
48652
48653 2000-02-23  Jim Meyering  <meyering@lucent.com>
48654
48655         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
48656         in place of my hack.
48657
48658 2000-02-18  Paul Eggert  <eggert@twinsun.com>
48659
48660         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
48661         (textint): New typedef.
48662         (parser_control): Member year changed from int to textint.
48663         All uses changed.
48664         (YYSTYPE): Removed; replaced by %union with int and textint members.
48665         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
48666         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
48667         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
48668         (tSNUMBER, tUNUMBER): Now of type <textintval>.
48669         (date, number, to_year): Use width of number in digits, not its value,
48670         to determine whether it's a 2-digit year, or a 2-digit time.
48671         (yylex): Store number of digits of numeric tokens.
48672         Reported by John Kendall.
48673
48674         (parser_control): Changed from struct parser_control to typedef (for
48675         consistency).  All uses changed.
48676
48677         (tID): Removed; not used.
48678         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
48679
48680 2000-02-14  Paul Eggert  <eggert@twinsun.com>
48681
48682         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
48683         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
48684
48685 2000-02-12  Jim Meyering  <meyering@lucent.com>
48686
48687         * lib/userspec.c (ISDIGIT): Define it.
48688         (isdigit): Remove definition.
48689         (is_number): Use ISDIGIT, not isdigit.
48690         <libintl.h>: Include.
48691         (_ and N_): Define.
48692         (parse_user_spec): Mark translatable strings.
48693
48694 2000-02-10  Jim Meyering  <meyering@lucent.com>
48695
48696         With these changes, nanosleep.[ch] are finally enough like the other
48697         lib/* replacement files to compile on a few more losing systems.
48698
48699         * lib/nanosleep.h: Don't include config.h.
48700         Remove prototype from declaration of nanosleep.
48701         (PARAMS): Remove now-unneeded definition.
48702         * lib/nanosleep.c: #undef nanosleep.
48703         (rpl_nanosleep): Rename from nanosleep.
48704
48705 2000-02-10  Jim Meyering  <meyering@lucent.com>
48706
48707         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
48708         gnu_nanosleep to rpl_nanosleep.
48709
48710 2000-02-09  Jim Meyering  <meyering@lucent.com>
48711
48712         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
48713         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
48714
48715 2000-02-08  Akim Demaille  <akim@epita.fr>
48716
48717         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
48718         `[' and `]' and remove uses of `changequote'.
48719         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
48720         (AC_SYS_LARGEFILE): Likewise.
48721         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
48722         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
48723         of changequote.
48724         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
48725         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
48726         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
48727         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
48728
48729 2000-02-05  Jim Meyering  <meyering@lucent.com>
48730
48731         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
48732         Remove explicit use of AC_HEADER_TIME.  It is required by
48733         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
48734         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
48735         in autoconf whereby the expansion of the latter ended up preceding
48736         the expansion of its prerequisite, AC_HEADER_TIME.
48737         Reported by Volker Borchert.
48738
48739 2000-02-03  Jim Meyering  <meyering@lucent.com>
48740
48741         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
48742
48743 2000-02-03  Jim Meyering  <meyering@lucent.com>
48744
48745         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
48746         rather than with `#if HAVE_UTMPNAME'.
48747
48748 2000-02-02  Jim Meyering  <meyering@lucent.com>
48749
48750         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
48751         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
48752         Reported by Eli Zaretskii.
48753
48754 2000-02-01  Jim Meyering  <meyering@lucent.com>
48755
48756         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
48757
48758 2000-01-31  Jim Meyering  <meyering@lucent.com>
48759
48760         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
48761         functions.  Add the time.h and sys/time.h headers along with the
48762         AC_REQUIRE'ment of AC_HEADER_TIME.
48763
48764 2000-01-31  Jim Meyering  <meyering@lucent.com>
48765
48766         * lib/nanosleep.h (nanosleep): Guard declaration with
48767         `#if ! HAVE_DECL_NANOSLEEP'.
48768         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
48769         the declaration in that vendor's sys/timers.h.
48770         Reported by Christian Krackowizer.
48771
48772         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
48773         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
48774         (ISPRINT): Likewise.
48775         Reported by Tom Tromey.
48776
48777 2000-01-30  Jim Meyering  <meyering@lucent.com>
48778
48779         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
48780
48781         * m4/prereq.m4 (utmp_includes): Define.
48782         Check for ut_user and ut_name members in both struct utmpx
48783         and struct utmp.
48784
48785 2000-01-30  Jim Meyering  <meyering@lucent.com>
48786
48787         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
48788         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
48789         header files where only utmpx.ut_user is declared.
48790
48791         * lib/readutmp.h (UT_USER): Define.
48792
48793 2000-01-29  Jim Meyering  <meyering@lucent.com>
48794
48795         * m4/lib-check.m4: New file containing library-related checks from
48796         fileutils and sh-utils (textutils had none).
48797
48798 2000-01-28  Jim Meyering  <meyering@lucent.com>
48799
48800         * m4/perl.m4: Change format of warning message to look more like that
48801         from the missing script.  Suggestion from François Pinard.
48802
48803 2000-01-25  Jim Meyering  <meyering@lucent.com>
48804
48805         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
48806         well as time.h in the compile check.
48807         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
48808         Fix typo in cross-compiling case: s/yes/no/.
48809
48810 2000-01-23  Jim Meyering  <meyering@lucent.com>
48811
48812         * m4/jm-macros.m4: Move df-related tests here from
48813         fileutils/configure.in
48814
48815         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
48816         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
48817
48818         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
48819         s/space/ac_fsusage_space/.
48820         (jm_FILE_SYSTEM_USAGE): Take two parameters.
48821
48822         * m4/ftruncate.m4: New file (derived from part of
48823         fileutils/configure.in).
48824         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
48825         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
48826
48827         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
48828         AC_SUBST these here, rather than just in sh-util/configure.in, so
48829         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
48830         all the same.
48831         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
48832         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
48833         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
48834         (AC_SUBST(POW_LIBM)): Likewise.
48835         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
48836
48837 2000-01-23  Jim Meyering  <meyering@lucent.com>
48838
48839         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
48840         obstack.c.
48841
48842 2000-01-22  Jim Meyering  <meyering@lucent.com>
48843
48844         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
48845
48846         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
48847
48848         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
48849         configure.in
48850         (AC_CHECK_HEADERS): Likewise for sh-utils.
48851         (AC_CHECK_HEADERS): Likewise for textutils.
48852         Merge the three lists of headers.
48853
48854         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
48855         from fileutils' configure.in.
48856
48857         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
48858         code. Moved tests into their own function (_jm_DECL_HEADERS) in
48859         check-decl.m4.
48860
48861         * m4/check-decl.m4: Use #if rather than #ifdef.
48862         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
48863         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
48864         (_jm_DECL_HEADERS): Define new function.
48865         (jm_CHECK_DECLARATIONS): Require it.
48866
48867 2000-01-22  Jim Meyering  <meyering@lucent.com>
48868
48869         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
48870         [! HAVE_DECL_STRTOULL]: Declare strtoull.
48871         Required for some AIX systems.  Reported by Christian Krackowizer.
48872         [TESTING] (main): New function.
48873
48874         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
48875         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
48876         letters.
48877
48878         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
48879         iswprint.
48880
48881         * lib/strverscmp.c (ISDIGIT): Define.
48882         (strverscmp): Use ISDIGIT, not isdigit.
48883
48884 2000-01-19  Jim Meyering  <meyering@lucent.com>
48885
48886         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
48887         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
48888         defines `struct timespec' in <sys/time.h>
48889
48890         * m4/c-bs-a.m4: Remove uses of changequote altogether.
48891         Thanks to Akim for explaining.
48892
48893 2000-01-17  Paul Eggert  <eggert@twinsun.com>
48894
48895         * lib/nanosleep.c (nanosleep):
48896         Don't use SA_INTERRUPT to decide whether to call sigaction, as
48897         POSIX.1 doesn't require SA_INTERRUPT and some systems
48898         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
48899         it's been part of POSIX.1 since day 1 (in 1988).
48900
48901 2000-01-17  Jim Meyering  <meyering@lucent.com>
48902
48903         * lib/interlock: Remove unused file.  Reported by François Pinard.
48904
48905 2000-01-16  Paul Eggert  <eggert@twinsun.com>
48906
48907         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
48908         alert, backslash, formfeed, and vertical tab unnecessarily in
48909         shell quoting style.
48910
48911 2000-01-16  Jim Meyering  <meyering@lucent.com>
48912
48913         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
48914         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
48915         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
48916         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
48917
48918 2000-01-16  Jim Meyering  <meyering@lucent.com>
48919
48920         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
48921         because the latter didn't work.
48922
48923 2000-01-15  Jim Meyering  <meyering@lucent.com>
48924
48925         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
48926         (AC_REPLACE_FUNCS): Add memcpy and memset.
48927         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
48928         Add strpbrk.
48929         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
48930
48931 2000-01-12  Jim Meyering  <meyering@lucent.com>
48932
48933         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
48934         (jm_PREREQ): Use it.
48935         (jm_PREREQ_READUTMP): New macro.
48936         (jm_PREREQ): Use it.
48937
48938 2000-01-11  Paul Eggert  <eggert@twinsun.com>
48939
48940         Quote multibyte characters correctly.
48941         * m4/c-bs-a.m4: New file.
48942         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
48943         (jm_PREREQ): Use it.
48944
48945 2000-01-11  Paul Eggert  <eggert@twinsun.com>
48946
48947         * m4/uintmax_t.m4: Port to autoconf 2.13.
48948
48949 2000-01-08  Jim Meyering  <meyering@ascend.com>
48950
48951         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
48952         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
48953
48954 2000-01-04  Jim Meyering  <meyering@ascend.com>
48955
48956         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
48957         jm_STRUCT_DIRENT_D_TYPE.
48958         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
48959         jm_STRUCT_DIRENT_D_INO.
48960         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
48961         jm_STRUCT_UTIMBUF.
48962         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
48963         renamings.
48964         * m4/utime.m4: Likewise.
48965
48966         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
48967         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
48968
48969 2000-01-03  Paul Eggert  <eggert@twinsun.com>
48970
48971         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
48972         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
48973
48974 2000-01-02  Jim Meyering  <meyering@ascend.com>
48975
48976         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
48977         remember if this is necessary.
48978
48979 1999-12-26  Jim Meyering  <meyering@ascend.com>
48980
48981         * m4/jm-macros.m4: Use it here.
48982         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
48983
48984 1999-12-23  Jim Meyering  <meyering@ascend.com>
48985
48986         * m4/jm-macros.m4: Check for clock_gettime (moved from
48987         fileutils/configure.in)
48988         Check for gettimeofday.
48989
48990 1999-12-20  Jim Meyering  <meyering@ascend.com>
48991
48992         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
48993         autoconf-2.14a-1999-12-20.
48994
48995 1999-12-19  Jim Meyering  <meyering@ascend.com>
48996
48997         * m4/lstat-slash.m4: New file.
48998         * m4/jm-macros.m4: Use the new macro:
48999         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
49000
49001 1999-12-07  Jim Meyering  <meyering@ascend.com>
49002
49003         * m4/perl.m4: Require that File::Compare be available, too.
49004         Too many systems seem to lack it.
49005
49006         * m4/strftime.m4: Add checks for most of the cpp macros tested in
49007         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
49008
49009 1999-11-18  Paul Eggert  <eggert@twinsun.com>
49010
49011         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
49012         problem with the QNX 4.25 shell, which doesn't propagate exit
49013         status of failed commands inside shell assignments.
49014
49015 1999-11-17  Jim Meyering  <meyering@ascend.com>
49016
49017         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
49018
49019 1999-11-07  Jim Meyering  <meyering@ascend.com>
49020
49021         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
49022
49023 1999-11-06  Jim Meyering  <meyering@ascend.com>
49024
49025         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
49026         * m4/jm-macros.m4 (jm_MACROS): Use it here.
49027
49028 1999-11-05  Jim Meyering  <meyering@ascend.com>
49029
49030         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
49031         configure.in of textutils, fileutils, and sh-utils into this one
49032         (shared between those packages) file.
49033         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
49034         AC_STRUCT_ST_BLKSIZE.
49035
49036 1999-11-03  Jim Meyering  <meyering@ascend.com>
49037
49038         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
49039         of AC_CHECK_TYPE checks includes unistd.h.
49040         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
49041         Suggestion from Akim Demaille.
49042
49043 1999-10-30  Jim Meyering  <meyering@ascend.com>
49044
49045         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
49046         m4-quoted string.
49047         * m4/ls-mntd-fs.m4: Likewise.
49048         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
49049         * m4/jm-winsz1.m4: Likewise.
49050
49051         * m4/const.m4: Remove file, since the fix made it into the experimental
49052         version of autoconf.
49053         * m4/mktime.m4: Likewise.
49054
49055         * m4/check-type.m4: Remove file, now that the latest version of
49056         AC_CHECK_TYPE takes a third arg to specify additional #includes.
49057
49058         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
49059         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
49060         AC_CHECK_TYPE.
49061
49062 1999-10-04  Jim Meyering  <meyering@ascend.com>
49063
49064         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
49065
49066 1999-09-22  Paul Eggert  <eggert@twinsun.com>
49067
49068         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
49069         2.95.1 bug with HP-UX 10.20.
49070
49071 1999-09-17  Jim Meyering  <meyering@ascend.com>
49072
49073         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
49074         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
49075         due to missing strdup (against sh-utils-2.0).
49076
49077 1999-08-29  Jim Meyering  <meyering@ascend.com>
49078
49079         * m4/jm-macros.m4: Require jm_BISON.
49080         * m4/bison.m4: New file.
49081
49082 1999-08-17  Paul Eggert  <eggert@twinsun.com>
49083
49084         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
49085         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
49086
49087 1999-08-05  Jim Meyering  <meyering@ascend.com>
49088
49089         * m4/getline.m4: Rename test file from conftestdata to conftest.data
49090         to avoid conflicts with `conftest' on 8+3 filesystems.
49091         Suggestion from Eli Zaretskii.
49092
49093 1999-08-04  Jim Meyering  <meyering@ascend.com>
49094
49095         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
49096         fileutils and sh-utils (textutils's getline test was inadequate).
49097         (AM_FUNC_GETLINE): Run this test.
49098         (AC_CHECK_FUNCS): Check for getdelim.
49099         Reported by Bob Proulx.
49100
49101 1999-08-02  Jim Meyering  <meyering@ascend.com>
49102
49103         * m4/jm-macros.m4: Add a comment.
49104
49105 1999-08-01  Paul Eggert  <eggert@twinsun.com>
49106
49107         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
49108         <inttypes.h> defines strtoumax as a macro (and not as a
49109         function).
49110
49111 1999-08-01  Paul Eggert  <eggert@twinsun.com>
49112
49113         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
49114         that we can shift, multiply and divide unsigned long long
49115         values; Ultrix cc can't do it.
49116
49117 1999-08-01  Paul Eggert  <eggert@twinsun.com>
49118
49119         * m4/mktime.m4: New file, which is a preview of what should appear
49120         in the next public autoconf release.
49121
49122 1999-08-01  Paul Eggert  <eggert@twinsun.com>
49123
49124         * m4/lfs.m4: Remove this file.
49125         * m4/largefile.m4: New file.  It contains the old contents of
49126         lfs.m4, except that all names with prefix AC_LFS have been
49127         changed to use the prefix AC_SYS_LARGEFILE instead, to be
49128         compatible with future autoconf versions.  Also, some minor m4
49129         quoting problems have been fixed.
49130
49131 1999-08-01  Paul Eggert  <eggert@twinsun.com>
49132
49133         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
49134         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
49135         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
49136         and simplify the shell code.
49137
49138 1999-08-01  Jim Meyering  <meyering@ascend.com>
49139
49140         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
49141         m4.
49142
49143 1999-07-20  Jim Meyering  <meyering@ascend.com>
49144
49145         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
49146
49147 1999-07-15  Jim Meyering  <meyering@ascend.com>
49148
49149         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
49150
49151 1999-05-22  Jim Meyering  <meyering@ascend.com>
49152
49153         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
49154
49155 1999-05-20  Jim Meyering  <meyering@ascend.com>
49156
49157         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
49158         Add a colon after each `then' in case $4 is empty.
49159
49160 1999-05-16  Jim Meyering  <meyering@ascend.com>
49161
49162         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
49163
49164 1999-05-10  Jim Meyering  <meyering@ascend.com>
49165
49166         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
49167
49168         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
49169         AC_FUNC_MKTIME.
49170
49171 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
49172
49173         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
49174
49175 1999-05-04  Paul Eggert  <eggert@twinsun.com>
49176
49177         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
49178         not CPPFLAGS, so that linking works correctly in IRIX.
49179
49180 1999-04-30  Paul Eggert  <eggert@twinsun.com>
49181
49182         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
49183
49184 1999-04-20  Paul Eggert  <eggert@twinsun.com>
49185
49186         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
49187         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
49188         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
49189         jm_AC_TYPE_UNSIGNED_LONG_LONG.
49190         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
49191
49192         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
49193
49194 1999-04-20  Jim Meyering  <meyering@ascend.com>
49195
49196         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
49197         AC_REPLACE xstroull if necessary.  From Paul Eggert.
49198         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
49199
49200 1999-04-18  Jim Meyering  <meyering@ascend.com>
49201
49202         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
49203         * m4/jm-macros.m4: Use it.
49204
49205 1999-04-06  Jim Meyering  <meyering@ascend.com>
49206
49207         * m4/strftime.m4: Remove test for %f.
49208
49209 1999-03-29  Jim Meyering  <meyering@ascend.com>
49210
49211         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
49212         superset of the AC_TYPE_* checks in the textutils, fileutils,
49213         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
49214         AC_TYPE_PID_T.
49215
49216 1999-03-28  Jim Meyering  <meyering@ascend.com>
49217
49218         * m4/jm-macros.m4: Define GNU_PACKAGE here.
49219         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
49220         replaced e.g., in the *.sh files of the sh-utils.
49221
49222 1999-03-20  Jim Meyering  <meyering@ascend.com>
49223
49224         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
49225         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
49226         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
49227
49228 1999-03-19  Jim Meyering  <meyering@ascend.com>
49229
49230         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
49231
49232 1999-03-12  Jim Meyering  <meyering@ascend.com>
49233
49234         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
49235
49236 1999-03-07  Jim Meyering  <meyering@ascend.com>
49237
49238         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
49239         declared.
49240
49241 1999-02-17  Jim Meyering  <meyering@ascend.com>
49242
49243         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
49244         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
49245
49246 1999-02-07  Jim Meyering  <meyering@ascend.com>
49247
49248         * m4/group-member.m4: New file -- extracted from sh-utils'
49249         configure.in.
49250
49251         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
49252         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
49253
49254 1999-02-06  Jim Meyering  <meyering@ascend.com>
49255
49256         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
49257         * m4/fnmatch.m4: Likewise.
49258         * m4/getgroups.m4: Likewise.
49259         * m4/lstat.m4: Likewise.
49260         * m4/malloc.m4: Likewise.
49261         * m4/putenv.m4: Likewise.
49262         * m4/realloc.m4: Likewise.
49263         * m4/regex.m4: Likewise.
49264         * m4/stat.m4: Likewise.
49265         * m4/strftime.m4: Likewise.
49266         Suggestion from Alain Magloire.
49267
49268         * m4/chown.m4: Use `.$ac_objext', not `.o'.
49269         * m4/fnmatch.m4: Likewise.
49270         * m4/getgroups.m4: Likewise.
49271         * m4/getline.m4: Likewise.
49272         * m4/lstat.m4: Likewise.
49273         * m4/malloc.m4: Likewise.
49274         * m4/memcmp.m4: Likewise.
49275         * m4/putenv.m4: Likewise.
49276         * m4/realloc.m4: Likewise.
49277         * m4/regex.m4: Likewise.
49278         * m4/stat.m4: Likewise.
49279         * m4/strftime.m4: Likewise.
49280         Suggestion from Alain Magloire.
49281
49282         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
49283         an argument.
49284
49285         * m4/regex.m4: Add a run-time Test for proper operation of
49286         re_compile_pattern.
49287
49288 1999-01-31  Jim Meyering  <meyering@ascend.com>
49289
49290         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
49291
49292 1999-01-30  Jim Meyering  <meyering@ascend.com>
49293
49294         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
49295
49296         * m4/jm-mktime.m4: Make this a wrapper around the official
49297         AM_FUNC_MKTIME rather than my private copy, now that the official one
49298         is up to date.
49299         * m4/mktime.m4: Remove file.
49300
49301         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
49302         * m4/uptime.m4: Likewise.
49303         * m4/uintmax_t.m4: Likewise.
49304
49305 1999-01-28  Jim Meyering  <meyering@ascend.com>
49306
49307         * m4/jm-macros.m4: Use jm_AFS.
49308         * m4/afs.m4: New file (from fileutils' configure.in).
49309
49310         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
49311         * m4/chown.m4: Likewise.
49312         * m4/d-ino.m4: Likewise.
49313         * m4/d-type.m4: Likewise.
49314         * m4/fnmatch.m4: Likewise.
49315         * m4/getgroups.m4: Likewise.
49316         * m4/gettext.m4: Likewise.
49317         * m4/jm-mktime.m4: Likewise.
49318         * m4/jm-winsz2.m4: Likewise.
49319         * m4/lcmessage.m4: Likewise.
49320         * m4/ls-mntd-fs.m4: Likewise.
49321         * m4/malloc.m4: Likewise.
49322         * m4/memcmp.m4: Likewise.
49323         * m4/putenv.m4: Likewise.
49324         * m4/realloc.m4: Likewise.
49325         * m4/st_mtim.m4: Likewise.
49326         * m4/strftime.m4: Likewise.
49327
49328 1999-01-16  Jim Meyering  <meyering@ascend.com>
49329
49330         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
49331         (ARGMATCH_DIE_DECL): Define.
49332
49333 1999-01-12  Jim Meyering  <meyering@ascend.com>
49334
49335         * m4/Makefile.am.in: Rewrite to avoid using fmt.
49336         Reported by Lars Hecking.
49337
49338 1999-01-10  Jim Meyering  <meyering@ascend.com>
49339
49340         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
49341         gross kludge.
49342         * m4/inttypes_h.m4: Likewise.
49343         * m4/lstat.m4: Likewise.
49344         * m4/malloc.m4: Likewise.
49345         * m4/readdir.m4: Likewise.
49346         * m4/realloc.m4: Likewise.
49347         * m4/st_dm_mode.m4: Likewise.
49348         * m4/stat.m4: Likewise.
49349         * m4/utimbuf.m4: Likewise.
49350         * m4/utimes.m4: Likewise.
49351
49352         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
49353         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
49354         comments in config.h.in are meaningful.
49355
49356         * m4/jm-macros.m4: Require autoconf-2.13 here.
49357
49358         * m4/regex.m4: By default, don't use the included regex.c on systems
49359         with glibc 2.  Suggestion from Uli Drepper.
49360
49361 1999-01-02  Jim Meyering  <meyering@ascend.com>
49362
49363         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
49364
49365 1998-12-18  Jim Meyering  <meyering@ascend.com>
49366
49367         * m4/Makefile.am.in (Makefile.am): Simplify rule.
49368         Based on a suggestion from Lars Hecking.
49369
49370 1998-11-16  Paul Eggert  <eggert@twinsun.com>
49371
49372         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
49373
49374 1998-11-16  Jim Meyering  <meyering@ascend.com>
49375
49376         * m4/lfs.m4: Double-quote the `uname...` expression.
49377
49378 1998-11-14  Jim Meyering  <meyering@ascend.com>
49379
49380         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
49381         * m4/stat.m4: Likewise.
49382
49383 1998-11-03  Jim Meyering  <meyering@ascend.com>
49384
49385         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
49386         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
49387
49388 1998-10-18  Jim Meyering  <meyering@ascend.com>
49389
49390         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
49391
49392 1998-10-17  Jim Meyering  <meyering@ascend.com>
49393
49394         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
49395         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
49396         calls for those previously hard-coded headers.  Instead, take a new
49397         parameter.
49398         (jm_CHECK_DECLARATIONS): Reflect interface change.
49399         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
49400         (jm_CHECK_DECL_LOCALTIME_R): New macro.
49401
49402         * m4/mktime.m4: Test for spring-forward gap before long-running test.
49403
49404 1998-10-14  Jim Meyering  <meyering@ascend.com>
49405
49406         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
49407         instead of "TZ=America/Vancouver".  From Paul Eggert.
49408
49409 1998-10-11  Jim Meyering  <meyering@ascend.com>
49410
49411         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
49412         This adds a test for a recently added compatibility fix for mktime.c.
49413         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
49414
49415 1998-09-27  Jim Meyering  <meyering@ascend.com>
49416
49417         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
49418
49419         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
49420         ../configure.in, including a change from Gordon Matzigkeit to allow
49421         cross-compiling for the Hurd.
49422
49423         * m4/glibc.m4: New file/macro to test for the GNU C Library
49424         versions 1 and 2.  From Gordon Matzigkeit.
49425         Indent.
49426
49427 1998-09-21  Jim Meyering  <meyering@ascend.com>
49428
49429         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
49430
49431 1998-08-18  Paul Eggert  <eggert@twinsun.com>
49432
49433         Port nanosecond-resolution times to UnixWare 2.1.2 and
49434         pedantic Solaris 2.6.
49435
49436         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
49437         AC_STRUCT_ST_MTIM.
49438         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
49439         Generate name of ns member, instead of just 1 or undef.
49440         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
49441
49442 1998-08-15  Jim Meyering  <meyering@ascend.com>
49443
49444         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
49445         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
49446         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
49447         instead of jm_TYPE_SSIZE_T.
49448
49449 1998-08-12  Jim Meyering  <meyering@ascend.com>
49450
49451         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
49452
49453 1998-08-02  Jim Meyering  <meyering@ascend.com>
49454
49455         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
49456         in acconfig.h manually.
49457
49458 1998-07-31  Paul Eggert  <eggert@twinsun.com>
49459
49460         * m4/st_mtim.m4: New file.
49461
49462 1998-07-28  Jim Meyering  <meyering@ascend.com>
49463
49464         * m4/utimes.m4: Undef stat.
49465
49466 1998-07-25  Jim Meyering  <meyering@ascend.com>
49467
49468         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
49469         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
49470
49471 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
49472
49473         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
49474         uid and gid actually remain unchanged.
49475
49476 1998-07-07  Jim Meyering  <meyering@ascend.com>
49477
49478         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
49479
49480 1998-07-04  Jim Meyering  <meyering@ascend.com>
49481
49482         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
49483         to prove that this macro can be used in packages without regex.c.
49484
49485 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
49486
49487         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
49488         is to be used.
49489
49490 1998-07-03  Jim Meyering  <meyering@ascend.com>
49491
49492         * m4/gettext.m4: Add -lintl if it's found to be necessary.
49493
49494         * m4/gettext.m4: New file -- from gettext-0.10.35.
49495         * m4/lcmessage.m4: Likewise.
49496         * m4/progtest.m4: Likewise.
49497
49498         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
49499         * m4/jm-macros.m4: Require the new macro.
49500
49501 1998-06-29  Jim Meyering  <meyering@ascend.com>
49502
49503         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
49504         for the definition of NGROUPS (used in a system header included
49505         by sys/mount.h).
49506
49507 1998-06-28  Jim Meyering  <meyering@ascend.com>
49508
49509         * m4/ls-mntd-fs.m4: New file.
49510         * m4/fstypename.m4: New file.
49511
49512         * m4/jm-macros.m4: Require the new macro.
49513         * m4/jm-glibc-io.m4: New file.
49514
49515 1998-05-19  Jim Meyering  <meyering@ascend.com>
49516
49517         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
49518         * m4/lchown.m4: New file.
49519
49520         * m4/Makefile.am.in: New file.
49521         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
49522
49523 1998-05-14  Jim Meyering  <meyering@ascend.com>
49524
49525         * m4/Makefile.am (EXTRA_DIST): Add them.
49526         * m4/jm-macros.m4: New file.
49527         * m4/utimbuf.m4: New file.
49528
49529 1998-05-12  Jim Meyering  <meyering@ascend.com>
49530
49531         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
49532
49533 1998-05-11  Jim Meyering  <meyering@ascend.com>
49534
49535         * m4/isc-posix.m4: New file.
49536
49537 1998-05-10  Jim Meyering  <meyering@ascend.com>
49538
49539         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
49540
49541 1998-05-09  Jim Meyering  <meyering@ascend.com>
49542
49543         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
49544         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
49545         with automake.
49546
49547         * m4/ssize_t.m4: New file.
49548         * m4/mktime.m4: Remove file -- the new automake has this now.
49549
49550 1998-04-26  Jim Meyering  <meyering@ascend.com>
49551
49552         * m4/assert.m4: New file.
49553         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
49554
49555 1998-04-05  Jim Meyering  <meyering@ascend.com>
49556
49557         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
49558         (jm_PREREQ): Use it here.
49559
49560 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
49561
49562         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
49563         in acconfig.h.
49564
49565 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
49566
49567         * m4/prereq.m4: New file.
49568         * m4/error.m4: New file.
49569         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
49570
49571 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
49572
49573         * m4/getline.m4: Don't set am_cv_func_working_getline before the
49574         cache-check for the same variable -- that defeated the purpose of
49575         the test; the test program was never run.  This was a problem only
49576         on systems with losing getline functions -- HP-UX 10.20 is one.
49577         Reported by Bjorn Helgaas.
49578
49579 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
49580
49581         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
49582
49583 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
49584
49585         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
49586
49587         * m4/const.m4: New file.  Use an initializer in this declaration
49588         typedef int charset[2]; const charset x;
49589         Reported by Bob Glickstein.
49590
49591 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
49592
49593         * m4/chown.m4: Fix reversed types on -1 args to chown.
49594         From Kaveh Ghazi.
49595
49596 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
49597
49598         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
49599         Add lseek and memchr.
49600
49601         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
49602         T.E.Dickey <dickey@clark.net> said that some older preprocessors
49603         have a 20-character limit on names.
49604
49605 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
49606
49607         * m4/inttypes_h.m4: New file.
49608         * m4/uintmax_t.m4: New file.
49609         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
49610
49611
49612         -----
49613
49614         Local Variables:
49615         coding: utf-8
49616         End:
49617
49618         Copyright (C) 1997-2009 Free Software Foundation, Inc.
49619
49620         Copying and distribution of this file, with or without
49621         modification, are permitted provided the copyright notice
49622         and this notice are preserved.