Undo last lib/fflush.c commit.
[gnulib.git] / ChangeLog
1 2009-02-28  Bruno Haible  <bruno@clisp.org>
2
3         * tests/test-freadseek.c (main): Disable test beyond end of file on FreeMiNT.
4         * tests/test-ftello.c (main): Likewise.
5         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
6
7 2009-02-28  Bruno Haible  <bruno@clisp.org>
8
9         Add tentative support for FreeMiNT.
10         * lib/fbufmode.c (fbufmode) [__MINT__]: Add conditional code.
11         * lib/fpurge.c (fpurge): Likewise.
12         * lib/freadable.c (freadable): Likewise.
13         * lib/freading.c (freading): Likewise.
14         * lib/freadptr.c (freadptr): Likewise.
15         * lib/freadseek.c (freadptrinc): Likewise.
16         * lib/fseeko.c (rpl_fseeko): Likewise.
17         * lib/fseterr.c (fseterr): Likewise.
18         * lib/fwritable.c (fwritable): Likewise.
19         * lib/fwriting.c (fwriting): Likewise.
20         * lib/freadahead.c (freadahead): Likewise, based on code by Alan
21         Hourihane.
22         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
23
24 2009-02-28  Bruno Haible  <bruno@clisp.org>
25
26         * lib/wait-process.h (wait_subprocess): Clarify restriction regarding
27         SIGCHLD.
28         Reported by Jim Meyering.
29
30 2009-02-28  Bruno Haible  <bruno@clisp.org>
31
32         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Separate the two first tests.
33         Mention the results of these tests on various platforms.
34         * doc/posix-functions/fprintf.texi: Mention platforms in canonical
35         order.
36         * doc/posix-functions/printf.texi: Likewise.
37         * doc/posix-functions/snprintf.texi: Likewise.
38         * doc/posix-functions/sprintf.texi: Likewise.
39         * doc/posix-functions/vfprintf.texi: Likewise.
40         * doc/posix-functions/vprintf.texi: Likewise.
41         * doc/posix-functions/vsnprintf.texi: Likewise.
42         * doc/posix-functions/vsprintf.texi: Likewise.
43         * doc/glibc-functions/obstack_printf.texi: Likewise.
44         * doc/glibc-functions/obstack_vprintf.texi: Likewise.
45
46 2009-02-28  Bruno Haible  <bruno@clisp.org>
47
48         * build-aux/po/Makefile.in.in: Update from GNU gettext 0.17.
49         Reported by Loïc Minier <lool@dooz.org>.
50
51 2009-02-27  Bruno Haible  <bruno@clisp.org>
52
53         * gnulib-tool (func_import): Make the sed expression used to create the
54         sed script for updating the .gitignore file POSIX compliant.
55         Reported by Eric Blake.
56
57 2009-02-27  Bruno Haible  <bruno@clisp.org>
58
59         * gnulib-tool (sed): Don't alias as "sed --posix".
60         Reported by Eric Blake.
61
62 2009-02-27  Bruno Haible  <bruno@clisp.org>
63
64         Avoid test link errors.
65         * modules/uninorm/nfc-tests (test_u32_nfc_big_LDADD): New variable.
66         * modules/uninorm/nfd-tests (test_u32_nfd_big_LDADD): New variable.
67         * modules/uninorm/nfkc-tests (test_u32_nfkc_big_LDADD): New variable.
68         * modules/uninorm/nfkd-tests (test_u32_nfkd_big_LDADD): New variable.
69         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
70
71 2009-02-27  Bruno Haible  <bruno@clisp.org>
72
73         Avoid spurious "(cached)" in configure output.
74         * m4/gnulib-common.m4 (gl_CACHE_VAL_SILENT): New macro.
75         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Use it instead of AC_CACHE_VAL.
76         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
77         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
78         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
79         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Likewise.
80         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
81         * m4/stdarg.m4 (gl_STDARG_H): Likewise.
82         Reported by Eric Blake.
83
84 2009-02-27  Eric Blake  <ebb9@byu.net>
85
86         printf: fix regression in previous patch
87         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Fix compilation error.
88
89 2009-02-27  Bruno Haible  <bruno@clisp.org>
90
91         * lib/inttypes.in.h: Test merely whether _LP64 is defined, not its
92         value.
93         * lib/stdint.in.h: Likewise.
94         Suggested by Eric Blake. Reported by Peter Bray <pdb_ml@yahoo.com.au>.
95
96 2009-02-27  Eric Blake  <ebb9@byu.net>
97
98         doc: mention more functions added in cygwin 1.7.0
99         * doc/posix-functions/mbsnrtowcs.texi: Mention recent cygwin 1.7.0
100         addition.
101         * doc/posix-functions/open_wmemstream.texi: Likewise.
102         * doc/posix-functions/wcsnlen.texi: Likewise.
103         * doc/posix-functions/wcsnrtombs.texi: Likewise.
104         * doc/posix-functions/wcstod.texi: Likewise.
105         * doc/posix-functions/wcstof.texi: Likewise.
106         * doc/posix-functions/wcstoimax.texi: Likewise.
107         * doc/posix-functions/wcstok.texi: Likewise.
108         * doc/posix-functions/wcstoumax.texi: Likewise.
109
110         Detect bug in cygwin 1.5.x *printf on 1-character %ls.
111         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Enhance filter.
112         * doc/posix-functions/fprintf.texi: Update.
113         * doc/posix-functions/printf.texi: Update.
114         * doc/posix-functions/snprintf.texi: Update.
115         * doc/posix-functions/sprintf.texi: Update.
116         * doc/posix-functions/vfprintf.texi: Update.
117         * doc/posix-functions/vprintf.texi: Update.
118         * doc/posix-functions/vsnprintf.texi: Update.
119         * doc/posix-functions/vsprintf.texi: Update.
120         * doc/glibc-functions/obstack_printf.texi: Update.
121         * doc/glibc-functions/obstack_vprintf.texi: Update.
122
123 2009-02-26  Eric Blake  <ebb9@byu.net>
124
125         avoid gcc 3.4.3 bug on long double NaN on Irix 6.5
126         * tests/nan.h (NaNl): Rewrite as function on Irix, to avoid
127         compilation bug by using runtime conversion.
128         * m4/isfinite.m4 (gl_ISFINITE): Likewise.
129         * m4/isnanl.m4 (gl_FUNC_ISNANL): Likewise.
130         * modules/ceill-tests (Files): Use nan.h.
131         * modules/floorl-tests (Files): Likewise.
132         * modules/frexpl-tests (Files): Likewise.
133         * modules/isnanl-tests (Files): Likewise.
134         * modules/ldexpl-tests (Files): Likewise.
135         * modules/roundl-tests (Files): Likewise.
136         * modules/truncl-tests (Files): Likewise.
137         * tests/test-ceill.c (main): Use a working NaN.
138         * tests/test-floorl.c (main): Likewise.
139         * tests/test-frexpl.c (main): Likewise.
140         * tests/test-isnan.c (test_long_double): Likewise.
141         * tests/test-isnanl.h (main): Likewise.
142         * tests/test-ldexpl.h (main): Likewise.
143         * tests/test-roundl.h (main): Likewise.
144         * tests/test-truncl.h (main): Likewise.
145         See http://lists.gnu.org/archive/html/bug-gnulib/2009-02/msg00190.html.
146
147 2009-02-26  Eric Blake  <ebb9@byu.net>
148             Bruno Haible  <bruno@clisp.org>
149
150         Work around a *printf bug with %ls on Solaris.
151         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Also test whether, when a
152         precision is specified, sprintf stops converting the wide string
153         argument when the number of bytes that have been produced by this
154         conversion equals or exceeds the precision.
155         * doc/posix-functions/fprintf.texi: Update.
156         * doc/posix-functions/printf.texi: Update.
157         * doc/posix-functions/snprintf.texi: Update.
158         * doc/posix-functions/sprintf.texi: Update.
159         * doc/posix-functions/vfprintf.texi: Update.
160         * doc/posix-functions/vprintf.texi: Update.
161         * doc/posix-functions/vsnprintf.texi: Update.
162         * doc/posix-functions/vsprintf.texi: Update.
163         * doc/glibc-functions/obstack_printf.texi: Update.
164         * doc/glibc-functions/obstack_vprintf.texi: Update.
165
166 2009-02-26  Eric Blake  <ebb9@byu.net>
167
168         stdlib: favor compiler check of random.h
169         * m4/stdlib_h.m4 (gl_STDLIB_H): Skip preprocessor check.  Needed
170         to avoid an ObjC random.h installed by Swarm.
171
172 2009-02-26  Bruno Haible  <bruno@clisp.org>
173
174         Work around *printf bug with %g directive and 0.0 on HP-UX 10.20.
175         * m4/printf.m4 (gl_PRINTF_INFINITE): Also test for %g output of -0.0.
176         Reported by Gary V. Vaughan <gary@gnu.org>.
177
178 2009-02-26  Bruno Haible  <bruno@clisp.org>
179
180         Fix *printf behaviour regarding the %ls directive.
181         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): New macro.
182         * lib/vasnprintf.c (local_wcslen, VASNPRINTF): Handle
183         NEED_PRINTF_DIRECTIVE_LS.
184         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_LS): New macro.
185         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
186         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
187         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS and test its result. Invoke
188         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS.
189         * m4/dprintf-posix.m4 (gl_FUNC_DPRINTF_POSIX): Likewise.
190         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
191         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
192         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
193         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
194         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
195         * m4/vdprintf-posix.m4 (gl_FUNC_VDPRINTF_POSIX): Likewise.
196         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
197         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
198         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
199         * doc/posix-functions/fprintf.texi: Update.
200         * doc/posix-functions/printf.texi: Update.
201         * doc/posix-functions/snprintf.texi: Update.
202         * doc/posix-functions/sprintf.texi: Update.
203         * doc/posix-functions/vfprintf.texi: Update.
204         * doc/posix-functions/vprintf.texi: Update.
205         * doc/posix-functions/vsnprintf.texi: Update.
206         * doc/posix-functions/vsprintf.texi: Update.
207         * doc/glibc-functions/obstack_printf.texi: Update.
208         * doc/glibc-functions/obstack_vprintf.texi: Update.
209         Reported by Eric Blake.
210
211 2009-02-25  Bruno Haible  <bruno@clisp.org>
212
213         * m4/mbrtowc.m4 (gl_MBRTOWC_NUL_RETVAL): Update guess for Solaris 8
214         with known value.
215         Reported by Gary V. Vaughan <gary@gnu.org>.
216
217 2009-02-25  Bruno Haible  <bruno@clisp.org>
218
219         Work around mbrtowc bug in zh_CN.GB18030 locale on Solaris 8.
220         * m4/mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): New macro.
221         (gl_MBSTATE_T_BROKEN): Invoke it. Replace mbstate_t when it says "no".
222         * doc/posix-functions/mbrtowc.texi: Document the Solaris 8 bug.
223         Reported by Gary V. Vaughan <gary@gnu.org>.
224
225 2009-02-25  Bruno Haible  <bruno@clisp.org>
226
227         Work around broken INT8_MAX, UINT8_MAX etc. values on HP-UX 11.23.
228         * m4/stdint.m4 (gl_STDINT_H): Also check whether the expansions of
229         INT8_MAX, UINT8_MAX etc. contain casts to elementary types.
230         * doc/posix-headers/stdint.texi: Mention the HP-UX bug.
231         Reported by Gary V. Vaughan <gary@gnu.org>.
232
233 2009-02-25  Eric Blake  <ebb9@byu.net>
234
235         tests: skip fseek/ftell tests if ungetc is broken
236         * m4/ungetc.m4: New file.
237         * modules/fseek-tests: Split test, so ungetc dependency is
238         separate from rest of test.
239         * modules/fseeko-tests: Likewise.
240         * modules/ftell-tests: Likewise.
241         * modules/ftello-tests: Likewise.
242         * tests/test-fseek.c (main): Isolate ungetc dependency.
243         * tests/test-fseeko.c (main): Likewise.
244         * tests/test-ftell.c (main): Likewise.
245         * tests/test-ftello.c (main): Likewise.
246         * tests/test-fseek2.sh: New file.
247         * tests/test-fseeko2.sh: Likewise.
248         * tests/test-ftell2.sh: Likewise.
249         * tests/test-ftello2.sh: Likewise.
250
251 2009-02-25  Ondřej Vašík  <ovasik@redhat.com>
252
253         test-getaddrinfo: fix usage of skip return code 77
254         * tests/test-gettaddrinfo.c: Return skip code 77 only
255         for first occurance of skip (4x77 is not 77)
256
257 2009-02-25  Gary V. Vaughan  <gary@gnu.org>
258
259         strtod: avoid C99 decl-after-statement
260         * m4/strtod.m4 (gl_FUNC_STRTOD): Rearrange declaration.
261
262 2009-02-24  Eric Blake  <ebb9@byu.net>
263
264         strtod: detect HP-UX 11.31 bug
265         * m4/strtod.m4 (gl_FUNC_STRTOD): Detect errno handling bug.
266         Reported by Gary V. Vaughan.
267
268 2009-02-23  Bruno Haible  <bruno@clisp.org>
269
270         Fix invalid read past end of memory block.
271         * lib/vasnprintf.c (DCHAR_SET): Define.
272         (local_wcslen): Define only when needed.
273         (local_strnlen, local_wcsnlen): New functions.
274         (VASNPRINTF) [!USE_SNPRINTF && HAVE_WCHAR_T]: Implement the %s and %ls
275         directives that involve a conversion ourselves.
276         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for strnlen,
277         wcsnlen, mbrtowc, wcrtomb.
278         * tests/test-vasnprintf-posix.c (test_function): Add tests for %.*s.
279         * tests/test-vasprintf-posix.c (test_function): Likewise.
280         * tests/test-snprintf-posix.h (test_function): Likewise.
281         * tests/test-sprintf-posix.h (test_function): Likewise.
282         Reported by Ben Pfaff <blp@cs.stanford.edu>.
283
284 2009-02-22  Bruno Haible  <bruno@clisp.org>
285
286         Implement new clarified decomposition of Hangul syllables.
287         * lib/uninorm/decomposition.c (uc_decomposition): For Hangul syllables
288         of type LTV, return only a pairwise decomposition.
289         * lib/uninorm/canonical-decomposition.c (uc_canonical_decomposition):
290         Likewise.
291         * tests/uninorm/test-decomposition.c (main): Updated expected result.
292         * tests/uninorm/test-canonical-decomposition.c (main): Likewise.
293         * tests/uninorm/test-compat-decomposition.c (main): Likewise.
294
295 2009-02-22  Bruno Haible  <bruno@clisp.org>
296
297         * lib/uninorm/u-normalize-internal.h (FUNC): At the end, handle
298         zero-length results and shrink excess allocated memory.
299         * tests/uninorm/test-u8-nfc.c (test_u8_nfc): Check empty string result.
300         * tests/uninorm/test-u8-nfd.c (test_u8_nfd): Likewise.
301         * tests/uninorm/test-u8-nfkc.c (test_u8_nfkc): Likewise.
302         * tests/uninorm/test-u8-nfkd.c (test_u8_nfkd): Likewise.
303         * tests/uninorm/test-u16-nfc.c (test_u16_nfc): Likewise.
304         * tests/uninorm/test-u16-nfd.c (test_u16_nfd): Likewise.
305         * tests/uninorm/test-u16-nfkc.c (test_u16_nfkc): Likewise.
306         * tests/uninorm/test-u16-nfkd.c (test_u16_nfkd): Likewise.
307         * tests/uninorm/test-u32-nfc.c (test_u32_nfc): Likewise.
308         * tests/uninorm/test-u32-nfd.c (test_u32_nfd): Likewise.
309         * tests/uninorm/test-u32-nfkc.c (test_u32_nfkc): Likewise.
310         * tests/uninorm/test-u32-nfkd.c (test_u32_nfkd): Likewise.
311
312 2009-02-21  Bruno Haible  <bruno@clisp.org>
313
314         * doc/gnulib.texi: Include safe-alloc.texi earlier.
315         * doc/safe-alloc.texi: Terminate sentences with a period. Use two
316         spaces after a period. Put a space between a macro name and its
317         argument list. Trivial rewordings.
318         * lib/safe-alloc.c: Include safe-alloc.h right after config.h.
319         * tests/test-safe-alloc.c: Likewise. Include stdlib.h.
320         (main): Return 0 explicitly.
321
322 2009-02-21  Bruno Haible  <bruno@clisp.org>
323
324         Tests for module 'uninorm/filter'.
325         * tests/uninorm/test-uninorm-filter-nfc.c: New file.
326         * modules/uninorm/filter-tests: New file.
327
328         New module 'uninorm/filter'.
329         * lib/uninorm.h (uninorm_filter_create, uninorm_filter_write,
330         uninorm_filter_flush, uninorm_filter_free): New declarations.
331         * lib/uninorm/uninorm-filter.c: New file.
332         * modules/uninorm/filter: New file.
333
334 2009-02-21  Bruno Haible  <bruno@clisp.org>
335
336         Tests for module 'uninorm/nfkc'.
337         * tests/uninorm/test-nfkc.c: New file.
338         * tests/uninorm/test-u8-nfkc.c: New file.
339         * tests/uninorm/test-u16-nfkc.c: New file.
340         * tests/uninorm/test-u32-nfkc.c: New file.
341         * tests/uninorm/test-u32-nfkc-big.sh: New file.
342         * tests/uninorm/test-u32-nfkc-big.c: New file.
343         * modules/uninorm/nfkc-tests: New file.
344
345         New module 'uninorm/nfkc'.
346         * lib/uninorm/nfkc.c: New file.
347         * modules/uninorm/nfkc: New file.
348
349         Tests for module 'uninorm/nfkd'.
350         * tests/uninorm/test-nfkd.c: New file.
351         * tests/uninorm/test-u8-nfkd.c: New file.
352         * tests/uninorm/test-u16-nfkd.c: New file.
353         * tests/uninorm/test-u32-nfkd.c: New file.
354         * tests/uninorm/test-u32-nfkd-big.sh: New file.
355         * tests/uninorm/test-u32-nfkd-big.c: New file.
356         * modules/uninorm/nfkd-tests: New file.
357
358         New module 'uninorm/nfkd'.
359         * lib/uninorm/nfkd.c: New file.
360         * modules/uninorm/nfkd: New file.
361
362         Tests for module 'uninorm/nfc'.
363         * tests/uninorm/test-nfc.c: New file.
364         * tests/uninorm/test-u8-nfc.c: New file.
365         * tests/uninorm/test-u16-nfc.c: New file.
366         * tests/uninorm/test-u32-nfc.c: New file.
367         * tests/uninorm/test-u32-nfc-big.sh: New file.
368         * tests/uninorm/test-u32-nfc-big.c: New file.
369         * modules/uninorm/nfc-tests: New file.
370
371         New module 'uninorm/nfc'.
372         * lib/uninorm/nfc.c: New file.
373         * modules/uninorm/nfc: New file.
374
375         Tests for module 'uninorm/nfd'.
376         * tests/uninorm/test-nfd.c: New file.
377         * tests/uninorm/test-u8-nfd.c: New file.
378         * tests/uninorm/test-u16-nfd.c: New file.
379         * tests/uninorm/test-u32-nfd.c: New file.
380         * tests/uninorm/test-u32-nfd-big.sh: New file.
381         * tests/uninorm/test-u32-nfd-big.c: New file.
382         * tests/uninorm/test-u32-normalize-big.h: New file.
383         * tests/uninorm/test-u32-normalize-big.c: New file.
384         * tests/uninorm/NormalizationTest.txt: New file, created from
385         Unicode 5.1.0 NormalizationTest.txt.
386         * modules/uninorm/nfd-tests: New file.
387
388         New module 'uninorm/nfd'.
389         * lib/uninorm/nfd.c: New file.
390         * modules/uninorm/nfd: New file.
391
392         New module 'uninorm/u32-normalize'.
393         * lib/uninorm/u32-normalize.c: New file.
394         * modules/uninorm/u32-normalize: New file.
395
396         New module 'uninorm/u16-normalize'.
397         * lib/uninorm/u16-normalize.c: New file.
398         * modules/uninorm/u16-normalize: New file.
399
400         New module 'uninorm/u8-normalize'.
401         * lib/uninorm/u8-normalize.c: New file.
402         * lib/uninorm/normalize-internal.h: New file.
403         * lib/uninorm/u-normalize-internal.h: New file.
404         * modules/uninorm/u8-normalize: New file.
405
406         New module 'uninorm/decompose-internal'.
407         * lib/uninorm/decompose-internal.c: New file.
408         * modules/uninorm/decompose-internal: New file.
409
410         Tests for module 'uninorm/composition'.
411         * tests/uninorm/test-composition.c: New file.
412         * modules/uninorm/composition-tests: New file.
413
414         New module 'uninorm/composition'.
415         * lib/uninorm/composition.c: New file.
416         * lib/uninorm/composition-table.gperf: New file, generated by
417         gen-uni-tables.
418         * modules/uninorm/composition: New file.
419
420         Tests for module 'uninorm/compat-decomposition'.
421         * tests/uninorm/test-compat-decomposition.c: New file.
422         * modules/uninorm/compat-decomposition-tests: New file.
423
424         New module 'uninorm/compat-decomposition'.
425         * lib/uninorm/decompose-internal.h: New file.
426         * lib/uninorm/compat-decomposition.c: New file.
427         * modules/uninorm/compat-decomposition: New file.
428
429         Tests for module 'uninorm/canonical-decomposition'.
430         * tests/uninorm/test-canonical-decomposition.c: New file.
431         * modules/uninorm/canonical-decomposition-tests: New file.
432
433         New module 'uninorm/canonical-decomposition'.
434         * lib/uninorm/canonical-decomposition.c: New file.
435         * modules/uninorm/canonical-decomposition: New file.
436
437         Tests for module 'uninorm/decomposition'.
438         * tests/uninorm/test-decomposition.c: New file.
439         * modules/uninorm/decomposition-tests: New file.
440
441         New module 'uninorm/decomposition'.
442         * lib/uninorm/decomposition.c: New file.
443         * modules/uninorm/decomposition: New file.
444
445         New module 'uninorm/decomposition-table'.
446         * lib/uninorm/decomposition-table.h: New file.
447         * lib/uninorm/decomposition-table.c: New file.
448         * lib/uninorm/decomposition-table1.h: New file, generated by
449         gen-uni-tables.
450         * lib/uninorm/decomposition-table2.h: New file, generated by
451         gen-uni-tables.
452         * modules/uninorm/decomposition-table: New file.
453
454         * lib/gen-uni-tables.c (MAX_DECOMP_LENGTH): New macro.
455         (UC_DECOMP_*): New enumeration items.
456         (get_decomposition): New function.
457         (struct decomp_table): New type.
458         (output_decomposition, output_decomposition_tables): New functions.
459         (unicode_composition_exclusions): New variable.
460         (fill_composition_exclusions, debug_output_composition_tables): New
461         functions.
462         (main): Accept one more argument. Invoke fill_composition_exclusions.
463         Output decomposition and composition tables.
464
465         New module 'uninorm/base'.
466         * lib/uninorm.h: New file.
467         * lib/unictype.h: Update comment.
468         * modules/uninorm/base: New file.
469
470 2009-02-21  David Lutterkort  <lutter@redhat.com>
471
472         Tests for module 'safe-alloc'.
473         * tests/test-safe-alloc.c: New file.
474         * modules/safe-alloc-tests: New file.
475
476         New module 'safe-alloc'.
477         * lib/safe-alloc.h: New file.
478         * lib/safe-alloc.c: New file.
479         * m4/safe-alloc.m4: New file.
480         * modules/safe-alloc: New file.
481         * doc/safe-alloc.texi: New file.
482         * doc/gnulib.texi: Include it.
483         * MODULES.html.sh (Memory management functions <stdlib.h>): Add
484         safe-alloc.
485
486 2009-02-18  Bruno Haible  <bruno@clisp.org>
487
488         Fix link error on non-glibc systems.
489         * modules/uniwbrk/ulc-wordbreaks-tests (test_ulc_wordbreaks_LDADD): New
490         variable.
491         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
492
493 2009-02-18  Jim Meyering  <meyering@redhat.com>
494
495         fts: avoid used-uninitialized error due to recent change
496         * lib/fts.c (fts_read): Guard uses of the new member,
497         parent->fts_n_dirs_remaining, since it's not relevant for
498         the parent of a directory specified on the command-line.
499
500 2009-02-17  James Youngman  <jay@gnu.org>
501             Bruno Haible  <bruno@clisp.org>
502
503         * m4/include_next.m4: Reformulate comment.
504
505 2009-02-16  Jim Meyering  <meyering@redhat.com>
506
507         fts: add #if guards so that the fts_lgpl module still builds
508         * lib/fts.c: Guard just-added hash-table-using parts with
509         #if GNULIB_FTS, so as not to break builds of the fts_lgpl module.
510         Reported by Simon Josefsson.
511
512 2009-02-15  Bruno Haible  <bruno@clisp.org>
513
514         * modules/array-mergesort-tests: New file.
515         * tests/test-array-mergesort.c: New file.
516
517         New module 'array-mergesort'.
518         * modules/array-mergesort: New file.
519         * lib/array-mergesort.h: New file.
520
521 2009-02-15  Bruno Haible  <bruno@clisp.org>
522
523         Fix 2009-02-07 commit.
524         * lib/gen-uni-tables.c (output_predicate, output_category,
525         output_combclass, output_bidi_category, output_decimal_digit,
526         output_digit, output_numeric, output_mirror, output_scripts,
527         output_ident_category, output_simple_mapping): Fix format directives.
528         (output_lbp, output_wbp): Don't convert -1 to a size_t implicitly.
529
530 2009-02-15  Albert Chin-A-Young  <china@thewrittenword.com>
531
532         * m4/include_next.m4: Update comment about IBM C 9.0/10.1 bug, now that
533         fixes are available from IBM.
534
535 2009-02-13  Jim Meyering  <meyering@redhat.com>
536
537         fts: arrange not to stat non-directories in more cases
538         This makes GNU find (when it doesn't need to stat each file)
539         *much* more efficient at traversing reiserfs file systems.
540         * lib/fts_.h (struct ftsent) [fts_n_dirs_remaining]: New member.
541         (struct FTS) [fts_leaf_optimization_works_ht]: Add member.
542         * lib/fts.c (fts_close): Free ->fts_leaf_optimization_works_ht.
543         (S_MAGIC_REISERFS, S_MAGIC_PROC): Define.
544         (leaf_optimization_applies): New function.
545         (LCO_hash, LCO_compare): New helper functions.
546         (link_count_optimize_ok): New function.
547         (fts_stat): Initialize new member (if dir).
548         (fts_read): Decrement parent's fts_n_dirs_remaining count if
549         we've just stat'ed a directory.  Skip the stat call when possible.
550         ---
551         Note this AFS-related exchange:
552         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=143111
553         and note find's pioctl call in find/fstype.c.
554         But that is necessary only if you want to enable the
555         optimization for AFS, and for now, I don't.
556
557         fts: move a function definition "up" (no semantic change)
558         * lib/fts.c (dirent_inode_sort_may_be_useful): Move definition
559         "up" to precede upcoming use of a related function.
560
561 2009-02-11  Jim Meyering  <meyering@redhat.com>
562
563         fts: correct internal computation of nlinks (optimization-related)
564         * lib/fts.c (fts_build): ISSET(FTS_NOSTAT) has no bearing on
565         whether the current entry is a directory, so don't test it.
566
567 2009-02-10  Bruno Haible  <bruno@clisp.org>
568
569         Tests for module 'uniwbrk/ulc-wordbreaks'.
570         * modules/uniwbrk/ulc-wordbreaks-tests: New file.
571         * tests/uniwbrk/test-ulc-wordbreaks.sh: New file.
572         * tests/uniwbrk/test-ulc-wordbreaks.c: New file.
573
574         Tests for module 'uniwbrk/u32-wordbreaks'.
575         * modules/uniwbrk/u32-wordbreaks-tests: New file.
576         * tests/uniwbrk/test-u32-wordbreaks.c: New file.
577
578         Tests for module 'uniwbrk/u16-wordbreaks'.
579         * modules/uniwbrk/u16-wordbreaks-tests: New file.
580         * tests/uniwbrk/test-u16-wordbreaks.c: New file.
581
582         Tests for module 'uniwbrk/u8-wordbreaks'.
583         * modules/uniwbrk/u8-wordbreaks-tests: New file.
584         * tests/uniwbrk/test-u8-wordbreaks.c: New file.
585
586 2009-02-10  Bruno Haible  <bruno@clisp.org>
587
588         * modules/uniwbrk/u8-wordbreaks (Depends-on): Add uniwbrk/wordbreak
589         property.
590         * modules/uniwbrk/u16-wordbreaks (Depends-on): Likewise.
591         * modules/uniwbrk/u32-wordbreaks (Depends-on): Likewise.
592         * modules/uniwbrk/ulc-wordbreaks (Depends-on): Add localcharset.
593
594 2009-02-10  Simon Josefsson  <simon@josefsson.org>
595
596         * m4/sockets.m4: Call AC_C_INLINE since sockets.h now can use
597         inline keywords.  Reported by Bruno Haible <bruno@clisp.org>.
598
599 2009-02-10  Bruno Haible  <bruno@clisp.org>
600
601         * lib/unilbrk/lbrktables.h: Renamed from lib/unilbrk/tables.h.
602         * lib/unilbrk/lbrktables.c: Renamed from lib/unilbrk/tables.c.
603         * modules/unilbrk/tables (Files, Makefile.am, Include): Update.
604         * lib/unilbrk/u8-possible-linebreaks.c: Update.
605         * lib/unilbrk/u16-possible-linebreaks.c: Likewise.
606         * lib/unilbrk/u32-possible-linebreaks.c: Likewise.
607
608 2009-02-09  Simon Josefsson  <simon@josefsson.org>
609
610         * lib/sockets.h (gl_fd_to_handle): New function.
611
612         * tests/test-sockets.c: Call gl_fd_to_handle.
613
614 2009-02-09  Bruno Haible  <bruno@clisp.org>
615
616         * doc/havelib.texi: Document the conventions on bi-arch systems.
617
618 2009-02-08  Bruno Haible  <bruno@clisp.org>
619
620         Document the AC_LIB_LINKFLAGS macro.
621         * doc/havelib.texi: New file, mostly written on 2005-05-24.
622         * doc/gnulib.texi: Include it.
623
624 2009-02-08  Bruno Haible  <bruno@clisp.org>
625
626         Fix wrong order of sections, compared to TOC.
627         * doc/gnulib.texi: Include relocatable-maint.texi after the
628         "Regular expressions" node, not before.
629
630 2009-02-08  Bruno Haible  <bruno@clisp.org>
631
632         Tests for module 'unicase/totitle'.
633         * modules/unicase/totitle-tests: New file.
634
635         Tests for module 'unicase/tolower'.
636         * modules/unicase/tolower-tests: New file.
637
638         Tests for module 'unicase/toupper'.
639         * modules/unicase/toupper-tests: New file.
640         * tests/unicase/test-mapping-part1.h: New file.
641         * tests/unicase/test-mapping-part2.h: New file.
642
643         New module 'unicase/totitle'.
644         * modules/unicase/totitle: New file.
645         * lib/unicase/totitle.c: New file.
646
647         New module 'unicase/tolower'.
648         * modules/unicase/tolower: New file.
649         * lib/unicase/tolower.c: New file.
650
651         New module 'unicase/toupper'.
652         * modules/unicase/toupper: New file.
653         * lib/unicase/toupper.c: New file.
654         * lib/unicase/simple-mapping.h: New file.
655
656         * lib/gen-uni-tables.c (output_simple_mapping_test): New function.
657         (mapping_table): New structure.
658         (output_simple_mapping): New function.
659         (main): Invoke output_simple_mapping_test and output_simple_mapping.
660         * modules/gen-uni-tables (Description): Update.
661         * lib/unicase/toupper.h: New file, automatically generated by
662         gen-uni-tables.
663         * lib/unicase/tolower.h: New file, automatically generated by
664         gen-uni-tables.
665         * lib/unicase/totitle.h: New file, automatically generated by
666         gen-uni-tables.
667         * tests/unicase/test-uc_toupper.c: New file, automatically generated by
668         gen-uni-tables.
669         * tests/unicase/test-uc_tolower.c: New file, automatically generated by
670         gen-uni-tables.
671         * tests/unicase/test-uc_totitle.c: New file, automatically generated by
672         gen-uni-tables.
673
674         New module 'unicase/base'.
675         * modules/unicase/base: New file.
676         * lib/unicase.h: New file.
677
678 2009-02-08  Bruno Haible  <bruno@clisp.org>
679
680         New module 'uniwbrk/ulc-wordbreaks'.
681         * modules/uniwbrk/ulc-wordbreaks: New file.
682         * lib/uniwbrk/ulc-wordbreaks.c: New file.
683
684         New module 'uniwbrk/u32-wordbreaks'.
685         * modules/uniwbrk/u32-wordbreaks: New file.
686         * lib/uniwbrk/u32-wordbreaks.c: New file.
687
688         New module 'uniwbrk/u16-wordbreaks'.
689         * modules/uniwbrk/u16-wordbreaks: New file.
690         * lib/uniwbrk/u16-wordbreaks.c: New file.
691
692         New module 'uniwbrk/u8-wordbreaks'.
693         * modules/uniwbrk/u8-wordbreaks: New file.
694         * lib/uniwbrk/u8-wordbreaks.c: New file.
695         * lib/uniwbrk/u-wordbreaks.h: New file.
696
697         New module 'uniwbrk/table'.
698         * modules/uniwbrk/table: New file.
699         * lib/uniwbrk/wbrktable.h: New file.
700         * lib/uniwbrk/wbrktable.c: New file.
701
702         New module 'uniwbrk/wordbreak-property'.
703         * modules/uniwbrk/wordbreak-property: New file.
704         * lib/uniwbrk/wordbreak-property.c: New file.
705
706         * lib/gen-uni-tables.c (WBP_*): New enum items.
707         (get_wbp, debug_output_wbp, debug_output_wbrk_tables): New functions.
708         (unicode_org_wbp): New variable.
709         (fill_org_wbp, debug_output_org_wbp, debug_output_org_wbrk_tables):
710         New functions.
711         (wbp_table): New structure.
712         (output_wbp, output_wbrk_tables): New functions.
713         (main): Accept additional argument. Invoke fill_org_wbp,
714         debug_output_wbrk_tables, debug_output_org_wbrk_tables,
715         output_wbrk_tables.
716         * modules/gen-uni-tables (Description): Update.
717         * lib/uniwbrk/wbrkprop.h: New file, automatically generated by
718         gen-uni-tables.
719
720         New module 'uniwbrk/base'.
721         * modules/uniwbrk/base: New file.
722         * lib/uniwbrk.h: New file.
723
724 2009-02-08  Bruno Haible  <bruno@clisp.org>
725
726         Update to Unicode 5.1.0.
727         * lib/gen-uni-tables.c (is_property_alphabetic): Include
728         U+2185..U+2188.
729         (is_property_default_ignorable_code_point): Don't include characters
730         of category Cc or Cs and not-a-characters.
731         (get_lbp): Assume REVISION_22. Special handling of U+0609, U+060A,
732         U+0D79, U+109E, U+109F, U+A60C.
733         * lib/unictype/bidi_of.h: Regenerated.
734         * lib/unictype/blocks.h: Regenerated.
735         * lib/unictype/categ_C.h: Regenerated.
736         * lib/unictype/categ_Cf.h: Regenerated.
737         * lib/unictype/categ_Cn.h: Regenerated.
738         * lib/unictype/categ_L.h: Regenerated.
739         * lib/unictype/categ_Ll.h: Regenerated.
740         * lib/unictype/categ_Lm.h: Regenerated.
741         * lib/unictype/categ_Lo.h: Regenerated.
742         * lib/unictype/categ_Lu.h: Regenerated.
743         * lib/unictype/categ_M.h: Regenerated.
744         * lib/unictype/categ_Mc.h: Regenerated.
745         * lib/unictype/categ_Me.h: Regenerated.
746         * lib/unictype/categ_Mn.h: Regenerated.
747         * lib/unictype/categ_N.h: Regenerated.
748         * lib/unictype/categ_Nd.h: Regenerated.
749         * lib/unictype/categ_Nl.h: Regenerated.
750         * lib/unictype/categ_No.h: Regenerated.
751         * lib/unictype/categ_P.h: Regenerated.
752         * lib/unictype/categ_Pd.h: Regenerated.
753         * lib/unictype/categ_Pe.h: Regenerated.
754         * lib/unictype/categ_Pf.h: Regenerated.
755         * lib/unictype/categ_Pi.h: Regenerated.
756         * lib/unictype/categ_Po.h: Regenerated.
757         * lib/unictype/categ_Ps.h: Regenerated.
758         * lib/unictype/categ_S.h: Regenerated.
759         * lib/unictype/categ_Sk.h: Regenerated.
760         * lib/unictype/categ_Sm.h: Regenerated.
761         * lib/unictype/categ_So.h: Regenerated.
762         * lib/unictype/categ_of.h: Regenerated.
763         * lib/unictype/combining.h: Regenerated.
764         * lib/unictype/ctype_alnum.h: Regenerated.
765         * lib/unictype/ctype_alpha.h: Regenerated.
766         * lib/unictype/ctype_graph.h: Regenerated.
767         * lib/unictype/ctype_lower.h: Regenerated.
768         * lib/unictype/ctype_print.h: Regenerated.
769         * lib/unictype/ctype_punct.h: Regenerated.
770         * lib/unictype/ctype_upper.h: Regenerated.
771         * lib/unictype/decdigit.h: Regenerated.
772         * lib/unictype/digit.h: Regenerated.
773         * lib/unictype/mirror.h: Regenerated.
774         * lib/unictype/numeric.h: Regenerated.
775         * lib/unictype/pr_alphabetic.h: Regenerated.
776         * lib/unictype/pr_bidi_arabic_digit.h: Regenerated.
777         * lib/unictype/pr_bidi_arabic_right_to_left.h: Regenerated.
778         * lib/unictype/pr_bidi_boundary_neutral.h: Regenerated.
779         * lib/unictype/pr_bidi_eur_num_terminator.h: Regenerated.
780         * lib/unictype/pr_bidi_left_to_right.h: Regenerated.
781         * lib/unictype/pr_bidi_non_spacing_mark.h: Regenerated.
782         * lib/unictype/pr_bidi_other_neutral.h: Regenerated.
783         * lib/unictype/pr_combining.h: Regenerated.
784         * lib/unictype/pr_dash.h: Regenerated.
785         * lib/unictype/pr_decimal_digit.h: Regenerated.
786         * lib/unictype/pr_default_ignorable_code_point.h: Regenerated.
787         * lib/unictype/pr_deprecated.h: Regenerated.
788         * lib/unictype/pr_diacritic.h: Regenerated.
789         * lib/unictype/pr_extender.h: Regenerated.
790         * lib/unictype/pr_format_control.h: Regenerated.
791         * lib/unictype/pr_grapheme_base.h: Regenerated.
792         * lib/unictype/pr_grapheme_extend.h: Regenerated.
793         * lib/unictype/pr_grapheme_link.h: Regenerated.
794         * lib/unictype/pr_id_continue.h: Regenerated.
795         * lib/unictype/pr_id_start.h: Regenerated.
796         * lib/unictype/pr_ideographic.h: Regenerated.
797         * lib/unictype/pr_ignorable_control.h: Regenerated.
798         * lib/unictype/pr_lowercase.h: Regenerated.
799         * lib/unictype/pr_math.h: Regenerated.
800         * lib/unictype/pr_numeric.h: Regenerated.
801         * lib/unictype/pr_other_alphabetic.h: Regenerated.
802         * lib/unictype/pr_other_default_ignorable_code_point.h: Regenerated.
803         * lib/unictype/pr_other_grapheme_extend.h: Regenerated.
804         * lib/unictype/pr_other_id_continue.h: Regenerated.
805         * lib/unictype/pr_other_lowercase.h: Regenerated.
806         * lib/unictype/pr_other_math.h: Regenerated.
807         * lib/unictype/pr_punctuation.h: Regenerated.
808         * lib/unictype/pr_sentence_terminal.h: Regenerated.
809         * lib/unictype/pr_soft_dotted.h: Regenerated.
810         * lib/unictype/pr_terminal_punctuation.h: Regenerated.
811         * lib/unictype/pr_unassigned_code_value.h: Regenerated.
812         * lib/unictype/pr_unified_ideograph.h: Regenerated.
813         * lib/unictype/pr_uppercase.h: Regenerated.
814         * lib/unictype/pr_xid_continue.h: Regenerated.
815         * lib/unictype/pr_xid_start.h: Regenerated.
816         * lib/unictype/pr_zero_width.h: Regenerated.
817         * lib/unictype/scripts.h: Regenerated.
818         * lib/unictype/scripts_byname.gperf: Regenerated.
819         * lib/unictype/sy_java_ident.h: Regenerated.
820         * lib/unilbrk/lbrkprop1.h: Regenerated.
821         * lib/unilbrk/lbrkprop2.h: Regenerated.
822         * tests/unictype/test-categ_C.c: Regenerated.
823         * tests/unictype/test-categ_Cf.c: Regenerated.
824         * tests/unictype/test-categ_Cn.c: Regenerated.
825         * tests/unictype/test-categ_L.c: Regenerated.
826         * tests/unictype/test-categ_Ll.c: Regenerated.
827         * tests/unictype/test-categ_Lm.c: Regenerated.
828         * tests/unictype/test-categ_Lo.c: Regenerated.
829         * tests/unictype/test-categ_Lu.c: Regenerated.
830         * tests/unictype/test-categ_M.c: Regenerated.
831         * tests/unictype/test-categ_Mc.c: Regenerated.
832         * tests/unictype/test-categ_Me.c: Regenerated.
833         * tests/unictype/test-categ_Mn.c: Regenerated.
834         * tests/unictype/test-categ_N.c: Regenerated.
835         * tests/unictype/test-categ_Nd.c: Regenerated.
836         * tests/unictype/test-categ_Nl.c: Regenerated.
837         * tests/unictype/test-categ_No.c: Regenerated.
838         * tests/unictype/test-categ_P.c: Regenerated.
839         * tests/unictype/test-categ_Pd.c: Regenerated.
840         * tests/unictype/test-categ_Pe.c: Regenerated.
841         * tests/unictype/test-categ_Pf.c: Regenerated.
842         * tests/unictype/test-categ_Pi.c: Regenerated.
843         * tests/unictype/test-categ_Po.c: Regenerated.
844         * tests/unictype/test-categ_Ps.c: Regenerated.
845         * tests/unictype/test-categ_S.c: Regenerated.
846         * tests/unictype/test-categ_Sk.c: Regenerated.
847         * tests/unictype/test-categ_Sm.c: Regenerated.
848         * tests/unictype/test-categ_So.c: Regenerated.
849         * tests/unictype/test-ctype_alnum.c: Regenerated.
850         * tests/unictype/test-ctype_alpha.c: Regenerated.
851         * tests/unictype/test-ctype_graph.c: Regenerated.
852         * tests/unictype/test-ctype_lower.c: Regenerated.
853         * tests/unictype/test-ctype_print.c: Regenerated.
854         * tests/unictype/test-ctype_punct.c: Regenerated.
855         * tests/unictype/test-ctype_upper.c: Regenerated.
856         * tests/unictype/test-decdigit.h: Regenerated.
857         * tests/unictype/test-digit.h: Regenerated.
858         * tests/unictype/test-numeric.h: Regenerated.
859         * tests/unictype/test-pr_alphabetic.c: Regenerated.
860         * tests/unictype/test-pr_bidi_arabic_digit.c: Regenerated.
861         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Regenerated.
862         * tests/unictype/test-pr_bidi_boundary_neutral.c: Regenerated.
863         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Regenerated.
864         * tests/unictype/test-pr_bidi_left_to_right.c: Regenerated.
865         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Regenerated.
866         * tests/unictype/test-pr_bidi_other_neutral.c: Regenerated.
867         * tests/unictype/test-pr_combining.c: Regenerated.
868         * tests/unictype/test-pr_dash.c: Regenerated.
869         * tests/unictype/test-pr_decimal_digit.c: Regenerated.
870         * tests/unictype/test-pr_default_ignorable_code_point.c: Regenerated.
871         * tests/unictype/test-pr_deprecated.c: Regenerated.
872         * tests/unictype/test-pr_diacritic.c: Regenerated.
873         * tests/unictype/test-pr_extender.c: Regenerated.
874         * tests/unictype/test-pr_format_control.c: Regenerated.
875         * tests/unictype/test-pr_grapheme_base.c: Regenerated.
876         * tests/unictype/test-pr_grapheme_extend.c: Regenerated.
877         * tests/unictype/test-pr_grapheme_link.c: Regenerated.
878         * tests/unictype/test-pr_id_continue.c: Regenerated.
879         * tests/unictype/test-pr_id_start.c: Regenerated.
880         * tests/unictype/test-pr_ideographic.c: Regenerated.
881         * tests/unictype/test-pr_ignorable_control.c: Regenerated.
882         * tests/unictype/test-pr_lowercase.c: Regenerated.
883         * tests/unictype/test-pr_math.c: Regenerated.
884         * tests/unictype/test-pr_numeric.c: Regenerated.
885         * tests/unictype/test-pr_other_alphabetic.c: Regenerated.
886         * tests/unictype/test-pr_other_default_ignorable_code_point.c:
887         Regenerated.
888         * tests/unictype/test-pr_other_grapheme_extend.c: Regenerated.
889         * tests/unictype/test-pr_other_id_continue.c: Regenerated.
890         * tests/unictype/test-pr_other_lowercase.c: Regenerated.
891         * tests/unictype/test-pr_other_math.c: Regenerated.
892         * tests/unictype/test-pr_punctuation.c: Regenerated.
893         * tests/unictype/test-pr_sentence_terminal.c: Regenerated.
894         * tests/unictype/test-pr_soft_dotted.c: Regenerated.
895         * tests/unictype/test-pr_terminal_punctuation.c: Regenerated.
896         * tests/unictype/test-pr_unassigned_code_value.c: Regenerated.
897         * tests/unictype/test-pr_unified_ideograph.c: Regenerated.
898         * tests/unictype/test-pr_uppercase.c: Regenerated.
899         * tests/unictype/test-pr_xid_continue.c: Regenerated.
900         * tests/unictype/test-pr_xid_start.c: Regenerated.
901         * tests/unictype/test-pr_zero_width.c: Regenerated.
902
903         Update to Unicode 5.1.0.
904         * lib/uniwidth/width.c (nonspacing_table_data): Add U+0487,
905         U+0616..U+061A, U+0A51, U+0A75, U+0B44, U+0B62..U+0B63, U+0C62..U+0C63,
906         U+0D44, U+0D62..U+0D63, U+1033..U+1035, U+103A, U+103D..U+103E,
907         U+105E..U+1060, U+1071..U+1074, U+1082, U+1085..U+1086, U+108D,
908         U+1B80..U+1B81, U+1BA2..U+1BA5, U+1BA8..U+1BA9, U+1C2C..U+1C33,
909         U+1C36..U+1C37, U+1DCB..U+1DE6, U+2064, U+20F0, U+2DE0..U+2DFF,
910         U+A66F..U+A672, U+A67C..U+A67D, U+A8C4, U+A926..U+A92D, U+A947..U+A951,
911         U+AA29..U+AA2E, U+AA31..U+AA32, U+AA35..U+AA36, U+AA43, U+AA4C,
912         U+FE24..U+FE26, U+101FD. Remove U+1929..U+192B.
913         (nonspacing_table_ind): Update.
914         * tests/uniwidth/test-uc_width2.sh: Update expected result.
915
916         Update to Unicode 5.1.0.
917         * lib/uniname/gen-uninames.lisp (main): Add the range 0x1Fxxx to the
918         code transform.
919         * lib/uniname/uniname.c (unicode_character_name,
920         unicode_name_character): Add the range 0x1Fxxx to the code transform.
921         * lib/uniname/uninames.h: Regenerated.
922         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.1.0.
923
924 2009-02-07  Bruno Haible  <bruno@clisp.org>
925
926         Merge gen-ctype and gen-lbrk into a single program.
927         * lib/gen-uni-tables.c: New file, incorporating
928         lib/unictype/gen-ctype.c and lib/unilbrk/gen-lbrk.c.
929         Add directory prefixes to the names of the generated files.
930         * lib/unictype/gen-ctype.c: Remove file.
931         * lib/unilbrk/gen-lbrk.c: Remove file.
932         * modules/gen-uni-tables: New file.
933         * modules/unictype/gen-ctype: Remove file.
934         * modules/unilbrk/gen-lbrk: Remove file.
935
936 2009-02-07  Bruno Haible  <bruno@clisp.org>
937
938         * lib/unistr.h (u8_strcoll, u16_strcoll, u32_strcoll): New declations.
939
940         New module 'unistr/u32-strcoll'.
941         * modules/unistr/u32-strcoll: New file.
942         * lib/unistr/u32-strcoll.c: New file.
943
944         New module 'unistr/u16-strcoll'.
945         * modules/unistr/u16-strcoll: New file.
946         * lib/unistr/u16-strcoll.c: New file.
947
948         New module 'unistr/u8-strcoll'.
949         * modules/unistr/u8-strcoll: New file.
950         * lib/unistr/u8-strcoll.c: New file.
951         * lib/unistr/u-strcoll.h: New file.
952
953 2009-02-07  Bruno Haible  <bruno@clisp.org>
954
955         * test-mbrtowc4.sh (LOCALE_ZH_CN): Fix default value.
956         * test-mbsnrtowcs4.sh (LOCALE_ZH_CN): Likewise.
957         * test-mbsrtowcs4.sh (LOCALE_ZH_CN): Likewise.
958         * test-wcrtomb.sh (LOCALE_ZH_CN): Likewise.
959         * test-wcsnrtombs4.sh (LOCALE_ZH_CN): Likewise.
960         * test-wcsrtombs4.sh (LOCALE_ZH_CN): Likewise.
961
962 2009-02-07  Bruno Haible  <bruno@clisp.org>
963
964         Make 64-bit clean.
965         * lib/unictype/gen-ctype.c (output_predicate, output_category,
966         output_combclass, output_bidi_category, output_decimal_digit,
967         output_digit, output_numeric, output_mirror, output_scripts,
968         output_ident_category): Use proper width specifier in format strings.
969
970 2009-02-07  Bruno Haible  <bruno@clisp.org>
971
972         * doc/posix-functions/dirfd.texi: Clarify situation on mingw. Document
973         failure behaviour.
974
975 2009-02-07  Jim Meyering  <meyering@redhat.com>
976
977         regex: avoid compilation failure with upcoming gcc-4.4
978         * lib/regex_internal.h: Revert e48d8b47fb3eee81d341b71c3e006efe9e3433a7
979         [workaround for PGC prior to 6.1-2].  Otherwise, we'd get this:
980         "... error: integer overflow in preprocessor expression".
981
982 2009-02-05  Ben Pfaff  <blp@gnu.org>
983
984         Fix link errors on Windows when close module is used.
985         * modules/close: Add $(LIB_CLOSE) to Link section.
986         * m4/close.m4 (gl_REPLACE_CLOSE): Substitute -lws2_32 into
987         $(LIB_CLOSE) on Windows.
988
989 2009-02-05  Jim Meyering  <meyering@redhat.com>
990
991         still avoid unused-parameter warnings, but do it cleanly
992         * lib/fsusage.c (UNUSED_PARAM): Remove definition.
993         (get_fs_usage): Cast to void instead.
994         * lib/mountlist.c (UNUSED_PARAM): Remove definition.
995         (dev_from_mount_options, read_file_system_list): Cast to void.
996         Prompted by Bruno Haible.
997
998 2009-02-04  Jim Meyering  <meyering@redhat.com>
999
1000         fsusage.c: correct copyright year
1001         * lib/fsusage.c: Reflect year in which the change is pushed into
1002
1003         avoid misc. warnings
1004         * lib/fsusage.c (UNUSED_PARAM): Define.
1005         (get_fs_usage): Mark parameter "disk" as unused.
1006         * lib/getugroups.c (getgrent): Use "void" in prototype.
1007         * lib/mountlist.c: Mark unused parameters.
1008         (read_file_system_list): Declare a local with "const".
1009         * lib/nanosleep.c (getnow): Declare static.
1010         * lib/strftime.c: Include strftime.h, for declaration of nstrftime.
1011
1012         dirfd: set errno upon failure
1013         * lib/dirfd.c: Include <errno.h>.
1014         Set errno to ENOTSUP when returning -1.
1015         * modules/dirfd (Depends-on): Add errno.
1016         Suggested by John Kodis <kodis@comcast.net>.
1017
1018 2009-02-01  Bruno Haible  <bruno@clisp.org>
1019
1020         Don't assume sizeof (long) >= sizeof (void *).
1021         * lib/memcmp.c: Include stdint.h.
1022         (memcmp_bytes): Change argument types to op_t. Change type of srcp1,
1023         srcp2 to 'const byte *'.
1024         (memcmp_common_alignment, memcmp_not_common_alignment): Change argument
1025         types to uintptr_t.
1026         (rpl_memcmp): Change type of srcp1, srcp2 to 'uintptr_t'.
1027         * modules/memcmp (Depends-on): Add stdint.
1028         Reported by Ozkan Sezer <sezeroz@gmail.com>.
1029
1030 2009-01-30  Eric Blake  <ebb9@byu.net>
1031
1032         fix more require-before-expand issues
1033         * m4/pmccabe2html.m4 (gl_PMCCABE2HTML): Require, rather than
1034         expand, AC_PROG_AWK.
1035         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): Use AC_DEFUN_ONCE.
1036
1037 2009-01-28  Eric Blake  <ebb9@byu.net>
1038
1039         version-etc: use consistent URL formatting
1040         * lib/version-etc.c (emit_bug_reporting_address, version_etc_va):
1041         Improve formatting.  Use fputs for string without %.
1042
1043 2009-01-28  Jim Meyering  <meyering@redhat.com>
1044
1045         00gnulib.m4: add m4 quotes in shell comment to avoid autoconf warning
1046         * m4/00gnulib.m4 (AC_DEFUN_ONCE): Add quotes to avoid an
1047         "underquoted definition of NAME" from autoconf-2.59.
1048
1049 2009-01-28  Bruno Haible  <bruno@clisp.org>
1050
1051         * doc/gnulib.texi: Add "Obsolete modules" to index.
1052
1053 2009-01-28  Jim Meyering  <meyering@redhat.com>
1054
1055         useless-if-before-free: recognize more variants
1056         * build-aux/useless-if-before-free: Also recognize e.g.,
1057         if (NULL != p) free (p);
1058
1059 2009-01-27  Mark McLoughlin  <markmc@redhat.com>
1060
1061         test-getaddrinfo: skip (don't fail) this test when there's no network
1062         * tests/test-getaddrinfo.c: Skip test upon failure with EAI_AGAIN,
1063         on the presumption that it means you lack network access.
1064
1065 2009-01-26  Jim Meyering  <meyering@redhat.com>
1066
1067         fflush: avoid warnings on modern systems
1068         * lib/fflush.c (rpl_fflush): Move declarations of locals,
1069         pos and result, into scopes where they're used.
1070
1071 2009-01-26  Eric Blake  <ebb9@byu.net>
1072
1073         Silence warning reintroduced by recent extensions patch.
1074         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS)
1075         (gl_USE_SYSTEM_EXTENSIONS): Use AC_DEFUN_ONCE to silence newer
1076         autoconf.
1077
1078         Backport improved autoconf semantics of AC_DEFUN_ONCE.
1079         * m4/00gnulib.m4: New file.
1080         * gnulib-tool (func_get_filelist): Always use it.
1081         * m4/gnulib-common.m4 (gl_COMMON): Force the file to be used.
1082         Reported by Bruno Haible, with suggestions from Paolo Bonzini.
1083
1084 2009-01-25  Bruno Haible  <bruno@clisp.org>
1085
1086         Make test-quotearg work on MacOS X and AIX.
1087         * tests/test-quotearg.sh: New file.
1088         * tests/locale/fr/LC_MESSAGES/test-quotearg.po: New file.
1089         * tests/locale/fr/LC_MESSAGES/test-quotearg.mo: New file.
1090         * tests/test-quotearg.c: Include <locale.h> and gettext.h. Don't
1091         include <libintl.h>.
1092         (fake_locale): Remove variable.
1093         (gettext, dgettext, dcgettext): Remove functions.
1094         (main): Instead of setting a fake locale, set a real locale. Call
1095         textdomain and bindtextdomain.
1096         * modules/quotearg-tests (Files): Add the new files.
1097         (Depends-on): Add gettext, setenv, unsetenv.
1098         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
1099         (Makefile.am): Add test-quotearg.sh to TESTS, remove test-quotearg.
1100         Augment TESTS_ENVIRONMENT.
1101
1102 2009-01-25  Bruno Haible  <bruno@clisp.org>
1103
1104         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove special code that hid the
1105         fr_FR.ISO8859-1 locale on MacOS X.
1106         * m4/locale-ja.m4 (gt_LOCALE_JA): Remove special code that hid the
1107         ja_JP.eucJP locale on MacOS X.
1108         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Remove special code that hid the
1109         zh_CN.GB18030 locale on MacOS X.
1110
1111 2009-01-25  Bruno Haible  <bruno@clisp.org>
1112
1113         Avoid link errors on MacOS X 10.3.
1114         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Add initializer.
1115         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
1116
1117 2009-01-25  Bruno Haible  <bruno@clisp.org>
1118
1119         * lib/pipe.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
1120         * m4/pipe.m4 (gl_PIPE): Remove tests for vfork() based code.
1121         * modules/pipe (Files): Remove m4/posix_spawn.m4.
1122         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
1123         posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2,
1124         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
1125         posix_spawnattr_init, posix_spawnattr_setsigmask,
1126         posix_spawnattr_setflags, posix_spawnattr_destroy.
1127
1128         * lib/execute.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
1129         * m4/execute.m4 (gl_EXECUTE): Remove tests for vfork() based code.
1130         * modules/execute (Files): Remove m4/posix_spawn.m4.
1131         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
1132         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
1133         posix_spawnattr_init, posix_spawnattr_setsigmask,
1134         posix_spawnattr_setflags, posix_spawnattr_destroy.
1135
1136 2009-01-25  Bruno Haible  <bruno@clisp.org>
1137
1138         * lib/glthread/threadlib.c: Include <stdlib.h>.
1139
1140 2009-01-25  Bruno Haible  <bruno@clisp.org>
1141
1142         * lib/glthread/threadlib.c (dummy): New declaration.
1143
1144 2009-01-25  Bruno Haible  <bruno@clisp.org>
1145
1146         * lib/mbrtowc.c (mbrtowc): Distinguish invalid and incomplete
1147         multibyte characters also for the GB18030 encoding. Don't crash when
1148         the encoding is unknown and nstate = 0. Needed on OSF/1 5.1.
1149
1150 2009-01-25  Bruno Haible  <bruno@clisp.org>
1151
1152         Avoid redefining 'struct random_data' on OSF/1 5.1.
1153         * lib/stdlib.in.h: Include <random.h> if it exists.
1154         * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether <random.h> exists. Set
1155         HAVE_RANDOM_H. Include <random.h> when testing whether
1156         'struct random_data' exists.
1157         * modules/stdlib (Makefile.am): Substitute HAVE_RANDOM_H.
1158
1159 2009-01-25  Bruno Haible  <bruno@clisp.org>
1160
1161         Don't install charset.alias on MacOS X >= 10.3.
1162         * lib/localcharset.c (DARWIN7): New macro.
1163         (get_charset_aliases): Hardcode the result for Darwin7.
1164         * modules/localcharset (install-exec-local): Don't install
1165         charset.alias on MacOS X >= 10.3, if the file does not yet exist.
1166
1167 2009-01-25  Bruno Haible  <bruno@clisp.org>
1168
1169         Don't install charset.alias on mingw and Cygwin.
1170         * modules/localcharset (install-exec-local): Don't install
1171         charset.alias on mingw and Cygwin, if the file does not yet exist.
1172         The result for these platforms is hardcoded in localcharset.c.
1173
1174 2009-01-25  Bruno Haible  <bruno@clisp.org>
1175
1176         Make it possible again to use AC_GNU_SOURCE together with gnulib.
1177         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_GNU_SOURCE
1178         before requiring AC_USE_SYSTEM_EXTENSIONS.
1179
1180 2009-01-25  Jim Meyering  <meyering@redhat.com>
1181
1182         c-strtod: avoid warnings
1183         * lib/c-strtod.c (C_STRTOD): Cast nptr to (char *) to avoid
1184         "assignment discards qualifiers from pointer target type" warnings.
1185
1186 2009-01-24  Bruno Haible  <bruno@clisp.org>
1187
1188         Add support for non-UTF-8 locales on MacOS X.
1189         * lib/config.charset: Add CP1131, ARMSCII-8, PT154 to the list of
1190         canonical encodings. For Darwin 7 and newer, don't map traditional
1191         encodings to UTF-8.
1192         Reported by Vincent Lefevre <vincent@vinc17.org>
1193         at <http://savannah.gnu.org/bugs/?25235>.
1194
1195 2009-01-24  Bruno Haible  <bruno@clisp.org>
1196
1197         * doc/gnulib.texi (Obsolete modules): New section.
1198         Reported by Mike Frysinger <vapier@gentoo.org>.
1199
1200 2009-01-24  Bruno Haible  <bruno@clisp.org>
1201
1202         * doc/Makefile (%.pdf): Clarify where to find texmf.cnf.
1203         (%.dvi): New rule.
1204
1205 2009-01-24  Bruno Haible  <bruno@clisp.org>
1206
1207         * lib/c-strtod.h (c_strtod, c_strtold): Adjust specification.
1208         Reported by Eric Blake.
1209
1210 2009-01-24  Bruno Haible  <bruno@clisp.org>
1211
1212         * lib/c-stack.c (segv_handler): If !HAVE_XSI_STACK_OVERFLOW_HEURISTIC,
1213         set signo = 0 also if info->si_code <= 0. Needed on HP-UX 11.11.
1214         Reported by Gary V. Vaughan <gary@gnu.org>.
1215
1216 2009-01-24  Bruno Haible  <bruno@clisp.org>
1217
1218         * lib/c-strtod.h (c_strtod, c_strtold): Add specification.
1219
1220 2009-01-23  Bruno Haible  <bruno@clisp.org>
1221
1222         Make c-strtod, c-strtold usable in libraries.
1223         * lib/c-strtod.c: Include string.h instead of xalloc.h.
1224         (C_STRTOD): Call strdup instead of xstrdup.
1225         * modules/c-strtod (Depends-on): Add strdup-posix, remove xalloc.
1226         * modules/c-strtold (Depends-on): Likewise.
1227         * doc/c-strtod.texi: Remove the sentence mentioning xalloc_die.
1228         * NEWS: Mention the change.
1229         Reported by Michael Gold <mgold@ncf.ca>.
1230
1231 2009-01-23  Jim Meyering  <meyering@redhat.com>
1232
1233         c-strtod: when ENDPTR is non-NULL, set *ENDPTR in new failure path
1234         * lib/c-strtod.c (C_STRTOD) [LC_ALL_MASKC]: Ensure that when
1235         ENDPTR is non-NULL, *ENDPTR is set to NPTR upon failure.
1236
1237 2009-01-23  Simon Josefsson  <simon@josefsson.org>
1238
1239         * lib/version-etc.c: Add emit_bug_reporting_address, inspired by
1240         GNU CoreUtils.
1241         * lib/version-etc.h: Add prototype for emit_bug_reporting_address.
1242         * modules/version-etc (Description): Update.
1243
1244 2009-01-22  Bruno Haible  <bruno@clisp.org>
1245
1246         Cache the C locale object.
1247         * lib/c-strtod.c (c_locale_cache): New variable.
1248         (c_locale): New function.
1249         (C_STRTOD): Use it, and don't call freelocale.
1250         * m4/c-strtod.m4 (gl_C_STRTOD, gl_C_STRTOLD): Require AC_C_INLINE.
1251         Suggested by Paolo Bonzini.
1252
1253 2009-01-21  Bruno Haible  <bruno@clisp.org>
1254
1255         * lib/getloadavg.c (getloadavg): Check c_strtod result against error
1256         conditions other than overflow.
1257
1258 2009-01-21  Bruno Haible  <bruno@clisp.org>
1259
1260         * lib/c-strtod.c: Include errno.h.
1261         (C_STRTOD): Check against NULL return from newlocale. Preserve errno
1262         value from STRTOD_L and STRTOD.
1263
1264 2009-01-21  Bruno Haible  <bruno@clisp.org>
1265         and Jim Meyering  <meyering@redhat.com>
1266
1267         nanosleep: skip configure test (fail it) for apple universal builds
1268         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_MULTIARCH. In Apple
1269         universal builds, assume that nanosleep does not work.
1270         * modules/nanosleep (Depends-on): Add multiarch.
1271
1272         mktime: skip configure test (fail it) for apple universal builds
1273         * m4/mktime.m4 (AC_FUNC_MKTIME): Require gl_MULTIARCH. In Apple
1274         universal builds, assume that mktime does not work.
1275         * modules/mktime (Depends-on): Add multiarch.
1276
1277 2009-01-21  Eric Blake  <ebb9@byu.net>
1278
1279         multiarch: avoid expand-before-require warning
1280         * modules/multiarch (configure.ac): Require, rather than expand,
1281         gl_MULTIARCH.
1282         * m4/multiarch.m4 (gl_MULTIARCH_BODY): Merge...
1283         (gl_MULTIARCH): ...into this macro, and use AC_DEFUN_ONCE to
1284         enforce that all clients require it.  Partial reversion of
1285         2008-12-29 patch.
1286
1287         error: avoid expand-before-require warning
1288         * modules/errno (configure.ac): Require, rather than expand,
1289         gl_HEADER_ERRNO_H.
1290         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Merge...
1291         (gl_HEADER_ERRNO_H): ...into this macro, and use AC_DEFUN_ONCE to
1292         enforce that all clients require it.
1293
1294         gnulib-tool: avoid warnings from using obsolete AC_GNU_SOURCE
1295         * gnulib-tool (func_dest_tmpfilename, func_create_testdir): Using
1296         obsolete AC_GNU_SOURCE causes out-of-order expansion; avoid it,
1297         and rely solely on gl_USE_SYSTEM_EXTENSIONS.
1298
1299 2009-01-21  Paolo Bonzini  <bonzini@gnu.org>
1300
1301         Revert:
1302         2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
1303
1304         regex: do not depend on obsolete modules.
1305         * modules/regex: Remove memcmp and memmove.
1306
1307 2009-01-20  Bruno Haible  <bruno@clisp.org>
1308
1309         Make the 'link' module link on Windows NT 4.
1310         * lib/link.c (_WIN32_WINNT): Don't define.
1311         (CreateHardLinkFuncType): New type.
1312         (CreateHardLinkFunc, initialized): New variables.
1313         (initialize): New function.
1314         (link): Invoke CreateHardLink indirectly through the function pointer.
1315
1316 2009-01-20  Bruno Haible  <bruno@clisp.org>
1317
1318         Fix compilation failure on mingw.
1319         * tests/test-link.c (main): Don't assume that EOPNOTSUPP exists.
1320
1321 2009-01-20  Michael Gold  <mgold@ncf.ca>  (tiny change)
1322
1323         * doc/c-strtod.texi: Mention a couple of restrictions.
1324
1325 2009-01-20  Jim Meyering  <meyering@redhat.com>
1326
1327         gettimeofday: move more declarations out of functions
1328         * lib/gettimeofday.c: Move extern declarations of tzset and
1329         gmtime out of containing functions.  Prompted by Bruno Haible.
1330
1331 2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
1332
1333         regex: do not depend on obsolete modules.
1334         * modules/regex: Remove memcmp and memmove.
1335
1336 2009-01-19  Bruno Haible  <bruno@clisp.org>
1337
1338         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
1339         * modules/uniconv/u16-conv-from-enc (configure.ac): Require
1340         gl_BIGENDIAN, not AC_C_BIGENDIAN.
1341         * modules/uniconv/u16-conv-to-enc (configure.ac): Likewise.
1342         * modules/uniconv/u16-strconv-to-enc (configure.ac): Likewise.
1343
1344 2009-01-19  Bruno Haible  <bruno@clisp.org>
1345
1346         * tests/test-link.c: Include <errno.h>.
1347         (main): Exit with code 77 when a hard link cannot be created due to
1348         the file system.
1349         * tests/test-link.sh: Skip test when a hard link cannot be created due
1350         to the file system.
1351         Suggested by Eric Blake.
1352
1353 2009-01-19  Martin Lambers  <marlam@marlam.de>
1354
1355         * modules/link-tests: New file.
1356         * tests/test-link.sh: New file.
1357         * tests/test-link.c: New file.
1358
1359 2009-01-19  Eric Blake  <ebb9@byu.net>
1360
1361         doc: mention another function added in cygwin 1.7.0
1362         * doc/glibc-functions/glob_pattern_p.texi (glob_pattern_p):
1363         Another new function in cygwin 1.7.
1364
1365 2009-01-19  Bruno Haible  <bruno@clisp.org>
1366
1367         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
1368         * m4/gnulib-common.m4 (gl_BIGENDIAN): New macro.
1369         * m4/exponentl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require
1370         gl_BIGENDIAN, not AC_C_BIGENDIAN.
1371         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise.
1372         * m4/isinf.m4 (gl_ISINFL_WORKS): Likewise.
1373         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise.
1374         * m4/md4.m4 (gl_MD4): Likewise.
1375         * m4/md5.m4 (gl_MD5): Likewise.
1376         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Likewise.
1377         * m4/sha1.m4 (gl_SHA1): Likewise.
1378         * m4/sha256.m4 (gl_SHA256): Likewise.
1379         * m4/sha512.m4 (gl_SHA512): Likewise.
1380
1381 2009-01-19  Bruno Haible  <bruno@clisp.org>
1382
1383         * modules/uniname/uniname-tests (Depends-on): Add progname.
1384         * tests/uniname/test-uninames.c: Include progname.h.
1385         (main): Call set_program_name.
1386
1387         * modules/unistdio/u8-vsprintf-tests (Depends-on): Add progname.
1388         * tests/unistdio/test-u8-vsprintf1.c: Include progname.h.
1389         (main): Call set_program_name.
1390
1391         * modules/unistdio/u8-vsnprintf-tests (Depends-on): Add progname.
1392         * tests/unistdio/test-u8-vsnprintf1.c: Include progname.h.
1393         (main): Call set_program_name.
1394
1395         * modules/unistdio/u16-vsprintf-tests (Depends-on): Add progname.
1396         * tests/unistdio/test-u16-vsprintf1.c: Include progname.h.
1397         (main): Call set_program_name.
1398
1399         * modules/unistdio/u16-vsnprintf-tests (Depends-on): Add progname.
1400         * tests/unistdio/test-u16-vsnprintf1.c: Include progname.h.
1401         (main): Call set_program_name.
1402
1403         * modules/unistdio/u32-vsprintf-tests (Depends-on): Add progname.
1404         * tests/unistdio/test-u32-vsprintf1.c: Include progname.h.
1405         (main): Call set_program_name.
1406
1407         * modules/unistdio/u32-vsnprintf-tests (Depends-on): Add progname.
1408         * tests/unistdio/test-u32-vsnprintf1.c: Include progname.h.
1409         (main): Call set_program_name.
1410
1411         * modules/unistdio/ulc-vsprintf-tests (Depends-on): Add progname.
1412         * tests/unistdio/test-ulc-vsprintf1.c: Include progname.h.
1413         (main): Call set_program_name.
1414
1415         * modules/unistdio/ulc-vsnprintf-tests (Depends-on): Add progname.
1416         * tests/unistdio/test-ulc-vsnprintf1.c: Include progname.h.
1417         (main): Call set_program_name.
1418
1419 2009-01-19  Eric Blake  <ebb9@byu.net>
1420
1421         test-unistd: test previous patch
1422         * tests/test-unistd.c: Test *_FILENO macros.
1423
1424         unistd: guarantee STDIN_FILENO here, for OS/2 EMX
1425         * lib/unistd.in.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
1426         Guarantee a definition.
1427         * doc/posix-headers/unistd.texi (unistd.h): Document the bug.
1428         * modules/unistd-safer (Depends-on): Add dependency on unistd.
1429         * lib/c-stack.c (STDERR_FILENO): Rely on <unistd.h>.
1430         * lib/dup-safer.c (STDERR_FILENO): Likewise.
1431         * lib/execute.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
1432         Likewise.
1433         * lib/fd-safer.c (STDIN_FILENO, STDERR_FILENO): Likewise.
1434         * lib/fopen-safer.c (STDERR_FILENO): Likewise.
1435         * lib/pipe.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
1436         Likewise.
1437         * lib/tmpfile-safer.c (STDERR_FILENO): Likewise.
1438         * tests/test-posix_spawn1.c (STDIN_FILENO, STDOUT_FILENO)
1439         (STDERR_FILENO): Likewise.
1440         * tests/test-posix_spawn2.c (STDIN_FILENO, STDOUT_FILENO)
1441         (STDERR_FILENO): Likewise.
1442         * tests/test-posix_spawn3.c (STDIN_FILENO, STDOUT_FILENO)
1443         (STDERR_FILENO): Likewise.
1444         Reported by Elbert Pol.
1445
1446 2009-01-19  Eric Blake  <ebb9@byu.net>
1447
1448         doc: mention more functions added in cygwin 1.7.0
1449         * doc/posix-functions/abort.texi (abort): Update wording related
1450         to cygwin.
1451         * doc/posix-functions/daylight.texi (daylight): Likewise.
1452         * doc/posix-functions/optarg.texi (optarg): Likewise.
1453         * doc/posix-functions/optarg.texi (opterr): Likewise.
1454         * doc/posix-functions/optarg.texi (optind): Likewise.
1455         * doc/posix-functions/optarg.texi (optopt): Likewise.
1456         * doc/posix-functions/wprintf.texi (wprintf): Cygwin wprintf never
1457         worked in 1.5.x, and was withdrawn in 1.7.
1458         * doc/posix-functions/vwprintf.texi (vwprintf): Likewise.
1459         * doc/posix-functions/fprintf.texi (fprintf): Tighten mention of
1460         cygwin versions.
1461         * doc/posix-functions/perror.texi (perror): Likewise.
1462         * doc/posix-functions/printf.texi (printf): Likewise.
1463         * doc/posix-functions/snprintf.texi (snprintf): Likewise.
1464         * doc/posix-functions/sprintf.texi (sprintf): Likewise.
1465         * doc/posix-functions/vfprintf.texi (vfprintf): Likewise.
1466         * doc/posix-functions/vprintf.texi (vprintf): Likewise.
1467         * doc/posix-functions/vsnprintf.texi (vsnprintf): Likewise.
1468         * doc/posix-functions/vsprintf.texi (vsprintf): Likewise.
1469         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
1470         Likewise.
1471         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
1472         Likewise.
1473         * doc/glibc-functions/cfmakeraw.texi (cfmakeraw): Cygwin 1.7 adds
1474         this function.
1475         * doc/glibc-functions/in6addr_any.texi (in6addr_any): Likewise.
1476         * doc/glibc-functions/in6addr_loopback.texi (in6addr_loopback):
1477         Likewise.
1478         * doc/glibc-functions/updwtmpx.texi (updwtmpx): Likewise.
1479         * doc/posix-functions/_Exit_C99.texi (_Exit): Likewise.
1480         * doc/posix-functions/confstr.texi (confstr): Likewise.
1481         * doc/posix-functions/dprintf.texi (dprintf): Likewise.
1482         * doc/posix-functions/fgetwc.texi (fgetwc): Likewise.
1483         * doc/posix-functions/fgetws.texi (fgetws): Likewise.
1484         * doc/posix-functions/fputwc.texi (fputwc): Likewise.
1485         * doc/posix-functions/fputws.texi (fputws): Likewise.
1486         * doc/posix-functions/fwide.texi (fwide): Likewise.
1487         * doc/posix-functions/getwc.texi (getwc): Likewise.
1488         * doc/posix-functions/getwchar.texi (getwchar): Likewise.
1489         * doc/posix-functions/putwc.texi (putwc): Likewise.
1490         * doc/posix-functions/putwchar.texi (putwchar): Likewise.
1491         * doc/posix-functions/sigignore.texi (sigignore): Likewise.
1492         * doc/posix-functions/ungetwc.texi (ungetwc): Likewise.
1493         * doc/posix-functions/vdprintf.texi (vdprintf): Likewise.
1494         * doc/posix-functions/wcpcpy.texi (wcpcpy): Likewise.
1495         * doc/posix-functions/wcpncpy.texi (wcpncpy): Likewise.
1496         * doc/posix-functions/wcstol.texi (wcstol): Likewise.
1497         * doc/posix-functions/wcstoll.texi (wcstoll): Likewise.
1498         * doc/posix-functions/wcstoul.texi (wcstoul): Likewise.
1499         * doc/posix-functions/wcstoull.texi (wcstoull): Likewise.
1500         * doc/posix-functions/wcsxfrm.texi (wcsxfrm): Likewise.
1501
1502 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
1503
1504         ioctl: avoid warning: no previous prototype for 'rpl_ioctl'
1505         * lib/ioctl.c: Include <sys/ioctl.h>.
1506
1507 2009-01-19  Simon Josefsson  <simon@josefsson.org>
1508
1509         * modules/getdate-tests (Depends-on): Add progname.
1510         * tests/test-getdate.c: Use progname module, to avoid link errors
1511         on non-glibc systems.
1512
1513 2009-01-18  Simon Josefsson  <simon@josefsson.org>
1514
1515         * modules/filenamecat-tests (Depends-on): Add progname.
1516         * modules/fstrcmp-tests (Depends-on): Likewise.
1517
1518         * tests/test-filenamecat.c: Use progname module, to avoid link
1519         errors on non-glibc systems.
1520         * tests/test-fstrcmp.c: Likewise.
1521
1522 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
1523
1524         gettimeofday: avoid warning: nested extern declaration of 'localtime'
1525         * lib/gettimeofday.c: Move extern declaration out of function.
1526
1527 2009-01-18  Bruno Haible  <bruno@clisp.org>
1528
1529         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mblen and mbrlen.
1530         * lib/strftime.c (HAVE_MBLEN, HAVE_MBRLEN): Remove macros.
1531         (MULTIBYTE_IS_FORMAT_SAFE): Define to 1 on all platforms except OSF/1.
1532
1533 2009-01-18  Bruno Haible  <bruno@clisp.org>
1534
1535         * lib/strftime.c (MEMPCPY): Remove unused macro.
1536         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mempcpy.
1537
1538 2009-01-18  Martin Lambers  <marlam@marlam.de>
1539
1540         New module 'link'.
1541         * lib/unistd.in.h (link): New declaration.
1542         * lib/link.c: New file.
1543         * m4/link.m4: New file.
1544         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_LINK,
1545         HAVE_LINK.
1546         * modules/unistd (Makefile.am): Substitute GNULIB_LINK, HAVE_LINK.
1547         * modules/link: New file.
1548         * doc/posix-functions/link.texi: Mention the new module.
1549
1550 2009-01-18  Bruno Haible  <bruno@clisp.org>
1551
1552         * tests/test-avltree_list.c (main): Call set_program_name.
1553         * tests/test-avltree_oset.c (main): Likewise.
1554         * tests/test-obstack-printf.c: Include progname.h.
1555         (main): Call set_program_name.
1556         * tests/test-quotearg.c: Include progname.h.
1557         (main): Call set_program_name.
1558         * tests/test-xmemdup0.c: Include progname.h.
1559         (main): Call set_program_name.
1560
1561 2009-01-18  Bruno Haible  <bruno@clisp.org>
1562
1563         New module 'alphasort'.
1564         * lib/dirent.in.h (alphasort): New declaration.
1565         * lib/alphasort.c: New file, from glibc with modifications.
1566         * m4/alphasort.m4: New file.
1567         * modules/alphasort: New file.
1568         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_ALPHASORT,
1569         HAVE_ALPHASORT.
1570         * modules/dirent (Makefile.am): Substitute GNULIB_ALPHASORT,
1571         HAVE_ALPHASORT.
1572         * doc/posix-functions/alphasort.texi: Mention the new module and the
1573         portability problems.
1574
1575 2009-01-18  Bruno Haible  <bruno@clisp.org>
1576
1577         New module 'scandir'.
1578         * lib/dirent.in.h (scandir): New declaration.
1579         * lib/scandir.c: New file, from glibc with modifications.
1580         * m4/scandir.m4: New file.
1581         * modules/scandir: New file.
1582         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_SCANDIR,
1583         HAVE_SCANDIR.
1584         * modules/dirent (Makefile.am): Substitute GNULIB_SCANDIR,
1585         HAVE_SCANDIR.
1586         * doc/posix-functions/scandir.texi: Mention the new module and the
1587         portability problems.
1588
1589 2009-01-17  Bruno Haible  <bruno@clisp.org>
1590
1591         * gnulib-tool (func_remove_prefix): Escape all dots in the prefix.
1592         Update documentation.
1593         (func_remove_suffix): Escape all dots in the suffix. Update
1594         documentation.
1595         (func_filter_filelist): Update documentation.
1596         Reported by Ralf Wildenhues.
1597
1598 2009-01-17  Bruno Haible  <bruno@clisp.org>
1599
1600         * modules/dprintf-posix-tests: New file.
1601         * tests/test-dprintf-posix.sh: New file.
1602         * tests/test-dprintf-posix.c: New file.
1603
1604         New modules 'dprintf', 'dprintf-posix'.
1605         * lib/stdio.in.h (dprintf): New declaration.
1606         * lib/dprintf.c: New file.
1607         * m4/dprintf.m4: New file.
1608         * m4/dprintf-posix.m4: New file.
1609         * modules/dprintf: New file.
1610         * modules/dprintf-posix: New file.
1611         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_DPRINTF,
1612         HAVE_DPRINTF, REPLACE_DPRINTF.
1613         * modules/stdio (Makefile.am): Substitute also GNULIB_DPRINTF,
1614         HAVE_DPRINTF, REPLACE_DPRINTF.
1615         * doc/posix-functions/dprintf.texi: Mention the new modules.
1616
1617 2009-01-17  Bruno Haible  <bruno@clisp.org>
1618
1619         * modules/vdprintf-posix-tests: New file.
1620         * tests/test-vdprintf-posix.sh: New file.
1621         * tests/test-vdprintf-posix.c: New file.
1622
1623         New modules 'vdprintf', 'vdprintf-posix'.
1624         * lib/stdio.in.h (vdprintf): New declaration.
1625         * lib/vdprintf.c: New file.
1626         * m4/vdprintf.m4: New file.
1627         * m4/vdprintf-posix.m4: New file.
1628         * modules/vdprintf: New file.
1629         * modules/vdprintf-posix: New file.
1630         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_VDPRINTF,
1631         HAVE_VDPRINTF, REPLACE_VDPRINTF.
1632         * modules/stdio (Makefile.am): Substitute also GNULIB_VDPRINTF,
1633         HAVE_VDPRINTF, REPLACE_VDPRINTF.
1634         * doc/posix-functions/vdprintf.texi: Mention the new modules.
1635
1636 2009-01-17  Bruno Haible  <bruno@clisp.org>
1637
1638         Fix replacement of fopen on mingw.
1639         * m4/fopen.m4 (gl_FUNC_FOPEN): Define FOPEN_TRAILING_SLASH_BUG also on
1640         mingw.
1641
1642 2009-01-17  Bruno Haible  <bruno@clisp.org>
1643
1644         Fix compilation error on HP-UX 11.00, present since 2008-09-24.
1645         * lib/fopen.c: Include <sys/types.h> and <sys/types.h>.
1646
1647 2009-01-17  Bruno Haible  <bruno@clisp.org>
1648
1649         Avoid test-fflush2.sh failure on mingw.
1650         * tests/test-fflush2.c: Include binary-io.h.
1651         (main): Put standard input into binary mode.
1652         * modules/fflush-tests (Depends-on): Add binary-io.
1653
1654 2009-01-17  Bruno Haible  <bruno@clisp.org>
1655
1656         * lib/wchar.in.h: In another particular situation, include only the
1657         system's <wchar.h> file.
1658         (_GL_ALREADY_INCLUDING_WCHAR_H): New macro.
1659         Reported by Albert Chin-A-Young <china@thewrittenword.com>
1660         and Thomas Guyot-Sionnest <dermoth@aei.ca>.
1661
1662 2009-01-17  Bruno Haible  <bruno@clisp.org>
1663
1664         Support for stripping executables in --enable-relocatable.
1665         * build-aux/install-reloc: Expect one more argument, or an environment
1666         variable RELOC_STRIP_PROG. If set, strip the destination program and
1667         its wrapper.
1668         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV, set
1669         RELOC_STRIP_PROG.
1670         * doc/relocatable-maint.texi (Supporting Relocation): Mention the need
1671         to set RELOCATABLE_STRIP.
1672         * NEWS: Mention the new Makefile requirement.
1673
1674 2009-01-17  Bruno Haible  <bruno@clisp.org>
1675
1676         * build-aux/install-reloc: Remove debugging information left over by
1677         C compiler on MacOS X.
1678
1679 2009-01-17  Bruno Haible  <bruno@clisp.org>
1680
1681         Update use of _NSGetExecutablePath after API change in MacOS X 10.4.
1682         * lib/progreloc.c (find_executable): Fix type of pointer passed to
1683         _NSGetExecutablePath.
1684
1685 2009-01-16  Jim Meyering  <meyering@redhat.com>
1686
1687         strerror: avoid warnings about discarding "const"
1688         * lib/strerror.c (rpl_strerror): Instead of returning a const
1689         string from each and every "case", use a variable, and add a single
1690         cast after the switch.
1691
1692 2009-01-16  Albert Chin-A-Young <china@thewrittenword.com>
1693
1694         * lib/arpa_inet.in.h: Add extern "C" block for C++.
1695
1696 2009-01-16  Bruno Haible  <bruno@clisp.org>
1697
1698         * m4/printf.m4 (gl_SNPRINTF_SIZE1, gl_VSNPRINTF_ZEROSIZE_C99): Use an
1699         array initializer syntax that also works in C++ mode.
1700         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
1701
1702 2009-01-16  Jim Meyering  <meyering@redhat.com>
1703
1704         poll: suppress a warning
1705         * lib/poll.c: Use #pragma GCC diagnostic ignored "-Wtype-limits"
1706         to ignore "...unsigned expression < 0 is always false" warnings.
1707
1708 2009-01-16  Daniel P. Berrange  <berrange@redhat.com>
1709
1710         poll: remove declarations of unused variables
1711         * lib/poll.c (poll) [WIN32_NATIVE]: Remove declarations of unused
1712         sockbuf and optlen.
1713
1714 2009-01-15  Bruno Haible  <bruno@clisp.org>
1715
1716         Make fflush-after-ungetc POSIX compliant on BSD systems.
1717         * lib/fflush.c (clear_ungetc_buffer_preserving_position): New function.
1718         (clear_ungetc_buffer): Implement also for other systems.
1719         (rpl_fflush): On glibc systems, invoke
1720         clear_ungetc_buffer_preserving_position. Otherwise, invoke
1721         clear_ungetc_buffer after fetching the stream's position, not before.
1722
1723 2009-01-15  Bruno Haible  <bruno@clisp.org>
1724
1725         Make fflush-after-ungetc POSIX compliant on glibc systems.
1726         * m4/fflush.m4 (gl_FUNC_FFLUSH): Test also the behaviour of fflush
1727         after ungetc.
1728         * lib/fflush.c (clear_ungetc_buffer): Implement for glibc systems.
1729         (rpl_fflush): On glibc systems, simply call the system's fflush
1730         function after clearing the ungetc buffer.
1731         * lib/fseeko.c (rpl_fseeko): Don't try to lseek past the end of file.
1732         Instead, lseek only to the end of file, then use the system's fseeko
1733         for the rest. On glibc systems, reset the EOF indicator bit.
1734
1735 2009-01-15  Jim Meyering  <meyering@redhat.com>
1736
1737         openmp.m4: revert quote-adding change, for portability to older autoconf
1738         * m4/openmp.m4: Remove the quotes added on 2009-01-14.
1739         This reverts part of 42d1eda5dcce2d68deab7a642e7f29bcd7144a0d.
1740         Simon Josefsson noticed the problem when using autoconf-2.61.
1741
1742 2009-01-15  Bruno Haible  <bruno@clisp.org>
1743
1744         * tests/test-fflush2.sh: Invoke test-fflush2 twice.
1745         * tests/test-fflush2.c (ASSERT): Always fail.
1746         (main): Add two tests for fflush() after ungetc(), taking into account
1747         the Austin Group's clarification.
1748         Suggested by Eric Blake.
1749
1750 2009-01-15  Albert Chin-A-Young  <china@thewrittenword.com>
1751
1752         mktime.m4: remove K&R-style function prototypes
1753         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes
1754         for the Sun C++ compiler.
1755
1756 2009-01-14  Bruno Haible  <bruno@clisp.org>
1757
1758         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_WCHAR_H): New macro, defined
1759         while including <wchar.h>.
1760         * lib/wchar.in.h: In two particular situations on HP-UX, include only
1761         the system's <wchar.h> file.
1762         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
1763
1764 2009-01-14  Bruno Haible  <bruno@clisp.org>
1765
1766         * m4/csharp.m4: Don't mention gettext on the serial number line.
1767         * m4/csharpexec.m4: Likewise.
1768         * m4/eaccess.m4: Likewise.
1769         * m4/javaexec.m4: Likewise.
1770         * m4/sig_atomic_t.m4: Likewise.
1771         * m4/tmpdir.m4: Likewise.
1772         * m4/intldir.m4: Bump gettext version.
1773         * m4/lib-ld.m4: Likewise.
1774
1775 2009-01-14  Bruno Haible  <bruno@clisp.org>
1776
1777         * lib/progname.c (set_program_name): Add more comments.
1778         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
1779
1780 2009-01-14  Simon Josefsson  <simon@josefsson.org>
1781
1782         * lib/sys_stat.in.h: Include sys/types.h for nlink_t on systems
1783         were sys/stat.h does not define it.
1784
1785 2009-01-14  Jim Meyering  <meyering@redhat.com>
1786
1787         many *.m4 files: improve m4 quoting
1788         99% of this change was performed by running the following commands:
1789         git ls-files | grep '\.m4$' | xargs perl -pi \
1790           -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \
1791           -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
1792           -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
1793           -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g'
1794         perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4
1795         The remainder were to add Copyright dates, increment serial numbers,
1796         undo some changes in comments, exclude m4/intl.m4, and add quotes
1797         around the "1" in ",1" where the unusual spacing prohibited the
1798         above regexps from doing the job.  For more details, see
1799         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
1800         * m4/acl.m4: Modified.
1801         * m4/afs.m4: Likewise.
1802         * m4/alloca.m4: Likewise.
1803         * m4/argp.m4: Likewise.
1804         * m4/argz.m4: Likewise.
1805         * m4/atexit.m4: Likewise.
1806         * m4/bison-i18n.m4: Likewise.
1807         * m4/bison.m4: Likewise.
1808         * m4/byteswap.m4: Likewise.
1809         * m4/c-stack.m4: Likewise.
1810         * m4/c-strtod.m4: Likewise.
1811         * m4/calloc.m4: Likewise.
1812         * m4/canonicalize-lgpl.m4: Likewise.
1813         * m4/chown.m4: Likewise.
1814         * m4/clock_time.m4: Likewise.
1815         * m4/codeset.m4: Likewise.
1816         * m4/copy-file.m4: Likewise.
1817         * m4/csharp.m4: Likewise.
1818         * m4/csharpcomp.m4: Likewise.
1819         * m4/csharpexec.m4: Likewise.
1820         * m4/d-ino.m4: Likewise.
1821         * m4/d-type.m4: Likewise.
1822         * m4/dirfd.m4: Likewise.
1823         * m4/double-slash-root.m4: Likewise.
1824         * m4/eaccess.m4: Likewise.
1825         * m4/eealloc.m4: Likewise.
1826         * m4/environ.m4: Likewise.
1827         * m4/errno_h.m4: Likewise.
1828         * m4/euidaccess.m4: Likewise.
1829         * m4/execute.m4: Likewise.
1830         * m4/fatal-signal.m4: Likewise.
1831         * m4/fchdir.m4: Likewise.
1832         * m4/fcntl_h.m4: Likewise.
1833         * m4/fileblocks.m4: Likewise.
1834         * m4/filenamecat.m4: Likewise.
1835         * m4/findprog.m4: Likewise.
1836         * m4/flexmember.m4: Likewise.
1837         * m4/fnmatch.m4: Likewise.
1838         * m4/fopen.m4: Likewise.
1839         * m4/fpending.m4: Likewise.
1840         * m4/fprintf-posix.m4: Likewise.
1841         * m4/free.m4: Likewise.
1842         * m4/frexp.m4: Likewise.
1843         * m4/frexpl.m4: Likewise.
1844         * m4/fsusage.m4: Likewise.
1845         * m4/ftruncate.m4: Likewise.
1846         * m4/gc-camellia.m4: Likewise.
1847         * m4/gc-random.m4: Likewise.
1848         * m4/gc.m4: Likewise.
1849         * m4/getaddrinfo.m4: Likewise.
1850         * m4/getcwd-abort-bug.m4: Likewise.
1851         * m4/getcwd-path-max.m4: Likewise.
1852         * m4/getdate.m4: Likewise.
1853         * m4/getdomainname.m4: Likewise.
1854         * m4/getgroups.m4: Likewise.
1855         * m4/gethostname.m4: Likewise.
1856         * m4/gethrxtime.m4: Likewise.
1857         * m4/getline.m4: Likewise.
1858         * m4/getloadavg.m4: Likewise.
1859         * m4/getndelim2.m4: Likewise.
1860         * m4/getpass.m4: Likewise.
1861         * m4/gettext.m4: Likewise.
1862         * m4/gettime.m4: Likewise.
1863         * m4/gettimeofday.m4: Likewise.
1864         * m4/gnulib-common.m4: Likewise.
1865         * m4/group-member.m4: Likewise.
1866         * m4/host-os.m4: Likewise.
1867         * m4/iconv.m4: Likewise.
1868         * m4/iconv_open.m4: Likewise.
1869         * m4/inet_ntop.m4: Likewise.
1870         * m4/inet_pton.m4: Likewise.
1871         * m4/inline.m4: Likewise.
1872         * m4/intldir.m4: Likewise.
1873         * m4/intlmacosx.m4: Likewise.
1874         * m4/intmax.m4: Likewise.
1875         * m4/intmax_t.m4: Likewise.
1876         * m4/inttypes.m4: Likewise.
1877         * m4/inttypes_h.m4: Likewise.
1878         * m4/inttypes-pri.m4: Likewise.
1879         * m4/isapipe.m4: Likewise.
1880         * m4/isnand.m4: Likewise.
1881         * m4/isnanf.m4: Likewise.
1882         * m4/isnanl.m4: Likewise.
1883         * m4/javacomp.m4: Likewise.
1884         * m4/javaexec.m4: Likewise.
1885         * m4/jm-winsz1.m4: Likewise.
1886         * m4/jm-winsz2.m4: Likewise.
1887         * m4/lchown.m4: Likewise.
1888         * m4/lcmessage.m4: Likewise.
1889         * m4/ldexpl.m4: Likewise.
1890         * m4/lib-ld.m4: Likewise.
1891         * m4/lib-link.m4: Likewise.
1892         * m4/libsigsegv.m4: Likewise.
1893         * m4/link-follow.m4: Likewise.
1894         * m4/localcharset.m4: Likewise.
1895         * m4/locale-fr.m4: Likewise.
1896         * m4/locale-ja.m4: Likewise.
1897         * m4/locale-tr.m4: Likewise.
1898         * m4/locale-zh.m4: Likewise.
1899         * m4/lock.m4: Likewise.
1900         * m4/longlong.m4: Likewise.
1901         * m4/ls-mntd-fs.m4: Likewise.
1902         * m4/lstat.m4: Likewise.
1903         * m4/malloc.m4: Likewise.
1904         * m4/mathl.m4: Likewise.
1905         * m4/mbrtowc.m4: Likewise.
1906         * m4/mbstate_t.m4: Likewise.
1907         * m4/mbswidth.m4: Likewise.
1908         * m4/memchr.m4: Likewise.
1909         * m4/memcmp.m4: Likewise.
1910         * m4/memcpy.m4: Likewise.
1911         * m4/memmem.m4: Likewise.
1912         * m4/memmove.m4: Likewise.
1913         * m4/mempcpy.m4: Likewise.
1914         * m4/memrchr.m4: Likewise.
1915         * m4/memset.m4: Likewise.
1916         * m4/minmax.m4: Likewise.
1917         * m4/mkdir-slash.m4: Likewise.
1918         * m4/mkdtemp.m4: Likewise.
1919         * m4/mktime.m4: Likewise.
1920         * m4/mmap-anon.m4: Likewise.
1921         * m4/mountlist.m4: Likewise.
1922         * m4/nanosleep.m4: Likewise.
1923         * m4/nls.m4: Likewise.
1924         * m4/nocrash.m4: Likewise.
1925         * m4/open.m4: Likewise.
1926         * m4/openat.m4: Likewise.
1927         * m4/openmp.m4: Likewise.
1928         * m4/pathmax.m4: Likewise.
1929         * m4/perl.m4: Likewise.
1930         * m4/physmem.m4: Likewise.
1931         * m4/pipe.m4: Likewise.
1932         * m4/po.m4: Likewise.
1933         * m4/poll.m4: Likewise.
1934         * m4/posixtm.m4: Likewise.
1935         * m4/posixver.m4: Likewise.
1936         * m4/printf-frexp.m4: Likewise.
1937         * m4/printf-frexpl.m4: Likewise.
1938         * m4/printf-posix.m4: Likewise.
1939         * m4/printf-posix-rpl.m4: Likewise.
1940         * m4/printf.m4: Likewise.
1941         * m4/progtest.m4: Likewise.
1942         * m4/putenv.m4: Likewise.
1943         * m4/readline.m4: Likewise.
1944         * m4/readlink.m4: Likewise.
1945         * m4/readutmp.m4: Likewise.
1946         * m4/realloc.m4: Likewise.
1947         * m4/regex.m4: Likewise.
1948         * m4/relocatable.m4: Likewise.
1949         * m4/relocatable-lib.m4: Likewise.
1950         * m4/rename-dest-slash.m4: Likewise.
1951         * m4/rename.m4: Likewise.
1952         * m4/rmdir-errno.m4: Likewise.
1953         * m4/rmdir.m4: Likewise.
1954         * m4/roundf.m4: Likewise.
1955         * m4/roundl.m4: Likewise.
1956         * m4/rpmatch.m4: Likewise.
1957         * m4/save-cwd.m4: Likewise.
1958         * m4/selinux-selinux-h.m4: Likewise.
1959         * m4/setenv.m4: Likewise.
1960         * m4/settime.m4: Likewise.
1961         * m4/sig2str.m4: Likewise.
1962         * m4/sig_atomic_t.m4: Likewise.
1963         * m4/signalblocking.m4: Likewise.
1964         * m4/signbit.m4: Likewise.
1965         * m4/sigpipe.m4: Likewise.
1966         * m4/sockets.m4: Likewise.
1967         * m4/sockpfaf.m4: Likewise.
1968         * m4/st_dm_mode.m4: Likewise.
1969         * m4/stat-time.m4: Likewise.
1970         * m4/stdbool.m4: Likewise.
1971         * m4/stdint.m4: Likewise.
1972         * m4/stdint_h.m4: Likewise.
1973         * m4/stpcpy.m4: Likewise.
1974         * m4/stpncpy.m4: Likewise.
1975         * m4/strcase.m4: Likewise.
1976         * m4/strchrnul.m4: Likewise.
1977         * m4/strcspn.m4: Likewise.
1978         * m4/strdup.m4: Likewise.
1979         * m4/strftime.m4: Likewise.
1980         * m4/strndup.m4: Likewise.
1981         * m4/strnlen.m4: Likewise.
1982         * m4/strpbrk.m4: Likewise.
1983         * m4/strptime.m4: Likewise.
1984         * m4/strsep.m4: Likewise.
1985         * m4/strtod.m4: Likewise.
1986         * m4/strtoimax.m4: Likewise.
1987         * m4/strtok_r.m4: Likewise.
1988         * m4/strtol.m4: Likewise.
1989         * m4/strtoll.m4: Likewise.
1990         * m4/strtoul.m4: Likewise.
1991         * m4/strtoull.m4: Likewise.
1992         * m4/strtoumax.m4: Likewise.
1993         * m4/strverscmp.m4: Likewise.
1994         * m4/threadlib.m4: Likewise.
1995         * m4/timegm.m4: Likewise.
1996         * m4/tm_gmtoff.m4: Likewise.
1997         * m4/tmpdir.m4: Likewise.
1998         * m4/tmpfile.m4: Likewise.
1999         * m4/tzset.m4: Likewise.
2000         * m4/uintmax_t.m4: Likewise.
2001         * m4/unlinkdir.m4: Likewise.
2002         * m4/unlocked-io.m4: Likewise.
2003         * m4/uptime.m4: Likewise.
2004         * m4/userspec.m4: Likewise.
2005         * m4/utimbuf.m4: Likewise.
2006         * m4/utime.m4: Likewise.
2007         * m4/utimes-null.m4: Likewise.
2008         * m4/utimes.m4: Likewise.
2009         * m4/vararrays.m4: Likewise.
2010         * m4/vasnprintf.m4: Likewise.
2011         * m4/vfprintf-posix.m4: Likewise.
2012         * m4/vprintf-posix.m4: Likewise.
2013         * m4/wait-process.m4: Likewise.
2014         * m4/wchar_t.m4: Likewise.
2015         * m4/wint_t.m4: Likewise.
2016         * m4/write-any-file.m4: Likewise.
2017         * m4/yield.m4: Likewise.
2018
2019 2009-01-13  Bruno Haible  <bruno@clisp.org>
2020
2021         Avoid test-copy-file.sh failures when ACL support insufficient.
2022         * modules/copy-file-tests (Makefile.am): Pass USE_ACL in
2023         TESTS_ENVIRONMENT.
2024         * tests/test-copy-file.sh: Skip the ACL comparisons if USE_ACL is 0.
2025         Reported by Jim Meyering.
2026
2027 2009-01-13  Bruno Haible  <bruno@clisp.org>
2028
2029         * modules/unistdio/u-printf-args (Files): Add m4/stdint_h.m4 and
2030         m4/inttypes_h.m4, needed by m4/intmax_t.m4.
2031         * modules/unistdio/u8-printf-parse (Files): Likewise.
2032         * modules/unistdio/u32-printf-parse (Files): Likewise.
2033         * modules/unistdio/ulc-printf-parse (Files): Likewise.
2034
2035 2009-01-13  Simon Josefsson  <simon@josefsson.org>
2036
2037         * modules/unistdio/u16-printf-parse (Files): Add m4/stdint_h.m4
2038         and m4/inttypes_h.m4 too.
2039
2040 2009-01-12  Eric Blake  <ebb9@byu.net>
2041
2042         tests: IRIX 6.2 cc can't compile -0.0 into .data
2043         * tests/test-ceill.c (minus_zero): Compute -0.0L at runtime,
2044         rather than at compile-time.
2045         * tests/test-floorl.c (minus_zero): Likewise.
2046         * tests/test-frexpl.c (minus_zero): Likewise.
2047         * tests/test-isnan.c (minus_zerol): Likewise.
2048         * tests/test-isnanl.h (minus_zero): Likewise.
2049         * tests/test-ldexpl.c (minus_zero): Likewise.
2050         * tests/test-roundl.c (minus_zero): Likewise.
2051         * tests/test-signbit.c (minus_zerol): Likewise.
2052         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
2053         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
2054         * tests/test-truncl.c (minus_zero): Likewise.
2055         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
2056         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
2057         Reported by Tom G. Christensen and Nelson H. F. Beebe.
2058
2059 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
2060
2061         regex: fix glibc bug 9697
2062         * lib/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
2063         handling.
2064
2065 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
2066
2067         regex: fix glibc bug 697
2068         * lib/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
2069         being NULL also if there are no backreferences.
2070
2071 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
2072
2073         regex: merge glibc changes
2074         * lib/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
2075         * lib/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
2076         re_string_skip_chars, re_string_reconstruct): Likewise.
2077         * lib/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
2078
2079 2009-01-07  Jim Meyering  <meyering@redhat.com>
2080
2081         poll: filter through cppi
2082         * lib/poll.c: Indent cpp directives to reflect nesting.
2083
2084 2009-01-07  Daniel P. Berrange  <berrange@redhat.com>
2085
2086         poll: don't return uninitialized
2087         * lib/poll.c (poll) [WIN32_NATIVE]: Initialize "rc".
2088
2089 2009-01-06  Jeremy Olexa <darkside@gentoo.org>  (tiny change)
2090
2091         avoid compile failure on AIX 6.1
2092         * lib/getloadavg.c [HAVE_LIBPERFSTAT]: Include <sys/protosw.h>.
2093         Details in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/15465
2094
2095 2009-01-04  Jim Meyering  <meyering@redhat.com>
2096
2097         remove duplicate inclusion of <stdio.h>
2098         * tests/test-fprintf-posix.c: Likewise.
2099         * tests/test-printf-posix.c: Likewise.
2100         * tests/test-snprintf-posix.c: Likewise.
2101         * tests/test-sprintf-posix.c: Likewise.
2102         * tests/test-vasprintf-posix.c: Likewise.
2103         * tests/test-vfprintf-posix.c: Likewise.
2104         * tests/test-vprintf-posix.c: Likewise.
2105         * tests/test-vsnprintf-posix.c: Likewise.
2106         * tests/test-vsprintf-posix.c: Likewise.
2107
2108 2009-01-03  Jim Meyering  <meyering@redhat.com>
2109
2110         gnulib-tool: fix sed-based filtering
2111         * gnulib-tool (func_filter_filelist): Remove extra backslash
2112         in sed_fff_filter definition.
2113
2114 2009-01-02  Jim Meyering  <meyering@redhat.com>
2115
2116         strftime: avoid compilation failure on Solaris 2.6
2117         * modules/strftime (Depends-on): Add mbrlen and mbsinit.
2118         * lib/strftime.c [DO_MULTIBYTE]: Include <wchar.h> unconditionally.
2119         Don't #define mbrlen or mbsinit, since now they're guaranteed to
2120         be available.  Reported by Tom G. Christensen.  Details in
2121         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16180>.
2122
2123 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2124             Bruno Haible  <bruno@clisp.org>
2125
2126         Speed up gnulib-tool by doing more string processing through shell
2127         built-ins.
2128         * gnulib-tool (fast_func_append): New variable.
2129         (func_remove_prefix, func_remove_suffix): New functions.
2130         (fast_func_remove_prefix, fast_func_remove_suffix): New variables.
2131         (func_filter_filelist): New function.
2132         (func_get_dependencies): Use func_remove_suffix instead of sed.
2133         (func_get_automake_snippet): Use func_filter_filelist instead of a
2134         subshell and sed invocation.
2135
2136 2009-01-01  Bruno Haible  <bruno@clisp.org>
2137
2138         Fix a security bug.
2139         * gnulib-tool (func_import, import, update): Don't allow the characters
2140         '"', '$', '`', '\' in macro arguments that become part of commands that
2141         are evaluated.
2142
2143 2009-01-01  Bruno Haible  <bruno@clisp.org>
2144
2145         * gnulib-tool (func_reset_sigpipe): Add more comments.
2146
2147 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2148
2149         * gnulib-tool (func_modules_add_dummy, func_emit_lib_Makefile_am,
2150         func_emit_tests_Makefile_am, func_import): Abort loops early if we
2151         already know the answer.
2152
2153 2009-01-01  Jim Meyering  <meyering@redhat.com>
2154
2155         * lib/version-etc.c (version_etc_va): Update copyright year.
2156
2157 2008-12-30  Bruno Haible  <bruno@clisp.org>
2158
2159         * m4/lib-prefix.m4 (AC_LIB_LINKFLAGS_BODY): Don't overwrite
2160         LIB${NAME}_PREFIX when considering the dependencies of lib${name}.
2161         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
2162
2163 2008-12-29  Eric Blake  <ebb9@byu.net>
2164
2165         multiarch: avoid autoconf AC_REQUIRE bug
2166         * m4/multiarch.m4 (gl_MULTIARCH): Split body...
2167         (gl_MULTIARCH_BODY): ...into new macro, to work around bug in Autoconf
2168         2.63 and older.
2169         Reported by Bruno Haible, and analyzed in
2170         http://lists.gnu.org/archive/html/bug-autoconf/2008-12/msg00039.html
2171
2172 2008-12-29  Bruno Haible  <bruno@clisp.org>
2173
2174         * gnulib-tool (func_import): When generating sed-ignore-removed, handle
2175         files in subdirectories correctly.
2176         Reported by Ralf Wildenhues.
2177
2178 2008-12-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2179
2180         * gnulib-tool (func_update_ignorelist): Use 'join - FILE'
2181         rather than 'join FILE -', for Solaris join.
2182
2183 2008-12-29  Bruno Haible  <bruno@clisp.org>
2184
2185         * m4/codeset.m4 (AM_LANGINFO_CODESET): More systematic m4 argument
2186         quoting.
2187         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
2188         * m4/glibc2.m4 (gt_GLIBC2): Likewise.
2189         * m4/glibc21.m4 (gl_GLIBC21): Likewise.
2190         * m4/iconv.m4 (AM_ICONV_LINK, AM_ICONV): Likewise.
2191         * m4/intdiv0.m4 (gt_INTDIV0): Likewise.
2192         * m4/intlmacosx.m4 (gt_INTL_MACOSX): Likewise.
2193         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Likewise.
2194         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Likewise.
2195         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
2196         * m4/lcmessage.m4 (gt_LC_MESSAGES): Likewise.
2197         * m4/nls.m4 (AM_NLS): Likewise.
2198         * m4/po.m4 (AM_PO_SUBDIRS): Likewise.
2199         * m4/printf-posix.m4 (gt_PRINTF_POSIX): Likewise.
2200         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
2201         * m4/size_max.m4 (gl_SIZE_MAX): Likewise.
2202         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Likewise.
2203         * m4/threadlib.m4 (gl_THREADLIB_BODY): Likewise.
2204         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Likewise.
2205         * m4/visibility.m4 (gl_VISIBILITY): Likewise.
2206         * m4/wchar_t.m4 (gt_TYPE_WCHAR_T): Likewise.
2207         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
2208         * m4/xsize.m4 (gl_XSIZE): Likewise.
2209         Suggested by Jim Meyering.
2210
2211 2008-11-17  Bruce Korb  <bkorb@gnu.org>
2212
2213         * lib/parse-duration.h: non-iso form accepts years, months weeks, too
2214         * lib/parse-duration.c: use a switch instead of cascading if's.
2215
2216 2008-12-29  Eric Blake  <ebb9@byu.net>
2217
2218         wchar.h: supply WEOF on Irix 5.3
2219         * lib/wchar.in.h (wint_t): Also supply WEOF.
2220         * lib/wctype.in.h (wint_t): Likewise.
2221         * doc/posix-headers/wchar.texi (wchar.h): Document the bug.
2222         * doc/posix-headers/wctype.texi (wctype.h): Likewise.
2223         Reported by Tom G. Christensen.
2224
2225 2008-12-26  Bruno Haible  <bruno@clisp.org>
2226
2227         * m4/multiarch.m4 (gl_MULTIARCH): Recognize also the architecture names
2228         i486, i586, i686.
2229
2230 2008-12-26  Bruno Haible  <bruno@clisp.org>
2231
2232         * lib/stdlib.in.h (struct random_data): Fix indentation of comments.
2233
2234 2008-12-26  Bruno Haible  <bruno@clisp.org>
2235
2236         * lib/stdint.in.h: Move the include of <wchar.h> down until after all
2237         the types are defined. Also conditionalize it on __STDC_LIMIT_MACROS,
2238         not __STDC_CONSTANT_MACROS.
2239         Reported by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
2240
2241 2008-12-25  Bruno Haible  <bruno@clisp.org>
2242
2243         Add support for universal builds to vasnprintf.
2244         * m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
2245         universal builds, guess no.
2246         * modules/vasnprintf-posix (Depends-on): Add multiarch.
2247         * modules/vasprintf-posix (Depends-on): Likewise.
2248         * modules/fprintf-posix (Depends-on): Likewise.
2249         * modules/vfprintf-posix (Depends-on): Likewise.
2250         * modules/snprintf-posix (Depends-on): Likewise.
2251         * modules/vsnprintf-posix (Depends-on): Likewise.
2252         * modules/sprintf-posix (Depends-on): Likewise.
2253         * modules/vsprintf-posix (Depends-on): Likewise.
2254         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
2255         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
2256         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
2257         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
2258         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
2259         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
2260         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
2261
2262         Add support for universal builds to <inttypes.h>.
2263         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
2264         _SCNu64_PREFIX): In Apple
2265         universal builds, define directly, using _LP64.
2266         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
2267         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
2268         * modules/inttypes (Depends-on): Add multiarch.
2269         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
2270
2271         Add support for universal builds to <stdint.h>.
2272         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
2273         universal builds, define directly, using _LP64.
2274         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
2275         Apple universal builds, don't test for the size and suffix of ptrdiff_t
2276         and size_t.
2277         * modules/stdint (Depends-on): Add multiarch.
2278         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
2279
2280         New module 'multiarch'.
2281         * modules/multiarch: New file.
2282         * m4/multiarch.m4: New file.
2283
2284 2008-12-25  Bruno Haible  <bruno@clisp.org>
2285
2286         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
2287
2288 2008-12-25  Bruno Haible  <bruno@clisp.org>
2289
2290         * modules/btowc (License): Relicense under LGPLv2+.
2291         * modules/mbsinit (License): Likewise.
2292         * modules/mbrtowc (License): Likewise.
2293         * modules/wcrtomb (License): Likewise.
2294         * modules/streq (License): Likewise.
2295         Reported by David Lutterkort <lutter@redhat.com>.
2296
2297 2008-12-23  Bruno Haible  <bruno@clisp.org>
2298
2299         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
2300
2301 2008-12-23  Bruno Haible  <bruno@clisp.org>
2302
2303         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
2304         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
2305         GETADDRINFO_LIB, not in LIBS.
2306         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
2307         * modules/canon-host (Link): Likewise.
2308         * NEWS: Mention the change.
2309         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
2310         GETADDRINFO_LIB.
2311
2312 2008-12-22  Bruno Haible  <bruno@clisp.org>
2313
2314         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
2315         * doc/posix-functions/iswalpha_l.texi: Likewise.
2316         * doc/posix-functions/iswblank_l.texi: Likewise.
2317         * doc/posix-functions/iswcntrl_l.texi: Likewise.
2318         * doc/posix-functions/iswctype_l.texi: Likewise.
2319         * doc/posix-functions/iswdigit_l.texi: Likewise.
2320         * doc/posix-functions/iswgraph_l.texi: Likewise.
2321         * doc/posix-functions/iswlower_l.texi: Likewise.
2322         * doc/posix-functions/iswprint_l.texi: Likewise.
2323         * doc/posix-functions/iswpunct_l.texi: Likewise.
2324         * doc/posix-functions/iswspace_l.texi: Likewise.
2325         * doc/posix-functions/iswupper_l.texi: Likewise.
2326         * doc/posix-functions/iswxdigit_l.texi: Likewise.
2327         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
2328         * doc/posix-functions/open_wmemstream.texi: Likewise.
2329         * doc/posix-functions/swscanf.texi: Likewise.
2330         * doc/posix-functions/towctrans_l.texi: Likewise.
2331         * doc/posix-functions/towlower.texi: Likewise.
2332         * doc/posix-functions/towlower_l.texi: Likewise.
2333         * doc/posix-functions/towupper.texi: Likewise.
2334         * doc/posix-functions/towupper_l.texi: Likewise.
2335         * doc/posix-functions/vfwprintf.texi: Likewise.
2336         * doc/posix-functions/vfwscanf.texi: Likewise.
2337         * doc/posix-functions/vswscanf.texi: Likewise.
2338         * doc/posix-functions/vwprintf.texi: Likewise.
2339         * doc/posix-functions/vwscanf.texi: Likewise.
2340         * doc/posix-functions/wcpcpy.texi: Likewise.
2341         * doc/posix-functions/wcpncpy.texi: Likewise.
2342         * doc/posix-functions/wcscasecmp.texi: Likewise.
2343         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
2344         * doc/posix-functions/wcscoll_l.texi: Likewise.
2345         * doc/posix-functions/wcsdup.texi: Likewise.
2346         * doc/posix-functions/wcsncasecmp.texi: Likewise.
2347         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
2348         * doc/posix-functions/wcsnlen.texi: Likewise.
2349         * doc/posix-functions/wcsnrtombs.texi: Likewise.
2350         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
2351         * doc/posix-functions/wctrans_l.texi: Likewise.
2352         * doc/posix-functions/wctype_l.texi: Likewise.
2353         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
2354         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
2355         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
2356         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
2357         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
2358         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
2359         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
2360         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
2361         * doc/glibc-functions/wcschrnul.texi: Likewise.
2362         * doc/glibc-functions/wcsftime_l.texi: Likewise.
2363         * doc/glibc-functions/wcstod_l.texi: Likewise.
2364         * doc/glibc-functions/wcstof_l.texi: Likewise.
2365         * doc/glibc-functions/wcstol_l.texi: Likewise.
2366         * doc/glibc-functions/wcstold_l.texi: Likewise.
2367         * doc/glibc-functions/wcstoll_l.texi: Likewise.
2368         * doc/glibc-functions/wcstoq.texi: Likewise.
2369         * doc/glibc-functions/wcstoul_l.texi: Likewise.
2370         * doc/glibc-functions/wcstoull_l.texi: Likewise.
2371         * doc/glibc-functions/wcstouq.texi: Likewise.
2372         * doc/glibc-functions/wmempcpy.texi: Likewise.
2373
2374 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
2375             Eric Blake  <ebb9@byu.net>
2376             Paolo Bonzini  <bonzini@gnu.org>
2377             Bruno Haible  <bruno@clisp.org>
2378
2379         Make c-stack work on Haiku.
2380         * lib/c-stack.c (SA_ONSTACK): Define fallback.
2381         (c_stack_action): Use SA_ONSTACK flag.
2382
2383 2008-12-22  Bruno Haible  <bruno@clisp.org>
2384
2385         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
2386
2387 2008-12-22  Bruno Haible  <bruno@clisp.org>
2388
2389         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
2390         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
2391         being overridden.
2392         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
2393         New macros.
2394         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
2395         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
2396         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
2397         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
2398
2399 2008-12-22  Bruno Haible  <bruno@clisp.org>
2400
2401         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
2402         from test code.
2403
2404 2008-12-22  Eric Blake  <ebb9@byu.net>
2405
2406         Avoid gcc warnings on cygwin.
2407         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
2408         Avoid unused variable.
2409         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
2410         Likewise.
2411
2412 2008-12-22  Bruno Haible  <bruno@clisp.org>
2413
2414         Remove HAVE_MBRTOWC conditionals.
2415         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
2416         (mbscasecmp): Assume mbrtowc function.
2417         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
2418         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
2419         * lib/mbschr.c: Include mbuiter.h unconditionally.
2420         (mbschr): Assume mbrtowc function.
2421         * lib/mbscspn.c: Include mbuiter.h unconditionally.
2422         (mbscspn): Assume mbrtowc function.
2423         * lib/mbslen.c: Include mbuiter.h unconditionally.
2424         (mbslen): Assume mbrtowc function.
2425         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
2426         (mbsncasecmp): Assume mbrtowc function.
2427         * lib/mbsnlen.c: Include mbiter.h unconditionally.
2428         (mbsnlen): Assume mbrtowc function.
2429         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
2430         (mbspbrk): Assume mbrtowc function.
2431         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
2432         (mbspcasecmp): Assume mbrtowc function.
2433         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
2434         (mbsrchr): Assume mbrtowc function.
2435         * lib/mbssep.c: Include mbuiter.h unconditionally.
2436         (mbssep): Assume mbrtowc function.
2437         * lib/mbsspn.c: Include mbuiter.h unconditionally.
2438         (mbsspn): Assume mbrtowc function.
2439         * lib/mbsstr.c: Include mbuiter.h unconditionally.
2440         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
2441         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
2442         (mbstok_r): Assume mbrtowc function.
2443         * lib/propername.c: Include mbuiter.h unconditionally.
2444         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
2445         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
2446         (trim2): Assume mbrtowc function.
2447         * lib/mbswidth.c (mbsinit): Remove fallback definition.
2448         (mbsnwidth): Assume mbrtowc function.
2449         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
2450         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
2451         fallback definitions.
2452         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
2453
2454 2008-12-22  Bruno Haible  <bruno@clisp.org>
2455
2456         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
2457
2458 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
2459
2460         * modules/regex: Request emulations for the mb*/wc* functions we need.
2461         * m4/regex.m4: Don't look for those functions here.
2462         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
2463
2464 2008-12-22  Bruno Haible  <bruno@clisp.org>
2465
2466         * modules/fnmatch (Depends-on): Remove duplicated dependency.
2467
2468 2008-12-21  Bruno Haible  <bruno@clisp.org>
2469
2470         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
2471         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
2472         (Include): Remove conditionalization.
2473         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
2474         (Include): Remove conditionalization.
2475         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
2476         (Include): Remove conditionalization.
2477         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
2478         * m4/mbfile.m4 (gl_MBFILE): Likewise.
2479         * NEWS: Mention the change.
2480         Reported by Alan Hourihane <alanh@fairlite.co.uk>
2481         via Sergey Poznyakoff <gray@gnu.org.ua>.
2482
2483 2008-12-21  Bruno Haible  <bruno@clisp.org>
2484
2485         * MODULES.html.sh (Extended multibyte and wide character utilities
2486         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
2487         wcrtomb, wcsrtombs.
2488         (Support for systems lacking POSIX:2008): Add accept, bind, close,
2489         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
2490         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
2491         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
2492
2493 2008-12-21  Bruno Haible  <bruno@clisp.org>
2494
2495         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
2496
2497 2008-12-21  Bruno Haible  <bruno@clisp.org>
2498
2499         * modules/wcsnrtombs-tests: New file.
2500         * tests/test-wcsnrtombs1.sh: New file.
2501         * tests/test-wcsnrtombs2.sh: New file.
2502         * tests/test-wcsnrtombs3.sh: New file.
2503         * tests/test-wcsnrtombs4.sh: New file.
2504         * tests/test-wcsnrtombs.c: New file.
2505
2506         New module 'wcsnrtombs'.
2507         * lib/wchar.in.h (wcsnrtombs): New declaration.
2508         * lib/wcsnrtombs.c: New file.
2509         * lib/wcsrtombs-state.c: New file.
2510         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
2511         (internal_state): Remove variable.
2512         * m4/wcsnrtombs.m4: New file.
2513         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
2514         compilation units.
2515         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
2516         HAVE_WCSNRTOMBS.
2517         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
2518         HAVE_WCSNRTOMBS.
2519         * modules/wcsnrtombs: New file.
2520         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
2521         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
2522
2523 2008-12-21  Bruno Haible  <bruno@clisp.org>
2524
2525         * modules/wcsrtombs-tests: New file.
2526         * tests/test-wcsrtombs1.sh: New file.
2527         * tests/test-wcsrtombs2.sh: New file.
2528         * tests/test-wcsrtombs3.sh: New file.
2529         * tests/test-wcsrtombs4.sh: New file.
2530         * tests/test-wcsrtombs.c: New file.
2531
2532         New module 'wcsrtombs'.
2533         * lib/wchar.in.h (wcsrtombs): New declaration.
2534         * lib/wcsrtombs.c: New file.
2535         * m4/wcsrtombs.m4: New file.
2536         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
2537         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
2538         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
2539         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
2540         * modules/wcsrtombs: New file.
2541         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
2542         bugs.
2543
2544 2008-12-21  Bruno Haible  <bruno@clisp.org>
2545
2546         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
2547         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
2548         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
2549         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
2550         if not correct.
2551         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
2552         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
2553         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
2554         m4/locale-zh.m4, m4/codeset.m4.
2555         * doc/posix-functions/wcrtomb.texi: Document the bug.
2556
2557 2008-12-21  Bruno Haible  <bruno@clisp.org>
2558
2559         Work around a btowc() bug on IRIX 6.5.
2560         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
2561         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
2562         REPLACE_WTOBC if not.
2563         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
2564         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
2565         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
2566
2567 2008-12-21  Bruno Haible  <bruno@clisp.org>
2568
2569         * modules/wcrtomb-tests: New file.
2570         * tests/test-wcrtomb.sh: New file.
2571         * tests/test-wcrtomb.c: New file.
2572
2573         New module 'wcrtomb'.
2574         * lib/wchar.in.h (wcrtomb): New declaration.
2575         * lib/wcrtomb.c: New file.
2576         * m4/wcrtomb.m4: New file.
2577         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
2578         HAVE_WCRTOMB.
2579         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
2580         HAVE_WCRTOMB.
2581         * modules/wcrtomb: New file.
2582         * doc/posix-functions/wcrtomb.texi: Mention the new module.
2583
2584 2008-12-21  Bruno Haible  <bruno@clisp.org>
2585
2586         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
2587         * modules/mbsrtowcs (Files): Likewise.
2588         * modules/wctob (Files): Likewise.
2589         * modules/c-strcase-tests (Files): Likewise.
2590         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
2591         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
2592         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
2593         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
2594         * modules/vasnprintf-posix-tests (Files): Likewise.
2595
2596 2008-12-21  William Pursell  <bill.pursell@gmail.com>
2597
2598         gitlog-to-changelog: pass all command-line arguments to git-log
2599         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
2600         it is sometimes convenient to filter the commits in various ways.
2601         gitlog-to-changelog only allows --since to specify a start date,
2602         but git-log itself supports many other filtering mechanisms.
2603         At the moment, I want to filter by branch name.  Rather than
2604         adding a --branch option to gitlog-to-changelog, it seems more
2605         flexible to simply pass all options directly to git-log and let
2606         git do the work.  Notice that this effectively makes --since a
2607         redundant option for gitlog-to-changelog, but removing it would
2608         require current usage to change since calls would then require
2609         an additional '--'.
2610
2611 2008-12-21  Bruno Haible  <bruno@clisp.org>
2612
2613         * modules/mbsnrtowcs-tests: New file.
2614         * tests/test-mbsnrtowcs1.sh: New file.
2615         * tests/test-mbsnrtowcs2.sh: New file.
2616         * tests/test-mbsnrtowcs3.sh: New file.
2617         * tests/test-mbsnrtowcs4.sh: New file.
2618         * tests/test-mbsnrtowcs.c: New file.
2619
2620         New module 'mbsnrtowcs'.
2621         * lib/wchar.in.h (mbsnrtowcs): New declaration.
2622         * lib/mbsnrtowcs.c: New file.
2623         * lib/mbsrtowcs-state.c: New file.
2624         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
2625         (internal_state): Remove variable.
2626         * m4/mbsnrtowcs.m4: New file.
2627         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
2628         compilation units.
2629         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
2630         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
2631         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
2632         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
2633         * modules/mbsnrtowcs: New file.
2634         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
2635         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
2636         portability problem.
2637
2638 2008-12-21  Bruno Haible  <bruno@clisp.org>
2639
2640         Work around mbsrtowcs bug.
2641         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
2642         (gl_FUNC_MBSRTOWCS): Invoke it.
2643         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
2644         m4/locale-zh.m4.
2645         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
2646
2647 2008-12-21  Bruno Haible  <bruno@clisp.org>
2648
2649         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
2650
2651 2008-12-21  Bruno Haible  <bruno@clisp.org>
2652
2653         Update doc for AIX.
2654         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
2655         16-bit wchar_t type.
2656         * doc/posix-functions/btowc.texi: Likewise.
2657         * doc/posix-functions/fgetwc.texi: Likewise.
2658         * doc/posix-functions/fgetws.texi: Likewise.
2659         * doc/posix-functions/fputwc.texi: Likewise.
2660         * doc/posix-functions/fputws.texi: Likewise.
2661         * doc/posix-functions/fwide.texi: Likewise.
2662         * doc/posix-functions/fwprintf.texi: Likewise.
2663         * doc/posix-functions/fwscanf.texi: Likewise.
2664         * doc/posix-functions/getwchar.texi: Likewise.
2665         * doc/posix-functions/getwc.texi: Likewise.
2666         * doc/posix-functions/iswalnum.texi: Likewise.
2667         * doc/posix-functions/iswalpha.texi: Likewise.
2668         * doc/posix-functions/iswblank.texi: Likewise.
2669         * doc/posix-functions/iswcntrl.texi: Likewise.
2670         * doc/posix-functions/iswctype.texi: Likewise.
2671         * doc/posix-functions/iswdigit.texi: Likewise.
2672         * doc/posix-functions/iswgraph.texi: Likewise.
2673         * doc/posix-functions/iswlower.texi: Likewise.
2674         * doc/posix-functions/iswprint.texi: Likewise.
2675         * doc/posix-functions/iswpunct.texi: Likewise.
2676         * doc/posix-functions/iswspace.texi: Likewise.
2677         * doc/posix-functions/iswupper.texi: Likewise.
2678         * doc/posix-functions/iswxdigit.texi: Likewise.
2679         * doc/posix-functions/mbrtowc.texi: Likewise.
2680         * doc/posix-functions/mbsrtowcs.texi: Likewise.
2681         * doc/posix-functions/mbstowcs.texi: Likewise.
2682         * doc/posix-functions/mbtowc.texi: Likewise.
2683         * doc/posix-functions/putwchar.texi: Likewise.
2684         * doc/posix-functions/putwc.texi: Likewise.
2685         * doc/posix-functions/swprintf.texi: Likewise.
2686         * doc/posix-functions/tolower.texi: Likewise.
2687         * doc/posix-functions/toupper.texi: Likewise.
2688         * doc/posix-functions/towctrans.texi: Likewise.
2689         * doc/posix-functions/ungetwc.texi: Likewise.
2690         * doc/posix-functions/vswprintf.texi: Likewise.
2691         * doc/posix-functions/wcrtomb.texi: Likewise.
2692         * doc/posix-functions/wcscat.texi: Likewise.
2693         * doc/posix-functions/wcschr.texi: Likewise.
2694         * doc/posix-functions/wcscmp.texi: Likewise.
2695         * doc/posix-functions/wcscoll.texi: Likewise.
2696         * doc/posix-functions/wcscpy.texi: Likewise.
2697         * doc/posix-functions/wcscspn.texi: Likewise.
2698         * doc/posix-functions/wcsftime.texi: Likewise.
2699         * doc/posix-functions/wcslen.texi: Likewise.
2700         * doc/posix-functions/wcsncat.texi: Likewise.
2701         * doc/posix-functions/wcsncmp.texi: Likewise.
2702         * doc/posix-functions/wcsncpy.texi: Likewise.
2703         * doc/posix-functions/wcspbrk.texi: Likewise.
2704         * doc/posix-functions/wcsrchr.texi: Likewise.
2705         * doc/posix-functions/wcsrtombs.texi: Likewise.
2706         * doc/posix-functions/wcsspn.texi: Likewise.
2707         * doc/posix-functions/wcsstr.texi: Likewise.
2708         * doc/posix-functions/wcstod.texi: Likewise.
2709         * doc/posix-functions/wcstof.texi: Likewise.
2710         * doc/posix-functions/wcstoimax.texi: Likewise.
2711         * doc/posix-functions/wcstok.texi: Likewise.
2712         * doc/posix-functions/wcstold.texi: Likewise.
2713         * doc/posix-functions/wcstoll.texi: Likewise.
2714         * doc/posix-functions/wcstol.texi: Likewise.
2715         * doc/posix-functions/wcstombs.texi: Likewise.
2716         * doc/posix-functions/wcstoull.texi: Likewise.
2717         * doc/posix-functions/wcstoul.texi: Likewise.
2718         * doc/posix-functions/wcstoumax.texi: Likewise.
2719         * doc/posix-functions/wcswidth.texi: Likewise.
2720         * doc/posix-functions/wcsxfrm.texi: Likewise.
2721         * doc/posix-functions/wctob.texi: Likewise.
2722         * doc/posix-functions/wctomb.texi: Likewise.
2723         * doc/posix-functions/wctrans.texi: Likewise.
2724         * doc/posix-functions/wctype.texi: Likewise.
2725         * doc/posix-functions/wcwidth.texi: Likewise.
2726         * doc/posix-functions/wmemchr.texi: Likewise.
2727         * doc/posix-functions/wmemcmp.texi: Likewise.
2728         * doc/posix-functions/wmemcpy.texi: Likewise.
2729         * doc/posix-functions/wmemmove.texi: Likewise.
2730         * doc/posix-functions/wmemset.texi: Likewise.
2731         * doc/posix-functions/wprintf.texi: Likewise.
2732         * doc/posix-functions/wscanf.texi: Likewise.
2733
2734 2008-12-21  Bruno Haible  <bruno@clisp.org>
2735
2736         Update doc for HP-UX 11.11.
2737         * doc/posix-functions/btowc.texi: Clarify that the function is missing
2738         in HP-UX version 11.00, not in all versions of HP-UX 11.
2739         * doc/posix-functions/fwide.texi: Likewise.
2740         * doc/posix-functions/fwprintf.texi: Likewise.
2741         * doc/posix-functions/fwscanf.texi: Likewise.
2742         * doc/posix-functions/inet_ntop.texi: Likewise.
2743         * doc/posix-functions/inet_pton.texi: Likewise.
2744         * doc/posix-functions/mbrlen.texi: Likewise.
2745         * doc/posix-functions/mbrtowc.texi: Likewise.
2746         * doc/posix-functions/mbsinit.texi: Likewise.
2747         * doc/posix-functions/mbsrtowcs.texi: Likewise.
2748         * doc/posix-functions/swprintf.texi: Likewise.
2749         * doc/posix-functions/swscanf.texi: Likewise.
2750         * doc/posix-functions/towctrans.texi: Likewise.
2751         * doc/posix-functions/vfwprintf.texi: Likewise.
2752         * doc/posix-functions/vswprintf.texi: Likewise.
2753         * doc/posix-functions/vwprintf.texi: Likewise.
2754         * doc/posix-functions/wcrtomb.texi: Likewise.
2755         * doc/posix-functions/wcsrtombs.texi: Likewise.
2756         * doc/posix-functions/wcsstr.texi: Likewise.
2757         * doc/posix-functions/wctob.texi: Likewise.
2758         * doc/posix-functions/wctrans.texi: Likewise.
2759         * doc/posix-functions/wmemchr.texi: Likewise.
2760         * doc/posix-functions/wmemcmp.texi: Likewise.
2761         * doc/posix-functions/wmemcpy.texi: Likewise.
2762         * doc/posix-functions/wmemmove.texi: Likewise.
2763         * doc/posix-functions/wmemset.texi: Likewise.
2764         * doc/posix-functions/wprintf.texi: Likewise.
2765         * doc/posix-functions/wscanf.texi: Likewise.
2766
2767 2008-12-21  Bruno Haible  <bruno@clisp.org>
2768
2769         Work around a portability problem.
2770         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
2771         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
2772
2773 2008-12-20  Bruno Haible  <bruno@clisp.org>
2774
2775         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
2776         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
2777         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
2778         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
2779         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
2780
2781         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
2782         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
2783         set.
2784         (GNULIB_defined_mbstate_t): New macro.
2785         (mbsinit): Redefine if REPLACE_MBSINIT is set.
2786         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
2787         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
2788         reuses the system's mbrtowc function but works around the bugs.
2789         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
2790         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
2791         macros.
2792         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
2793         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
2794         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
2795         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
2796         REPLACE_MBSINIT if mbsinit needs to be overridden.
2797         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
2798         REPLACE_MBSINIT, REPLACE_MBRTOWC.
2799         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
2800         REPLACE_MBSINIT, REPLACE_MBRTOWC.
2801         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
2802         m4/locale-zh.m4.
2803         (Depends): Add mbsinit.
2804         * modules/mbsinit (Depends): Add mbrtowc.
2805         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
2806
2807 2008-12-20  Bruno Haible  <bruno@clisp.org>
2808
2809         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
2810         so that there are no conversion errors on AIX.
2811         * tests/test-mbsrtowcs.c (main): LIkewise.
2812
2813 2008-12-20  Bruno Haible  <bruno@clisp.org>
2814
2815         Work around wctob bug on Solaris <= 9.
2816         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
2817         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
2818         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
2819         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
2820         * modules/wctob (Files): Add m4/locale-fr.m4.
2821         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
2822
2823 2008-12-20  Bruno Haible  <bruno@clisp.org>
2824
2825         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
2826         /dev/null.
2827         * tests/test-select-in.sh: Likewise.
2828         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
2829
2830 2008-12-20  Bruno Haible  <bruno@clisp.org>
2831
2832         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
2833         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
2834         Cygwin 1.5.x.
2835
2836 2008-12-20  Bruno Haible  <bruno@clisp.org>
2837
2838         Ensure mbstate_t is defined on HP-UX 11.11.
2839         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
2840         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
2841         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
2842         AC_USE_SYSTEM_EXTENSIONS.
2843         * modules/fnmatch (Depends-on): Add extensions.
2844         * modules/mbrlen (Depends-on): Likewise.
2845         * modules/mbrtowc (Depends-on): Likewise.
2846         * modules/mbsinit (Depends-on): Likewise.
2847         * modules/mbsrtowcs (Depends-on): Likewise.
2848         * modules/mbswidth (Depends-on): Likewise.
2849         * modules/quotearg (Depends-on): Likewise.
2850         * modules/strftime (Depends-on): Likewise.
2851
2852 2008-12-20  Bruno Haible  <bruno@clisp.org>
2853
2854         Ensure wctob is declared on IRIX 6.5.
2855         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
2856         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
2857         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
2858         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
2859         of HAVE_WCTOB.
2860         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
2861         HAVE_WCTOB.
2862         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
2863
2864 2008-12-19  Bruno Haible  <bruno@clisp.org>
2865
2866         * modules/mbsrtowcs-tests: New file.
2867         * tests/test-mbsrtowcs1.sh: New file.
2868         * tests/test-mbsrtowcs2.sh: New file.
2869         * tests/test-mbsrtowcs3.sh: New file.
2870         * tests/test-mbsrtowcs4.sh: New file.
2871         * tests/test-mbsrtowcs.c: New file.
2872
2873         New module 'mbsrtowcs'.
2874         * lib/wchar.in.h (mbsrtowcs): New declaration.
2875         * lib/mbsrtowcs.c: New file.
2876         * m4/mbsrtowcs.m4: New file.
2877         * modules/mbsrtowcs: New file.
2878         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
2879         HAVE_MBSRTOWCS.
2880         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
2881         HAVE_MBSRTOWCS.
2882         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
2883
2884 2008-12-19  Bruno Haible  <bruno@clisp.org>
2885
2886         New module 'mbrlen'.
2887         * lib/wchar.in.h (mbrlen): New declaration.
2888         * lib/mbrlen.c: New file.
2889         * m4/mbrlen.m4: New file.
2890         * modules/mbrlen: New file.
2891         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
2892         HAVE_MBRLEN.
2893         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
2894         HAVE_MBRLEN.
2895         * doc/posix-functions/mbrlen.texi: Document the new module.
2896
2897 2008-12-19  Bruno Haible  <bruno@clisp.org>
2898
2899         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
2900         * modules/mbrtowc (Depends-on): Add verify.
2901         Suggested by Paul Eggert.
2902
2903 2008-12-18  Bruno Haible  <bruno@clisp.org>
2904
2905         * modules/mbsinit-tests: New file.
2906         * tests/test-mbsinit.sh: New file.
2907         * tests/test-mbsinit.c: New file.
2908
2909 2008-12-18  Bruno Haible  <bruno@clisp.org>
2910
2911         * modules/mbrtowc-tests: New file.
2912         * tests/test-mbrtowc1.sh: New file.
2913         * tests/test-mbrtowc2.sh: New file.
2914         * tests/test-mbrtowc3.sh: New file.
2915         * tests/test-mbrtowc4.sh: New file.
2916         * tests/test-mbrtowc.c: New file.
2917
2918         New module 'mbrtowc'.
2919         * lib/wchar.in.h (mbstate_t): Override when the system does not have
2920         mbsinit and mbrtowc.
2921         (mbrtowc): New declaration.
2922         * lib/mbrtowc.c: New file.
2923         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
2924         * modules/mbrtowc: New file.
2925         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
2926         HAVE_MBRTOWC.
2927         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
2928         HAVE_MBRTOWC.
2929         * doc/posix-functions/mbrtowc.texi: Document the new module.
2930
2931 2008-12-18  Bruno Haible  <bruno@clisp.org>
2932
2933         New module 'wctob'.
2934         * lib/wchar.in.h (wctob): New declaration.
2935         * lib/wctob.c: New file.
2936         * m4/wctob.m4: New file.
2937         * modules/wctob: New file.
2938         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
2939         HAVE_WCTOB.
2940         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
2941         * doc/posix-functions/wctob.texi: Document the new module.
2942
2943 2008-12-18  Bruno Haible  <bruno@clisp.org>
2944
2945         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
2946         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
2947
2948 2008-12-18  Simon Josefsson  <simon@josefsson.org>
2949
2950         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
2951         G. Christensen" <tgc@jupiterrise.com>.
2952
2953         * lib/flock.c: Need to include errno.h.  Reported by "Tom
2954         G. Christensen" <tgc@jupiterrise.com>.
2955
2956         * lib/flock.c: Need to include string.h.  Reported by "Tom
2957         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
2958         <ebb9@byu.net>.
2959
2960 2008-12-18  Bruno Haible  <bruno@clisp.org>
2961
2962         * m4/locale-ja.m4: New file, from GNU gettext.
2963
2964 2008-12-17  Bruno Haible  <bruno@clisp.org>
2965
2966         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
2967         Suggested by Eric Blake.
2968
2969 2008-12-17  Bruno Haible  <bruno@clisp.org>
2970
2971         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
2972
2973 2008-12-17  Bruno Haible  <bruno@clisp.org>
2974
2975         * lib/mbsinit.c: Include verify.h. Verify an assumption.
2976         * modules/mbsinit (Depends-on): Add verify.
2977         Suggested by Paul Eggert.
2978
2979 2008-12-17  Bruno Haible  <bruno@clisp.org>
2980
2981         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
2982         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
2983         gl_FUNC_MBRTOWC.
2984         * m4/mbiter.m4 (gl_MBITER): LIkewise.
2985         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
2986         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
2987         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
2988         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
2989         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
2990         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
2991         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
2992         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
2993         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
2994         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
2995         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
2996         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
2997         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
2998         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
2999         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
3000         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
3001         * modules/trim (configure.ac): Likewise.
3002
3003 2008-12-17  Bruno Haible  <bruno@clisp.org>
3004
3005         * modules/btowc-tests: New file.
3006         * tests/test-btowc1.sh: New file.
3007         * tests/test-btowc2.sh: New file.
3008         * tests/test-btowc.c: New file.
3009
3010         New module 'btowc'.
3011         * lib/wchar.in.h (btowc): New declaration.
3012         * lib/btowc.c: New file.
3013         * m4/btowc.m4: New file.
3014         * modules/btowc: New file.
3015         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
3016         HAVE_BTOWC.
3017         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
3018         * doc/posix-functions/btowc.texi: Document the new module.
3019
3020 2008-12-17  Bruno Haible  <bruno@clisp.org>
3021
3022         New module 'mbsinit'.
3023         * lib/wchar.in.h (mbsinit): New declaration.
3024         * lib/mbsinit.c: New file.
3025         * m4/mbsinit.m4: New file.
3026         * modules/mbsinit: New file.
3027         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
3028         HAVE_MBSINIT.
3029         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
3030         HAVE_MBSINIT.
3031         * doc/posix-functions/mbsinit.texi: Document the new module.
3032
3033 2008-12-16  Bruno Haible  <bruno@clisp.org>
3034
3035         * lib/unistd.in.h: Add comment.
3036         * tests/test-environ.c: Don't include <stdlib.h>.
3037
3038 2008-12-16  Bruno Haible  <bruno@clisp.org>
3039
3040         * lib/parse-duration.h (parse_duration): Document return value
3041         convention.
3042         * lib/parse-duration.c: Include specification header first. Add
3043         comments.
3044         (_): Remove macro.
3045         (parse_year_month_day, parse_hour_minute_second): Move side effects
3046         outside of strchr call.
3047         (parse_non_iso8601): Move side effects outside of isspace call.
3048         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
3049         call.
3050
3051 2008-12-16  Bruno Haible  <bruno@clisp.org>
3052
3053         * tests/test-parse-duration.sh: Produce no output when the test
3054         succeeds.
3055
3056 2008-12-16  Bruno Haible  <bruno@clisp.org>
3057
3058         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
3059         expressions.
3060
3061 2008-12-15  Bruno Haible  <bruno@clisp.org>
3062
3063         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
3064         * doc/glibc-functions/flistxattr.texi: Likewise.
3065         * doc/glibc-functions/fopencookie.texi: Likewise.
3066         * doc/glibc-functions/fremovexattr.texi: Likewise.
3067         * doc/glibc-functions/fsetxattr.texi: Likewise.
3068         * doc/glibc-functions/getxattr.texi: Likewise.
3069         * doc/glibc-functions/lgetxattr.texi: Likewise.
3070         * doc/glibc-functions/listxattr.texi: Likewise.
3071         * doc/glibc-functions/llistxattr.texi: Likewise.
3072         * doc/glibc-functions/lremovexattr.texi: Likewise.
3073         * doc/glibc-functions/lsetxattr.texi: Likewise.
3074         * doc/glibc-functions/removexattr.texi: Likewise.
3075         * doc/glibc-functions/setxattr.texi: Likewise.
3076         * doc/posix-functions/open_memstream.texi: Likewise.
3077
3078 2008-12-15  Eric Blake  <ebb9@byu.net>
3079
3080         Update doc for cygwin 1.7.
3081         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
3082         functions.
3083         * doc/posix-functions/fchmodat.texi: Likewise.
3084         * doc/posix-functions/fchownat.texi: Likewise.
3085         * doc/posix-functions/fdopendir.texi: Likewise.
3086         * doc/posix-functions/fmemopen.texi: Likewise.
3087         * doc/posix-functions/freeaddrinfo.texi: Likewise.
3088         * doc/posix-functions/fstatat.texi: Likewise.
3089         * doc/posix-functions/futimens.texi: Likewise.
3090         * doc/posix-functions/gai_strerror.texi: Likewise.
3091         * doc/posix-functions/getaddrinfo.texi: Likewise.
3092         * doc/posix-functions/getnameinfo.texi: Likewise.
3093         * doc/posix-functions/if_freenameindex.texi: Likewise.
3094         * doc/posix-functions/if_indextoname.texi: Likewise.
3095         * doc/posix-functions/if_nameindex.texi: Likewise.
3096         * doc/posix-functions/if_nametoindex.texi: Likewise.
3097         * doc/posix-functions/insque.texi: Likewise.
3098         * doc/posix-functions/linkat.texi: Likewise.
3099         * doc/posix-functions/llrint.texi: Likewise.
3100         * doc/posix-functions/llrintf.texi: Likewise.
3101         * doc/posix-functions/llrintl.texi: Likewise.
3102         * doc/posix-functions/lockf.texi: Likewise.
3103         * doc/posix-functions/lrintl.texi: Likewise.
3104         * doc/posix-functions/mkdirat.texi: Likewise.
3105         * doc/posix-functions/mkfifoat.texi: Likewise.
3106         * doc/posix-functions/mknodat.texi: Likewise.
3107         * doc/posix-functions/mq_close.texi: Likewise.
3108         * doc/posix-functions/mq_getattr.texi: Likewise.
3109         * doc/posix-functions/mq_notify.texi: Likewise.
3110         * doc/posix-functions/mq_open.texi: Likewise.
3111         * doc/posix-functions/mq_receive.texi: Likewise.
3112         * doc/posix-functions/mq_send.texi: Likewise.
3113         * doc/posix-functions/mq_setattr.texi: Likewise.
3114         * doc/posix-functions/mq_timedreceive.texi: Likewise.
3115         * doc/posix-functions/mq_timedsend.texi: Likewise.
3116         * doc/posix-functions/mq_unlink.texi: Likewise.
3117         * doc/posix-functions/open_memstream.texi: Likewise.
3118         * doc/posix-functions/openat.texi: Likewise.
3119         * doc/posix-functions/posix_fadvise.texi: Likewise.
3120         * doc/posix-functions/posix_fallocate.texi: Likewise.
3121         * doc/posix-functions/posix_madvise.texi: Likewise.
3122         * doc/posix-functions/posix_memalign.texi: Likewise.
3123         * doc/posix-functions/posix_openpt.texi: Likewise.
3124         * doc/posix-functions/readlinkat.texi: Likewise.
3125         * doc/posix-functions/remque.texi: Likewise.
3126         * doc/posix-functions/renameat.texi: Likewise.
3127         * doc/posix-functions/rintl.texi: Likewise.
3128         * doc/posix-functions/sem_unlink.texi: Likewise.
3129         * doc/posix-functions/shm_open.texi: Likewise.
3130         * doc/posix-functions/shm_unlink.texi: Likewise.
3131         * doc/posix-functions/signgam.texi: Likewise.
3132         * doc/posix-functions/sigset.texi: Likewise.
3133         * doc/posix-functions/stpcpy.texi: Likewise.
3134         * doc/posix-functions/stpncpy.texi: Likewise.
3135         * doc/posix-functions/strerror.texi: Likewise.
3136         * doc/posix-functions/strtod.texi: Likewise.
3137         * doc/posix-functions/symlinkat.texi: Likewise.
3138         * doc/posix-functions/unlinkat.texi: Likewise.
3139         * doc/posix-functions/utimensat.texi: Likewise.
3140         * doc/glibc-functions/bindresvport.texi: Likewise.
3141         * doc/glibc-functions/dn_expand.texi: Likewise.
3142         * doc/glibc-functions/exp10.texi: Likewise.
3143         * doc/glibc-functions/exp10f.texi: Likewise.
3144         * doc/glibc-functions/fgetxattr.texi: Likewise.
3145         * doc/glibc-functions/flistxattr.texi: Likewise.
3146         * doc/glibc-functions/fopencookie.texi: Likewise.
3147         * doc/glibc-functions/freeifaddrs.texi: Likewise.
3148         * doc/glibc-functions/fremovexattr.texi: Likewise.
3149         * doc/glibc-functions/fsetxattr.texi: Likewise.
3150         * doc/glibc-functions/getifaddrs.texi: Likewise.
3151         * doc/glibc-functions/getxattr.texi: Likewise.
3152         * doc/glibc-functions/lgetxattr.texi: Likewise.
3153         * doc/glibc-functions/listxattr.texi: Likewise.
3154         * doc/glibc-functions/llistxattr.texi: Likewise.
3155         * doc/glibc-functions/lremovexattr.texi: Likewise.
3156         * doc/glibc-functions/lsetxattr.texi: Likewise.
3157         * doc/glibc-functions/pow10.texi: Likewise.
3158         * doc/glibc-functions/pow10f.texi: Likewise.
3159         * doc/glibc-functions/rcmd_af.texi: Likewise.
3160         * doc/glibc-functions/removexattr.texi: Likewise.
3161         * doc/glibc-functions/res_init.texi: Likewise.
3162         * doc/glibc-functions/res_mkquery.texi: Likewise.
3163         * doc/glibc-functions/res_query.texi: Likewise.
3164         * doc/glibc-functions/res_querydomain.texi: Likewise.
3165         * doc/glibc-functions/res_send.texi: Likewise.
3166         * doc/glibc-functions/rresvport_af.texi: Likewise.
3167         * doc/glibc-functions/setxattr.texi: Likewise.
3168         * doc/glibc-functions/strcasestr.texi: Likewise.
3169
3170 2008-12-15  Bruno Haible  <bruno@clisp.org>
3171
3172         Fix compilation error on OSF/1 4.0.
3173         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
3174         <sys/time.h>, simply delegate to the system header.
3175         Reported by Daniel Richard G. <oss@teragram.com>.
3176
3177 2008-12-15  Bruno Haible  <bruno@clisp.org>
3178
3179         * doc/posix-functions/openat.texi: Mention the 'openat' module.
3180         * doc/posix-functions/fchmodat.texi: Likewise.
3181         * doc/posix-functions/fchownat.texi: Likewise.
3182         * doc/posix-functions/fdopendir.texi: Likewise.
3183         * doc/posix-functions/fstatat.texi: Likewise.
3184         * doc/posix-functions/mkdirat.texi: Likewise.
3185         * doc/posix-functions/unlinkat.texi: Likewise.
3186
3187 2008-12-14  Bruno Haible  <bruno@clisp.org>
3188
3189         Update doc for POSIX:2008.
3190         * doc/posix-functions/faccessat.texi: New file.
3191         * doc/posix-functions/fchmodat.texi: New file.
3192         * doc/posix-functions/fchownat.texi: New file.
3193         * doc/posix-functions/fdopendir.texi: New file.
3194         * doc/posix-functions/fstatat.texi: New file.
3195         * doc/posix-functions/futimens.texi: New file.
3196         * doc/posix-functions/linkat.texi: New file.
3197         * doc/posix-functions/mkdirat.texi: New file.
3198         * doc/posix-functions/mkfifoat.texi: New file.
3199         * doc/posix-functions/mknodat.texi: New file.
3200         * doc/posix-functions/open_wmemstream.texi: New file.
3201         * doc/posix-functions/openat.texi: New file.
3202         * doc/posix-functions/psiginfo.texi: New file.
3203         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
3204         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
3205         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
3206         * doc/posix-functions/readlinkat.texi: New file.
3207         * doc/posix-functions/renameat.texi: New file.
3208         * doc/posix-functions/strerror_l.texi: New file.
3209         * doc/posix-functions/symlinkat.texi: New file.
3210         * doc/posix-functions/unlinkat.texi: New file.
3211         * doc/posix-functions/utimensat.texi: New file.
3212         * doc/gnulib.texi (Function Substitutes): Add these subsections.
3213
3214 2008-12-14  Bruno Haible  <bruno@clisp.org>
3215
3216         Update doc for POSIX:2008.
3217         * doc/posix-functions/alphasort.texi: Renamed from
3218         doc/glibc-functions/alphasort.texi.
3219         * doc/posix-functions/dirfd.texi: Renamed from
3220         doc/glibc-functions/dirfd.texi.
3221         * doc/posix-functions/dprintf.texi: Renamed from
3222         doc/glibc-functions/dprintf.texi.
3223         * doc/posix-functions/duplocale.texi: Renamed from
3224         doc/glibc-functions/duplocale.texi.
3225         * doc/posix-functions/fexecve.texi: Renamed from
3226         doc/glibc-functions/fexecve.texi.
3227         * doc/posix-functions/fmemopen.texi: Renamed from
3228         doc/glibc-functions/fmemopen.texi.
3229         * doc/posix-functions/freelocale.texi: Renamed from
3230         doc/glibc-functions/freelocale.texi.
3231         * doc/posix-functions/getdate_err.texi: Renamed from
3232         doc/glibc-functions/getdate_err.texi.
3233         * doc/posix-functions/isalnum_l.texi: Renamed from
3234         doc/glibc-functions/isalnum_l.texi.
3235         * doc/posix-functions/isalpha_l.texi: Renamed from
3236         doc/glibc-functions/isalpha_l.texi.
3237         * doc/posix-functions/isblank_l.texi: Renamed from
3238         doc/glibc-functions/isblank_l.texi.
3239         * doc/posix-functions/iscntrl_l.texi: Renamed from
3240         doc/glibc-functions/iscntrl_l.texi.
3241         * doc/posix-functions/isdigit_l.texi: Renamed from
3242         doc/glibc-functions/isdigit_l.texi.
3243         * doc/posix-functions/isgraph_l.texi: Renamed from
3244         doc/glibc-functions/isgraph_l.texi.
3245         * doc/posix-functions/islower_l.texi: Renamed from
3246         doc/glibc-functions/islower_l.texi.
3247         * doc/posix-functions/isprint_l.texi: Renamed from
3248         doc/glibc-functions/isprint_l.texi.
3249         * doc/posix-functions/ispunct_l.texi: Renamed from
3250         doc/glibc-functions/ispunct_l.texi.
3251         * doc/posix-functions/isspace_l.texi: Renamed from
3252         doc/glibc-functions/isspace_l.texi.
3253         * doc/posix-functions/isupper_l.texi: Renamed from
3254         doc/glibc-functions/isupper_l.texi.
3255         * doc/posix-functions/iswalnum_l.texi: Renamed from
3256         doc/glibc-functions/iswalnum_l.texi.
3257         * doc/posix-functions/iswalpha_l.texi: Renamed from
3258         doc/glibc-functions/iswalpha_l.texi.
3259         * doc/posix-functions/iswblank_l.texi: Renamed from
3260         doc/glibc-functions/iswblank_l.texi.
3261         * doc/posix-functions/iswcntrl_l.texi: Renamed from
3262         doc/glibc-functions/iswcntrl_l.texi.
3263         * doc/posix-functions/iswctype_l.texi: Renamed from
3264         doc/glibc-functions/iswctype_l.texi.
3265         * doc/posix-functions/iswdigit_l.texi: Renamed from
3266         doc/glibc-functions/iswdigit_l.texi.
3267         * doc/posix-functions/iswgraph_l.texi: Renamed from
3268         doc/glibc-functions/iswgraph_l.texi.
3269         * doc/posix-functions/iswlower_l.texi: Renamed from
3270         doc/glibc-functions/iswlower_l.texi.
3271         * doc/posix-functions/iswprint_l.texi: Renamed from
3272         doc/glibc-functions/iswprint_l.texi.
3273         * doc/posix-functions/iswpunct_l.texi: Renamed from
3274         doc/glibc-functions/iswpunct_l.texi.
3275         * doc/posix-functions/iswspace_l.texi: Renamed from
3276         doc/glibc-functions/iswspace_l.texi.
3277         * doc/posix-functions/iswupper_l.texi: Renamed from
3278         doc/glibc-functions/iswupper_l.texi.
3279         * doc/posix-functions/iswxdigit_l.texi: Renamed from
3280         doc/glibc-functions/iswxdigit_l.texi.
3281         * doc/posix-functions/isxdigit_l.texi: Renamed from
3282         doc/glibc-functions/isxdigit_l.texi.
3283         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
3284         doc/glibc-functions/mbsnrtowcs.texi.
3285         * doc/posix-functions/mkdtemp.texi: Renamed from
3286         doc/glibc-functions/mkdtemp.texi.
3287         * doc/posix-functions/newlocale.texi: Renamed from
3288         doc/glibc-functions/newlocale.texi.
3289         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
3290         doc/glibc-functions/nl_langinfo_l.texi.
3291         * doc/posix-functions/open_memstream.texi: Renamed from
3292         doc/glibc-functions/open_memstream.texi.
3293         * doc/posix-functions/opterr.texi: Renamed from
3294         doc/glibc-functions/opterr.texi.
3295         * doc/posix-functions/optind.texi: Renamed from
3296         doc/glibc-functions/optind.texi.
3297         * doc/posix-functions/optopt.texi: Renamed from
3298         doc/glibc-functions/optopt.texi.
3299         * doc/posix-functions/psignal.texi: Renamed from
3300         doc/glibc-functions/psignal.texi.
3301         * doc/posix-functions/scandir.texi: Renamed from
3302         doc/glibc-functions/scandir.texi.
3303         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
3304         doc/glibc-functions/sched_get_priority_min.texi.
3305         * doc/posix-functions/signgam.texi: Renamed from
3306         doc/glibc-functions/signgam.texi.
3307         * doc/posix-functions/stpcpy.texi: Renamed from
3308         doc/glibc-functions/stpcpy.texi.
3309         * doc/posix-functions/stpncpy.texi: Renamed from
3310         doc/glibc-functions/stpncpy.texi.
3311         * doc/posix-functions/strcasecmp_l.texi: Renamed from
3312         doc/glibc-functions/strcasecmp_l.texi.
3313         * doc/posix-functions/strcoll_l.texi: Renamed from
3314         doc/glibc-functions/strcoll_l.texi.
3315         * doc/posix-functions/strfmon_l.texi: Renamed from
3316         doc/glibc-functions/strfmon_l.texi.
3317         * doc/posix-functions/strftime_l.texi: Renamed from
3318         doc/glibc-functions/strftime_l.texi.
3319         * doc/posix-functions/strncasecmp_l.texi: Renamed from
3320         doc/glibc-functions/strncasecmp_l.texi.
3321         * doc/posix-functions/strndup.texi: Renamed from
3322         doc/glibc-functions/strndup.texi.
3323         * doc/posix-functions/strnlen.texi: Renamed from
3324         doc/glibc-functions/strnlen.texi.
3325         * doc/posix-functions/strsignal.texi: Renamed from
3326         doc/glibc-functions/strsignal.texi.
3327         * doc/posix-functions/strxfrm_l.texi: Renamed from
3328         doc/glibc-functions/strxfrm_l.texi.
3329         * doc/posix-functions/timer_gettime.texi: Renamed from
3330         doc/glibc-functions/timer_gettime.texi.
3331         * doc/posix-functions/tolower_l.texi: Renamed from
3332         doc/glibc-functions/tolower_l.texi.
3333         * doc/posix-functions/toupper_l.texi: Renamed from
3334         doc/glibc-functions/toupper_l.texi.
3335         * doc/posix-functions/towctrans_l.texi: Renamed from
3336         doc/glibc-functions/towctrans_l.texi.
3337         * doc/posix-functions/towlower_l.texi: Renamed from
3338         doc/glibc-functions/towlower_l.texi.
3339         * doc/posix-functions/towupper_l.texi: Renamed from
3340         doc/glibc-functions/towupper_l.texi.
3341         * doc/posix-functions/uselocale.texi: Renamed from
3342         doc/glibc-functions/uselocale.texi.
3343         * doc/posix-functions/vdprintf.texi: Renamed from
3344         doc/glibc-functions/vdprintf.texi.
3345         * doc/posix-functions/wcpcpy.texi:
3346         Renamed from doc/glibc-functions/wcpcpy.texi.
3347         * doc/posix-functions/wcpncpy.texi: Renamed from
3348         doc/glibc-functions/wcpncpy.texi.
3349         * doc/posix-functions/wcscasecmp.texi: Renamed from
3350         doc/glibc-functions/wcscasecmp.texi.
3351         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
3352         doc/glibc-functions/wcscasecmp_l.texi.
3353         * doc/posix-functions/wcscoll_l.texi: Renamed from
3354         doc/glibc-functions/wcscoll_l.texi.
3355         * doc/posix-functions/wcsdup.texi: Renamed from
3356         doc/glibc-functions/wcsdup.texi.
3357         * doc/posix-functions/wcsncasecmp.texi: Renamed from
3358         doc/glibc-functions/wcsncasecmp.texi.
3359         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
3360         doc/glibc-functions/wcsncasecmp_l.texi.
3361         * doc/posix-functions/wcsnlen.texi: Renamed from
3362         doc/glibc-functions/wcsnlen.texi.
3363         * doc/posix-functions/wcsnrtombs.texi: Renamed from
3364         doc/glibc-functions/wcsnrtombs.texi.
3365         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
3366         doc/glibc-functions/wcsxfrm_l.texi.
3367         * doc/posix-functions/wctrans_l.texi: Renamed from
3368         doc/glibc-functions/wctrans_l.texi.
3369         * doc/posix-functions/wctype_l.texi: Renamed from
3370         doc/glibc-functions/wctype_l.texi.
3371         * doc/gnulib.texi (Function Substitutes): Add these subsections.
3372         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
3373         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
3374         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
3375         these subsections.
3376         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
3377         Remove sections.
3378
3379 2008-12-14  Bruno Haible  <bruno@clisp.org>
3380
3381         Update doc for POSIX:2008.
3382         * doc/posix-functions/*.texi: Update URL of POSIX specification.
3383
3384 2008-12-14  Bruno Haible  <bruno@clisp.org>
3385
3386         Update doc for POSIX:2008.
3387         * doc/pastposix-functions/bcmp.texi: Renamed from
3388         doc/posix-functions/bcmp.texi.
3389         * doc/pastposix-functions/bcopy.texi: Renamed from
3390         doc/posix-functions/bcopy.texi.
3391         * doc/pastposix-functions/bsd_signal.texi: Renamed from
3392         doc/posix-functions/bsd_signal.texi.
3393         * doc/pastposix-functions/bzero.texi: Renamed from
3394         doc/posix-functions/bzero.texi.
3395         * doc/pastposix-functions/ecvt.texi: Renamed from
3396         doc/posix-functions/ecvt.texi.
3397         * doc/pastposix-functions/fcvt.texi: Renamed from
3398         doc/posix-functions/fcvt.texi.
3399         * doc/pastposix-functions/ftime.texi: Renamed from
3400         doc/posix-functions/ftime.texi.
3401         * doc/pastposix-functions/gcvt.texi: Renamed from
3402         doc/posix-functions/gcvt.texi.
3403         * doc/pastposix-functions/getcontext.texi: Renamed from
3404         doc/posix-functions/getcontext.texi.
3405         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
3406         doc/posix-functions/gethostbyaddr.texi.
3407         * doc/pastposix-functions/gethostbyname.texi: Renamed from
3408         doc/posix-functions/gethostbyname.texi.
3409         * doc/pastposix-functions/getwd.texi: Renamed from
3410         doc/posix-functions/getwd.texi.
3411         * doc/pastposix-functions/h_errno.texi: Renamed from
3412         doc/posix-functions/h_errno.texi.
3413         * doc/pastposix-functions/index.texi: Renamed from
3414         doc/posix-functions/index.texi.
3415         * doc/pastposix-functions/makecontext.texi: Renamed from
3416         doc/posix-functions/makecontext.texi.
3417         * doc/pastposix-functions/mktemp.texi: Renamed from
3418         doc/posix-functions/mktemp.texi.
3419         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
3420         doc/posix-functions/pthread_attr_getstackaddr.texi.
3421         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
3422         doc/posix-functions/pthread_attr_setstackaddr.texi.
3423         * doc/pastposix-functions/rindex.texi: Renamed from
3424         doc/posix-functions/rindex.texi.
3425         * doc/pastposix-functions/scalb.texi: Renamed from
3426         doc/posix-functions/scalb.texi.
3427         * doc/pastposix-functions/setcontext.texi: Renamed from
3428         doc/posix-functions/setcontext.texi.
3429         * doc/pastposix-functions/swapcontext.texi: Renamed from
3430         doc/posix-functions/swapcontext.texi.
3431         * doc/pastposix-functions/ualarm.texi: Renamed from
3432         doc/posix-functions/ualarm.texi.
3433         * doc/pastposix-functions/usleep.texi: Renamed from
3434         doc/posix-functions/usleep.texi.
3435         * doc/pastposix-functions/vfork.texi: Renamed from
3436         doc/posix-functions/vfork.texi.
3437         * doc/pastposix-functions/wcswcs.texi: Renamed from
3438         doc/posix-functions/wcswcs.texi.
3439         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
3440         (Function Substitutes): Update.
3441
3442 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3443
3444         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
3445         m4/strerror.m4.
3446
3447 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3448             Bruno Haible  <bruno@clisp.org>
3449
3450         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
3451
3452 2008-12-13  Bruno Haible  <bruno@clisp.org>
3453
3454         * modules/strtoull (Depends-on): Remove unistd.
3455
3456 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3457
3458         * modules/strtoull (Depends-on): Add stdlib.
3459
3460 2008-12-11  Simon Josefsson  <simon@josefsson.org>
3461
3462         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
3463
3464 2008-12-10  Jim Meyering  <meyering@redhat.com>
3465
3466         gl_ASSERT: don't say assertions are disabled when they're not
3467         * m4/assert.m4 (gl_ASSERT): Do not make configure report
3468         "checking whether to enable assertions... no", when they are in
3469         fact enabled.  This is solely a bug in the output of configure.
3470         In spite of saying "no", NDEBUG was not defined in that case.
3471         Also, as noted by Eric Blake, leave assertions enabled upon
3472         --enable-assert=INVALID.
3473
3474 2008-12-10  Bruno Haible  <bruno@clisp.org>
3475
3476         Change MODULES.html to refer to POSIX:2008 where possible.
3477         * MODULES.html.sh (POSIX2008_URL): New variable.
3478         (posix_headers): Remove sys/timeb, ucontext.
3479         (posix2001_headers): New variable.
3480         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
3481         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
3482         index, makecontext, mktemp, pthread_attr_getstackaddr,
3483         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
3484         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
3485         (posix2001_functions): New variable.
3486         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
3487         otherwise.
3488
3489 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3490
3491         add missing include to parse-duration.c
3492         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
3493         * modules/parse-duration (Depends-on): Add xalloc.
3494
3495         fix sed script reading maint.mk
3496         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
3497         (syntax-check-rules): Use it.
3498
3499 2008-12-09  Bruno Haible  <bruno@clisp.org>
3500
3501         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
3502         MacOS X 10.4/PowerPC.
3503         Reported by Simon Josefsson.
3504
3505 2008-12-08  Jim Meyering  <meyering@redhat.com>
3506
3507         work around mingw's lack of some S_IF definitions
3508         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
3509         Reported by Simon Josefsson.
3510
3511 2008-12-08  Bruno Haible  <bruno@clisp.org>
3512
3513         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
3514         applied to variables. Needed on MacOS X 10.4/PowerPC.
3515         Reported by Simon Josefsson.
3516
3517 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
3518         and Eric Blake  <ebb9@byu.net>
3519
3520         assert: honor --enable-assert
3521         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
3522         order to honor --enable-assert, rather than treating it as a
3523         synonym for --disable-assert.
3524
3525 2008-12-08  Jim Meyering  <meyering@redhat.com>
3526
3527         * lib/posixtm.c: Remove now-useless declaration of mktime.
3528
3529         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
3530
3531 2008-12-07  Bruno Haible  <bruno@clisp.org>
3532
3533         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
3534         test_once): Mark functions as static.
3535         * tests/test-tls.c (test_tls): Likewise.
3536
3537 2008-12-07  Bruno Haible  <bruno@clisp.org>
3538
3539         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
3540         iconv_register_autodetect.
3541
3542 2008-12-07  Jim Meyering  <meyering@redhat.com>
3543
3544         posixtm.c: avoid a warning
3545         * lib/posixtm.c (posixtime): Don't initialize tm0.
3546         It's no longer needed to placate gcc4's -Wuninitialized,
3547         and the attempt to placate would elicit a new warning.
3548
3549         unicodeio.c: mark unused parameters
3550         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
3551         (fallback_failure_callback): Likewise.
3552
3553 2008-12-07  Bruno Haible  <bruno@clisp.org>
3554
3555         * gnulib-tool (func_create_testdir): When building the tests
3556         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
3557         Reported by Simon Josefsson.
3558
3559 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3560
3561         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
3562
3563 2008-12-06  Bruno Haible  <bruno@clisp.org>
3564
3565         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
3566         Suggested by Eric Blake.
3567
3568 2008-12-06  Bruno Haible  <bruno@clisp.org>
3569
3570         Fix a c-stack test failure on MacOS X.
3571         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
3572         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
3573         handler for SIGBUS as well.
3574         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
3575         install a signal handler for SIGBUS as well.
3576         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
3577
3578 2008-12-06  Bruno Haible  <bruno@clisp.org>
3579
3580         Advocacy documentation.
3581         * doc/gnulib-intro.texi (Benefits): New section.
3582         * doc/gnulib.texi: Update.
3583
3584 2008-12-06  Bruno Haible  <bruno@clisp.org>
3585
3586         Document the 'manywarnings' module.
3587         * doc/manywarnings.texi: New file.
3588         * doc/gnulib.texi: Include it.
3589
3590 2008-12-05  Eric Blake  <ebb9@byu.net>
3591
3592         tests: silence some gcc warnings
3593         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
3594         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
3595         type mismatches.
3596
3597 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3598             Bruno Haible  <bruno@clisp.org>
3599
3600         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
3601
3602 2008-11-29  Jim Meyering  <meyering@redhat.com>
3603
3604         unicodeio.c: mark unused parameters
3605         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
3606         (fallback_failure_callback): Likewise.
3607
3608         fts: fix a thinko
3609         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
3610         (set_stat_type): Return S_IF*-valued "type" directly.
3611         Prompted by James Youngman's spotting a related bug.
3612         Confirmed by further testing through find.
3613
3614         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
3615         * lib/fts.c (D_TYPE): Define.
3616         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
3617         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
3618         (s_ifmt_shift_bits): New function.
3619         (set_stat_type): New function.
3620         (fts_build): When not calling fts_stat, call set_stat_type
3621         to propagate dirent.d_type info to fts_read caller.
3622         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
3623         fts_statp->st_mode type information may be valid.
3624
3625 2008-11-28  Simon Josefsson  <simon@josefsson.org>
3626
3627         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
3628         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
3629         <sds@gnu.org>.
3630
3631 2008-11-20  Bruno Haible  <bruno@clisp.org>
3632
3633         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
3634         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
3635         INCLUDE_NEXT.
3636         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
3637         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
3638         * modules/math (Makefile.am): Substitute
3639         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
3640         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
3641
3642 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
3643             Bruno Haible  <bruno@clisp.org>
3644
3645         * lib/stdint.in.h: Define all type macros so that their expansion is
3646         a single typedef'ed token. Fixes a compilation failure in Boost which
3647         does "using ::int8_t;".
3648
3649 2008-11-18  Simon Josefsson  <simon@josefsson.org>
3650
3651         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
3652         gl_MANYWARN_ALL_GCC.
3653         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
3654         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
3655         * modules/manywarnings: New file.
3656         * MODULES.html.sh: Mention manywarnings module.
3657
3658 2008-11-18  Bruno Haible  <bruno@clisp.org>
3659
3660         * doc/gnulib-tool.texi (Unit tests): New section.
3661
3662 2008-11-18  Simon Josefsson  <simon@josefsson.org>
3663
3664         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
3665         paths like 'lib/po/foo.po'.
3666
3667 2008-11-17  Simon Josefsson  <simon@josefsson.org>
3668
3669         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
3670         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
3671
3672 2008-11-17  Simon Josefsson  <simon@josefsson.org>
3673
3674         * m4/warnings.m4: Use CPPFLAGS to really check whether the
3675         parameter works.
3676
3677 2008-11-17  Simon Josefsson  <simon@josefsson.org>
3678
3679         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
3680
3681 2008-11-17  Bruce Korb  <bkorb@gnu.org>
3682
3683         * modules/parse-duration-tests: New file.
3684         * tests/test-parse-duration.sh: New file.
3685         * tests/test-parse-duration.c: New file.
3686
3687         New module 'parse-duration'.
3688         * lib/parse-duration.h: New file.
3689         * lib/parse-duration.c: New file.
3690         * modules/parse-duration: New file.
3691
3692 2008-11-17  Bruno Haible  <bruno@clisp.org>
3693
3694         * tests/test-select-out.sh: Comment out the first pipe test.
3695         Reported by Simon Josefsson.
3696
3697 2008-11-17  Bruno Haible  <bruno@clisp.org>
3698
3699         * modules/getaddrinfo (Depends-on): Add servent, hostent.
3700         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
3701         gl_HOSTENT.
3702
3703 2008-11-17  Bruno Haible  <bruno@clisp.org>
3704
3705         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
3706         -lnetwork and -lnet. Needed for Haiku and BeOS.
3707
3708 2008-11-16  Bruno Haible  <bruno@clisp.org>
3709
3710         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
3711
3712 2008-11-16  Bruno Haible  <bruno@clisp.org>
3713
3714         Avoid test failure on Haiku.
3715         * tests/test-fsync.c: Include <errno.h>.
3716         (main): Don't require that fsync (0) fails.
3717
3718 2008-11-15  Bruno Haible  <bruno@clisp.org>
3719
3720         New module 'hostent'.
3721         * modules/hostent: New file.
3722         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
3723
3724 2008-11-15  Bruno Haible  <bruno@clisp.org>
3725
3726         New module 'servent'.
3727         * modules/servent: New file.
3728         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
3729
3730 2008-11-15  Bruno Haible  <bruno@clisp.org>
3731
3732         Avoid generating same test program with two different rules.
3733         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
3734         test-frexp to test-frexp-nolibm.
3735         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
3736         test-frexpl to test-frexpl-nolibm.
3737
3738 2008-11-15  Bruno Haible  <bruno@clisp.org>
3739
3740         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
3741         $(FREXPL_LIBM).
3742
3743 2008-11-15  Bruno Haible  <bruno@clisp.org>
3744
3745         * lib/netdb.in.h: Activate the definitions also when the system's
3746         <netdb.h> has 'struct addrinfo'.
3747         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
3748         EAI_OVERFLOW or AI_NUMERICSERV.
3749         * doc/posix-headers/netdb.texi: Document the problem.
3750
3751 2008-11-15  Bruno Haible  <bruno@clisp.org>
3752
3753         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
3754
3755         Make the 'sched' module work on platforms where <sched.h> exists but
3756         is incomplete (such as Haiku).
3757         * lib/sched.in.h; Include the system's <sched.h> if it exists.
3758         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
3759         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
3760         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
3761         HAVE_STRUCT_SCHED_PARAM.
3762         * modules/sched (Depends-on): Add include_next.
3763         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
3764         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
3765         * doc/posix-headers/sched.texi: Document the issue.
3766
3767 2008-11-13  Jim Meyering  <meyering@redhat.com>
3768
3769         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
3770         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
3771         test would fail due to the difference in the Report bugs to ...
3772         line.  The expected address is empty, "<>", while the actual
3773         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
3774
3775 2008-11-12  Bruno Haible  <bruno@clisp.org>
3776
3777         lstat: don't compile lstat.c on systems lacking lstat
3778         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
3779         which don't have lstat; this is handled by lib/sys_stat.in.h already.
3780         Reported by Daniel P. Berrange via Jim Meyering.
3781
3782 2008-11-12  Jim Meyering  <meyering@redhat.com>
3783
3784         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
3785
3786 2008-11-12  Simon Josefsson  <simon@josefsson.org>
3787
3788         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
3789         instead.
3790
3791 2008-11-12  Bruno Haible  <bruno@clisp.org>
3792
3793         * lib/unicodeio.c: Include unistr.h.
3794         (utf8_wctomb): Remove function.
3795         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
3796
3797 2008-11-12  Simon Josefsson  <simon@josefsson.org>
3798
3799         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
3800         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
3801         <bruno@clisp.org>.
3802         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
3803
3804 2008-11-12  Simon Josefsson  <simon@josefsson.org>
3805
3806         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
3807         * doc/gnulib.texi: Add section for warnings.
3808
3809 2008-11-11  Bruno Haible  <bruno@clisp.org>
3810
3811         * lib/sockets.h: Add a comment.
3812
3813 2008-11-11  Karl Berry  <karl@gnu.org>
3814
3815         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
3816
3817 2008-11-11  Eric Blake  <ebb9@byu.net>
3818
3819         fdl.texi: avoid git symlinks
3820         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
3821
3822 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3823
3824         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
3825
3826 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3827
3828         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
3829         (gl_WARN_ADD): Substitute $2 if literal.
3830
3831 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3832
3833         * m4/warning.m4: Remove.
3834
3835 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3836
3837         * m4/warnings.m4: Almost complete rewrite. :-)
3838
3839 2008-11-10  Simon Josefsson  <simon@josefsson.org>
3840
3841         * modules/warnings: New module.
3842         * m4/warnings.m4: New file.
3843         * MODULES.html.sh: Mention warnings module.
3844         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
3845         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3846
3847 2008-11-10  Eric Blake  <ebb9@byu.net>
3848
3849         fdl.texi: make a symlink to the latest version
3850         * doc/standards.texi: Revert today's earlier change.
3851         * doc/fdl-1.2.texi: Rename from old fdl.texi...
3852         * doc/fdl.texi: ...and replace this with a symlink to the newer
3853         fdl-1.3.texi.
3854
3855 2008-11-10  Bruno Haible  <bruno@clisp.org>
3856
3857         * tests/test-select-fd.c (main): Accept the result file name as fourth
3858         argument.
3859         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
3860         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
3861
3862 2008-11-10  Bruno Haible  <bruno@clisp.org>
3863
3864         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
3865         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
3866         as autoconf-substituted macros.
3867         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
3868         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
3869         gl_NETDB_H_DEFAULTS. Set these variables.
3870         * modules/netdb (Makefile.am): Substitute these variables.
3871
3872 2008-11-10  Eric Blake  <ebb9@byu.net>
3873
3874         standards.texi: include correct file for FDL 1.3
3875         * doc/standards.texi (GNU Free Documentation License): Change
3876         include file to pull in FDL 1.3, not 1.2.
3877
3878         fdl.texi: revert accidental change to license
3879         * doc/fdl.texi: This is FDL 1.2, not 1.3.
3880
3881 2008-11-10  Bruno Haible  <bruno@clisp.org>
3882
3883         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
3884         cross-compiling guesses also when the native compile gives no result.
3885
3886 2008-11-10  Bruno Haible  <bruno@clisp.org>
3887
3888         * lib/spawni.c (__spawni): Force variable into the stack.
3889
3890 2008-11-10  Bruno Haible  <bruno@clisp.org>
3891
3892         Add support for Haiku.
3893         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
3894         glibc and BeOS, but also on Haiku.
3895         * lib/fpurge.c (fpurge): Likewise.
3896         * lib/freadable.c (freadable): Likewise.
3897         * lib/freadahead.c (freadahead): Likewise.
3898         * lib/freading.c (freading): Likewise.
3899         * lib/freadptr.c (freadptr): Likewise.
3900         * lib/freadseek.c (freadptrinc): Likewise.
3901         * lib/fseeko.c (rpl_fseeko): Likewise.
3902         * lib/fseterr.c (fseterr): Likewise.
3903         * lib/fwritable.c (fwritable): Likewise.
3904         * lib/fwriting.c (fwriting): Likewise.
3905         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
3906
3907 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
3908
3909         * lib/config.charset: Treat Haiku like BeOS.
3910
3911 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
3912
3913         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
3914         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
3915
3916 2008-11-08  Bruno Haible  <bruno@clisp.org>
3917
3918         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
3919         AC_CACHE_CHECK.
3920
3921 2008-11-08  Bruno Haible  <bruno@clisp.org>
3922
3923         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
3924
3925 2008-11-08  Bruno Haible  <bruno@clisp.org>
3926
3927         * tests/test-select-fd.c: New file.
3928         * tests/test-select-in.sh: New file.
3929         * tests/test-select-out.sh: New file.
3930         * tests/test-select-stdin.c: New file.
3931         * modules/select-tests (Files): Add the new files.
3932         (Depends-on): Add gettimeofday.
3933         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
3934         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
3935         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
3936
3937 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
3938             Bruno Haible  <bruno@clisp.org>
3939
3940         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
3941
3942 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
3943
3944         * build-aux/pmccabe2html: Added support for C++ source files.
3945
3946 2008-11-05  Ben Pfaff  <blp@gnu.org>
3947
3948         Fix lib/close.c build on Windows.
3949         * modules/close (Files): Add lib/w32sock.h.
3950
3951 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
3952
3953         Accept Bison's NEWS format.
3954         * build-aux/announce-gen (print_news_deltas): Tweak
3955         $re_prefix.
3956
3957 2008-11-04  Bruno Haible  <bruno@clisp.org>
3958
3959         * modules/random_r (Maintainer): Add glibc.
3960
3961 2008-11-04  Simon Josefsson  <simon@josefsson.org>
3962
3963         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
3964         by karl@freefriends.org (Karl Berry).
3965         * doc/alloca.texi: Likewise.
3966         * doc/c-ctype.texi: Likewise.
3967         * doc/c-strcase.texi: Likewise.
3968         * doc/c-strcaseeq.texi: Likewise.
3969         * doc/c-strcasestr.texi: Likewise.
3970         * doc/c-strstr.texi: Likewise.
3971         * doc/c-strtod.texi: Likewise.
3972         * doc/c-strtold.texi: Likewise.
3973         * doc/ctime.texi: Likewise.
3974         * doc/error.texi: Likewise.
3975         * doc/fdl.texi: Likewise.
3976         * doc/gcd.texi: Likewise.
3977         * doc/getdate.texi: Likewise.
3978         * doc/gnulib-intro.texi: Likewise.
3979         * doc/gnulib-tool.texi: Likewise.
3980         * doc/gnulib.texi: Likewise.
3981         * doc/inet_ntoa.texi: Likewise.
3982         * doc/maintain.texi: Likewise.
3983         * doc/make-stds.texi: Likewise.
3984         * doc/quote.texi: Likewise.
3985         * doc/regexprops-generic.texi: Likewise.
3986         * doc/standards.texi: Likewise.
3987         * doc/verify.texi: Likewise.
3988         * doc/visibility.texi: Likewise.
3989         * doc/gnulib.texi (GNU Free Documentation License): Include
3990         fdl-1.3.texi instead of fdl.texi.
3991
3992 2008-11-04  Simon Josefsson  <simon@josefsson.org>
3993
3994         * doc/fdl-1.3.texi: New file, from
3995         <http://www.gnu.org/licenses/fdl-1.3.texi>.
3996         * modules/fdl-1.3: Add.
3997         * MODULES.html.sh: Add fdl-1.3.
3998
3999 2008-11-03  Bruno Haible  <bruno@clisp.org>
4000
4001         Make determination of absolute name of header file work with AIX xlc.
4002         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
4003         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
4004         preprocessing.
4005         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
4006         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
4007
4008 2008-11-03  Simon Josefsson  <simon@josefsson.org>
4009
4010         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
4011         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
4012         <ludo@gnu.org>.
4013
4014 2008-11-02  Bruno Haible  <bruno@clisp.org>
4015
4016         Mark 'strpbrk' obsolete.
4017         * modules/strpbrk (Status, Notice): New sections.
4018         * modules/strtok_r (Depends-on): Add strpbrk.
4019
4020 2008-11-02  Bruno Haible  <bruno@clisp.org>
4021
4022         Mark 'strdup' obsolete.
4023         * modules/strdup (Status, Notice): New sections.
4024         * modules/findprog (Depends-on): Add strdup.
4025         * modules/getaddrinfo (Depends-on): Likewise.
4026         * modules/localename (Depends-on): Likewise.
4027         * modules/relocatable-lib (Depends-on): Likewise.
4028         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
4029         * modules/relocatable-prog (Depends-on): Likewise.
4030         * modules/trim (Depends-on): Likewise.
4031         * modules/unictype/gen-ctype (Depends-on): Likewise.
4032         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
4033
4034 2008-11-02  Bruno Haible  <bruno@clisp.org>
4035
4036         Mark 'strcspn' obsolete.
4037         * modules/strcspn (Status, Notice): New sections.
4038
4039 2008-11-02  Bruno Haible  <bruno@clisp.org>
4040
4041         Mark 'rmdir' obsolete.
4042         * modules/rmdir (Status, Notice): New sections.
4043         * modules/clean-temp (Depends-on): Add rmdir.
4044         * modules/openat (Depends-on): Likewise.
4045
4046 2008-11-02  Bruno Haible  <bruno@clisp.org>
4047
4048         Mark 'raise' obsolete.
4049         * modules/raise (Status, Notice): New sections.
4050         (Include): Specify <signal.h>.
4051         * modules/stdio (Depends-on): Add raise.
4052         * modules/write (Depends-on): Likewise.
4053
4054 2008-11-02  Bruno Haible  <bruno@clisp.org>
4055
4056         Mark 'memset' obsolete.
4057         * modules/memset (Status, Notice): New sections.
4058
4059 2008-11-02  Bruno Haible  <bruno@clisp.org>
4060
4061         Mark 'memmove' obsolete.
4062         * modules/memmove (Status, Notice): New sections.
4063         * modules/argp (Depends-on): Add memmove.
4064         * modules/argz (Depends-on): Likewise.
4065         * modules/canonicalize (Depends-on): Likewise.
4066         * modules/canonicalize-lgpl (Depends-on): Likewise.
4067         * modules/fts (Depends-on): Likewise.
4068         * modules/getcwd (Depends-on): Likewise.
4069         * modules/human (Depends-on): Likewise.
4070         * modules/regex (Depends-on): Likewise.
4071         * modules/striconveh (Depends-on): Likewise.
4072         * modules/trim (Depends-on): Likewise.
4073         * modules/unistr/u8-move (Depends-on): Likewise.
4074         * modules/unistr/u16-move (Depends-on): Likewise.
4075         * modules/unistr/u32-move (Depends-on): Likewise.
4076
4077 2008-11-02  Bruno Haible  <bruno@clisp.org>
4078
4079         Mark 'memcpy' obsolete.
4080         * modules/memcpy (Status, Notice): New sections.
4081
4082 2008-11-02  Bruno Haible  <bruno@clisp.org>
4083
4084         Mark 'memcmp' obsolete.
4085         * modules/memcmp (Status, Notice): New sections.
4086         * modules/argmatch (Depends-on): Add memchr.
4087         * modules/backupfile (Depends-on): Likewise.
4088         * modules/c-strcasestr (Depends-on): Likewise.
4089         * modules/crypto/des (Depends-on): Likewise.
4090         * modules/csharpcomp (Depends-on): Likewise.
4091         * modules/fnmatch (Depends-on): Likewise.
4092         * modules/git-merge-changelog (Depends-on): Likewise.
4093         * modules/isnand (Depends-on): Likewise.
4094         * modules/isnand-nolibm (Depends-on): Likewise.
4095         * modules/isnanf (Depends-on): Likewise.
4096         * modules/isnanf-nolibm (Depends-on): Likewise.
4097         * modules/isnanl (Depends-on): Likewise.
4098         * modules/isnanl-nolibm (Depends-on): Likewise.
4099         * modules/mbchar (Depends-on): Likewise.
4100         * modules/memcoll (Depends-on): Likewise.
4101         * modules/quotearg (Depends-on): Likewise.
4102         * modules/regex (Depends-on): Likewise.
4103         * modules/relocatable-prog (Depends-on): Likewise.
4104         * modules/same (Depends-on): Likewise.
4105         * modules/signbit (Depends-on): Likewise.
4106         * modules/strcasestr-simple (Depends-on): Likewise.
4107         * modules/unictype/gen-ctype (Depends-on): Likewise.
4108         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
4109         * modules/uniname/uniname (Depends-on): Likewise.
4110         * modules/unistr/u8-cmp (Depends-on): Likewise.
4111
4112 2008-11-02  Bruno Haible  <bruno@clisp.org>
4113
4114         Mark 'memchr' obsolete.
4115         * modules/memchr (Status, Notice): New sections.
4116         * modules/argp (Depends-on): Add memchr.
4117         * modules/base64 (Depends-on): Likewise.
4118         * modules/c-strcasestr (Depends-on): Likewise.
4119         * modules/chdir-long (Depends-on): Likewise.
4120         * modules/fnmatch (Depends-on): Likewise.
4121         * modules/getsubopt (Depends-on): Likewise.
4122         * modules/git-merge-changelog (Depends-on): Likewise.
4123         * modules/glob (Depends-on): Likewise.
4124         * modules/strcasestr-simple (Depends-on): Likewise.
4125         * modules/strnlen (Depends-on): Likewise.
4126
4127 2008-11-02  Bruno Haible  <bruno@clisp.org>
4128
4129         Mark 'atexit' obsolete.
4130         * modules/atexit (Status, Notice): New sections.
4131         * modules/chdir-long (Depends-on): Add atexit.
4132         * modules/wait-process (Depends-on): Likewise.
4133
4134 2008-11-02  Bruno Haible  <bruno@clisp.org>
4135
4136         * gnulib-tool: New option --with-obsolete.
4137         (func_usage): Document it.
4138         (func_modules_transitive_closure): Drop obsolete dependencies if
4139         incobsolete is not true.
4140         (func_import): Read and save the incobsolete variable to the cache.
4141
4142 2008-11-02  Bruno Haible  <bruno@clisp.org>
4143
4144         * modules/TEMPLATE-EXTENDED: New field 'Status'.
4145         * gnulib-tool: New option --extract-status.
4146         (func_usage): Document it.
4147         (sed_extract_prog): Recognize it.
4148         (func_get_status): New function.
4149
4150 2008-10-30  Simon Josefsson  <simon@josefsson.org>
4151
4152         * modules/sockets (License): Change from LGPL to LGPLv2+.
4153
4154 2008-10-28  Simon Josefsson  <simon@josefsson.org>
4155
4156         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
4157
4158 2008-10-28  Simon Josefsson  <simon@josefsson.org>
4159
4160         * MODULES.html.sh (Support for systems lacking POSIX:2001):
4161         Mention times and sys_times.
4162         * modules/sys_times, modules/sys_times-tests: New modules.
4163         * modules/times, modules/times-tests: Likewise
4164         * m4/sys_times_h.m4: New file.
4165         * lib/sys_times.in.h: Likewise
4166         * lib/times.c: Likewise.
4167         * tests/test-sys_times.c: Likewise.
4168         * tests/test-times.c: Likewise.
4169         * doc/posix-headers/sys_times.texi: Update.
4170         * doc/posix-functions/times.texi: Update.
4171
4172 2008-10-28  Jim Meyering  <meyering@redhat.com>
4173
4174         * modules/tempname (Depends-on): Add lstat.
4175
4176         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
4177
4178 2008-10-28  Simon Josefsson  <simon@josefsson.org>
4179
4180         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
4181         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
4182         using idiom used elsewhere in gnulib.
4183
4184 2008-10-27  Jim Meyering  <meyering@redhat.com>
4185
4186         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
4187
4188 2008-10-27  Simon Josefsson  <simon@josefsson.org>
4189
4190         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
4191         TESTS_ENVIRONMENT, for shell scripts that needs to call built
4192         programs.
4193         * tests/test-argp-2.sh: Use $EXEEXT when needed.
4194
4195 2008-10-27  Simon Josefsson  <simon@josefsson.org>
4196
4197         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
4198
4199 2008-10-27  Bruno Haible  <bruno@clisp.org>
4200
4201         * tests/test-lstat.c: Include <stdio.h>.
4202
4203 2008-10-27  Simon Josefsson  <simon@josefsson.org>
4204
4205         * modules/lstat-tests: New module.
4206         * tests/test-lstat.c: New file.
4207
4208 2008-10-26  Jim Meyering  <meyering@redhat.com>
4209
4210         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
4211
4212 2008-10-26  Simon Josefsson  <simon@josefsson.org>
4213             Bruno Haible  <bruno@clisp.org>
4214
4215         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
4216         * modules/configmake (Include): Add a note that the include must come
4217         after all system headers.
4218         * lib/javaversion.c: Include configmake.h after all other includes.
4219
4220 2008-10-26  Bruno Haible  <bruno@clisp.org>
4221
4222         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
4223         HAVE_STRUCT_RANDOM_DATA to 1.
4224         (gl_STDLIB_H): Simplify.
4225
4226 2008-10-26  Simon Josefsson  <simon@josefsson.org>
4227
4228         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
4229         substitute HAVE_STRUCT_RANDOM_DATA.
4230         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
4231         random_data.
4232         * modules/stdlib (Makefile.am): Substitute
4233         HAVE_STRUCT_RANDOM_DATA.
4234
4235 2008-10-26  Simon Josefsson  <simon@josefsson.org>
4236
4237         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
4238         * doc/gnulib-intro.texi (Copyright): Likewise.
4239
4240 2008-10-26  Simon Josefsson  <simon@josefsson.org>
4241
4242         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
4243         findings.
4244
4245 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
4246             Bruno Haible  <bruno@clisp.org>
4247
4248         * lib/unistd.in.h: Include <winsock2.h>.
4249         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
4250         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
4251         Provide dummy declarations.
4252         (gethostname): Override.
4253         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
4254         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
4255         gl_PREREQ_SYS_H_WINSOCK2.
4256         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
4257         * doc/posix-functions/gethostname.texi: More details.
4258
4259 2008-10-25  Bruno Haible  <bruno@clisp.org>
4260
4261         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
4262         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
4263         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
4264
4265         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
4266         here ...
4267         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
4268         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
4269         gl_UNISTD_H_DEFAULTS.
4270
4271 2008-10-25  Eric Blake  <ebb9@byu.net>
4272
4273         signbit: avoid spurious compiler failure
4274         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
4275         declarations inside function.
4276
4277 2008-10-24  Simon Josefsson  <simon@josefsson.org>
4278             Bruno Haible  <bruno@clisp.org>
4279
4280         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
4281         * modules/random_r (Depends-on): Add stdint.
4282
4283 2008-10-24  Bruno Haible  <bruno@clisp.org>
4284
4285         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
4286         Eggert.
4287         * modules/strerror (License): Likewise.
4288
4289 2008-10-24  Jim Meyering  <meyering@redhat.com>
4290
4291         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
4292         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
4293
4294 2008-10-24  Eric Blake  <ebb9@byu.net>
4295
4296         getgroups: fix compilation when getgroups is available
4297         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
4298         but with <config.h> override of getgroups disabled.
4299
4300 2008-10-24  Simon Josefsson  <simon@josefsson.org>
4301
4302         * doc/gnulib.texi (Header files): Add note about C++ problems.
4303         Explained by Bruno Haible <bruno@clisp.org>.
4304
4305 2008-10-23  Bruno Haible  <bruno@clisp.org>
4306
4307         Define a dummy SA_NODEFER macro on Interix.
4308         * lib/signal.in.h (SA_NODEFER): Define fallback.
4309         Reported by Aleksey Cheusov <cheusov@tut.by> via
4310         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
4311
4312 2008-10-23  Bruno Haible  <bruno@clisp.org>
4313
4314         * modules/freadahead (License): Change to LGPLv2+.
4315         Suggested by Simon Josefsson.
4316
4317 2008-10-23  Jim Meyering  <meyering@redhat.com>
4318
4319         random_r: new module
4320         * modules/random_r: New file.
4321         * m4/random_r.m4: New file.
4322         * lib/random_r.c: New file, from glibc.
4323         * modules/random_r-tests: New file.
4324         * tests/test-random_r.c: New file.
4325         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
4326          Declare.
4327         (RAND_MAX): Define.
4328         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
4329         * modules/stdlib: Substitute them, too.
4330         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
4331         * doc/glibc-functions/initstate_r.texi: Mention the new module.
4332         * doc/glibc-functions/random_r.texi: Likewise.
4333         * doc/glibc-functions/setstate_r.texi: Likewise.
4334         * doc/glibc-functions/srandom_r.texi: Likewise.
4335         * config/srclist.txt: Mention it.
4336
4337 2008-10-23  David Lutterkort  <lutter@redhat.com>
4338
4339         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
4340         link requirement
4341
4342 2008-10-23  Jim Meyering  <meyering@redhat.com>
4343
4344         selinux-h: mark parameters of stub functions as intentionally unused
4345         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
4346         * lib/se-context.in.h: Likewise.
4347
4348 2008-10-22  Simon Josefsson  <simon@josefsson.org>
4349
4350         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
4351
4352 2008-10-22  Simon Josefsson  <simon@josefsson.org>
4353
4354         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
4355
4356 2008-10-22  Eric Blake  <ebb9@byu.net>
4357
4358         glthread/thread: avoid compiler warning
4359         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
4360         Add unreachable abort to silence compiler.
4361
4362 2008-10-22  Eric Blake  <ebb9@byu.net>
4363
4364         netdb: also supply struct addrinfo for cygwin 1.5.x
4365         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
4366         older cygwin.
4367         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
4368         cygwin.
4369         * doc/posix-headers/netdb.texi (netdb.h): Document this.
4370
4371 2008-10-22  Bruno Haible  <bruno@clisp.org>
4372
4373         * users.txt: Update entry about pspp.
4374
4375 2008-10-21  Bruno Haible  <bruno@clisp.org>
4376
4377         Simplification.
4378         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
4379         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
4380
4381         Simplification.
4382         * lib/ioctl.c (ioctl): Don't undefine.
4383         * lib/socket.c (socket): Don't undefine.
4384
4385         Remove unused module indicator macros.
4386         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
4387         GNULIB_$1 as a C macro.
4388
4389         * doc/posix-functions/close.texi: Undo last change.
4390         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
4391         Windows platforms.
4392
4393 2008-10-21  Bruno Haible  <bruno@clisp.org>
4394
4395         Add gethostname() declaration to <unistd.h>.
4396         * lib/unistd.in.h (gethostname): New declaration.
4397         * lib/gethostname.c: Include <unistd.h>.
4398         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
4399         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
4400         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
4401         and HAVE_GETHOSTNAME.
4402         * modules/gethostname (Depends-on): Add unistd.
4403         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4404         (Include): Specify <unistd.h>.
4405         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
4406         HAVE_GETHOSTNAME.
4407         * tests/test-gethostname.c: Include <unistd.h> first.
4408
4409 2008-10-21  Bruno Haible  <bruno@clisp.org>
4410
4411         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
4412         * modules/select-tests (Depends-on): Likewise.
4413         Reported by Simon Josefsson.
4414
4415 2008-10-21  Simon Josefsson  <simon@josefsson.org>
4416
4417         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
4418         * lib/accept.c: New file, based on winsock.c.
4419         * lib/bind.c: New file, based on winsock.c.
4420         * lib/connect.c: New file, based on winsock.c.
4421         * lib/getpeername.c: New file, based on winsock.c.
4422         * lib/getsockname.c: New file, based on winsock.c.
4423         * lib/getsockopt.c: New file, based on winsock.c.
4424         * lib/ioctl.c: New file, based on winsock.c.
4425         * lib/listen.c: New file, based on winsock.c.
4426         * lib/recv.c: New file, based on winsock.c.
4427         * lib/recvfrom.c: New file, based on winsock.c.
4428         * lib/send.c: New file, based on winsock.c.
4429         * lib/sendto.c: New file, based on winsock.c.
4430         * lib/setsockopt.c: New file, based on winsock.c.
4431         * lib/shutdown.c: New file, based on winsock.c.
4432         * lib/socket.c: New file, based on winsock.c.
4433         * lib/w32sock.h: New file, based on winsock.c.
4434         * lib/winsock.c: Remove file.
4435         * modules/accept: Likewise.
4436         * modules/bind: Likewise.
4437         * modules/connect: Likewise.
4438         * modules/getpeername: Likewise.
4439         * modules/getsockname: Likewise.
4440         * modules/getsockopt: Likewise.
4441         * modules/ioctl: Likewise.
4442         * modules/listen: Likewise.
4443         * modules/recv: Likewise.
4444         * modules/recvfrom: Likewise.
4445         * modules/send: Likewise.
4446         * modules/sendto: Likewise.
4447         * modules/setsockopt: Likewise.
4448         * modules/shutdown: Likewise.
4449         * modules/socket: Use socket.c instead of winsock.c.
4450         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
4451         * doc/posix-functions/accept.texi: Doc fix.
4452         * doc/posix-functions/bind.texi: Doc fix.
4453         * doc/posix-functions/close.texi: Doc fix.
4454         * doc/posix-functions/connect.texi: Doc fix.
4455         * doc/posix-functions/getpeername.texi: Doc fix.
4456         * doc/posix-functions/getsockname.texi: Doc fix.
4457         * doc/posix-functions/getsockopt.texi: Doc fix.
4458         * doc/posix-functions/ioctl.texi: Doc fix.
4459         * doc/posix-functions/listen.texi: Doc fix.
4460         * doc/posix-functions/recv.texi: Doc fix.
4461         * doc/posix-functions/recvfrom.texi: Doc fix.
4462         * doc/posix-functions/send.texi: Doc fix.
4463         * doc/posix-functions/sendto.texi: Doc fix.
4464         * doc/posix-functions/setsockopt.texi: Doc fix.
4465         * doc/posix-functions/shutdown.texi: Doc fix.
4466         * doc/posix-functions/socket.texi: Doc fix.
4467
4468 2008-10-20  Bruno Haible  <bruno@clisp.org>
4469
4470         Take into account the role of SIGABRT_COMPAT on Windows 2008.
4471         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
4472         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
4473         as an alias for SIGABRT.
4474         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
4475         (sigaction): Map it to SIGABRT.
4476         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
4477
4478 2008-10-20  Bruno Haible  <bruno@clisp.org>
4479
4480         * lib/fts.c: Don't include lstat.h.
4481         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
4482
4483         Move the lstat() declaration to <sys/stat.h>.
4484         * lib/lstat.h: Remove file.
4485         * lib/sys_stat.in.h: Add special invocation convention.
4486         (lstat): New declaration.
4487         * lib/lstat.c (orig_lstat): New function.
4488         (rpl_lstat): Use orig_lstat instead of lstat.
4489         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
4490         AC_C_INLINE. Set REPLACE_LSTAT.
4491         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
4492         and REPLACE_LSTAT.
4493         * modules/lstat (Files): Remove lib/lstat.h.
4494         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
4495         (Include): Specify <sys/stat.h> instead of lstat.h.
4496         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
4497         REPLACE_LSTAT.
4498         * NEWS: Mention the change.
4499
4500 2008-10-20  Bruno Haible  <bruno@clisp.org>
4501
4502         * modules/posix_spawn-tests: New file.
4503         * tests/test-posix_spawn3.c: New file.
4504
4505 2008-10-20  Bruno Haible  <bruno@clisp.org>
4506
4507         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
4508         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
4509         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
4510         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
4511         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
4512
4513 2008-10-20  Bruno Haible  <bruno@clisp.org>
4514
4515         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
4516         of posix_spawn on AIX 5.3.
4517
4518 2008-10-20  Bruno Haible  <bruno@clisp.org>
4519
4520         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
4521
4522 2008-10-20  Bruno Haible  <bruno@clisp.org>
4523
4524         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
4525         of AC_LANG_PROGRAM.
4526
4527 2008-10-20  Simon Josefsson  <simon@josefsson.org>
4528
4529         * lib/netdb.in.h: Don't define GNU specific constants until they
4530         are supported or needed.  Reported by Bruno Haible
4531         <bruno@clisp.org>.
4532
4533 2008-10-20  Simon Josefsson  <simon@josefsson.org>
4534
4535         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
4536
4537 2008-10-20  Simon Josefsson  <simon@josefsson.org>
4538
4539         * lib/getaddrinfo.h: Remove file.
4540         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
4541         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
4542         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
4543         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
4544         * modules/netdb: Substitute GNULIB_GETADDRINFO.
4545         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
4546         * tests/test-getaddrinfo.c: Likewise.
4547         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
4548         * NEWS: Mention change.
4549
4550 2008-10-19  Bruno Haible  <bruno@clisp.org>
4551
4552         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
4553
4554 2008-10-19  Bruno Haible  <bruno@clisp.org>
4555
4556         * lib/wait-process.c: Include simply <sys/wait.h>.
4557         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
4558         WIFSTOPPED): Remove fallback definitions.
4559         * modules/wait-process (Depends-on): Add sys_wait.
4560
4561         New module 'sys_wait'.
4562         * modules/sys_wait: New file.
4563         * lib/sys_wait.in.h: New file, partially copied from
4564         lib/wait-process.c.
4565         * m4/sys_wait_h.m4: New file.
4566         * doc/posix-headers/sys_wait.texi: Mention the new module.
4567
4568 2008-10-19  Bruno Haible  <bruno@clisp.org>
4569
4570         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
4571
4572 2008-10-19  Bruno Haible  <bruno@clisp.org>
4573
4574         Assume that waitpid() fills an 'int' status, not a 'union wait'.
4575         * lib/wait-process.c (WAIT_T): Remove type.
4576         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
4577         (wait_subprocess): Update.
4578
4579 2008-10-19  Bruno Haible  <bruno@clisp.org>
4580
4581         New module 'atoll'.
4582         * modules/atoll: New file.
4583         * lib/stdlib.in.h (atoll): New declaration.
4584         * lib/atoll.c: New file, from glibc with modifications.
4585         * m4/atoll.m4: New file.
4586         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
4587         HAVE_ATOLL.
4588         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
4589         * doc/posix-functions/atoll.texi: Mention the new module.
4590
4591 2008-10-19  Bruno Haible  <bruno@clisp.org>
4592
4593         Add strtoull() declaration to <stdlib.h>.
4594         * lib/stdlib.in.h (strtoull): New declaration.
4595         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
4596         Set HAVE_STRTOULL.
4597         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
4598         HAVE_STRTOULL.
4599         * modules/strtoull (Depends-on): Add stdlib.
4600         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
4601         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
4602         HAVE_STRTOULL.
4603
4604 2008-10-19  Bruno Haible  <bruno@clisp.org>
4605
4606         Add strtoll() declaration to <stdlib.h>.
4607         * lib/stdlib.in.h (strtoll): New declaration.
4608         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
4609         Set HAVE_STRTOLL.
4610         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
4611         HAVE_STRTOLL.
4612         * modules/strtoll (Depends-on): Add stdlib.
4613         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
4614         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
4615
4616 2008-10-19  Bruno Haible  <bruno@clisp.org>
4617
4618         * modules/bcopy (Depends-on): Add strings.
4619         (Include): Specify <strings.h>.
4620
4621 2008-10-19  Bruno Haible  <bruno@clisp.org>
4622
4623         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
4624
4625 2008-10-19  Bruno Haible  <bruno@clisp.org>
4626
4627         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
4628         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
4629         mingw.
4630
4631 2008-10-19  Bruno Haible  <bruno@clisp.org>
4632
4633         * lib/atanl.c: Don't include isnanl.h.
4634         * lib/cosl.c: Likewise.
4635         * lib/ldexpl.c: Likewise.
4636         * lib/logl.c: Likewise.
4637         * lib/sinl.c: Likewise.
4638         * lib/sqrtl.c: Likewise.
4639         * lib/tanl.c: Likewise.
4640
4641         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
4642         * lib/isnanf.h: Remove file.
4643         * lib/isnand.h: Remove file.
4644         * lib/isnanl.h: Remove file.
4645         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
4646         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
4647         macros.
4648         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
4649         HAVE_ISNANF, don't define it as a C macro.
4650         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
4651         HAVE_ISNAND, don't define it as a C macro.
4652         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
4653         HAVE_ISNANL, don't define it as a C macro.
4654         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
4655         HAVE_ISNAN[FDL].
4656         * modules/isnanf (Files): Remove lib/isnanf.h.
4657         (Depends-on): Add math.
4658         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
4659         (Include): Specify <math.h> instead of isnanf.h.
4660         * modules/isnand (Files): Remove lib/isnand.h.
4661         (Depends-on): Add math.
4662         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
4663         (Include): Specify <math.h> instead of isnand.h.
4664         * modules/isnanl (Files): Remove lib/isnanl.h.
4665         (Depends-on): Add math.
4666         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
4667         (Include): Specify <math.h> instead of isnanl.h.
4668         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
4669         HAVE_ISNAN[FDL].
4670         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
4671         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
4672         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
4673         * NEWS: Mention the change.
4674
4675 2008-10-18  Bruno Haible  <bruno@clisp.org>
4676
4677         Add getusershell(), setusershell(), endusershell() declarations to
4678         <unistd.h>.
4679         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
4680         declarations.
4681         * lib/getusershell.c: Include unistd.h.
4682         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
4683         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
4684         HAVE_GETUSERSHELL.
4685         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
4686         and HAVE_GETUSERSHELL.
4687         * modules/getusershell (Depends-on): Add unistd, extensions.
4688         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4689         (Include): Specify <unistd.h>.
4690         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
4691         HAVE_GETUSERSHELL.
4692
4693 2008-10-18  Bruno Haible  <bruno@clisp.org>
4694
4695         Add a getloadavg() declaration to <stdlib.h>.
4696         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
4697         getloadavg declaration.
4698         (getloadavg): New declaration.
4699         * lib/getloadavg.c: Include <stdlib.h> first.
4700         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
4701         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
4702         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
4703         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
4704         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
4705         * modules/getloadavg (Depends-on): Add stdlib, extensions.
4706         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
4707         (Include): Specify <stdlib.h>.
4708         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
4709         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
4710
4711 2008-10-18  Bruno Haible  <bruno@clisp.org>
4712
4713         * lib/dirchownmod.c: Don't include lchmod.h.
4714
4715         Move the lchmod() declaration to <sys/stat.h>.
4716         * lib/lchmod.h: Remove file.
4717         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
4718         (lchmod): New declaration, moved here from lib/lchown.h.
4719         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
4720         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
4721         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
4722         and HAVE_LCHMOD.
4723         * modules/lchmod (Files): Remove lib/lchmod.h.
4724         (Depends-on): Add sys_stat, extensions.
4725         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
4726         (Include): Specify <sys/stat.h> instead of lchmod.h.
4727         * modules/sys_stat (Depends-on): Add link-warning.
4728         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
4729         definition of GL_LINK_WARNING.
4730         * NEWS: Mention the change.
4731
4732 2008-10-18  Bruno Haible  <bruno@clisp.org>
4733
4734         * lib/fchdir.c: Don't include dirfd.h.
4735         * lib/fts.c: Likewise.
4736         * lib/getcwd.c: Likewise.
4737         * lib/glob.c: Likewise.
4738
4739         Move the dirfd() declaration to <dirent.h>.
4740         * lib/dirfd.h: Remove file.
4741         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
4742         (dirfd): New declaration.
4743         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
4744         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
4745         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
4746         HAVE_DECL_DIRFD.
4747         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
4748         HAVE_DECL_DIRFD.
4749         * modules/dirfd (Files): Remove lib/dirfd.h.
4750         (Depends-on): Add dirent, extensions.
4751         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
4752         (Include): Specify <dirent.h> instead of dirfd.h.
4753         * modules/dirent (Depends-on): Add link-warning.
4754         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
4755         definition of GL_LINK_WARNING.
4756         * NEWS: Mention the change.
4757
4758 2008-10-18  Bruno Haible  <bruno@clisp.org>
4759
4760         Move the euidaccess() declaration to <unistd.h>.
4761         * lib/euidaccess.h: Remove file.
4762         * lib/unistd.in.h (euidaccess): New declaration.
4763         * lib/euidaccess.c: Don't include euidaccess.h.
4764         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
4765         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
4766         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
4767         and HAVE_EUIDACCESS.
4768         * modules/euidaccess (Files): Remove lib/euidaccess.h.
4769         (Depends-on): Add unistd.
4770         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4771         (Include): Specify <unistd.h> instead of euidaccess.h.
4772         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
4773         HAVE_EUIDACCESS.
4774         * NEWS: Mention the change.
4775
4776 2008-10-18  Bruno Haible  <bruno@clisp.org>
4777
4778         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
4779
4780         Move the getdomainname() declaration to <unistd.h>.
4781         * lib/getdomainname.h: Remove file.
4782         * lib/unistd.in.h (getdomainname): New declaration.
4783         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
4784         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
4785         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
4786         HAVE_GETDOMAINNAME.
4787         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
4788         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
4789         * modules/getdomainname (Files): Remove lib/getdomainname.h.
4790         (Depends-on): Add unistd, extensions.
4791         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4792         (Includes): Specify <unistd.h> instead of getdomainname.h.
4793         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
4794         HAVE_GETDOMAINNAME.
4795         * NEWS: Mention the change.
4796
4797 2008-10-18  Bruno Haible  <bruno@clisp.org>
4798
4799         * modules/dirent: New file.
4800         * m4/dirent_h.m4: New file.
4801         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
4802         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
4803         * modules/fchdir (Files): Remove lib/dirent.in.h.
4804         (Depends-on): Add dirent.
4805         (Makefile.am): Move rules to modules/dirent.
4806         * doc/posix-headers/dirent.texi: Mention the new module.
4807
4808 2008-10-18  Bruno Haible  <bruno@clisp.org>
4809
4810         Avoid -Wunused-parameter warnings in public gnulib header files.
4811         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
4812         macro.
4813         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
4814
4815 2008-10-18  Bruno Haible  <bruno@clisp.org>
4816
4817         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
4818         * doc/glibc-functions/error.texi: Mention the module 'error'.
4819         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
4820         * doc/glibc-functions/getdomainname.texi: Mention the module
4821         'getdomainname'.
4822         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
4823         * doc/glibc-functions/getpagesize.texi: Mention the module
4824         'getpagesize'.
4825         * doc/glibc-functions/getusershell.texi: Mention the module
4826         'getusershell'.
4827         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
4828         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
4829         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
4830         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
4831         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
4832         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
4833         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
4834         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
4835         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
4836         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
4837         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
4838         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
4839         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
4840         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
4841
4842 2008-10-17  Bruno Haible  <bruno@clisp.org>
4843
4844         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
4845         HP-UX and IRIX, use -0.0L.
4846         * tests/test-ceill.c (minus_zero): Likewise.
4847         * tests/test-floorl.c (minus_zero): Likewise.
4848         * tests/test-frexpl.c (minus_zero): Likewise.
4849         * tests/test-isnan.c (minus_zerol): Likewise.
4850         * tests/test-isnanl.h (minus_zero): Likewise.
4851         * tests/test-ldexpl.c (minus_zero): Likewise.
4852         * tests/test-roundl.c (minus_zero): Likewise.
4853         * tests/test-signbit.c (minus_zerol): Likewise.
4854         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
4855         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
4856         * tests/test-truncl.c (minus_zero): Likewise.
4857         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
4858         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
4859         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
4860         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
4861
4862 2008-10-17  Bruno Haible  <bruno@clisp.org>
4863
4864         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
4865         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
4866         that it gets activated only for gcc >= 3.0.
4867         * lib/dirent.in.h: Likewise.
4868         * lib/errno.in.h: Likewise.
4869         * lib/fcntl.in.h: Likewise.
4870         * lib/float.in.h: Likewise.
4871         * lib/iconv.in.h: Likewise.
4872         * lib/inttypes.in.h: Likewise.
4873         * lib/locale.in.h: Likewise.
4874         * lib/math.in.h: Likewise.
4875         * lib/netdb.in.h: Likewise.
4876         * lib/netinet_in.in.h: Likewise.
4877         * lib/search.in.h: Likewise.
4878         * lib/signal.in.h: Likewise.
4879         * lib/spawn.in.h: Likewise.
4880         * lib/stdarg.in.h: Likewise.
4881         * lib/stdint.in.h: Likewise.
4882         * lib/stdio.in.h: Likewise.
4883         * lib/stdlib.in.h: Likewise.
4884         * lib/string.in.h: Likewise.
4885         * lib/strings.in.h: Likewise.
4886         * lib/sys_file.in.h: Likewise.
4887         * lib/sys_ioctl.in.h: Likewise.
4888         * lib/sys_select.in.h: Likewise.
4889         * lib/sys_socket.in.h: Likewise.
4890         * lib/sys_stat.in.h: Likewise.
4891         * lib/sys_time.in.h: Likewise.
4892         * lib/sysexits.in.h: Likewise.
4893         * lib/time.in.h: Likewise.
4894         * lib/unistd.in.h: Likewise.
4895         * lib/wchar.in.h: Likewise.
4896         * lib/wctype.in.h: Likewise.
4897         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
4898
4899 2008-10-17  Jim Meyering  <meyering@redhat.com>
4900
4901         ignore-value: don't depend on inline module
4902         * modules/ignore-value (Depends-on): Remove 'inline'.
4903         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
4904         Suggestion from Bruno Haible.
4905
4906 2008-10-17  Bruno Haible  <bruno@clisp.org>
4907
4908         New implementation of condition variables for Win32.
4909         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
4910         (gl_linked_waitqueue_t): New type.
4911         (gl_cond_t): Use it.
4912         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
4913         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
4914         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
4915         (glthread_cond_init_func, glthread_cond_wait_func,
4916         glthread_cond_timedwait_func, glthread_cond_signal_func,
4917         glthread_cond_broadcast_func, glthread_cond_destroy_func):
4918         Reimplemented on the basis of gl_linked_waitqueue_t.
4919         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
4920         gl_waitqueue_t.
4921         (gl_rwlock_t): Update.
4922         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
4923
4924 2008-10-17  Simon Josefsson  <simon@josefsson.org>
4925
4926         * modules/recvfrom (Depends-on): Add dependency on getpeername.
4927         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
4928
4929 2008-10-17  Jim Meyering  <meyering@redhat.com>
4930
4931         ignore-value: new module
4932         * modules/ignore-value: New file.
4933         * lib/ignore-value.h: New file.
4934         * MODULES.html.sh (Compiler warning management): New section,
4935         just for this module.  More to come.
4936
4937 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
4938
4939         open-safer.c: avoid 'signed and unsigned in conditional...' warning
4940         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
4941         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
4942
4943 2008-10-16  Jim Meyering  <meyering@redhat.com>
4944
4945         openat-die.c: avoid 'no previous prototype' warning
4946         * lib/openat-die.c: Include "openat.h".
4947         Reported by Reuben Thomas <rrt@sc3d.org>.
4948
4949 2008-10-16  Simon Josefsson  <simon@josefsson.org>
4950
4951         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
4952         * lib/netdb.in.h: Fix typo.
4953         Reported by Bruno Haible  <bruno@clisp.org>
4954
4955         * lib/netdb.in.h: Include sys/socket.h for platforms without
4956         netdb.h, to get structures like hostent on MinGW.
4957         * modules/netdb (Depends-on): Add sys_socket.
4958
4959 2008-10-15  Simon Josefsson  <simon@josefsson.org>
4960
4961         * modules/netdb, modules/netdb-tests: New file.
4962         * m4/netdb_h.m4: New file.
4963         * lib/netdb.in.h: Add, currently just an empty file pending
4964         definitions.
4965         * tests/test-netdb.c: New file.
4966         * doc/posix-headers/netdb.texi: Mention that we replace it if
4967         needed.
4968         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
4969         netdb.
4970
4971 2008-10-15  Simon Josefsson  <simon@josefsson.org>
4972
4973         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
4974         with code.
4975
4976 2008-10-13  Bruno Haible  <bruno@clisp.org>
4977
4978         * lib/glthread/cond.c (glthread_cond_wait_func,
4979         glthread_cond_timedwait_func): Add a comment.
4980
4981 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
4982
4983         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
4984         * tests/test-select.c: Likewise,
4985
4986 2008-10-13  Bruno Haible  <bruno@clisp.org>
4987
4988         * lib/glthread/cond.c (glthread_cond_wait_func,
4989         glthread_cond_timedwait_func): Fix variable name.
4990         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
4991
4992 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
4993
4994         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
4995         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
4996         struct sockaddr.sa_len.
4997         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
4998
4999 2008-10-13  Simon Josefsson  <simon@josefsson.org>
5000
5001         * build-aux/pmccabe2html: Add css and css_url parameters.
5002
5003 2008-10-12  Bruno Haible  <bruno@clisp.org>
5004
5005         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
5006         calling aclx_get.
5007         Reported by Rainer Tammer <tammer@tammer.net>.
5008
5009 2008-10-12  Bruno Haible  <bruno@clisp.org>
5010
5011         Use msvcrt aware primitives for creation/termination of Win32 threads.
5012         * lib/glthread/thread.c: Include <process.h>.
5013         (glthread_create_func): Use _beginthreadex instead of CreateThread.
5014         (wrapper_func): Update signature.
5015         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
5016
5017 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
5018             Bruno Haible  <bruno@clisp.org>
5019
5020         Provide a Win32 implementation of the 'cond' module.
5021         * lib/glthread/cond.h [USE_WIN32]: New implementation.
5022         * lib/glthread/cond.c (glthread_cond_init_func,
5023         glthread_cond_wait_func, glthread_cond_timedwait_func,
5024         glthread_cond_signal_func, glthread_cond_broadcast_func,
5025         glthread_cond_destroy_func) [USE_WIN32]: New functions.
5026         * modules/cond (Dependencies): Add gettimeofday.
5027
5028 2008-10-11  Bruno Haible  <bruno@clisp.org>
5029
5030         Make sleep work on older versions of mingw.
5031         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
5032         only whether it exists.
5033         * doc/posix-functions/sleep.texi: Mention the problem with older
5034         versions of mingw.
5035
5036 2008-10-11  Bruno Haible  <bruno@clisp.org>
5037
5038         New module 'shutdown'.
5039         * modules/shutdown: New file.
5040         * lib/sys_socket.in.h (shutdown): New declaration.
5041         * lib/winsock.c (shutdown): New function.
5042         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
5043         GNULIB_SHUTDOWN.
5044         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
5045         * doc/posix-functions/shutdown.texi: Document the new module.
5046
5047 2008-10-11  Jim Meyering  <meyering@redhat.com>
5048
5049         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
5050
5051 2008-10-11  Bruno Haible  <bruno@clisp.org>
5052
5053         New module 'fclose'.
5054         * modules/fclose: New file.
5055         * lib/stdio.in.h (fclose): New declaration.
5056         * lib/fclose.c: New file.
5057         * m4/fclose.m4: New file.
5058         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
5059         REPLACE_FCLOSE.
5060         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
5061         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
5062         REPLACE_FCLOSE.
5063         * modules/close (Depends-on): fclose.
5064         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
5065
5066 2008-10-11  Bruno Haible  <bruno@clisp.org>
5067
5068         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
5069         set errno and don't call _close.
5070
5071 2008-10-10  Bruno Haible  <bruno@clisp.org>
5072
5073         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
5074         ACL, not afterwards. Fixes test failure on Cygwin.
5075
5076 2008-10-09  Ben Pfaff  <blp@gnu.org>
5077
5078         * build-aux/announce-gen: Fix gnulib version related part of usage
5079         message.  Die with a useful error message if no tarballs are
5080         found.
5081
5082 2008-10-10  Jim Meyering  <meyering@redhat.com>
5083
5084         bootstrap: use git's --depth=N option only if it's supported
5085         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
5086         recognize the --depth option.  Reported by Pádraig Brady.
5087
5088 2008-10-09  Bruno Haible  <bruno@clisp.org>
5089
5090         New module 'ioctl'.
5091         * modules/ioctl: New file.
5092         * lib/sys_socket.in.h (ioctl): Remove declaration.
5093         * lib/winsock.c: Include <sys/ioctl.h>.
5094         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
5095         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
5096         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
5097         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
5098         * doc/posix-functions/ioctl.texi: Mention the new module.
5099
5100 2008-10-09  Bruno Haible  <bruno@clisp.org>
5101
5102         New module 'sys_ioctl'.
5103         * lib/sys_ioctl.in.h: New file.
5104         * m4/sys_ioctl_h.m4: New file.
5105         * modules/sys_ioctl: New file.
5106         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
5107
5108 2008-10-09  Bruno Haible  <bruno@clisp.org>
5109
5110         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
5111         * lib/winsock.c: Include <stdarg.h>.
5112         (rpl_ioctl): Change to second argument 'int' and then varargs.
5113
5114 2008-10-09  Bruno Haible  <bruno@clisp.org>
5115
5116         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
5117         when the sys_socket module is present and the system has <winsock2.h>.
5118
5119 2008-10-09  Bruno Haible  <bruno@clisp.org>
5120
5121         * doc/posix-functions/close.texi: Mention module 'close' instead of
5122         module 'sys_socket'.
5123
5124 2008-10-09  Bruno Haible  <bruno@clisp.org>
5125
5126         * doc/glibc-headers/sys_ioctl.texi: New file.
5127         * doc/gnulib.texi: Include it.
5128
5129 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
5130             Bruno Haible  <bruno@clisp.org>
5131
5132         Combine the two replacements of 'close'.
5133         * lib/sys_socket.in.h (close): Define to a reminder to include
5134         <unistd.h>.
5135         (_gl_close_fd_maybe_socket): New declaration.
5136         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
5137         * lib/winsock.c (close): Remove undefinition.
5138         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
5139         needed for the gnulib module 'close'.
5140         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
5141         define to an error symbol or to a warning, if suitable.
5142         * lib/close.c: Include <sys/socket.h>.
5143         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
5144         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
5145         UNISTD_H_HAVE_WINSOCK2_H.
5146         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
5147         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
5148         UNISTD_H_HAVE_WINSOCK2_H.
5149         * modules/sys_socket (Files): Add m4/unistd_h.m4.
5150         (configure.ac): Set a module indicator.
5151         (Makefile.am): Substitute GNULIB_CLOSE.
5152         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
5153         * modules/poll-tests (Depends-on): Add close.
5154         * modules/select-tests (Depends-on): Likewise.
5155
5156 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
5157             Bruno Haible  <bruno@clisp.org>
5158
5159         New module 'close'.
5160         * modules/close: New file.
5161         * lib/unistd.in.h (close): Move declaration out of the
5162         FCHDIR_REPLACEMENT scope.
5163         (_gl_unregister_fd): New declaration.
5164         * lib/close.c: New file.
5165         * lib/fchdir.c (rpl_close): Remove function.
5166         * m4/close.m4: New file.
5167         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
5168         close.
5169         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
5170         REPLACE_CLOSE.
5171         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
5172         REPLACE_CLOSE.
5173         * modules/fchdir (Depends-on): Add close.
5174
5175 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
5176             Bruno Haible  <bruno@clisp.org>
5177
5178         * lib/fcntl.in.h (open): Simplify conditionals.
5179         (_gl_register_fd): New declaration.
5180         * lib/fchdir.c (rpl_open): Remove function.
5181         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
5182         also.
5183         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
5184         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
5185         open.
5186
5187 2008-10-09  Jim Meyering  <meyering@redhat.com>
5188
5189         GNUmakefile: use the more name-space-friendly "_version"
5190         * top/GNUmakefile (_dummy): Update.
5191         (_version): Rename from "version".
5192
5193 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
5194             Bruno Haible  <bruno@clisp.org>
5195
5196         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
5197         rpl_close.
5198         (_gl_register_fd): New function, extracted from rpl_open.
5199         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
5200         (rpl_open, rpl_opendir): Use _gl_register_fd.
5201
5202 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
5203
5204         Fix organization of 'open' replacement.
5205         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
5206         (gl_FUNC_OPEN): Use it.
5207         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
5208
5209 2008-10-08  Bruno Haible  <bruno@clisp.org>
5210
5211         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
5212
5213 2008-10-08  Simon Josefsson  <simon@josefsson.org>
5214
5215         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
5216         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
5217         listen).
5218
5219 2008-10-08  Eric Blake  <ebb9@byu.net>
5220
5221         GNUmakefile: add 'make version' target
5222         * top/GNUmakefile (_curr-ver): Split version update rules...
5223         (version): ...into a target.
5224
5225 2008-10-07  Bruno Haible  <bruno@clisp.org>
5226
5227         Use a more portable replacement expression for -0.0L.
5228         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
5229         instead of -0.0L. Fix m4 quotation.
5230
5231         * tests/test-signbit.c: Include <float.h>.
5232         (minus_zero): New variable.
5233         (test_signbitl): Use minus_zero instead of -zero.
5234         * modules/signbit-tests (Depends-on): Add float.
5235
5236         * tests/test-ceill.c: Include <float.h>.
5237         (zero): Remove variable.
5238         (minus_zero): New variable.
5239         (main): Use minus_zero instead of -zero.
5240         * modules/ceill-tests (Depends-on): Add float.
5241
5242         * tests/test-floorl.c: Include <float.h>.
5243         (zero): Remove variable.
5244         (minus_zero): New variable.
5245         (main): Use minus_zero instead of -zero.
5246         * modules/floorl-tests (Depends-on): Add float.
5247
5248         * tests/test-roundl.c: Include <float.h>.
5249         (zero): Remove variable.
5250         (minus_zero): New variable.
5251         (main): Use minus_zero instead of -zero.
5252         * modules/roundl-tests (Depends-on): Add float.
5253
5254         * tests/test-truncl.c: Include <float.h>.
5255         (zero): Remove variable.
5256         (minus_zero): New variable.
5257         (main): Use minus_zero instead of -zero.
5258         * modules/truncl-tests (Depends-on): Add float.
5259
5260         * tests/test-frexpl.c (zero): Remove variable.
5261         (minus_zero): New variable.
5262         (main): Use minus_zero instead of -zero.
5263         * modules/frexpl-tests (Depends-on): Add float.
5264
5265         * tests/test-isnan.c (zerol): Remove variable.
5266         (minus_zerol): New variable.
5267         (test_long_double): Use minus_zerol instead of -zerol.
5268         * modules/isnan-tests (Depends-on): Add float.
5269
5270         * tests/test-isnanl.h (zero): Remove variable.
5271         (minus_zero): New variable.
5272         (main): Use minus_zero instead of -zero.
5273         * modules/isnanl-nolibm-tests (Depends-on): Add float.
5274         * modules/isnanl-tests (Depends-on): Add float.
5275
5276         * tests/test-ldexpl.c (zero): Remove variable.
5277         (minus_zero): New variable.
5278         (main): Use minus_zero instead of -zero.
5279         * modules/ldexpl-tests (Depends-on): Add float.
5280
5281         * tests/test-snprintf-posix.h (zerol): Remove variable.
5282         (minus_zerol): New variable.
5283         (test_function): Use minus_zerol instead of -zerol.
5284         * modules/snprintf-posix-tests (Depends-on): Add float.
5285         * modules/vsnprintf-posix-tests (Depends-on): Add float.
5286
5287         * tests/test-sprintf-posix.h (zerol): Remove variable.
5288         (minus_zerol): New variable.
5289         (test_function): Use minus_zerol instead of -zerol.
5290         * modules/sprintf-posix-tests (Depends-on): Add float.
5291         * modules/vsprintf-posix-tests (Depends-on): Add float.
5292
5293         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
5294         (minus_zerol): New variable.
5295         (test_function): Use minus_zerol instead of -zerol.
5296         * modules/vasnprintf-posix-tests (Depends-on): Add float.
5297
5298         * tests/test-vasprintf-posix.c (zerol): Remove variable.
5299         (minus_zerol): New variable.
5300         (test_function): Use minus_zerol instead of -zerol.
5301         * modules/vasprintf-posix-tests (Depends-on): Add float.
5302
5303 2008-10-07  Simon Josefsson  <simon@josefsson.org>
5304
5305         * MODULES.html.sh (Support for building documentation): Mention
5306         pmccabe2html.  Sort entries.
5307
5308         Add pmccabe2html module, from gnupdf.
5309         * build-aux/pmccabe.css: New file.
5310         * build-aux/pmccabe2html: New file.
5311         * m4/pmccabe2html.m4: New file.
5312         * modules/pmccabe2html: New file.
5313
5314 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
5315
5316         flock: new module
5317         * MODULES.html.sh: Add to list of modules.
5318         * lib/flock.c: flock implementation for Windows and Unix systems
5319         which have fcntl.
5320         * doc/glibc-functions/flock.texi: Update documentation.
5321         * lib/sys_file.in.h: <sys/file.h> header file.
5322         * m4/flock.m4: M4 macros.
5323         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
5324         * modules/flock: flock module.
5325         * modules/flock-tests: flock tests module.
5326         * modules/sys_file: sys/file.h module.
5327         * tests/test-flock.c: test suite for flock.
5328
5329 2008-10-06  Jim Meyering  <meyering@redhat.com>
5330
5331         bootstrap: check for LT_INIT more portably still ;-)
5332         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
5333         Spotted by Bruno Haible.
5334
5335 2008-10-06  Eric Blake  <ebb9@byu.net>
5336
5337         test-signbit: avoid tripping Irix cc bug on -0.0L
5338         * tests/test-signbit.c (minus_zerol): Delete, and replace with
5339         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
5340         entire testsuite consistent and avoids an Irix 6.2 bug.
5341
5342 2008-10-05  Bruno Haible  <bruno@clisp.org>
5343             Jim Meyering  <jim@meyering.net>
5344
5345         Add an option for ignoring EPIPE during close_stdout.
5346         * lib/closeout.h: Include <stdbool.h>.
5347         (close_stdout_set_ignore_EPIPE): New declaration.
5348         * lib/closeout.c: Include <stdbool.h>.
5349         (ignore_EPIPE): New variable.
5350         (close_stdout_set_ignore_EPIPE): New function.
5351         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
5352         * lib/close-stream.c (close_stream): Mention the possible EPIPE
5353         failure.
5354         * modules/closeout (Depends-on): Add stdbool.
5355
5356 2008-10-05  Bruno Haible  <bruno@clisp.org>
5357
5358         * modules/accept: New file.
5359         * modules/bind: New file.
5360         * modules/connect: New file.
5361         * modules/getpeername: New file.
5362         * modules/getsockname: New file.
5363         * modules/getsockopt: New file.
5364         * modules/listen: New file.
5365         * modules/recv: New file.
5366         * modules/recvfrom: New file.
5367         * modules/send: New file.
5368         * modules/sendto: New file.
5369         * modules/setsockopt: New file.
5370         * modules/socket: New file.
5371         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
5372         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
5373         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
5374         the particular module is requested. Add a link warning when the
5375         particular module is not requested.
5376         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
5377         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
5378         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
5379         the particular module is requested.
5380         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
5381         gl_SYS_SOCKET_H_DEFAULTS): New macros.
5382         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
5383         * modules/sys_socket (Depends-on): Add link-warning.
5384         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
5385         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
5386         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
5387         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
5388         GL_LINK_WARNING.
5389         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
5390         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
5391         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
5392         * doc/posix-functions/getpeername.texi: Mention the new module
5393         'getpeername'.
5394         * doc/posix-functions/getsockname.texi: Mention the new module
5395         'getsockname'.
5396         * doc/posix-functions/getsockopt.texi: Mention the new module
5397         'getsockopt'.
5398         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
5399         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
5400         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
5401         * doc/posix-functions/send.texi: Mention the new module 'send'.
5402         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
5403         * doc/posix-functions/setsockopt.texi: Mention the new module
5404         'setsockopt'.
5405         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
5406         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
5407         listen, connect, accept.
5408         * modules/select-tests (Depends-on): Likewise.
5409
5410 2008-10-05  Bruno Haible  <bruno@clisp.org>
5411
5412         * lib/winsock.c (strerror): Remove unused #undef.
5413         (rpl_close): Remove unused local variable.
5414
5415         * modules/sys_socket (Depends-on); Add errno.
5416
5417 2008-10-05  Bruno Haible  <bruno@clisp.org>
5418
5419         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
5420         (select): Add a link warning when the 'select' module is not used.
5421         * modules/sys_select (Depends-on): Add link-warning.
5422         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
5423         Suggested by Paolo Bonzini.
5424
5425 2008-10-05  Jim Meyering  <meyering@redhat.com>
5426
5427         bootstrap: check for LT_INIT more portably
5428         * build-aux/bootstrap: Avoid using grep -E, since it's not
5429         portable enough.  Suggestion from Bruno Haible.
5430
5431 2008-10-05  Bruno Haible  <bruno@clisp.org>
5432
5433         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
5434         as being fixed by gnulib.
5435
5436 2008-10-05  Bruno Haible  <bruno@clisp.org>
5437
5438         * modules/select-tests: New file, mostly copied from
5439         modules/sys_select-tests.
5440         * tests/test-select.c: New file, mostly copied from
5441         tests/test-sys_select.c.
5442         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
5443         * modules/sys_select-tests (Depends-on): Remove all dependencies.
5444         (Makefile.am): Remove test_sys_select_LDADD.
5445
5446         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
5447         to an undefined symbol, for an error message.
5448         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
5449         (gl_SYS_SELECT_H_DEFAULTS): New macro.
5450         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
5451         winsock-select.c here.
5452         * modules/sys_select (Files): Remove lib/winsock-select.c.
5453         (Depends-on): Remove alloca.
5454         (Makefile.am): Substitute GNULIB_SELECT.
5455         * modules/select: New file.
5456         * doc/posix-functions/select.texi: Update.
5457
5458 2008-10-05  Bruno Haible  <bruno@clisp.org>
5459
5460         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
5461         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
5462         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
5463         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
5464         getdtablesize.
5465         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
5466         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
5467
5468 2008-10-05  Bruno Haible  <bruno@clisp.org>
5469
5470         * modules/getdtablesize-tests: New file.
5471         * tests/test-getdtablesize.c: New file.
5472
5473         New module 'getdtablesize'.
5474         * lib/unistd.in.h (getdtablesize): New declaration.
5475         * lib/getdtablesize.c: New file.
5476         * m4/getdtablesize.m4: New file.
5477         * modules/getdtablesize: New file.
5478         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
5479         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
5480         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
5481         HAVE_GETDTABLESIZE.
5482         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
5483
5484 2008-10-05  Bruno Haible  <bruno@clisp.org>
5485
5486         * modules/sched (Makefile.am): Fix typo.
5487         Reported by Simon Josefsson.
5488
5489 2008-10-05  Jim Meyering  <meyering@redhat.com>
5490
5491         bootstrap: check for LT_INIT, too
5492         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
5493         are deprecated.  Suggestion from Ralf Wildenhues.
5494
5495 2008-10-05  Bruno Haible  <bruno@clisp.org>
5496
5497         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
5498         overriding them by ours.
5499         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
5500
5501 2008-10-05  Jim Meyering  <meyering@redhat.com>
5502
5503         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
5504         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
5505         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
5506
5507 2008-10-04  Bruno Haible  <bruno@clisp.org>
5508
5509         * modules/dup2 (License): Change to LGPLv2+.
5510         * modules/sleep (License): Likewise.
5511         * modules/perror (License): Likewise.
5512         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
5513         Blake.
5514         * modules/signal (License): Likewise.
5515         * modules/sigprocmask (License): Likewise.
5516         * modules/raise (License): Change to LGPLv2+, with approval by Jim
5517         Meyering.
5518
5519 2008-10-04  Bruno Haible  <bruno@clisp.org>
5520
5521         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
5522         Reported by Rainer Tammer <tammer@tammer.net>.
5523
5524 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
5525             Bruno Haible  <bruno@clisp.org>
5526
5527         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
5528         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
5529         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
5530
5531 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
5532
5533         filevercmp: new module
5534         * lib/filevercmp.h: New function filevercmp comparing version strings.
5535         * lib/filevercmp.c: Implementation of filevercmp function.
5536         * modules/filevercmp: Module metadata.
5537         * tests/test-filevercmp.c: Unit test for new module.
5538         * modules/filevercmp-tests: Unit test metadata.
5539         * MODULES.html.sh: Add filevercmp module.
5540
5541 2008-10-03  Bruno Haible  <bruno@clisp.org>
5542
5543         * lib/c-ctype.h: Add comment.
5544         Reported by Jim Meyering.
5545
5546 2008-10-02  Bruno Haible  <bruno@clisp.org>
5547
5548         * modules/posix_spawn-internal (Depends-on): Add 'open'.
5549
5550 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
5551
5552         * build-aux/bootstrap: Allow renaming bootstrap, and change the
5553         name of bootstrap.conf accordingly.
5554
5555 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
5556
5557         * build-aux/bootstrap: Install git-merge-changelog configuration
5558         items into .gitconfig if needed.
5559
5560 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
5561
5562         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
5563         git repository, and initialize/update it accordingly.
5564
5565 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
5566
5567         * modules/fsync-tests: New file.
5568         * tests/test-fsync.c: New file.
5569
5570         New module 'fsync'.
5571         * lib/fsync.c: New file.
5572         * m4/fsync.m4: New file.
5573         * modules/fsync: New file.
5574         * lib/unistd.in.h (fsync): New declaration.
5575         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
5576         GNULIB_FSYNC and HAVE_FSYNC.
5577         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
5578         * MODULES.html.sh (posix_functions): Add fsync.
5579         * doc/posix-functions/fsync.texi: Mention the new module.
5580
5581 2008-10-02  Jim Meyering  <meyering@redhat.com>
5582
5583         fts.c: sync with similar code from coreutils' remove.c
5584         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
5585         Guard also with "#if defined __linux__", since for now at least,
5586         this code is Linux-kernel-specific.
5587
5588 2008-10-02  Jim Meyering  <meyering@redhat.com>
5589
5590         fts: bug fixes
5591         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
5592         Include <sys/vfs.h>, not <sys/statfs.h>.
5593
5594         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
5595         Include <sys/vfs.h>, not <sys/statfs.h>.
5596
5597 2008-10-01  Bruno Haible  <bruno@clisp.org>
5598
5599         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
5600         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
5601         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
5602         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
5603         * doc/posix-functions/posix_spawnp.texi: Likewise.
5604         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
5605         whether posix_spawn actually works.
5606         * m4/pipe.m4 (gl_PIPE): Likewise.
5607         * modules/execute (Files): Add m4/posix_spawn.m4.
5608         * modules/pipe (Files): Add m4/posix_spawn.m4.
5609         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
5610
5611 2008-10-01  Jim Meyering  <meyering@redhat.com>
5612
5613         remove trailing spaces
5614         * NEWS: Likewise.
5615         * lib/poll.c (poll): Likewise.
5616         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
5617         * lib/winsock.c (rpl_close): Likewise.
5618         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
5619         * modules/yield: Likewise.
5620         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
5621         * tests/test-sys_select.c (connect_to_socket): Likewise.
5622
5623         fts.c: adjust a new interface to be more generally useful
5624         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
5625         (fts_build): Adjust caller.
5626
5627 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5628
5629         * modules/cond-tests: New file.
5630         * tests/test-cond.c: New file.
5631
5632 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5633             Bruno Haible  <bruno@clisp.org>
5634
5635         * modules/cond (Dependencies): Add errno, time.
5636         * lib/glthread/cond.h: Include <time.h>.
5637         (gl_cond_define, gl_cond_define_initialized): Use the same definition
5638         across platforms.
5639
5640 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5641             Bruno Haible  <bruno@clisp.org>
5642
5643         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
5644
5645 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5646             Bruno Haible  <bruno@clisp.org>
5647
5648         * modules/tls-tests (Depends-on): Add thread, yield.
5649         (configure.ac): Remove all checks.
5650         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
5651         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
5652         gl_thread_self): Remove definitions. Include glthread/thread.h and
5653         glthread/yield.h instead.
5654         (test_tls): Pass an additional NULL argument to gl_thread_join.
5655
5656 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5657             Bruno Haible  <bruno@clisp.org>
5658
5659         * modules/lock-tests (Depends-on): Add thread, yield.
5660         (configure.ac): Remove all checks.
5661         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
5662         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
5663         gl_thread_self): Remove definitions. Include glthread/thread.h and
5664         glthread/yield.h instead.
5665         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
5666         additional NULL argument to gl_thread_join.
5667
5668 2008-09-30  Bruno Haible  <bruno@clisp.org>
5669
5670         Fix the Win32 implementation of the 'thread' module.
5671         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
5672         pointer type.
5673         (gl_thread_self): Invoke gl_thread_self_func.
5674         (gl_thread_self_func): New declaration.
5675         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
5676         (do_init_self_key, init_self_key): New functions.
5677         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
5678         Remove some fields.
5679         (running_threads, running_lock): Remove variables.
5680         (get_current_thread_handle): New function.
5681         (gl_thread_self_func, wrapper_func, glthread_create_func,
5682         glthread_join_func, gl_thread_exit_func): Largely rewritten and
5683         simplified.
5684
5685 2008-09-30  Bruno Haible  <bruno@clisp.org>
5686
5687         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
5688         files.
5689
5690 2008-09-30  Jim Meyering  <meyering@redhat.com>
5691
5692         fts.m4: correct the test for statfs.f_type
5693         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
5694         when checking for statfs.f_type.
5695
5696 2008-09-15  Simon Josefsson  <simon@josefsson.org>
5697
5698         tests: avoid some compiler warnings
5699         * tests/test-memchr.c (main): Pass NULL indirectly.
5700         * tests/test-getdate.c (main): Remove unused variable 'ret'.
5701
5702 2008-09-29  Ondřej Vašík  <ovasik@redhat.com>
5703
5704         getdate.y: disallow countable dayshifts like "4 yesterday ago"
5705         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
5706         exactly specified dayshifts.
5707         (dayshift): New rule.
5708         (rel): Add dayshift.
5709         (relative_time_table) [tomorrow, yesterday, today, now]:
5710         Use tDAY_SHIFT in place of tDAY_UNIT.
5711         * tests/test-getdate.c: Add tests for now-disallowed countable
5712         dayshifts, e.g., "4 yesterday ago".
5713
5714 2008-09-29  Bruno Haible  <bruno@clisp.org>
5715
5716         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
5717         * tests/test-posix_spawn1.in.sh: Renamed from
5718         tests/test-posix_spawn.in.sh.
5719         * tests/test-posix_spawn2.c: New file.
5720         * tests/test-posix_spawn2.in.sh: New file.
5721         * modules/posix_spawnp-tests (Files): Update.
5722         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
5723
5724 2008-09-29  Bruno Haible  <bruno@clisp.org>
5725
5726         Propagate effects of putenv/setenv/unsetenv to child processes.
5727         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
5728         * lib/pipe.c (create_pipe): Likewise.
5729
5730 2008-09-29  Bruno Haible  <bruno@clisp.org>
5731
5732         Enable use of shell scripts as executables in mingw.
5733         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
5734         run the program as a shell script.
5735         * lib/pipe.c (create_pipe): Likewise.
5736         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
5737         resulting array.
5738
5739 2008-09-29  Eric Blake  <ebb9@byu.net>
5740
5741         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
5742
5743 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
5744
5745         * doc/posix-functions/accept.texi: Update mingw problems.
5746         * doc/posix-functions/bind.texi: Update mingw problems.
5747         * doc/posix-functions/close.texi: Update mingw problems.
5748         * doc/posix-functions/connect.texi: Update mingw problems.
5749         * doc/posix-functions/getpeername.texi: Update mingw problems.
5750         * doc/posix-functions/getsockname.texi: Update mingw problems.
5751         * doc/posix-functions/getsockopt.texi: Update mingw problems.
5752         * doc/posix-functions/ioctl.texi: Update mingw problems.
5753         * doc/posix-functions/listen.texi: Update mingw problems.
5754         * doc/posix-functions/recv.texi: Update mingw problems.
5755         * doc/posix-functions/recvfrom.texi: Update mingw problems.
5756         * doc/posix-functions/select.texi: Update mingw problems.
5757         * doc/posix-functions/send.texi: Update mingw problems.
5758         * doc/posix-functions/sendto.texi: Update mingw problems.
5759         * doc/posix-functions/setsockopt.texi: Update mingw problems.
5760         * doc/posix-functions/socket.texi: Update mingw problems.
5761
5762 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
5763             Bruno Haible  <bruno@clisp.org>
5764
5765         * lib/sys_select.in.h: Include sys/time.h.
5766         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
5767         * modules/sys_select: Depend on sys_time.
5768         * tests/test-sys_select.c: Test that sys/select.h defines struct
5769         timeval fully.
5770
5771 2008-09-29  Bruno Haible  <bruno@clisp.org>
5772
5773         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
5774         * lib/sys_select.in.h: Likewise.
5775
5776 2008-09-29  Bruno Haible  <bruno@clisp.org>
5777
5778         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
5779
5780 2008-09-29  Bruno Haible  <bruno@clisp.org>
5781
5782         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
5783         Set LIBSOCKET instead of augmenting LIBS.
5784         * modules/sockets (Link): New section.
5785         * modules/sockets-tests (test_sockets_LDADD): New variable.
5786         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
5787         * modules/poll-tests (test_poll_LDADD): New variable.
5788         * NEWS: Document the change.
5789
5790 2008-09-29  Bruno Haible  <bruno@clisp.org>
5791
5792         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
5793         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
5794         ARPA_INET_H directly.
5795         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
5796
5797 2008-09-28  Bruno Haible  <bruno@clisp.org>
5798
5799         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
5800         from gl_HEADER_SYS_SOCKET.
5801         (gl_HEADER_SYS_SOCKET): Invoke it.
5802         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
5803
5804 2008-09-28  Bruno Haible  <bruno@clisp.org>
5805
5806         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
5807         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
5808         Needed on OSF/1 4.0.
5809
5810 2008-09-28  Bruno Haible  <bruno@clisp.org>
5811
5812         Override open more carefully.
5813         * lib/open.c (orig_open): New function.
5814         (rpl_open): Use orig_open instead of open.
5815         * lib/fcntl.in.h: Add special invocation convention.
5816         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
5817         (gl_FUNC_OPEN): Invoke it.
5818
5819         Override freopen more carefully.
5820         * lib/freopen.c (orig_freopen): New function.
5821         (rpl_freopen): Use orig_freopen instead of freopen.
5822         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
5823         (gl_FUNC_FREOPEN): Invoke it.
5824
5825         Override fopen more carefully.
5826         * lib/fopen.c (orig_fopen): New function.
5827         (rpl_fopen): Use orig_fopen instead of fopen.
5828         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
5829         (gl_FUNC_FOPEN): Invoke it.
5830         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
5831
5832 2008-09-28  Bruno Haible  <bruno@clisp.org>
5833
5834         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
5835         SIGPIPE.
5836
5837 2008-09-28  Bruno Haible  <bruno@clisp.org>
5838
5839         * tests/test-sigaction.c (handler, main): Disable the check whether
5840         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
5841         glibc systems with LinuxThreads.
5842
5843 2008-09-28  Bruno Haible  <bruno@clisp.org>
5844
5845         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
5846
5847         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
5848         with AIX xlc.
5849         * lib/fcntl.in.h (open): Likewise.
5850         Reported by Rainer Tammer <tammer@tammer.net>.
5851
5852 2008-09-28  Bruno Haible  <bruno@clisp.org>
5853
5854         * modules/posix_spawnp-tests: New file.
5855         * tests/test-posix_spawn.c: New file.
5856         * tests/test-posix_spawn.in.sh: New file.
5857
5858         New module 'posix_spawnp'.
5859         * modules/posix_spawnp: New file.
5860         * lib/spawnp.c: New file, from GNU libc with modifications.
5861         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
5862
5863         New module 'posix_spawn'.
5864         * modules/posix_spawn: New file.
5865         * lib/spawn.c: New file, from GNU libc with modifications.
5866         * doc/posix-functions/posix_spawn.texi: Mention the new module.
5867
5868         New module 'posix_spawnattr_destroy'.
5869         * modules/posix_spawnattr_destroy: New file.
5870         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
5871         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
5872         module.
5873
5874         New module 'posix_spawnattr_setsigmask'.
5875         * modules/posix_spawnattr_setsigmask: New file.
5876         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
5877         modifications.
5878         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
5879         new module.
5880
5881         New module 'posix_spawnattr_getsigmask'.
5882         * modules/posix_spawnattr_getsigmask: New file.
5883         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
5884         modifications.
5885         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
5886         new module.
5887
5888         New module 'posix_spawnattr_setsigdefault'.
5889         * modules/posix_spawnattr_setsigdefault: New file.
5890         * lib/spawnattr_setdefault.c: New file, from GNU libc with
5891         modifications.
5892         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
5893         new module.
5894
5895         New module 'posix_spawnattr_getsigdefault'.
5896         * modules/posix_spawnattr_getsigdefault: New file.
5897         * lib/spawnattr_getdefault.c: New file, from GNU libc with
5898         modifications.
5899         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
5900         new module.
5901
5902         New module 'posix_spawnattr_setschedpolicy'.
5903         * modules/posix_spawnattr_setschedpolicy: New file.
5904         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
5905         modifications.
5906         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
5907         new module.
5908
5909         New module 'posix_spawnattr_getschedpolicy'.
5910         * modules/posix_spawnattr_getschedpolicy: New file.
5911         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
5912         modifications.
5913         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
5914         new module.
5915
5916         New module 'posix_spawnattr_setschedparam'.
5917         * modules/posix_spawnattr_setschedparam: New file.
5918         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
5919         modifications.
5920         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
5921         new module.
5922
5923         New module 'posix_spawnattr_getschedparam'.
5924         * modules/posix_spawnattr_getschedparam: New file.
5925         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
5926         modifications.
5927         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
5928         new module.
5929
5930         New module 'posix_spawnattr_setpgroup'.
5931         * modules/posix_spawnattr_setpgroup: New file.
5932         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
5933         modifications.
5934         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
5935         module.
5936
5937         New module 'posix_spawnattr_getpgroup'.
5938         * modules/posix_spawnattr_getpgroup: New file.
5939         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
5940         modifications.
5941         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
5942         module.
5943
5944         New module 'posix_spawnattr_setflags'.
5945         * modules/posix_spawnattr_setflags: New file.
5946         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
5947         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
5948         module.
5949
5950         New module 'posix_spawnattr_getflags'.
5951         * modules/posix_spawnattr_getflags: New file.
5952         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
5953         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
5954         module.
5955
5956         New module 'posix_spawnattr_init'.
5957         * modules/posix_spawnattr_init: New file.
5958         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
5959         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
5960         module.
5961
5962         New module 'posix_spawn_file_actions_destroy'.
5963         * modules/posix_spawn_file_actions_destroy: New file.
5964         * lib/spawn_faction_destroy.c: New file, from GNU libc with
5965         modifications.
5966         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
5967         the new module.
5968
5969         New module 'posix_spawn_file_actions_addopen'.
5970         * modules/posix_spawn_file_actions_addopen: New file.
5971         * lib/spawn_faction_addopen.c: New file, from GNU libc with
5972         modifications.
5973         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
5974         the new module.
5975
5976         New module 'posix_spawn_file_actions_adddup2'.
5977         * modules/posix_spawn_file_actions_adddup2: New file.
5978         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
5979         modifications.
5980         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
5981         the new module.
5982
5983         New module 'posix_spawn_file_actions_addclose'.
5984         * modules/posix_spawn_file_actions_addclose: New file.
5985         * lib/spawn_faction_addclose.c: New file, from GNU libc with
5986         modifications.
5987         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
5988         the new module.
5989
5990         New module 'posix_spawn_file_actions_init'.
5991         * modules/posix_spawn_file_actions_init: New file.
5992         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
5993         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
5994         new module.
5995
5996         New module 'posix_spawn-internal'.
5997         * modules/posix_spawn-internal: New file.
5998         * lib/spawn_int.h: New file, from GNU libc with modifications.
5999         * lib/spawni.c: New file, from GNU libc with modifications.
6000         * m4/posix_spawn.m4: New file.
6001
6002         New module 'spawn'.
6003         * modules/spawn: New file.
6004         * lib/spawn.in.h: New file, from GNU libc with modifications.
6005         * m4/spawn_h.m4: New file.
6006         * doc/posix-headers/spawn.texi: Mention the new module.
6007
6008 2008-09-28  Bruno Haible  <bruno@clisp.org>
6009
6010         * modules/sched-tests: New file.
6011         * tests/test-sched.c: New file.
6012
6013         New module 'sched'.
6014         * modules/sched: New file.
6015         * lib/sched.in.h: New file.
6016         * m4/sched_h.m4: New file.
6017         * doc/posix-headers/sched.texi: Mention the new module.
6018
6019 2008-09-27  Eric Blake  <ebb9@byu.net>
6020
6021         Fix previous patch, and tweak references to $0.
6022         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
6023         (func_version, func_gnulib_dir): Don't call this program
6024         gnulib-tool.
6025         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
6026         with using $0 in function.
6027         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
6028         (func_fatal_error): Reuse the name the user invoked us with.
6029
6030 2008-09-27  Bruno Haible  <bruno@clisp.org>
6031
6032         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
6033         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
6034         (gl_ICONV_H): Not here.
6035         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
6036         instead of assigning ICONV_H directly.
6037
6038         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
6039         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
6040         WCHAR_H directly.
6041
6042 2008-09-27  Bruno Haible  <bruno@clisp.org>
6043
6044         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
6045         * modules/arpa_inet (Depends-on): Add link-warning.
6046         (Makefile.am): Insert the definition of GL_LINK-WARNING.
6047         * modules/unistd (Makefile.am): Likewise.
6048
6049 2008-09-26  Bruno Haible  <bruno@clisp.org>
6050
6051         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
6052         variables.
6053         (func_version): Essentially copied from gnulib-tool.
6054         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
6055         func_readlink): Copied from gnulib-tool.
6056
6057 2008-09-26  Bruno Haible  <bruno@clisp.org>
6058
6059         * gnulib-tool (func_version): Change directory to $gnulib_dir before
6060         invoking git-version-gen.
6061
6062 2008-09-26  Bruno Haible  <bruno@clisp.org>
6063
6064         * posix-modules: Update to directory names changed on 2008-01-19.
6065         Remove commas in output before splitting into words. No more need to
6066         avoid 'ftruncate' since 2007-02-19.
6067
6068 2008-09-26  Bruno Haible  <bruno@clisp.org>
6069
6070         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
6071
6072 2008-09-26  Bruno Haible  <bruno@clisp.org>
6073
6074         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
6075         * modules/fwriteerror (Depends-on): Add errno.
6076
6077 2008-09-26  Bruno Haible  <bruno@clisp.org>
6078
6079         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
6080         * tests/test-vc-list-files-cvs.sh: Likewise.
6081
6082 2008-09-26  Bruno Haible  <bruno@clisp.org>
6083
6084         * doc/posix-headers/sys_resource.texi: Reorder items.
6085
6086 2008-09-26  Jim Meyering  <meyering@redhat.com>
6087
6088         fts: tweak inode comparison function
6089         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
6090         inode numbers, as documented.
6091
6092         fts: sort dirent entries on inode number before traversing
6093         This avoids a quadratic, seek-related performance penalty when
6094         operating on a directory containing many entries (measurable at 10k;
6095         3.5 hours at 2 million entries with a cold cache) on certain types
6096         of file systems, including ext3 and ext4, but not tmpfs.
6097         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
6098         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
6099         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
6100         (fs_handles_readdir_ordered_dirents_efficiently): New function.
6101         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
6102         (fts_build): Set the stat.st_ino member from D_INO.
6103         If it is likely to be useful, sort dirent entries on inode number.
6104
6105         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
6106         and the struct statfs.f_type member.
6107         * modules/fts (Depends-on): Add d-ino.
6108
6109 2008-09-26  Bruno Haible  <bruno@clisp.org>
6110
6111         * modules/sigpipe-die (Depends-on): Add sigpipe.
6112
6113         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
6114         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
6115         and GNULIB_STDIO_H_SIGPIPE are set.
6116         * lib/stdio-write.c: New file.
6117         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
6118         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
6119         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
6120         REPLACE_STDIO_WRITE_FUNCS.
6121         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
6122         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
6123         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
6124         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
6125         * modules/stdio (Files): Add lib/stdio-write.c.
6126         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
6127         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
6128         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
6129         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
6130         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
6131         REPLACE_FPRINTF_POSIX.
6132         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
6133         REPLACE_PRINTF_POSIX.
6134         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
6135         REPLACE_VFPRINTF_POSIX.
6136         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
6137         REPLACE_VPRINTF_POSIX.
6138         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
6139         SIGPIPE issue.
6140         * doc/posix-functions/fputc.texi: Likewise.
6141         * doc/posix-functions/fputs.texi: Likewise.
6142         * doc/posix-functions/fwrite.texi: Likewise.
6143         * doc/posix-functions/printf.texi: Likewise.
6144         * doc/posix-functions/putc.texi: Likewise.
6145         * doc/posix-functions/putchar.texi: Likewise.
6146         * doc/posix-functions/puts.texi: Likewise.
6147         * doc/posix-functions/vfprintf.texi: Likewise.
6148         * doc/posix-functions/vprintf.texi: Likewise.
6149
6150         * modules/safe-write (Depends-on): Add write.
6151
6152         * modules/sigpipe-tests: New file.
6153         * tests/test-sigpipe.c: New file.
6154         * tests/test-sigpipe.sh: New file.
6155
6156         * modules/write: New file.
6157         * lib/unistd.in.h: Include <sys/types.h>.
6158         (write): New declaration.
6159         * lib/write.c: New file.
6160         * m4/write.m4: New file.
6161         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
6162         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
6163         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
6164         GNULIB_WRITE, REPLACE_WRITE.
6165         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
6166         and the SIGPIPE issue.
6167
6168         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
6169         (raise): New declaration.
6170         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
6171         (ext_signal): New function.
6172         (rpl_raise): New function.
6173         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
6174         GNULIB_SIGNAL_H_SIGPIPE.
6175         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
6176         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
6177
6178         * modules/sigpipe: New file.
6179         * m4/sigpipe.m4: New file.
6180
6181 2008-09-25  Derek Price  <derek@ximbiot.com>
6182             Bruno Haible  <bruno@clisp.org>
6183
6184         * gnulib-tool (func_import): Report all license incompatibilities, not
6185         just the first one.
6186
6187 2008-09-25  Bruno Haible  <bruno@clisp.org>
6188
6189         * gnulib-tool (func_import): When computing the edits, consider not
6190         only the Makefile.ams that exist but also those that will be generated.
6191
6192 2008-09-25  Simon Josefsson  <simon@josefsson.org>
6193
6194         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
6195         fixes gnulib-tool --test warning about duplicate dependency.
6196
6197 2008-09-25  Bruno Haible  <bruno@clisp.org>
6198
6199         * gnulib-tool: Don't ask the user to perform edits in the generated
6200         Makefile.ams.
6201         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
6202         apply to the Makefile.am being generated.
6203         (func_emit_tests_Makefile_am): Execute edits that apply to the
6204         Makefile.am being generated.
6205         (func_import): Setup list of Makefile.am edits before emitting the
6206         Makefile.ams, not at the end.
6207         (func_create_testdir): Update.
6208         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
6209
6210 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6211
6212         * gnulib-tool (func_import): Store the --tests-base option in the
6213         comment in gnulib-cache.m4.
6214
6215 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
6216
6217         * NEWS: Document increased portability that sys_select now provides.
6218
6219         * lib/sys_select.in.h: Install select wrapper.
6220         * lib/sys_socket.in.h: Use more descriptive name when there is no
6221         select wrapper.
6222         * lib/winsock-select.c: New.
6223         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
6224         Require gl_HEADER_SYS_SOCKET.
6225         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
6226         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
6227         * tests/test-sys_select.c: Add functional tests.
6228
6229 2008-09-24  Eric Blake  <ebb9@byu.net>
6230
6231         open, fopen: close fd leak in last patch
6232         * lib/open.c (rpl_open): Close fd before returning error.
6233         * lib/fopen.c (rpl_fopen): Close fd before returning error.
6234         * doc/posix-functions/open.texi (open): Document that Irix also
6235         has the bug.
6236         * doc/posix-functions/fopen.texi (fopen): Likewise.
6237         Reported by Paolo Bonzini.
6238
6239 2008-09-24  Bruno Haible  <bruno@clisp.org>
6240
6241         Ensure that a filename ending in a slash cannot be used to access a
6242         non-directory.
6243         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
6244         to check whether it's really a directory.
6245         * lib/fopen.c: Include fcntl.h, unistd.h.
6246         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
6247         and fdopen().
6248         * modules/fopen (Depends-on): Add unistd.
6249         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
6250         * tests/test-fopen.c (main): Likewise.
6251         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
6252         * doc/posix-functions/fopen.texi: Likewise.
6253         Reported by Eric Blake.
6254
6255 2008-09-23  Eric Blake  <ebb9@byu.net>
6256
6257         c-stack: avoid compiler optimizations when provoking overflow
6258         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
6259         recursion harder to optimize, to ensure a stack overflow occurs.
6260         * tests/test-c-stack.c (recurse): Likewise.
6261         Borrowed from libsigsegv.
6262
6263         c-stack: work around Irix sigaltstack bug
6264         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
6265         whether sigaltstack uses wrong end of stack_t (copied in part from
6266         libsigsegv).
6267         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
6268         Irix bug, without requiring an over-allocation.
6269         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
6270         bug.
6271
6272         fopen: document mingw bug on directories
6273         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
6274         not allowing a stream visiting a directory, even though reading
6275         from such a stream is not portable.
6276
6277 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
6278
6279         * lib/poll.c: Rewrite.
6280         * modules/poll: Depend on alloca.
6281
6282 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
6283
6284         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
6285         instead define prototypes for a full set of wrappers.  Ensure
6286         that Cygwin does not use the compatibility code, which is only
6287         for MinGW.
6288         * lib/winsock.c: New.
6289         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
6290         * modules/sys_socket: Add lib/winsock.c.
6291
6292         * modules/poll-tests: Add errno and perror.
6293         * tests/test-poll.c: Use ioctl, not ioctlsocket.
6294
6295 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
6296
6297         * tests/test-poll.c: Downgrade minimum needed Winsock version.
6298
6299 2008-09-23  Bruno Haible  <bruno@clisp.org>
6300
6301         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
6302         * doc/glibc-functions/*: Likewise.
6303
6304 2008-09-23  Simon Josefsson  <simon@josefsson.org>
6305
6306         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
6307         success.
6308
6309 2008-09-22  Eric Blake  <ebb9@byu.net>
6310             Bruno Haible  <bruno@clisp.org>
6311
6312         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
6313         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
6314         supply %A but mishandle pseudo-NaN.
6315         Reported by Simon Josefsson.
6316
6317 2008-09-21  Bruno Haible  <bruno@clisp.org>
6318
6319         * tests/test-lock.c (main): Tweak skip message.
6320         * tests/test-tls.c (main): Likewise.
6321
6322 2008-09-21  Bruno Haible  <bruno@clisp.org>
6323
6324         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
6325         whether 'struct sigaction' has sa_sigaction here...
6326         (gl_PREREQ_SIG_HANDLER_H): ... not here.
6327         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
6328
6329 2008-09-21  Bruno Haible  <bruno@clisp.org>
6330
6331         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
6332         section.
6333         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
6334         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
6335         the new section.
6336         (Support for obsolete systems lacking POSIX:2001): New section.
6337         (String handling <string.h>): Move strdup to the new section.
6338         Suggested by Simon Josefsson and Paolo Bonzini.
6339
6340 2008-09-21  Bruno Haible  <bruno@clisp.org>
6341
6342         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
6343         exponents in %e and %g results on 'long double'. Needed for mingw's
6344         improved *printf functions.
6345         * tests/test-vasprintf-posix.c (test_function): Likewise.
6346         * tests/test-snprintf-posix.h (test_function): Likewise.
6347         * tests/test-sprintf-posix.h (test_function): Likewise.
6348         Reported by Eric Blake.
6349
6350 2008-09-21  Bruno Haible  <bruno@clisp.org>
6351
6352         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
6353         * tests/test-sprintf-posix.h (test_function): Likewise.
6354
6355 2008-09-21  Bruno Haible  <bruno@clisp.org>
6356
6357         * modules/getpass (Depends-on): Add strdup-posix.
6358
6359         New module 'strdup-posix'.
6360         * modules/strdup-posix: New file.
6361         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
6362         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
6363         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
6364         REPLACE_STRDUP.
6365         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
6366         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
6367         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
6368         strdup-posix.
6369
6370         * modules/strdup (Depends-on): Remove malloc-posix.
6371
6372 2008-09-20  Bruno Haible  <bruno@clisp.org>
6373
6374         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
6375         Wildenhues.
6376
6377 2008-09-20  Bruno Haible  <bruno@clisp.org>
6378
6379         Ensure that wint_t gets defined on IRIX 5.3.
6380         * lib/wchar.in.h (wint_t): Define if not defined by the system.
6381         * lib/wctype.in.h (wint_t): Likewise.
6382         (__wctype_wint_t): Remove type.
6383         (isw*): Use wint_t instead of __wctype_wint_t.
6384         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
6385         * modules/wchar (Files): Add m4/wint_t.m4.
6386         (Makefile.am): Substitute HAVE_WINT_T.
6387         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
6388         * tests/test-wctype.c: Check that wint_t is defined.
6389         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
6390         * doc/posix-headers/wctype.texi: Likewise.
6391         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
6392
6393 2008-09-18  Bruno Haible  <bruno@clisp.org>
6394
6395         * gnulib-tool (func_exit): Update comment.
6396
6397 2008-09-18  Simon Josefsson  <simon@josefsson.org>
6398
6399         * modules/getaddrinfo (Depends-on): Remove strdup, this module
6400         assumes strdup exists and does not depend on strdup to return
6401         ENOMEM on out of memory conditions.
6402
6403 2008-09-18  Bruno Haible  <bruno@clisp.org>
6404
6405         * lib/vasnprintf.c (VASNPRINTF): When printing ±0.0L in
6406         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
6407         digits for the exponent.
6408
6409 2008-09-18  Jim Meyering  <meyering@redhat.com>
6410             Bruno Haible  <bruno@clisp.org>
6411
6412         * lib/vasnprintf.c (decimal_point_char): Define also if
6413         NEED_PRINTF_INFINITE_LONG_DOUBLE.
6414
6415 2008-09-16  Bruno Haible  <bruno@clisp.org>
6416         and Eric Blake  <ebb9@byu.net>
6417
6418         vasnprintf: support Irix 5.3
6419         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
6420         that mishandle long double infinity.
6421         Reported by Tom G. Christensen.
6422
6423 2008-09-16  Bruno Haible  <bruno@clisp.org>
6424
6425         * doc/glibc-functions/scandir.texi: Mention the function is missing on
6426         Solaris 9.
6427         * doc/glibc-functions/alphasort.texi: Likewise.
6428         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
6429
6430 2008-09-16  Jim Meyering  <meyering@redhat.com>
6431
6432         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
6433         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
6434         a umask modification leak out of a subshell.  Otherwise, the
6435         opensolaris /bin/sh would be accepted and thus cause unwarranted
6436         failures in the coreutils test suite.
6437
6438 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
6439
6440         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
6441         to succeed.
6442
6443 2008-09-16  Jim Meyering  <meyering@redhat.com>
6444
6445         avoid spurious test failure when library is built without ACL support
6446         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
6447         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
6448         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
6449         * tests/test-copy-acl.sh: Likewise.
6450
6451 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6452
6453         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
6454         based on character occurrence counts.
6455
6456 2008-09-15  Eric Blake  <ebb9@byu.net>
6457
6458         tests: avoid some compiler warnings
6459         * tests/test-memchr.c (main): Pass NULL indirectly.
6460         * tests/test-closein.c (main): Avoid unused variable.
6461
6462 2008-09-15  Bruno Haible  <bruno@clisp.org>
6463
6464         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
6465         are missing on OpenBSD 4.0 individually.
6466         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
6467
6468 2008-09-15  Bruno Haible  <bruno@clisp.org>
6469
6470         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
6471         * doc/posix-functions/strerror.texi: Mention also Cygwin.
6472         * doc/posix-functions/perror.texi: Likewise.
6473         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
6474         is missing.
6475         Reported by Eric Blake.
6476
6477         * lib/errno.in.h: Use replacement values >= 2000.
6478         Reported by Eric Blake.
6479
6480 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6481
6482         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
6483         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
6484         limit.
6485         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
6486         compareseq was aborted.
6487
6488 2008-09-14  Bruno Haible  <bruno@clisp.org>
6489
6490         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
6491         yvec_edit_count.
6492         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
6493         (fstrcmp_bounded): Simplify result computation accordingly.
6494
6495 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6496
6497         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
6498         (fstrcmp): Define in terms of fstrcmp_bounded.
6499         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
6500         lower_bound argument.
6501         Return quickly if the result is certainly < lower_bound.
6502         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
6503
6504 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6505
6506         * lib/diffseq.h (EARLY_ABORT): New macro.
6507         (compareseq): Change return type to bool. Return true when EARLY_ABORT
6508         evaluates to true.
6509
6510 2008-09-14  Bruno Haible  <bruno@clisp.org>
6511
6512         * modules/perror-tests: New file.
6513         * tests/test-perror.sh: New file.
6514         * tests/test-perror.c: New file.
6515
6516         New module 'perror'.
6517         * lib/stdio.in.h (perror): New declaration.
6518         * lib/perror.c: New file.
6519         * m4/perror.m4: New file.
6520         * modules/perror: New file.
6521         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
6522         * doc/posix-functions/perror.texi: Mention the perror module.
6523         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
6524         REPLACE_PERROR.
6525         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
6526         REPLACE_PERROR.
6527
6528 2008-09-14  Bruno Haible  <bruno@clisp.org>
6529
6530         * modules/stdio (Makefile.am): Reorder to match the order in
6531         lib/stdio.in.h.
6532         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
6533
6534 2008-09-13  Bruno Haible  <bruno@clisp.org>
6535
6536         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
6537
6538 2008-09-13  Bruno Haible  <bruno@clisp.org>
6539
6540         Extend strerror to cover the added errno values.
6541         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
6542         (rpl_strerror): Provide error messages for the added errno values and
6543         for the WSA* values.
6544         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
6545         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
6546         strerror.
6547         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
6548         * modules/strerror (Depends-on): Add errno.
6549         * doc/posix-functions/strerror.texi: Document the change.
6550         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
6551         and EOVERFLOW.
6552
6553 2008-09-13  Bruno Haible  <bruno@clisp.org>
6554
6555         * modules/EOVERFLOW: Remove file.
6556         * m4/eoverflow.m4: Remove file.
6557         * modules/EOVERFLOW-tests: Remove file.
6558         * tests/test-EOVERFLOW.c: Remove file.
6559         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
6560         * modules/ftell (Depends-on): Likewise.
6561         * modules/getdelim (Depends-on): Likewise.
6562         * modules/getugroups (Depends-on): Likewise.
6563         * modules/poll (Depends-on): Likewise.
6564         * modules/snprintf (Depends-on): Likewise.
6565         * modules/sprintf-posix (Depends-on): Likewise.
6566         * modules/vasnprintf (Depends-on): Likewise.
6567         * modules/vasprintf (Depends-on): Likewise.
6568         * modules/vfprintf-posix (Depends-on): Likewise.
6569         * modules/vsnprintf (Depends-on): Likewise.
6570         * modules/vsprintf-posix (Depends-on): Likewise.
6571         * modules/xvasprintf (Depends-on): Likewise.
6572         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
6573         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
6574         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
6575         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
6576         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
6577         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
6578         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
6579         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
6580         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
6581         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
6582         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
6583         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
6584         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
6585         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
6586         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
6587         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
6588         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
6589         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
6590         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
6591         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
6592         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
6593         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
6594         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
6595         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
6596         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
6597         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
6598         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
6599         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
6600         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
6601         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
6602         * MODULES.html.sh: Remove EOVERFLOW.
6603         * NEWS: Mention the change.
6604
6605 2008-09-13  Bruno Haible  <bruno@clisp.org>
6606
6607         * modules/errno-tests: New file.
6608         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
6609
6610         * lib/errno.in.h: New file.
6611         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
6612         * modules/errno: New file.
6613         * doc/posix-headers/errno.texi: Update documentation.
6614         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
6615
6616 2008-09-13  Bruno Haible  <bruno@clisp.org>
6617
6618         * tests/test-poll.c: Use #if for native Windows, rather than testing
6619         __MSVCRT__.
6620
6621 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6622             Bruno Haible  <bruno@clisp.org>
6623
6624         * lib/glob.c: Don't include <pwd.h> on native Windows.
6625         (WINDOWS32): New macro.
6626         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
6627
6628 2008-09-13  Bruno Haible  <bruno@clisp.org>
6629
6630         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
6631         (ETIMEDOUT): Remove macro.
6632         (glthread_cond_timedwait_multithreaded): New declaration.
6633         (glthread_cond_timedwait): Use it.
6634         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
6635         (glthread_cond_timedwait_multithreaded): New function.
6636
6637 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
6638
6639         * modules/poll-tests: Do not check for io.h.
6640         * tests/test-poll.c: Check for __MSVCRT__ instead.
6641
6642 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
6643
6644         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
6645         * modules/poll-tests: Add inet_pton, stdbool, sockets.
6646         * tests/test-poll.c: Use them.  Use _pipe on Windows.
6647
6648 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
6649
6650         * modules/poll-tests: New.
6651         * tests/test-poll.c: New.
6652
6653 2008-09-12  Eric Blake  <ebb9@byu.net>
6654
6655         frexp: test for NetBSD failure on -0.0
6656         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
6657         not all, bugs from NetBSD 3.0 have been fixed.
6658         * doc/posix-functions/frexp.texi (frexp): Document bug.
6659         Reported by Thomas Klausner.
6660
6661         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
6662         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
6663         literal -0.0.
6664         Reported by Jonathan C. Patschke <jp@centtech.com>.
6665
6666 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6667
6668         * lib/glthread/cond.h: Use dummy implementation also if
6669         USE_WIN32_THREADS.
6670
6671 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6672
6673         * modules/fnmatch-posix (License): Change to LGPLv2+.
6674         * modules/fnmatch-gnu (License): Likewise.
6675
6676 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6677
6678         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
6679
6680 2008-09-11  Jim Meyering  <meyering@redhat.com>
6681
6682         * users.txt: Add gtk-vnc.
6683
6684 2008-09-08  Simon Josefsson  <simon@josefsson.org>
6685
6686         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
6687         rotate amounts.
6688
6689         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
6690         required for 16-bit and 8-bit rotates.
6691         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
6692         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
6693         UINT8_MAX instead of hard-coded constants.
6694         Suggested by Paul Eggert.
6695
6696 2008-09-07  Bruno Haible  <bruno@clisp.org>
6697
6698         * tests/test-striconveh.c (main): Check behaviour when converting from
6699         UTF-7.
6700
6701         Make striconveh work better with stateful encodings.
6702         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
6703         that iconv does not increment the inptr when returning -1/EINVAL.
6704
6705 2008-09-07  Bruno Haible  <bruno@clisp.org>
6706
6707         * build-aux/config.rpath: Update according to libtool-2.2.6.
6708         * build-aux/config.libpath: Likewise.
6709
6710 2008-09-06  Bruno Haible  <bruno@clisp.org>
6711
6712         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
6713         * lib/freadptr.c (freadptr): Likewise.
6714         * lib/freadseek.c (freadptrinc): Likewise.
6715         Reported by Simon Josefsson.
6716
6717 2008-09-06  Bruno Haible  <bruno@clisp.org>
6718
6719         * modules/freadptr (License): Change to LGPLv2+.
6720         * modules/freadseek (License): Likewise.
6721         Suggested by Eric Blake.
6722
6723         * modules/memchr2 (License): Change to LGPLv2+.
6724         Approved by Eric Blake.
6725
6726 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6727             Bruno Haible  <bruno@clisp.org>
6728
6729         Make gnulib-tool work with native 'sed' on AIX.
6730         * gnulib-tool (sed_noop): New variable.
6731         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
6732         func_add_or_update, func_create_testdir): Use it to initialize sed
6733         script variables.
6734         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6735
6736 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
6737             Bruno Haible  <bruno@clisp.org>
6738
6739         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
6740         also works after #include directives.
6741
6742 2008-09-04  Ondřej Vašík  <ovasik@redhat.com>
6743
6744         getdate.y: reject an out-of-range timezone value
6745         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
6746         the range [-24...+24].  When specified with only one or two digits,
6747         * tests/test-getdate.c: Tests for the fix.
6748         * doc/getdate.texi: Document this change.
6749
6750 2008-09-03  Bruno Haible  <bruno@clisp.org>
6751
6752         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
6753
6754 2008-09-02  Simon Josefsson  <simon@josefsson.org>
6755
6756         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
6757         <bruce.korb@gmail.com> with ideas from Ben Pfaff
6758         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
6759         Blake <ebb9@byu.net>.
6760
6761         * tests/test-bitrotate.c: Add more test vectors.
6762
6763 2008-09-02  Eric Blake  <ebb9@byu.net>
6764
6765         vasnprintf-posix: handle large precision via %.*d
6766         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
6767         when handling it ourselves.
6768         * tests/test-vasnprintf-posix.c (test_function): Add test.
6769         * tests/test-snprintf-posix.h (test_function): Likewise.
6770         * tests/test-sprintf-posix.h (test_function): Likewise.
6771         * tests/test-vasprintf-posix.c (test_function): Likewise.
6772         Reported by Alain Guibert.
6773
6774 2008-09-01  Eric Blake  <ebb9@byu.net>
6775
6776         c-stack: make configure-time check more robust
6777         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
6778         successful sigaction call.
6779         Reported by Tom G. Christensen.
6780
6781 2008-09-01  Bruno Haible  <bruno@clisp.org>
6782
6783         New module 'findprog-lgpl'.
6784         * modules/findprog-lgpl: New file.
6785         * lib/findprog-lgpl.c: New file.
6786         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
6787         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
6788         to decide whether to use strdup or xstrdup, concatenated_filename or
6789         xconcatenated_filename.
6790
6791 2008-09-01  Bruno Haible  <bruno@clisp.org>
6792
6793         Split module 'concat-filename' into 'concat-filename' (LGPL) and
6794         'xconcat-filename' (GPL).
6795         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
6796         (License): Change to LGPLv2+.
6797         * modules/xconcat-filename: New file.
6798         * lib/concat-filename.h (concatenated_filename): Change specification.
6799         (xconcatenated_filename): New declaration.
6800         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
6801         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
6802         memory situations.
6803         * lib/xconcat-filename.c: New file.
6804         * NEWS: Mention the change.
6805         * lib/findprog.c: Include concat-filename.h, not filename.h.
6806         (find_in_path): Use xconcatenated_filename instead of
6807         concatenated_filename.
6808         * lib/javacomp.c: Include concat-filename.h, not filename.h.
6809         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
6810         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
6811         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
6812         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
6813         instead of concatenated_filename.
6814         * lib/javaexec.c: Include concat-filename.h, not filename.h.
6815         (execute_java_class): Use xconcatenated_filename instead of
6816         concatenated_filename.
6817         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
6818         * modules/javacomp (Depends-on): Likewise.
6819         * modules/javaexec (Depends-on): Likewise.
6820
6821 2008-09-01  Bruno Haible  <bruno@clisp.org>
6822
6823         Split module 'filename' into 'filename' and 'concat-filename'.
6824         * modules/filename: Keep only lib/filename.h.
6825         (License): Change to LGPLv2+.
6826         * modules/concat-filename: New file, extracted from modules/filename.
6827         * lib/filename.h (concatenated_filename): Remove declaration.
6828         * lib/concat-filename.h: New file, extracted from lib/filename.h.
6829         * lib/concat-filename.c: Include concat-filename.h.
6830         * NEWS: Mention the change.
6831
6832 2008-09-01  Simon Josefsson  <simon@josefsson.org>
6833
6834         * lib/bitrotate.h (rotl8, rotr8): Add.
6835
6836         * modules/bitrotate (configure.ac): Need
6837         AC_REQUIRE([AC_C_INLINE]).
6838         (Description): Mention stdint.h.  Reported by Bruno Haible
6839         <bruno@clisp.org>.
6840
6841         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
6842         Paolo Bonzini <bonzini@gnu.org>.
6843
6844 2008-08-31  Bruno Haible  <bruno@clisp.org>
6845
6846         Assume Solaris specific bi-arch conventions on Solaris systems.
6847         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
6848         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
6849         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
6850         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
6851         like acl_libdirstem.
6852         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
6853         acl_libdirstem.
6854         * NEWS: Mention the change.
6855         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
6856
6857 2008-08-31  Jim Meyering  <meyering@redhat.com>
6858
6859         * lib/strftime.h: Add comments describing the two added arguments.
6860
6861         remove duplicate #include directives
6862         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
6863         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
6864
6865 2008-08-31  Bruno Haible  <bruno@clisp.org>
6866
6867         New module 'sigpipe-die'.
6868         * modules/sigpipe-die: New file.
6869         * lib/sigpipe-die.h: New file.
6870         * lib/sigpipe-die.c: New file.
6871         * MODULES.html.sh (Signal handling): Add sigpipe-die.
6872
6873 2008-08-31  Bruno Haible  <bruno@clisp.org>
6874
6875         Don't override previously installed signal handlers.
6876         * lib/fatal-signal.c (saved_sigactions): New variable.
6877         (uninstall_handlers): Reset the signal to the saved handler, not
6878         to SIG_DFL (except when ignored).
6879         (install_handlers): Save the previous handlers.
6880
6881 2008-08-30  Bruno Haible  <bruno@clisp.org>
6882
6883         * gnulib-tool (func_reset_sigpipe): New function.
6884         (func_get_automake_snippet, func_modules_transitive_closure,
6885         func_import): Invoke it before a join command that reads from stdin,
6886         to avoid "echo: write error: Broken pipe" error messages on stderr.
6887         Reported by Sam Steingold <sds@gnu.org>.
6888
6889 2008-08-30  Bruno Haible  <bruno@clisp.org>
6890
6891         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
6892         Code copied from m4/open.m4.
6893         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
6894         access and the filename ends in a slash. Code copied from lib/open.c.
6895         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
6896         * tests/test-fopen.c (main): Check against bug with trailing slash.
6897
6898 2008-08-29  Bruno Haible  <bruno@clisp.org>
6899
6900         Avoid some "gcc -pedantic" warnings.
6901         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
6902         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
6903         * lib/dirent.in.h: Likewise.
6904         * lib/fcntl.in.h: Likewise.
6905         * lib/float.in.h: Likewise.
6906         * lib/iconv.in.h: Likewise.
6907         * lib/inttypes.in.h: Likewise.
6908         * lib/locale.in.h: Likewise.
6909         * lib/math.in.h: Likewise.
6910         * lib/netinet_in.in.h: Likewise.
6911         * lib/search.in.h: Likewise.
6912         * lib/signal.in.h: Likewise.
6913         * lib/stdarg.in.h: Likewise.
6914         * lib/stdint.in.h: Likewise.
6915         * lib/stdio.in.h: Likewise.
6916         * lib/stdlib.in.h: Likewise.
6917         * lib/string.in.h: Likewise.
6918         * lib/strings.in.h: Likewise.
6919         * lib/sys_select.in.h: Likewise.
6920         * lib/sys_socket.in.h: Likewise.
6921         * lib/sys_stat.in.h: Likewise.
6922         * lib/sys_time.in.h: Likewise.
6923         * lib/sysexits.in.h: Likewise.
6924         * lib/time.in.h: Likewise.
6925         * lib/unistd.in.h: Likewise.
6926         * lib/wchar.in.h: Likewise.
6927         * lib/wctype.in.h: Likewise.
6928         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
6929         * modules/fchdir (Makefile.am): Likewise.
6930         * modules/fcntl (Makefile.am): Likewise.
6931         * modules/float (Makefile.am): Likewise.
6932         * modules/iconv_open (Makefile.am): Likewise.
6933         * modules/inttypes (Makefile.am): Likewise.
6934         * modules/locale (Makefile.am): Likewise.
6935         * modules/math (Makefile.am): Likewise.
6936         * modules/netinet_in (Makefile.am): Likewise.
6937         * modules/search (Makefile.am): Likewise.
6938         * modules/signal (Makefile.am): Likewise.
6939         * modules/stdarg (Makefile.am): Likewise.
6940         * modules/stdint (Makefile.am): Likewise.
6941         * modules/stdio (Makefile.am): Likewise.
6942         * modules/stdlib (Makefile.am): Likewise.
6943         * modules/string (Makefile.am): Likewise.
6944         * modules/strings (Makefile.am): Likewise.
6945         * modules/sys_select (Makefile.am): Likewise.
6946         * modules/sys_socket (Makefile.am): Likewise.
6947         * modules/sys_stat (Makefile.am): Likewise.
6948         * modules/sys_time (Makefile.am): Likewise.
6949         * modules/sysexits (Makefile.am): Likewise.
6950         * modules/time (Makefile.am): Likewise.
6951         * modules/unistd (Makefile.am): Likewise.
6952         * modules/wchar (Makefile.am): Likewise.
6953         * modules/wctype (Makefile.am): Likewise.
6954         Reported by Reuben Thomas <rrt@sc3d.org>.
6955
6956 2008-08-29  Bruno Haible  <bruno@clisp.org>
6957
6958         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
6959         any more.
6960
6961 2008-08-29  Simon Josefsson  <simon@josefsson.org>
6962
6963         * MODULES.html.sh (Misc): Add bitrotate.
6964
6965         * modules/bitrotate: New file.
6966
6967         * lib/bitrotate.h: New file.
6968
6969         * modules/bitrotate-tests: New file.
6970
6971         * tests/test-bitrotate.c: New file.
6972
6973         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
6974         on the bitrotate module.
6975
6976         * lib/arctwo.c: Use new bitrotate module.
6977
6978 2008-08-29  Jim Meyering  <meyering@redhat.com>
6979
6980         bootstrap: merge changes from coreutils
6981         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
6982         of copied files.  Remove a kludge, now that this is fixed.
6983         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
6984         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
6985         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
6986
6987 2008-08-29  Bruno Haible  <bruno@clisp.org>
6988
6989         * MODULES.html.sh: Remove --cvs-urls option.
6990
6991 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
6992
6993         maint.mk: adjust to file name change
6994         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
6995
6996 2008-08-28  Jim Meyering  <meyering@redhat.com>
6997
6998         * modules/getndelim2 (License): Relicense to LGPLv2+.
6999         Approved by Richard Stallman for the version of 1995, and by
7000         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
7001
7002 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
7003
7004         * lib/getdelim.c (flockfile, funlockfile): Make all of them
7005         dummy if one is not available.  Do not touch them if
7006         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
7007         (getc_maybe_unlocked): New.
7008         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
7009
7010 2008-08-26  Eric Blake  <ebb9@byu.net>
7011
7012         doc/INSTALL: resync from autoconf
7013         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
7014         (INSTALL_PRELUDE): Delete; this is done more efficiently by
7015         moving...
7016         * install.texi [!autoconf]: ...here.  Resync from autoconf.
7017         * INSTALL: Regenerate.
7018         * INSTALL.ISO: New file.
7019         * INSTALL.UTF-8: Likewise.
7020
7021 2008-08-26  Jim Meyering  <meyering@redhat.com>
7022
7023         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
7024         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
7025         these definitions conditional, so that they may be overridden, too.
7026
7027 2008-08-26  Bruno Haible  <bruno@clisp.org>
7028
7029         Generate INSTALL file variants with prettier quotes.
7030         * doc/Makefile (INSTALL_PRELUDE): New macro.
7031         (INSTALL): Use it.
7032         (INSTALL.ISO, INSTALL.UTF-8): New rules.
7033
7034 2008-08-26  Bruno Haible  <bruno@clisp.org>
7035
7036         Run makeinfo in an English locale.
7037         * doc/Makefile (MAKEINFO): New variable.
7038
7039 2008-08-26  Bruno Haible  <bruno@clisp.org>
7040
7041         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
7042         Suggested by Eric Blake.
7043
7044 2008-08-25  Bruno Haible  <bruno@clisp.org>
7045
7046         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
7047
7048 2008-08-25  Eric Blake  <ebb9@byu.net>
7049
7050         c-stack: test that stack overflow can be caught
7051         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
7052         that platform allows handling stack overflow; at least OS/2 EMX
7053         has sigaltstack, but crashes before transferring control to
7054         handler on stack overflow.
7055         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
7056         check for HAVE_STACK_OVERFLOW_HANDLING.
7057         Reported by Elbert Pol.
7058
7059 2008-08-25  Bruno Haible  <bruno@clisp.org>
7060
7061         * doc/posix-functions/strftime.texi: Fix description of strftime
7062         module.
7063
7064 2008-08-24  Bruno Haible  <bruno@clisp.org>
7065
7066         * tests/uniwidth/test-uc_width2.c: New file.
7067         * tests/uniwidth/test-uc_width2.sh: New file.
7068         * modules/uniwidth/width-tests (Files): Add the new files.
7069         (TESTS): Add uniwidth/test-uc_width2.sh.
7070         (TESTS_ENVIRONMENT): New variable.
7071         (check_PROGRAMS): Add test-uc_width2.
7072         (test_uc_width2_SOURCES): New variable.
7073
7074         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
7075         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
7076         not 0x00AB.
7077         Reported by Alexander V. Lukyanov <lav@netis.ru>.
7078
7079 2008-08-22  Eric Blake  <ebb9@byu.net>
7080
7081         test-lock, test-tls: mention why a test is skipped
7082         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
7083         skipped.
7084         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
7085
7086         count-one-bits: relax license
7087         * modules/count-one-bits (License): Relicense to LGPLv2+.
7088         Suggested by Ludovic Courtès, approved by Ben Pfaff.
7089
7090 2008-08-22  Andreas Schwab  <schwab@suse.de>
7091
7092         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
7093         Remove spurious space in assignment.
7094
7095 2008-08-21  Simon Josefsson  <simon@josefsson.org>
7096
7097         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
7098         Paul Eggert <eggert@CS.UCLA.EDU>.
7099
7100 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
7101
7102         * modules/gettext: Add m4/threadlib.m4.
7103
7104 2008-08-19  Eric Blake  <ebb9@byu.net>
7105
7106         test-c-stack: fix compilation failure on FreeBSD 5.0
7107         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
7108         headers before <sys/resource.h>.
7109         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
7110         the bug.
7111         Reported by Nelson H. F. Beebe.
7112
7113         strverscmp: migrate from "strverscmp.h" to <string.h>
7114         * modules/string (Makefile.am): Add new hooks.
7115         * modules/strverscmp (Files): Remove strverscmp.h.
7116         (Depends-on): Add string.
7117         (configure.ac): Add indicator.
7118         (Include): Mention new header.
7119         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
7120         defaults.
7121         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
7122         results.
7123         * lib/strverscmp.h: Delete.
7124         * lib/string.in.h (strverscmp): Provide declaration, when needed.
7125         * tests/test-strverscmp.c (includes): Adjust client.
7126         * lib/check-version.c (includes): Likewise.
7127         * NEWS: Document the change.
7128
7129         strverscmp: add unit test
7130         * modules/strverscmp-tests: New file.
7131         * tests/test-strverscmp.c: Likewise.
7132
7133 2008-08-19  Simon Josefsson  <simon@josefsson.org>
7134
7135         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
7136         regarding Windows crypto stuff, from Mono.
7137
7138 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
7139
7140         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
7141         if present, for intel RND.  Return error on failures.
7142
7143 2008-08-18  Ben Pfaff  <blp@gnu.org>
7144
7145         gitlog-to-changelog: give better diagnostic for failed pipe-open
7146         * build-aux/gitlog-to-changelog: Improve error message: suggest
7147         that the version of Git may be too old.
7148
7149 2008-08-18  Simon Josefsson  <simon@josefsson.org>
7150
7151         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
7152         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
7153
7154 2008-08-18  Bruno Haible  <bruno@clisp.org>
7155
7156         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
7157         pthread_in_use().
7158
7159 2008-08-18  Bruno Haible  <bruno@clisp.org>
7160
7161         * lib/glthread/threadlib.c: Include <pthread.h>.
7162
7163 2008-08-18  Bruno Haible  <bruno@clisp.org>
7164
7165         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
7166         glthread_recursive_lock_* macros.
7167         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
7168         Fix syntax error.
7169
7170 2008-08-18  Bruno Haible  <bruno@clisp.org>
7171
7172         * lib/glthread/thread.c: Avoid forcing a context switch right after
7173         thread creation.
7174
7175 2008-08-17  Bruno Haible  <bruno@clisp.org>
7176
7177         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
7178         * lib/glthread/thread.h: Provide Win32 specific implementation.
7179         * modules/thread (Files): Add lib/glthread/thread.c.
7180         (Depends-on): Add lock.
7181         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
7182
7183 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
7184
7185         New module 'yield'.
7186         * modules/yield: New file.
7187         * lib/glthread/yield.h: New file.
7188         * m4/yield.m4: New file.
7189         * MODULES.html.sh (Multithreading): Add yield.
7190
7191 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
7192
7193         New module 'thread'.
7194         * modules/thread: New file.
7195         * lib/glthread/thread.h: New file.
7196         * m4/thread.m4: New file.
7197         * MODULES.html.sh (Multithreading): Add thread.
7198
7199 2008-08-17  Bruno Haible  <bruno@clisp.org>
7200
7201         * lib/glthread/lock.h: Include <stdlib.h> always.
7202         * lib/glthread/tls.h: Likewise.
7203         * lib/glthread/cond.h: Likewise.
7204
7205 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
7206
7207         New module 'cond'.
7208         * modules/cond: New file.
7209         * lib/glthread/cond.h: New file.
7210         * lib/glthread/cond.c: New file.
7211         * m4/cond.m4: New file.
7212         * MODULES.html.sh (Multithreading): Add cond.
7213
7214 2008-08-16  Eric Blake  <ebb9@byu.net>
7215
7216         c-stack: fix regression on Irix 5.3 from 2008-06-21
7217         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
7218         sa_sigaction...
7219         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
7220         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
7221         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
7222         * modules/signal (Makefile.am): Use the value.
7223         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
7224         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
7225         * doc/posix-headers/signal.texi (signal.h): Document this
7226         portability issue.
7227         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
7228         Reported by Tom G. Christensen.
7229
7230 2008-08-17  Bruno Haible  <bruno@clisp.org>
7231
7232         New module 'threadlib'.
7233         * modules/threadlib: New file.
7234         * lib/glthread/threadlib.c: New file, extracted from
7235         lib/glthread/lock.c.
7236         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
7237         functions.
7238         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
7239         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
7240         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
7241         macros.
7242         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
7243         (gl_DISABLE_THREADS): Remove macro.
7244         * modules/lock (Files): Remove build-aux/config.rpath.
7245         (Depends-on): Remove havelib. Add threadlib.
7246         (configure.ac-early): Remove section.
7247         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
7248         * modules/tls (Depends-on): Remove lock. Add threadlib.
7249         (Link): New section, copied from threadlib.
7250         * MODULES.html.sh (Multithreading): Add threadlib.
7251
7252 2008-08-14  Bruno Haible  <bruno@clisp.org>
7253
7254         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
7255         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
7256         glthread_rwlock_unlock, glthread_rwlock_destroy,
7257         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
7258         glthread_recursive_lock_destroy): Define as macros always.
7259         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
7260         glthread_lock_lock.
7261         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
7262         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
7263         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
7264         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
7265         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
7266         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
7267         (glthread_recursive_lock_lock_func): Renamed from
7268         glthread_recursive_lock_lock.
7269         (glthread_recursive_lock_unlock_func): Renamed from
7270         glthread_recursive_lock_unlock.
7271         (glthread_recursive_lock_destroy_func): Renamed from
7272         glthread_recursive_lock_destroy.
7273
7274 2008-08-14  Bruno Haible  <bruno@clisp.org>
7275
7276         * lib/glthread/lock.h: Renamed from lib/lock.h.
7277         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
7278         * lib/glthread/tls.h: Renamed from lib/tls.h.
7279         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
7280         * lib/fstrcmp.c: Update includes.
7281         * lib/strsignal.c: Update includes.
7282         * modules/lock (Files, Makefile.am): Update.
7283         (Include): Change to "glthread/lock.h".
7284         * modules/tls (Files, Makefile.am): Update.
7285         (Include): Change to "glthread/tls.h".
7286         * tests/test-lock.c: Update includes.
7287         * tests/test-tls.c: Update includes.
7288         * NEWS: Mention the renamed header files.
7289
7290 2008-08-11  Jim Meyering  <meyering@redhat.com>
7291
7292         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
7293
7294 2008-08-11  Eric Blake  <ebb9@byu.net>
7295
7296         test-c-stack: avoid C99-ism
7297         * tests/test-c-stack.c (main): Fix whitespace, move declaration
7298         before statement.
7299         Reported by Alain Guibert.
7300
7301 2008-08-10  Jim Meyering  <meyering@redhat.com>
7302
7303         ensure that return value of uinttostr et al are not ignored
7304         * lib/inttostr.h (__GNUC_PREREQ): Define.
7305         (__attribute_warn_unused_result__): Define.
7306         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
7307
7308 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
7309
7310         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
7311         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
7312
7313 2008-08-07  Jim Meyering  <meyering@redhat.com>
7314
7315         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
7316
7317         * modules/mkstemp (License): Relicense under LGPLv2+.
7318         * modules/tempname (License): Likewise.
7319
7320 2008-08-06  Bruno Haible  <bruno@clisp.org>
7321
7322         * lib/poll.c (poll): Further micro-optimization.
7323
7324 2008-08-06  Jim Meyering  <meyering@redhat.com>
7325
7326         inet_pton.c: use locale-independent tolower
7327         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
7328         (inet_pton6): Use c_tolower rather than tolower.
7329         * modules/inet_pton (Depends-on): Add c-ctype.
7330
7331 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
7332
7333         * lib/poll.c (poll): Avoid division when timeout is 0, cache
7334         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
7335
7336 2008-08-06  Jim Meyering  <meyering@redhat.com>
7337
7338         * modules/inet_pton (License): Relicense under LGPLv2+.
7339
7340 2008-08-03  Bruno Haible  <bruno@clisp.org>
7341
7342         Additional non-aborting API for lock and tls.
7343         * lib/lock.h: Include <errno.h>.
7344         (glthread_lock_init): New macro/function.
7345         (gl_lock_init): Define as wrapper around glthread_lock_init.
7346         (glthread_lock_lock): New macro/function.
7347         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
7348         (glthread_lock_unlock): New macro/function.
7349         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
7350         (glthread_lock_destroy): New macro/function.
7351         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
7352         (glthread_rwlock_init): New macro/function.
7353         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
7354         (glthread_rwlock_rdlock): New macro/function.
7355         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
7356         (glthread_rwlock_wrlock): New macro/function.
7357         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
7358         (glthread_rwlock_unlock): New macro/function.
7359         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
7360         (glthread_rwlock_destroy): New macro/function.
7361         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
7362         (glthread_recursive_lock_init): New macro/function.
7363         (gl_recursive_lock_init): Define as wrapper around
7364         glthread_recursive_lock_init.
7365         (glthread_recursive_lock_lock): New macro/function.
7366         (gl_recursive_lock_lock): Define as wrapper around
7367         glthread_recursive_lock_lock.
7368         (glthread_recursive_lock_unlock): New macro/function.
7369         (gl_recursive_lock_unlock): Define as wrapper around
7370         glthread_recursive_lock_unlock.
7371         (glthread_recursive_lock_destroy): New macro/function.
7372         (gl_recursive_lock_destroy): Define as wrapper around
7373         glthread_recursive_lock_destroy.
7374         (glthread_once): New macro/function.
7375         (gl_once): Define as wrapper around glthread_once.
7376         Update function declarations.
7377         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
7378         glthread_rwlock_init. Return error code.
7379         (glthread_rwlock_rdlock_multithreaded): Renamed from
7380         glthread_rwlock_rdlock. Return error code.
7381         (glthread_rwlock_wrlock_multithreaded): Renamed from
7382         glthread_rwlock_wrlock. Return error code.
7383         (glthread_rwlock_unlock_multithreaded): Renamed from
7384         glthread_rwlock_unlock. Return error code.
7385         (glthread_rwlock_destroy_multithreaded): Renamed from
7386         glthread_rwlock_destroy. Return error code.
7387         (glthread_recursive_lock_init_multithreaded): Renamed from
7388         glthread_recursive_lock_init. Return error code.
7389         (glthread_recursive_lock_lock_multithreaded): Renamed from
7390         glthread_recursive_lock_lock. Return error code.
7391         (glthread_recursive_lock_unlock_multithreaded): Renamed from
7392         glthread_recursive_lock_unlock. Return error code.
7393         (glthread_recursive_lock_destroy_multithreaded): Renamed from
7394         glthread_recursive_lock_destroy. Return error code.
7395         (glthread_once_call): Make static.
7396         (glthread_once_multithreaded): Renamed from glthread_once.
7397         * lib/tls.h: Include <errno.h>.
7398         (glthread_tls_key_init): New macro/function.
7399         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
7400         (glthread_tls_set): New macro/function.
7401         (gl_tls_set): Define as wrapper around glthread_tls_set.
7402         (glthread_tls_key_destroy): New macro/function.
7403         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
7404         Update function declarations.
7405         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
7406         glthread_tls_get.
7407         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
7408
7409 2008-08-04  Eric Blake  <ebb9@byu.net>
7410
7411         gnumakefile: use space, not TAB, outside of targets
7412         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
7413
7414 2008-08-02  Jim Meyering  <meyering@redhat.com>
7415
7416         getdate.y: avoid locale-dependent date parsing failure
7417         In Turkish locales, getdate would fail to recognize keywords
7418         containing a lowercase "i".  The solution is not to rely on
7419         locale-sensitive case-conversion.
7420         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
7421         (lookup_word): Use c_toupper in place of toupper.
7422         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
7423         Reported by Vefa Bicakci <bicave@superonline.com> in
7424         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
7425         * modules/getdate (Depends-on): Add c-ctype.
7426
7427 2008-08-02  Bruno Haible  <bruno@clisp.org>
7428
7429         * gnulib-tool (func_import): When updating or creating a .gitignore
7430         file, prepend each added line with a slash, and ignore leading slashes
7431         from the existing lines.
7432         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
7433
7434 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7435
7436         Portability fix for GNU make 3.79.1.
7437         * top/GNUmakefile: Avoid 'else COND', which older GNU make
7438         versions do not understand.
7439
7440 2008-08-01  Bruno Haible  <bruno@clisp.org>
7441
7442         Work around bug of HP-UX 10.20 cc with -0.0 literal.
7443         * tests/test-isnanf.h (zero): New variable.
7444         (main): Avoid literal -0.0f.
7445         * tests/test-isnand.h (zero): New variable.
7446         (main): Avoid literal -0.0.
7447         * tests/test-isnanl.h (zero): New variable.
7448         (main): Avoid literal -0.0L.
7449         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
7450         (test_float, test_double, test_long_double): Avoid literals -0.0f,
7451         -0.0, -0.0L.
7452         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
7453         (test_signbitd): Avoid literal -0.0.
7454         (test_signbitl): Avoid literal -0.0L.
7455         * tests/test-ceilf1.c (zero): New variable.
7456         (main): Avoid literal -0.0f.
7457         * tests/test-ceill.c (zero): New variable.
7458         (main): Avoid literal -0.0L.
7459         * tests/test-floorf1.c (zero): New variable.
7460         (main): Avoid literal -0.0f.
7461         * tests/test-floorl.c (zero): New variable.
7462         (main): Avoid literal -0.0L.
7463         * tests/test-roundf1.c (zero): New variable.
7464         (main): Avoid literal -0.0f.
7465         * tests/test-round1.c (zero): New variable.
7466         (main): Avoid literal -0.0.
7467         * tests/test-roundl.c (zero): New variable.
7468         (main): Avoid literal -0.0L.
7469         * tests/test-truncf1.c (zero): New variable.
7470         (main): Avoid literal -0.0f.
7471         * tests/test-trunc1.c (zero): New variable.
7472         (main): Avoid literal -0.0.
7473         * tests/test-truncl.c (zero): New variable.
7474         (main): Avoid literal -0.0L.
7475         * tests/test-frexp.c (zero): New variable.
7476         (main): Avoid literal -0.0.
7477         * tests/test-frexpl.c (zero): New variable.
7478         (main): Avoid literal -0.0L.
7479         * tests/test-ldexpl.c (zero): New variable.
7480         (main): Avoid literal -0.0L.
7481         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
7482         (zerod, zerol): New variables.
7483         (test_function): Avoid literals -0.0, -0.0L.
7484         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
7485         (zerod, zerol): New variables.
7486         (test_function): Avoid literals -0.0, -0.0L.
7487         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
7488         (zerod, zerol): New variables.
7489         (test_function): Avoid literals -0.0, -0.0L.
7490         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
7491         (zerod, zerol): New variables.
7492         (test_function): Avoid literals -0.0, -0.0L.
7493         * tests/test-strtod.c (zero): New variable.
7494         (main): Avoid literal -0.0.
7495         Reported by Jonathan C. Patschke <jp@centtech.com>.
7496
7497 2008-07-31  Jim Meyering  <meyering@redhat.com>
7498
7499         sha256.h: correct definition of SHA224_DIGEST_SIZE
7500         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
7501         Reported by Paulie Pena IV <paulie4@gmail.com>.
7502         Define as 224 / 8, rather than as a literal.
7503         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
7504         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
7505         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
7506
7507 2008-07-31  Bruno Haible  <bruno@clisp.org>
7508
7509         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
7510         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
7511         Reported by Jonathan Patschke <jp@centtech.com>.
7512
7513 2008-07-31  Bruno Haible  <bruno@clisp.org>
7514
7515         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
7516         Reported by Paolo Bonzini <bonzini@gnu.org>.
7517
7518 2008-07-30  Eric Blake  <ebb9@byu.net>
7519
7520         test-strtod: allow compilation without -lm
7521         * tests/test-strtod.c (main): Avoid link dependence on fabs.
7522         Reported by Dennis Clarke <blastwave@gmail.com>.
7523
7524 2008-07-28  Jim Meyering  <meyering@redhat.com>
7525
7526         bootstrap: work also when there are no .po files in po/
7527         * build-aux/bootstrap (update_po_files): Complete the change
7528         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
7529
7530 2008-07-27  Jim Meyering  <meyering@redhat.com>
7531
7532         * users.txt: Add zile.
7533
7534 2008-07-26  Ben Pfaff  <blp@gnu.org>
7535
7536         Add missing dependencies on new m4/exponent[fdl].m4 files.
7537         * modules/isnanf-nolibm: Add m4/exponentf.m4.
7538         * modules/isnand-nolibm: Add m4/exponentd.m4.
7539         * modules/isnanl-nolibm: Add m4/exponentl.m4.
7540         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
7541         m4/isnan[fdl].m4, because the macros actually used moved.
7542         Reported by Jim Meyering.
7543
7544 2008-07-14  Ben Pfaff  <blp@gnu.org>
7545
7546         Add isinf module.
7547         * lib/isinf.c: New file.
7548         * lib/math.in.h: Define isinf macro if we have decided to replace
7549         it.
7550         * m4/isinf.m4: New file.
7551         * m4/math_h.m4: Initialize and substitute variables for isinf
7552         module.
7553         * modules/isinf: New file.
7554         * modules/isinf-tests: New file.
7555         * modules/math: Add substitutions for new module.
7556         * tests/test-isinf.c: New file.
7557         * doc/posix-functions/isinf.texi: Mention new module.
7558         * MODULES.html.sh: Mention new module.
7559
7560 2008-07-14  Ben Pfaff  <blp@gnu.org>
7561
7562         Factor out some macros for use by additional modules.
7563         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
7564         exponentf.m4.
7565         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
7566         exponentd.m4.
7567         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
7568         file exponentl.m4.
7569         * m4/exponentf.m4: New file.
7570         * m4/exponentd.m4: New file.
7571         * m4/exponentl.m4: New file.
7572         * modules/isnanf: Use new file m4/exponentf.m4.
7573         * modules/isnand: Use new file m4/exponentd.m4.
7574         * modules/isnanl: Use new file m4/exponentl.m4.
7575
7576 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
7577
7578         mktime.c: normalize tp->tm_isdst value to -1/0/1.
7579         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
7580         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
7581         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
7582
7583         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
7584         readlink on platforms without PATH_MAX.
7585
7586 2008-07-21  Eric Blake  <ebb9@byu.net>
7587
7588         Warn, not fail, on stale version.
7589         * top/GNUmakefile (_curr-ver): Tone down previous patch.
7590
7591         Don't allow installation with stale devel version number.
7592         * top/GNUmakefile (_is-install-target): New macro.
7593         (_curr-ver): Forbid installation with stale version number.
7594
7595 2008-07-20  Bruno Haible  <bruno@clisp.org>
7596
7597         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
7598         TESTS_ENVIRONMENT.
7599         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
7600
7601 2008-07-20  Bruno Haible  <bruno@clisp.org>
7602
7603         * lib/c-stack.h (c_stack_action): Add documentation.
7604         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
7605
7606 2008-07-20  Bruno Haible  <bruno@clisp.org>
7607
7608         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
7609         * modules/readlink (License): Likewise.
7610
7611 2008-07-17  Eric Blake  <ebb9@byu.net>
7612
7613         * modules/c-stack (Link): Fix typo.
7614
7615         Make c-stack use libsigsegv, when available.
7616         * modules/c-stack (Depends-on): Add libsigsegv.
7617         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
7618         needed.
7619         * lib/c-stack.c (SIGSTKSZ): Define fallback.
7620         (segv_handler, overflow_handler, c_stack_action)
7621         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
7622         implementation when libsigsegv is available, but only when using
7623         the library is necessary.
7624         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
7625         comment, explaining why XSI check fails on Linux.
7626         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
7627         * tests/test-c-stack2.sh: Tweak skip message.
7628         * NEWS: Document new link-time requirements.
7629
7630 2008-07-16  Eric Blake  <ebb9@byu.net>
7631
7632         c-stack: Expose false positives when not using libsigsegv.
7633         * modules/c-stack-tests (Files): Expand test.
7634         * tests/test-c-stack.c (main): Add means to conditionally trigger
7635         non-overflow SIGSEGV.
7636         * tests/test-c-stack2.sh: New file.
7637
7638 2008-07-14  Bruno Haible  <bruno@clisp.org>
7639
7640         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
7641         Reported by Eric Blake.
7642
7643 2008-07-14  Sam Steingold  <sds@gnu.org>
7644             Bruno Haible  <bruno@clisp.org>
7645
7646         New module libsigsegv.
7647         * modules/libsigsegv: New file.
7648         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
7649         modifications.
7650         * MODULES.html.sh (Signal handling): New section.
7651
7652 2008-07-14  Bruno Haible  <bruno@clisp.org>
7653
7654         * modules/unictype/ctype-* (Description): Add the word "function".
7655         Improves the resulting doc in MODULES.html.
7656
7657 2008-07-12  Ben Pfaff  <blp@gnu.org>
7658
7659         Add longlong module.
7660         * modules/longlong: New file.
7661
7662 2008-07-12  Bruno Haible  <bruno@clisp.org>
7663
7664         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
7665         to empty.
7666
7667 2008-07-10  Ben Pfaff  <blp@gnu.org>
7668
7669         Add isnan module.
7670         * doc/posix-functions/isnan.texi: Mention new module.
7671         * lib/math.in.h: Define isnan macro if we have decided to replace
7672         it.
7673         * m4/isnan.m4: New file.
7674         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
7675         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
7676         also.
7677         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
7678         redundancy.
7679         * m4/math_h.m4: Initialize and substitute variables for isnan
7680         module.
7681         * modules/isnan: New file.
7682         * modules/isnan-tests: New file.
7683         * modules/math: Add substitutions for new module.
7684         * tests/test-isnan.c: New file.
7685         * MODULES.html.sh: Mention new module.
7686
7687 2008-07-10  Ben Pfaff  <blp@gnu.org>
7688
7689         Add isnanf module.
7690         * lib/isnanf.m4: New file.
7691         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
7692         (gl_HAVE_ISNANF_IN_LIBM): New macro.
7693         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
7694         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
7695         * modules/isnanf: New file.
7696         * modules/isnanf-tests: New file.
7697         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
7698         files.
7699         * tests/test-isnanf-nolibm.c: factored most of its contents into
7700         new file tests/test-isnanf.h.
7701         * tests/test-isnanf.h: New file.
7702         * tests/test-isnanf.c: New file.
7703         * MODULES.html.sh: Mention new module.
7704         * doc/glibc-functions/isnanf.texi: Mention new module.
7705
7706 2008-07-10  Ben Pfaff  <blp@gnu.org>
7707
7708         Add isnand module.
7709         * lib/isnand.h: New file.
7710         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
7711         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
7712         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
7713         functionality also.
7714         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
7715         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
7716         (gl_HAVE_ISNAND_IN_LIBM): New macro.
7717         * modules/isnand: New file.
7718         * modules/isnand-tests: New file.
7719         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
7720         files.
7721         * tests/test-isnand-nolibm.c: factored most of its contents into
7722         new file tests/test-isnand.h.
7723         * tests/test-isnand.h: New file.
7724         * tests/test-isnand.c: New file.
7725         * MODULES.html.sh: Mention new module.
7726
7727 2008-07-10  Ben Pfaff  <blp@gnu.org>
7728
7729         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
7730         * lib/isnand.h: Rename lib/isnand-nolibm.h.
7731         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
7732         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
7733         * modules/isnanf-nolibm: Update references to renamed files.
7734         * modules/isnand-nolibm: Likewise.
7735         * modules/isnanf-nolibm-tests: Likewise.
7736         * modules/isnand-nolibm-tests: Likewise.
7737         * lib/frexp.c: Likewise.
7738         * lib/isfinite.c: Likewise.
7739         * lib/signbitd.c: Likewise.
7740         * lib/signbitf.c: Likewise.
7741         * lib/vasnprintf.c: Likewise.
7742         * tests/test-ceilf1.c: Likewise.
7743         * tests/test-ceilf2.c: Likewise.
7744         * tests/test-floorf1.c: Likewise.
7745         * tests/test-floorf2.c: Likewise.
7746         * tests/test-frexp.c: Likewise.
7747         * tests/test-round1.c: Likewise.
7748         * tests/test-round2.c: Likewise.
7749         * tests/test-roundf1.c: Likewise.
7750         * tests/test-strtod.c: Likewise.
7751         * tests/test-trunc1.c: Likewise.
7752         * tests/test-trunc2.c: Likewise.
7753         * tests/test-truncf1.c: Likewise.
7754         * tests/test-truncf2.c: Likewise.
7755         * NEWS: Mention the renamed header files.
7756
7757 2008-07-11  Jim Meyering  <meyering@redhat.com>
7758
7759         vc-list-files: make the last-resort awk code more portable
7760         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
7761         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
7762         does not support it.
7763
7764 2008-07-10  Eric Blake  <ebb9@byu.net>
7765
7766         Work with tar's bootstrap.
7767         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
7768         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
7769         an m4 comment.
7770
7771 2008-07-09  Jim Meyering  <meyering@redhat.com>
7772
7773         posix-shell.m4: fix typo that made this test malfunction
7774         * m4/posix-shell.m4: Remove capitalization in variable name.
7775
7776 2008-07-08  Bruno Haible  <bruno@clisp.org>
7777
7778         * m4/onceonly.m4: Update comments.
7779         Reported by Ben Pfaff <blp@cs.stanford.edu>.
7780
7781 2008-07-04  Jim Meyering  <meyering@redhat.com>
7782
7783         * users.txt: Add vc-dwim.
7784         (bison, coreutils): Use the gitweb URL.
7785
7786 2008-07-03  Jim Meyering  <meyering@redhat.com>
7787
7788         * users.txt: Add libffcall.  From Sam Steingold.
7789
7790 2008-07-03  Ondřej Vašík  <ovasik@redhat.com>
7791
7792         getdate.y: do not ignore TZ with relative day, month or year offset
7793         * lib/getdate.y (get_date): Move the tz-handling block to follow the
7794         relative-date-handling, since otherwise, the latter would clobber the
7795         sole output (an updated Start value) of the tz-handling block.
7796         * tests/test-getdate.c: Tests for the fix
7797
7798 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7799
7800         Recognize 'foo_LIBRARIES += libgnu.a'.
7801         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
7802         makefile snippet has already specified an installation location,
7803         also using '+='.
7804
7805 2008-07-02  Ondřej Vašík  <ovasik@redhat.com>
7806
7807         getdate.y: factor out common actions
7808         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
7809         Use them in place of open-coded actions.
7810
7811 2008-07-01  Simon Josefsson  <simon@josefsson.org>
7812
7813         Add self-test for getdate module.
7814         * modules/getdate-tests: New file.
7815         * tests/test-getdate.c: New file.
7816
7817 2008-06-29  Bruno Haible  <bruno@clisp.org>
7818
7819         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
7820         .gitignore.
7821         Reported by Sylvain Beucler <beuc@beuc.net>.
7822
7823 2008-06-29  Bruno Haible  <bruno@clisp.org>
7824
7825         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
7826         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
7827
7828 2008-06-29  Bruno Haible  <bruno@clisp.org>
7829
7830         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
7831         EXTRA_DIST.
7832         Reported by Sylvain Beucler <beuc@beuc.net>.
7833
7834 2008-06-26  Jim Meyering  <meyering@redhat.com>
7835
7836         make several modules depend on the "open" module
7837         This provides slightly increased consistency when opening-for-write
7838         the name of a non-directory spelled with a trailing slash.
7839         * modules/chdir-safer: Likewise.
7840         * modules/chown: Likewise.
7841         * modules/clean-temp: Likewise.
7842         * modules/copy-file: Likewise.
7843         * modules/fchdir: Likewise.
7844         * modules/fcntl-safer: Likewise.
7845         * modules/pipe: Likewise.
7846         * modules/utime: Likewise.
7847         Prompted by Eric Blake and Bruno Haible.
7848
7849 2008-06-24  Andreas Schwab  <schwab@suse.de>
7850
7851         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
7852         literals can be used as initializers for global variables.
7853
7854 2008-06-23  Eric Blake  <ebb9@byu.net>
7855
7856         Make gnulib-cache.m4 easier to diff.
7857         * gnulib-tool (func_import): Allow newlines when reading cached
7858         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
7859
7860 2008-06-23  Bruno Haible  <bruno@clisp.org>
7861
7862         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
7863         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
7864         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
7865         m4/signalblocking.m4.
7866         (gl_PREREQ_SIGACTION): Don't invoke it.
7867         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
7868         gl_PREREQ_SIG_HANDLER_H.
7869         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
7870         Don't check for sigaction here.
7871
7872 2008-06-23  Bruno Haible  <bruno@clisp.org>
7873
7874         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
7875         (install_handlers): Don't set the SA_RESETHAND flag.
7876
7877 2008-06-23  Bruno Haible  <bruno@clisp.org>
7878
7879         * m4/sigaction.m4: Comment fixes.
7880         * lib/signal.in.h: Likewise.
7881
7882 2008-06-23  Eric Blake  <ebb9@byu.net>
7883
7884         Fix typo.
7885         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
7886
7887         Avoid SA_ namespace.
7888         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
7889         Reported by Ralf Wildenhues.
7890
7891         Avoid test failure due to SA_RESTORER.
7892         * tests/test-sigaction.c (SA_MASK): New macro.
7893         (main): Avoid failing due to extension flags being set.
7894         Reported by Jim Meyering.
7895
7896         Revert use of sig-handler.h in sigprocmask.c.
7897         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
7898         it requires the existence of struct sigaction.
7899         * lib/sigprocmask.c (handler_t): Restore typedef.
7900         (rpl_signal, old_handlers): Use local type.
7901
7902 2008-06-22  Bruno Haible  <bruno@clisp.org>
7903
7904         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
7905         conditionally.
7906         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
7907
7908 2008-06-22  Bruno Haible  <bruno@clisp.org>
7909
7910         * doc/posix-functions/siginterrupt.texi: Move note.
7911
7912         * lib/signal.in.h (SA_RESTART): New macro.
7913         * lib/sigaction.c: Update comment.
7914
7915         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
7916
7917         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
7918         (gl_PREREQ_SIGPROCMASK): Invoke it.
7919         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
7920
7921         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
7922
7923         * lib/sigprocmask.c: Update a comment.
7924
7925 2008-06-21  Eric Blake  <ebb9@byu.net>
7926
7927         Use sigaction module rather than signal().
7928         * modules/c-stack (Depends-on): Add sigaction.
7929         * modules/fatal-signal (Depends-on): Likewise.
7930         * modules/nanosleep (Depends-on): Likewise.
7931         * modules/sigprocmask (Files): Add sig-handler.h.
7932         * modules/sigaction (Files): Likewise.
7933         * lib/sig-handler.h (get_handler): New file, suggested by Paul
7934         Eggert.
7935         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
7936         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
7937         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
7938         (init_fatal_signals): Likewise.
7939         * lib/nanosleep.c (rpl_nanosleep): Likewise.
7940         (siginterrupt): Delete fallback.
7941         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
7942         instead.
7943         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
7944         siginterrupt.
7945
7946         New module sigaction, for mingw.
7947         * modules/sigaction: New module...
7948         * modules/sigaction-tests: ...and its test.
7949         * m4/sigaction.m4: New file.
7950         * lib/sigaction.c: Likewise.
7951         * tests/test-sigaction.c: Likewise.
7952         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
7953         * modules/signal (Makefile.am): Likewise.
7954         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
7955         needed.
7956         * doc/posix-headers/signal.texi (signal.h): Mention provided
7957         types.
7958         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
7959         that sigaction is preferable.
7960         * doc/posix-functions/sigaction.texi (sigaction): Mention new
7961         module.
7962         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
7963         sigaction.
7964
7965         Improve robustness of sigprocmask by overriding signal.
7966         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
7967         is in use.
7968         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
7969         (SIGKILL, SIGSTOP): Provide fallbacks.
7970         (rpl_signal): Implement.
7971         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
7972         signal can be called inside handlers.
7973
7974         Fix nanosleep module on mingw.
7975         * modules/nanosleep (Depends-on): Add sys_select.
7976         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
7977
7978         Fix licensing of sigprocmask.
7979         * modules/raise (License): Relicense as LGPL.
7980
7981 2008-06-21  Bruno Haible  <bruno@clisp.org>
7982
7983         * lib/propername.c (proper_name_utf8): Don't use the transliterated
7984         result if it contains question marks.
7985         Reported by Michael Geng <linux@michaelgeng.de>.
7986
7987 2008-06-19  Bruno Haible  <bruno@clisp.org>
7988
7989         Fix CVS-ism.
7990         * doc/gnulib.texi: Include updated-stamp.texi.
7991         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
7992         (updated-stamp.texi): New rule.
7993         (gnulib.info): Depend on it.
7994         * doc/.gitignore: Add updated-stamp.texi.
7995         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
7996
7997 2008-06-19  Bruno Haible  <bruno@clisp.org>
7998
7999         * doc/Makefile (gnulib.info): Update and simplify dependencies.
8000         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
8001
8002 2008-06-19  Eric Blake  <ebb9@byu.net>
8003
8004         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
8005         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
8006         Reported by Stepan Kasal.
8007
8008 2008-06-18  Bruno Haible  <bruno@clisp.org>
8009
8010         * lib/fatal-signal.c (init_fatal_signals): Add comment.
8011         Reported by Eric Blake.
8012
8013 2008-06-18  Eric Blake  <ebb9@byu.net>
8014
8015         Work around cygwin 1.5.25 strsignal bug.
8016         * tests/test-strsignal.c: Allow for const char *.
8017         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
8018
8019 2008-06-18  Simon Josefsson  <simon@josefsson.org>
8020
8021         * users.txt: Update URL to article and add author/date
8022         information.
8023
8024 2008-06-17  Bruno Haible  <bruno@clisp.org>
8025
8026         New macro gl_DISABLE_THREADS.
8027         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
8028         if the user did not pass --enable-threads or --disable-threads option.
8029         (gl_DISABLE_THREADS): New macro.
8030         Reported by Eric Blake <ebb9@byu.net>.
8031
8032 2008-06-17  Bruno Haible  <bruno@clisp.org>
8033
8034         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
8035         when the macro ignores it.
8036         Based on a patch by Eric Blake <ebb9@byu.net>.
8037
8038 2008-06-17  Bruno Haible  <bruno@clisp.org>
8039
8040         * modules/tls (License): Change to LGPLv2+.
8041         Reported by Eric Blake.
8042
8043 2008-06-17  Eric Blake  <ebb9@byu.net>
8044
8045         Simplify c-stack prerequisites.
8046         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
8047         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
8048         no longer requires <ucontext.h> to exist.  Optimize setrlimit
8049         check.
8050         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
8051         <sys/resource.h>.
8052
8053         Move c-stack test into testsuite.
8054         * modules/c-stack-tests: New file.
8055         * lib/c-stack.c [DEBUG]: Move test program...
8056         * tests/test-c-stack.c: ...into this new file.  Skip rather than
8057         fail test if sigaltstack is lacking.
8058         * tests/test-c-stack.sh: New driver file.
8059
8060 2008-06-16  Eric Blake  <ebb9@byu.net>
8061
8062         Use raise module consistently.
8063         * modules/fatal-signal (Depends-on): Add raise.
8064         * modules/sigprocmask (Depends-on): Likewise.
8065         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
8066         * lib/sigprocmask.c (sigprocmask): Likewise.
8067         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
8068         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
8069
8070         Fix compliance bug in sigpending.
8071         * lib/sigprocmask.c (sigpending): Return pending array via
8072         parameter, not return value.
8073
8074 2008-06-14  Eric Blake  <ebb9@byu.net>
8075
8076         Improve obstack-printf test code.
8077         * tests/test-obstack-printf.c (test_function): Fix comment, and
8078         simplify usage of obstack_* in macros.  Add a test for coverage.
8079         Reported by Bruno Haible.
8080
8081 2008-06-14  Bruno Haible  <bruno@clisp.org>
8082
8083         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
8084         array size as a constant, not as a const variable.
8085         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
8086         AC_USE_SYSTEM_EXTENSIONS.
8087         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
8088         Test whether the obstack_printf function actually exists.
8089         * modules/obstack-printf (Depends-on): Add extensions.
8090         (Include): Remove obstack.h.
8091         * modules/obstack-printf-posix (Depends-on): Add extensions.
8092         (Include): Remove obstack.h.
8093
8094 2008-06-13  Eric Blake  <ebb9@byu.net>
8095
8096         Add obstack-printf and obstack-printf-posix modules.
8097         * modules/obstack-printf: New file.
8098         * modules/obstack-printf-posix: Likewise.
8099         * MODULES.html.sh (Misc): Mention them.
8100         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
8101         Likewise.
8102         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
8103         Likewise.
8104         * modules/stdio (Makefile.am): Accomodate new modules.
8105         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
8106         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
8107         Declare.
8108         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
8109         functions.
8110         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
8111         (gl_REPLACE_OBSTACK_PRINTF): New macros
8112         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
8113         * tests/test-obstack-printf.c: New file.
8114         * modules/obstack-printf-tests: Likewise.
8115         * modules/obstack-printf-posix-tests: Likewise.
8116
8117 2008-06-11  Bruno Haible  <bruno@clisp.org>
8118
8119         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
8120         * lib/open.c: Include errno.h.
8121         (open): Fail when attempting to write to a file that has a trailing
8122         slash.
8123         * tests/test-open.c (main): Test against trailing slash bug.
8124         * doc/posix-functions/open.texi: Mention the trailing slash bug.
8125
8126 2008-06-10  Bruno Haible  <bruno@clisp.org>
8127
8128         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
8129         for $? to work inside the trap command, with various /bin/sh-s.
8130         * tests/test-vc-list-files-cvs.sh: Likewise.
8131
8132 2008-06-10  Bruno Haible  <bruno@clisp.org>
8133
8134         * lib/acl-internal.h: Don't include gettext.h here.
8135         * lib/set-mode-acl.c: Include gettext.h here.
8136         * lib/copy-acl.c: Likewise.
8137
8138 2008-06-10  Bruno Haible  <bruno@clisp.org>
8139
8140         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
8141         * lib/wait-process.c (wait_subprocess): Likewise.
8142         * lib/execute.h (execute): Add termsigp argument.
8143         * lib/execute.c (execute): Likewise.
8144         * lib/csharpcomp.c (compile_csharp_using_pnet,
8145         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
8146         * lib/csharpexec.c (execute_csharp_using_pnet,
8147         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
8148         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
8149         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
8150         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
8151         is_jikes_present): Update.
8152         * lib/javaexec.c (execute_java_class): Update.
8153         * lib/javaversion.c (execute_and_read_line): Update.
8154         * NEWS: Document the changes.
8155         Reported by Eric Blake.
8156
8157 2008-06-10  Eric Blake  <ebb9@byu.net>
8158
8159         Add missing include.
8160         * tests/test-strstr.c (includes): Add <signal.h>.
8161         * tests/test-strcasestr.c (includes): Likewise.
8162         * tests/test-memmem.c (includes): Likewise.
8163
8164 2008-06-10  Bruno Haible  <bruno@clisp.org>
8165
8166         * lib/wait-process.c (wait_subprocess): Add an assertion.
8167
8168 2008-06-10  Bruno Haible  <bruno@clisp.org>
8169
8170         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
8171
8172 2008-06-10  Bruno Haible  <bruno@clisp.org>
8173
8174         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
8175         using alarm().
8176         * tests/test-strcasestr.c (main): Likewise.
8177         * tests/test-strstr.c (main): Likewise.
8178
8179 2008-06-09  Bruno Haible  <bruno@clisp.org>
8180
8181         Work around the Solaris 10 ACE ACLs ABI change.
8182         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
8183         declare if ACL_NO_TRIVIAL is present.
8184         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
8185         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
8186         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
8187         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
8188         define if ACL_NO_TRIVIAL is present.
8189         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
8190         and use the current ABI.
8191         (file_has_acl): Use same #if condition as elsewhere.
8192         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
8193         in use, and use the current ABI.
8194         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
8195         Reported by Jim Meyering.
8196
8197 2008-06-09  Eric Blake  <ebb9@byu.net>
8198
8199         Work around environments that (stupidly) ignore SIGALRM.
8200         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
8201         before using alarm().
8202         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8203         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
8204         Reported by Ian Beckwith <ianb@erislabs.net>.
8205
8206         Produce autobuild blurb earlier in log.
8207         * modules/autobuild (configure.ac-early): Move AB_INIT here.
8208
8209 2008-06-09  Jim Meyering  <meyering@redhat.com>
8210         and Ondřej Vašík  <ovasik@redhat.com>
8211
8212         utimens.c: correct kernel bug work-around
8213         Ondřej Vašík found that the invalid return value of 280 indicates
8214         failure, not success, and the kernel bug we're trying to work
8215         around affects not just the utimensat call, but also the fallback
8216         futimens call.
8217         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
8218         not success.
8219         [HAVE_FUTIMENS]: Use the same work-around, here.
8220
8221 2008-06-09  Jim Meyering  <meyering@redhat.com>
8222
8223         add more guards around definition of ACE_-related code
8224         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
8225         ALLOW and ACE_OWNER are also defined.
8226
8227 2008-06-08  Bruno Haible  <bruno@clisp.org>
8228
8229         * lib/acl-internal.h: Add me as co-author.
8230         * lib/file-has-acl.c: Likewise.
8231         * lib/set-mode-acl.c: Likewise.
8232         * lib/copy-acl.c: Likewise.
8233
8234 2008-06-08  Bruno Haible  <bruno@clisp.org>
8235
8236         Add support for AIX ACLs.
8237         * lib/acl-internal.h (acl_nontrivial): New declaration.
8238         * lib/file-has-acl.c (acl_nontrivial): New function.
8239         (file_has_acl): Add implementation using AIX 4 ACL API.
8240         * lib/set-mode-acl.c (qset_acl): Likewise.
8241         * lib/copy-acl.c (qcopy_acl): Likewise.
8242
8243 2008-06-08  Bruno Haible  <bruno@clisp.org>
8244
8245         Add support for HP-UX ACLs.
8246         * lib/acl-internal.h (acl_nontrivial): New declaration.
8247         * lib/file-has-acl.c (acl_nontrivial): New function.
8248         (file_has_acl): Add implementation using HP-UX 11 ACL API.
8249         * lib/set-mode-acl.c (qset_acl): Likewise.
8250         * lib/copy-acl.c (qcopy_acl): Likewise.
8251
8252 2008-06-08  Bruno Haible  <bruno@clisp.org>
8253
8254         Add support for Cygwin ACLs.
8255         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
8256         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
8257         the chmod_or_fchmod call.
8258         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
8259
8260 2008-06-08  Bruno Haible  <bruno@clisp.org>
8261
8262         Fix bug with setuid modes in Solaris 10+ code.
8263         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
8264         succeeded, when the mode contains some special bits.
8265
8266 2008-06-08  Bruno Haible  <bruno@clisp.org>
8267
8268         Add support for Solaris 7..10 ACLs.
8269         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
8270         declarations.
8271         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
8272         functions.
8273         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
8274         * lib/set-mode-acl.c (qset_acl): Likewise.
8275         * lib/copy-acl.c (qcopy_acl): Likewise.
8276
8277 2008-06-08  Bruno Haible  <bruno@clisp.org>
8278
8279         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
8280         declaration.
8281         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
8282         (acl_access_nontrivial): Remove MacOS X case.
8283         (file_has_acl): Use acl_extended_nontrivial.
8284         * lib/copy-acl.c (qcopy_acl): Likewise.
8285
8286 2008-06-08  Bruno Haible  <bruno@clisp.org>
8287
8288         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
8289
8290 2008-06-08  Jim Meyering  <meyering@redhat.com>
8291
8292         * modules/acl (Maintainer): Add Bruno Haible.
8293
8294 2008-06-07  Bruno Haible  <bruno@clisp.org>
8295
8296         Improve support for Tru64 ACLs.
8297         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
8298         ACL on OSF/1.
8299
8300 2008-06-07  Bruno Haible  <bruno@clisp.org>
8301
8302         Add support for MacOS X ACLs.
8303         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
8304         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
8305         * lib/set-mode-acl.c (qset_acl): Likewise.
8306         * lib/copy-acl.c (qcopy_acl): Likewise.
8307
8308 2008-06-07  Bruno Haible  <bruno@clisp.org>
8309
8310         Fix memory leak introduced on 2008-05-22.
8311         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
8312         use.
8313
8314 2008-06-07  Bruno Haible  <bruno@clisp.org>
8315
8316         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
8317         to construct an empty ACL.
8318
8319 2008-06-07  Bruno Haible  <bruno@clisp.org>
8320
8321         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
8322         precisely.
8323         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
8324
8325 2008-06-07  Bruno Haible  <bruno@clisp.org>
8326
8327         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
8328         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
8329
8330 2008-06-07  Bruno Haible  <bruno@clisp.org>
8331
8332         * doc/posix-functions/_setjmp.texi: Explain the use of this function
8333         regardless of POSIX.
8334         * doc/posix-functions/_longjmp.texi: Likewise.
8335         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
8336         SystemV platform in this case.
8337
8338 2008-06-06  Eric Blake  <ebb9@byu.net>
8339
8340         Document abort() bugs.
8341         * doc/posix-functions/abort.texi (abort): Mention anomalies.
8342
8343         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
8344         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
8345         sigsetjmp.
8346         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
8347         siglongjmp, but only as a macro.
8348         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
8349         is obsolete.
8350         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
8351
8352         Tweak documentation to cover cygwin argz bugs.
8353         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
8354         argz bug fix; no code change needed since no cygwin releases
8355         occurred between the last fix and the bug being tested.
8356         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
8357         module and recently fixed cygwin bugs.
8358         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
8359         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
8360         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
8361         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
8362         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
8363         Likewise.
8364         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
8365         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
8366         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
8367         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
8368         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
8369         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
8370         Likewise.
8371
8372         Avoid gcc warning on cygwin.
8373         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
8374         !ACL_NO_TRIVIAL]: Avoid unused variable.
8375
8376 2008-06-05  Eric Blake  <ebb9@byu.net>
8377
8378         Be tolerant of UNKNOWN version in gnulib-tool test dir.
8379         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
8380         git-version-gen fails to come up with a version.
8381         Reported by Simon Josefsson.
8382
8383 2008-06-05  Jim Meyering  <meyering@redhat.com>
8384             Paul Eggert  <eggert@cs.ucla.edu>
8385
8386         utimens.c: work around a probable Linux kernel bug
8387         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
8388         appears to be a kernel bug that causes utimensat to return 280
8389         instead of 0, indicating success.
8390
8391 2008-06-04  Bruno Haible  <bruno@clisp.org>
8392
8393         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
8394         2008-06-01 commit.
8395
8396 2008-06-04  Bruno Haible  <bruno@clisp.org>
8397
8398         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
8399         * lib/file-has-acl.c (acl_access_nontrivial): New function.
8400         (file_has_acl): Use it. Save errno afterwards.
8401         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
8402
8403 2008-06-03  Bruno Haible  <bruno@clisp.org>
8404
8405         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
8406         draft code. Simplify #ifs.
8407         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
8408         Put Solaris code after POSIX-draft code. Fix comments regarding
8409         Solaris 10, HP-UX. Mention Cygwin.
8410         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
8411
8412 2008-06-03  Eric Blake  <ebb9@byu.net>
8413
8414         Provide fallback for older kernels.
8415         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
8416         Provide runtime fallback if kernel lacks support.
8417         Reported by Mike Frysinger.
8418
8419 2008-06-02  Bruno Haible  <bruno@clisp.org>
8420
8421         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
8422         it exists.
8423
8424 2008-06-02  Bruno Haible  <bruno@clisp.org>
8425
8426         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
8427         * lib/copy-acl.c (qcopy_acl): Update comment.
8428
8429 2008-06-02  Bruno Haible  <bruno@clisp.org>
8430
8431         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
8432         like ACL APIs.
8433
8434 2008-06-02  Bruno Haible  <bruno@clisp.org>
8435
8436         * tests/test-file-has-acl.sh: Use different code for Cygwin.
8437         * tests/test-set-mode-acl.sh: Likewise.
8438         * tests/test-copy-acl.sh: Likewise.
8439         * tests/test-copy-file.sh: Likewise.
8440
8441 2008-06-02  Bruno Haible  <bruno@clisp.org>
8442
8443         * tests/test-file-has-acl.sh: Remove unused code.
8444
8445 2008-06-01  Bruno Haible  <bruno@clisp.org>
8446
8447         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
8448         (copy_acl): Just a wrapper around qcopy_acl that emits the error
8449         messages.
8450         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
8451
8452 2008-06-01  Bruno Haible  <bruno@clisp.org>
8453
8454         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
8455         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
8456         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
8457         APIs.
8458         * modules/acl-tests (configure.ac): Remove tests now contained in
8459         m4/acl.m4.
8460
8461 2008-06-02  Jim Meyering  <meyering@redhat.com>
8462
8463         announce-gen: use a better key-server host name
8464         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
8465         it may be more consistently reliable.  Suggested by Werner Koch
8466         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
8467
8468 2008-06-01  Bruno Haible  <bruno@clisp.org>
8469
8470         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
8471         Reported by Voroskoi Andras <voroskoi@gmail.com>.
8472
8473 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
8474
8475         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
8476
8477 2008-06-01  Bruno Haible  <bruno@clisp.org>
8478
8479         New ACL tests.
8480         * tests/test-file-has-acl.sh: New file.
8481         * tests/test-file-has-acl.c: New file.
8482         * tests/test-set-mode-acl.sh: New file.
8483         * tests/test-set-mode-acl.c: New file.
8484         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
8485         * tests/test-copy-acl.c: New file.
8486         * modules/acl-tests: New file, based on modules/copy-file-tests.
8487         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
8488         (Depends-on): Add acl-tests.
8489         (configure.ac): Remove checks.
8490         (Makefile.am): Don't create test-sameacls program here any more.
8491
8492 2008-06-01  Bruno Haible  <bruno@clisp.org>
8493
8494         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
8495         * tests/test-sameacls.c: Include progname.h.
8496         (main): Invoke set_program_name. Portability fixes for MacOS X,
8497         Solaris, HP-UX.
8498
8499 2008-06-01  Bruno Haible  <bruno@clisp.org>
8500
8501         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
8502         function.
8503         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
8504
8505 2008-06-01  Bruno Haible  <bruno@clisp.org>
8506
8507         * modules/rpmatch (Depends-on): Add strdup.
8508
8509 2008-06-01  Bruno Haible  <bruno@clisp.org>
8510
8511         * lib/pipe.c: Include unistd-safer.h.
8512         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
8513         * modules/pipe (Depends-on): Add unistd-safer.
8514
8515 2008-05-30  Simon Josefsson  <simon@josefsson.org>
8516
8517         * modules/autobuild (configure.ac): Call AB_INIT.
8518
8519 2008-05-30  Simon Josefsson  <simon@josefsson.org>
8520
8521         * tests/test-getaddrinfo.c: Don't print debug messages by default.
8522         Suggested by Bruno Haible <bruno@clisp.org>.
8523
8524 2008-05-30  Simon Josefsson  <simon@josefsson.org>
8525
8526         * tests/test-base64.c: Cast size_t to unsigned long when invoking
8527         printf.  Use %lu instead of %d.  Reported by Bruno Haible
8528         <bruno@clisp.org>.
8529
8530 2008-05-29  Eric Blake  <ebb9@byu.net>
8531
8532         Prefer new POSIX 200x interfaces over futimesat.
8533         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
8534         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
8535         when available.
8536         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
8537
8538 2008-05-28  Bruno Haible  <bruno@clisp.org>
8539
8540         * modules/stpcpy (License): Change to LGPLv2+.
8541         Requested by David Lutterkort <dlutter@redhat.com>.
8542
8543 2008-05-27  Bruno Haible  <bruno@clisp.org>
8544
8545         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
8546         current mingw.
8547         Reported by Jose E. Marchesi <jemarch@gnu.org>.
8548
8549 2008-05-27  Bruno Haible  <bruno@clisp.org>
8550
8551         * modules/iconv_open (Link): New section, from module 'iconv'.
8552         * modules/striconv (Link): Likewise.
8553         * modules/striconveh (Link): Likewise.
8554         * modules/xstriconv (Link): Likewise.
8555         * modules/unicodeio (Link): Likewise.
8556         * modules/propername (Link): Likewise.
8557         Reported by Jim Meyering.
8558
8559 2008-05-26  Jim Meyering  <meyering@redhat.com>
8560
8561         sha256: do not artificially restrict buffer length to be < 2^32
8562         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
8563         uint32_t to size_t.
8564         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
8565         to match.
8566
8567         avoid unaligned access errors, e.g., on sparc
8568         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
8569         direct access through a possibly-unaligned uint64* pointer.
8570         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
8571         direct access through a possibly-unaligned uint32* pointer.
8572         Prompted by this patch from Tom "spot" Callaway:
8573         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
8574
8575         sha512.c: fix typo in comment
8576         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
8577
8578 2008-05-25  Bruno Haible  <bruno@clisp.org>
8579
8580         * lib/set-mode-acl.c: Renamed from lib/acl.c.
8581         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
8582         (Makefile.am): Update lib_SOURCES.
8583
8584 2008-05-25  Bruno Haible  <bruno@clisp.org>
8585
8586         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
8587
8588 2008-05-25  Jim Meyering  <meyering@redhat.com>
8589
8590         useless-if-before-free: freed expr may have white-space differences
8591         * build-aux/useless-if-before-free: Recognize cases in which the
8592         freed expression differs from the tested one in embedded white
8593         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
8594         $1 was used, so we can't make any regexp shy.  Improved tests now
8595         detect this.
8596
8597         useless-if-before-free: accept white space in the expression.
8598         * build-aux/useless-if-before-free: For now, any white space
8599         in the expression must be identical in the free argument.
8600
8601         useless-if-before-free: efficiency tweak
8602         * build-aux/useless-if-before-free: Make the expression-matching
8603         regexp "shy".
8604         Make the *outer* regexp shy, not the expr-matching one.
8605
8606         update code-in-comment to accept cast of free arg
8607         * build-aux/useless-if-before-free: Update regexp.
8608
8609 2008-05-25  Bruno Haible  <bruno@clisp.org>
8610
8611         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
8612         * modules/copy-file-tests (Files, Makefile.am): Update.
8613         * tests/test-copy-file.c (func_test_copy): Update.
8614
8615 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
8616
8617         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
8618
8619 2008-05-23  Bruno Haible  <bruno@clisp.org>
8620
8621         Improve support for ACLs on OSF/1.
8622         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
8623         Remove fallback for unknown flavors of ACLs.
8624
8625 2008-05-22  Bruno Haible  <bruno@clisp.org>
8626
8627         Add support for ACLs on OSF/1.
8628         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
8629         replacements.
8630         (acl_free_text): New macro fallback.
8631         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
8632         acl_free.
8633         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
8634         acl_free_text function. Require AC_C_INLINE.
8635
8636 2008-05-22  Bruno Haible  <bruno@clisp.org>
8637
8638         Make copy_acl work on MacOS X 10.5.
8639         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
8640         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
8641         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
8642         If MODE_INSIDE_ACL, don't assume that every system has the same text
8643         representation for ACLs as FreeBSD.
8644         * lib/copy-acl.c (copy_acl): Add support for platforms with
8645         !MODE_INSIDE_ACL.
8646         * lib/file-has-acl.c (file_has_acl): Likewise.
8647         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
8648         FreeBSD, MacOS X, or IRIX, respectively.
8649
8650 2008-05-22  Bruno Haible  <bruno@clisp.org>
8651
8652         * lib/acl.h: Don't include <sys/acl.h>.
8653         (GETACLCNT): Move fallback to lib/acl-internal.h.
8654         * lib/acl-internal.h: Include <sys/acl.h> here.
8655         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
8656
8657 2008-05-22  Bruno Haible  <bruno@clisp.org>
8658
8659         Split off copy_acl function to separate file.
8660         * lib/copy-acl.c: New file, extracted from lib/acl.c.
8661         * lib/acl.c (copy_acl): Moved function to separate file.
8662         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
8663         * modules/acl (Files): Add lib/copy-acl.c.
8664         (Makefiles.am): Augment lib_SOURCES.
8665
8666 2008-05-22  Bruno Haible  <bruno@clisp.org>
8667
8668         * modules/copy-file-tests: New file.
8669         * tests/test-copy-file.sh: New file.
8670         * tests/test-copy-file.c: New file.
8671         * tests/test-copy-file-sameacls.c: New file.
8672
8673 2008-05-22  Eric Blake  <ebb9@byu.net>
8674
8675         Avoid gcc warning.
8676         * tests/test-memcmp.c (main): Pass NULL indirectly.
8677
8678 2008-05-21  Bruno Haible  <bruno@clisp.org>
8679
8680         Add reference doc about ACLs.
8681         * doc/acl-resources.txt: New file.
8682         * doc/acl-cygwin.txt: New file.
8683
8684 2008-05-21  Bruno Haible  <bruno@clisp.org>
8685
8686         Avoid one more warning from gcc.
8687         * lib/vasnprintf.c (IF_LINT): Update comments.
8688         (VASNPRINTF): Use it also for the 'prefix' array initializer.
8689
8690 2008-05-21  Jim Meyering  <meyering@redhat.com>
8691
8692         avoid a warning from gcc
8693         * lib/vasnprintf.c (IF_LINT): Define.
8694         (scale10_round_decimal_long_double):
8695         Use it to avoid a "may be used uninitialized" warning.
8696         (scale10_round_decimal_double): Likewise.
8697
8698 2008-05-21  Simon Josefsson  <simon@josefsson.org>
8699
8700         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
8701         declared.
8702
8703 2008-05-20  Bruno Haible  <bruno@clisp.org>
8704
8705         * tests/test-memcmp.c (main): Test also the sign of the result. Test
8706         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
8707
8708 2008-05-20  Simon Josefsson  <simon@josefsson.org>
8709
8710         * modules/memcmp-tests: New file.
8711         * tests/test-memcmp.c: New file.
8712
8713 2008-05-19  Bruno Haible  <bruno@clisp.org>
8714
8715         * modules/propername (Notice, configure.ac): Put quoted "..." into
8716         --keyword option.
8717         * lib/propername.h: Update comments accordingly.
8718         Reported by Eric Blake.
8719
8720 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
8721
8722         * modules/getpass-gnu (Depends-on): Add fseeko.
8723
8724 2008-05-19  Simon Josefsson  <simon@josefsson.org>
8725
8726         * modules/base64-tests: New file.
8727
8728 2008-05-19  Bo Borgerson <gigabo@gmail.com>
8729
8730         * lib/base64.c (base64_decode_ctx): If a decode context structure
8731         was passed in use it to ignore newlines.  If a context structure
8732         was _not_ passed in, continue to treat newlines as garbage (this
8733         is the historical behavior).  Formerly base64_decode.
8734         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
8735         takes a decode context structure.
8736         * lib/base64.h (base64_decode): Macro for four-argument calls.
8737         (base64_decode_alloc): Likewise.
8738         * lib/base64.c (base64_decode_ctx): If a decode context structure
8739         was passed in use it to ignore newlines.  If a context structure
8740         was _not_ passed in, continue to treat newlines as garbage (this
8741         is the historical behavior).  Formerly base64_decode.
8742         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
8743         takes a decode context structure.
8744         * lib/base64.h (base64_decode): Macro for four-argument calls.
8745         (base64_decode_alloc): Likewise.
8746
8747 2008-05-19  Jim Meyering  <meyering@redhat.com>
8748
8749         avoid a warning from gcc
8750         * lib/trim.c (IF_LINT): Define.
8751         (trim2): Use it to avoid a "may be used uninitialized" warning.
8752
8753         Fix doc typo.
8754         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
8755
8756 2008-05-19  Bruno Haible  <bruno@clisp.org>
8757
8758         * doc/glibc-functions/getpass.texi: Document limits of other
8759         implementations.
8760
8761 2008-05-19  Simon Josefsson  <simon@josefsson.org>
8762             Bruno Haible <bruno@clisp.org>
8763
8764         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
8765
8766 2008-05-18  Bruno Haible  <bruno@clisp.org>
8767
8768         * modules/propername: New file, from GNU gettext.
8769         * lib/propername.h: New file, from GNU gettext.
8770         * lib/propername.c: New file, from GNU gettext.
8771         * MODULES.html.sh (Internationalization functions): Add propername.
8772
8773 2008-05-16  Jim Meyering  <meyering@redhat.com>
8774             Bruno Haible  <bruno@clisp.org>
8775
8776         Avoid some warnings from "gcc -Wshadow".
8777         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
8778
8779 2008-05-15  Eric Blake  <ebb9@byu.net>
8780
8781         Extend previous patch to cygwin 1.7.0.
8782         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
8783         fast implementation in cygwin >= 1.7.0.
8784         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8785         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8786
8787 2008-05-15  Bruno Haible  <bruno@clisp.org>
8788
8789         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
8790         implementation in glibc >= 2.9.
8791         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8792         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8793
8794 2008-05-15  Bruno Haible  <bruno@clisp.org>
8795
8796         * MODULES.html.sh (Internationalization functions): Remove linebreak.
8797         (Unicode string functions): Add unilbrk/*.
8798         Reported by Karl Berry.
8799
8800 2008-05-15  Eric Blake  <ebb9@byu.net>
8801
8802         Fix violation of <stdbool.h> replacement in regex.
8803         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
8804         * lib/regexec.c (re_search_internal): Likewise.
8805         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
8806
8807 2008-05-15  Jim Meyering  <meyering@redhat.com>
8808
8809         avoid distracting test output when git or cvs is not found
8810         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
8811         * tests/test-vc-list-files-git.sh: Likewise.
8812
8813 2008-05-15  Eric Blake  <ebb9@byu.net>
8814
8815         Glibc finally accepted the memmem speedup code, bugzilla #5514.
8816         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
8817         glibc version.
8818         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
8819         * doc/posix-functions/strstr.texi (strstr): Likewise.
8820         * lib/str-two-way.h (MAX): Sychronize with glibc.
8821
8822 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
8823
8824         * lib/regcomp.c (optimize_utf8): Add a note on why we test
8825         opr.ctx_type.
8826         (calc_first): Initialize constraint field.
8827         (duplicate_node_closure): Use it instead of special casing ANCHORS.
8828         Fix grammar.
8829         (duplicate_node): Merge constraint field for all node types.
8830         (calc_eclosure_iter): Look at constraint field for all node types.
8831         * lib/regex_internal.c (create_cd_newstate): Don't look at
8832         opr.ctx_type.
8833
8834 2008-05-14  Bruno Haible  <bruno@clisp.org>
8835
8836         Help GCC to do better code generation.
8837         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
8838         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
8839         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
8840         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
8841         Declare with attribute 'malloc' if supported.
8842
8843 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
8844
8845         use "echo STR|wc -c" rather than unportable "expr length STR"
8846         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
8847         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
8848
8849 2008-05-14  Jim Meyering  <meyering@redhat.com>
8850
8851         use dd ibs=$n count=1 ... rather than less-portable head -c$n
8852         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
8853         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
8854         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
8855         via Collin Lasse.
8856
8857 2008-05-14  Eric Blake  <ebb9@byu.net>
8858
8859         Avoid quadratic growth in gl_LIBSOURCES.
8860         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
8861         Suggested by Bruno Haible.
8862
8863         Test xmemdup0.
8864         * modules/xmemdup0-tests: New file.
8865         * tests/test-xmemdup0.c: Likewise.
8866
8867 2008-05-13  Eric Blake  <ebb9@byu.net>
8868
8869         Split xmemdup0 into its own module.
8870         * modules/xmemdup0: New file.
8871         * lib/xmemdup0.h: Likewise.
8872         * lib/xmemdup0.c: Likewise.
8873         * MODULES.html.sh (Memory management functions): Add xmemdup0.
8874         * lib/xalloc.h (xmemdup0): Remove.
8875         * lib/xmalloc.c (xmemdup0): Likewise.
8876
8877 2008-05-13  Eric Blake  <ebb9@byu.net>
8878             Bruno Haible  <bruno@clisp.org>
8879
8880         Reduce number of forks required during autoconf.
8881         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
8882         and gl_LIBSOURCES_DIR.
8883         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
8884         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
8885         m4_syscmd per file.
8886         <m4_foreach_w>: Move...
8887         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
8888
8889 2008-05-13  Eric Blake  <ebb9@byu.net>
8890
8891         * gnulib-tool: Fix various comment typos.
8892
8893 2008-05-12  Bruno Haible  <bruno@clisp.org>
8894
8895         Tailor the linebreaking algorithm.
8896         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
8897
8898 2008-05-12  Bruno Haible  <bruno@clisp.org>
8899
8900         Update to Unicode 5.0.0.
8901         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
8902         LBP_JV, LBP_JT. Redistribute values.
8903         (unilbrk_table): Change size.
8904         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
8905         Unicode TR#14 rev. 22.
8906         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
8907         LBP_JV, LBP_JT. Redistribute values.
8908         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
8909         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
8910         Update.
8911         * lib/unilbrk/lbrkprop1.h: Regenerated.
8912         * lib/unilbrk/lbrkprop2.h: Regenerated.
8913         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
8914         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
8915         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
8916         Likewise.
8917         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
8918         Likewise.
8919         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
8920         result.
8921         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
8922         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
8923         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
8924         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
8925         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
8926         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
8927
8928 2008-05-11  Bruno Haible  <bruno@clisp.org>
8929
8930         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
8931
8932 2008-05-11  Bruno Haible  <bruno@clisp.org>
8933
8934         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
8935         * modules/unilbrk/gen-lbrk: New file.
8936
8937 2008-05-11  Bruno Haible  <bruno@clisp.org>
8938
8939         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
8940         * m4/sha512.m4 (gl_SHA512): Likewise.
8941
8942 2008-05-11  Jim Meyering  <meyering@redhat.com>
8943
8944         New modules: crypto/sha256, crypto/sha512 (from coreutils)
8945         * modules/crypto/sha256: New file.
8946         * modules/crypto/sha512: Likewise.
8947         * lib/sha256.c: Likewise.
8948         * lib/sha256.h: Likewise.
8949         * lib/sha512.c: Likewise.
8950         * lib/sha512.h: Likewise.
8951         * lib/u64.h: Likewise.
8952         * m4/sha256.m4: Likewise.
8953         * m4/sha512.m4: Likewise.
8954         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
8955
8956 2008-05-10  Bruno Haible  <bruno@clisp.org>
8957
8958         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
8959         (Input/Output <stdio.h>): Add xprintf.
8960         (Signal handling <signal.h>): Add strsignal.
8961         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
8962         (Core language properties): Add func.
8963         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
8964         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
8965         strings.
8966         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
8967         (Input/output): New section.
8968         (File system functions): Add openat-die, stat-macros.
8969         (Networking functions): Add sockets.
8970         (Unicode string functions): Add unictype/*.
8971         (Support for building libraries and executables): Add gperf.
8972         (Support for building documentation): Add agpl-3.0.
8973         (Misc): Add nocrash.
8974
8975 2008-05-10  Bruno Haible  <bruno@clisp.org>
8976
8977         * modules/unictype/gen-ctype: New file.
8978
8979 2008-05-10  Jim Meyering  <meyering@redhat.com>
8980
8981         Make chdir-safer.c more efficient on a system with no symlinks.
8982         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
8983         also if ELOOP is zero.  Suggested by Bruno Haible.
8984
8985         Make chdir-safer.c slightly safer.
8986         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
8987         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
8988
8989         Avoid compile failure on systems without ELOOP (like mingw).
8990         * lib/chdir-safer.c (ELOOP): Define if not already defined.
8991         Reported by Bruno Haible.
8992
8993 2008-05-10  Bruno Haible  <bruno@clisp.org>
8994
8995         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
8996         (is_utf8_encoding): Use a case-insensitive comparison.
8997         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
8998         streq.
8999
9000 2008-05-10  Bruno Haible  <bruno@clisp.org>
9001
9002         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
9003         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
9004         * lib/unilbrk/ulc-common.h (iconv_string_length,
9005         iconv_string_keeping_offsets): Remove declarations.
9006         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
9007         Don't include <iconv.h>, streq.h, xsize.h.
9008         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
9009         conversion.
9010         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
9011         <iconv.h>, streq.h, xsize.h.
9012         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
9013         conversion.
9014         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
9015         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
9016         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
9017         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
9018
9019 2008-05-10  Bruno Haible  <bruno@clisp.org>
9020
9021         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
9022         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
9023
9024         * modules/unilbrk/u32-width-linebreaks-tests: New file.
9025         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
9026
9027         * modules/unilbrk/u16-width-linebreaks-tests: New file.
9028         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
9029
9030         * modules/unilbrk/u8-width-linebreaks-tests: New file.
9031         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
9032
9033         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
9034         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
9035
9036         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
9037         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
9038
9039         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
9040         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
9041
9042         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
9043         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
9044
9045 2008-05-10  Bruno Haible  <bruno@clisp.org>
9046
9047         Split up 'linebreak' module.
9048         * lib/unilbrk.h: New file, based on lib/linebreak.h.
9049         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
9050         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
9051         modifications.
9052         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
9053         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
9054         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
9055         lib/linebreak.c.
9056         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
9057         lib/linebreak.c.
9058         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
9059         lib/linebreak.c.
9060         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
9061         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
9062         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
9063         lib/linebreak.c.
9064         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
9065         lib/linebreak.c.
9066         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
9067         lib/linebreak.c.
9068         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
9069         lib/linebreak.c.
9070         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
9071         lib/linebreak.c.
9072         * modules/unilbrk/base: New file.
9073         * modules/unilbrk/tables: New file.
9074         * modules/unilbrk/u8-possible-linebreaks: New file.
9075         * modules/unilbrk/u16-possible-linebreaks: New file.
9076         * modules/unilbrk/u32-possible-linebreaks: New file.
9077         * modules/unilbrk/ulc-common: New file.
9078         * modules/unilbrk/ulc-possible-linebreaks: New file.
9079         * modules/unilbrk/u8-width-linebreaks: New file.
9080         * modules/unilbrk/u16-width-linebreaks: New file.
9081         * modules/unilbrk/u32-width-linebreaks: New file.
9082         * modules/unilbrk/ulc-width-linebreaks: New file.
9083         * lib/linebreak.h: Remove file.
9084         * lib/linebreak.c: Remove file.
9085         * m4/linebreak.m4: Remove file.
9086         * modules/linebreak: Remove file.
9087         * NEWS: Mention the changes.
9088
9089 2008-05-09  Eric Blake  <ebb9@byu.net>
9090
9091         Add xmemdup0.
9092         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
9093         implementation.
9094         * lib/xmalloc.c (xmemdup0): New C implementation.
9095
9096 2008-05-08  Bruno Haible  <bruno@clisp.org>
9097
9098         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
9099
9100 2008-05-07  Eric Blake  <ebb9@byu.net>
9101
9102         Support cross-compilation of <wctype.h>.
9103         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
9104         AC_CACHE_CHECK.
9105
9106 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
9107
9108         * build-aux/vc-list-files: Add support for bzr.
9109
9110 2008-05-03  Jim Meyering  <meyering@redhat.com>
9111
9112         avoid failed assertion with tight malloc
9113         * tests/test-getndelim2.c: Correct an off-by-one assertion.
9114
9115 2008-05-03  Simon Josefsson  <simon@josefsson.org>
9116
9117         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
9118         are needed from arpa/inet.h.
9119         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
9120         Reported by Bruno Haible.
9121
9122 2008-05-02  Jim Meyering  <meyering@redhat.com>
9123
9124         avoid compilation error on FreeBSD 6
9125         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
9126
9127 2008-05-01  Jim Meyering  <meyering@redhat.com>
9128
9129         useless-if-before-free: correct --help's exit status description
9130         * build-aux/useless-if-before-free (usage): Like grep, exit 0
9131         for one or more matches, etc.  Reported by Bruno Haible.
9132
9133         vc-list-files: make the stand-alone gnulib test work
9134         * modules/vc-list-files-tests (configure.ac):
9135         Define and AC_SUBST abs_aux_dir.
9136         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
9137         $(abs_top_srcdir) to each script and having each of them
9138         duplicate the work of setting PATH, set PATH here, using
9139         the new variable, abs_aux_dir instead.
9140         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
9141         * tests/test-vc-list-files-git.sh: Likewise.
9142         Reported by Bruno Haible.
9143
9144 2008-05-01  Bruno Haible  <bruno@clisp.org>
9145
9146         * lib/getndelim2.c (getndelim2): Fix newsize computation during
9147         reallocation. Rename 'done' to 'found_delimiter'.
9148
9149 2008-05-01  Jim Meyering  <meyering@redhat.com>
9150
9151         vc-list-files: accommodate /bin/sh like the one from Solaris 10
9152         * build-aux/vc-list-files: Use `...`, not $(...).
9153
9154 2008-04-30  Jim Meyering  <meyering@redhat.com>
9155
9156         add tests for vc-list-files
9157         * modules/vc-list-files-tests: New module.
9158         * tests/test-vc-list-files-cvs.sh: New file.
9159         * tests/test-vc-list-files-git.sh: New file.
9160
9161         avoid a warning from gcc
9162         * lib/getndelim2.c (IF_LINT): Define.
9163         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
9164
9165         vc-list-files: work properly with build-aux/cvsu, too
9166         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
9167         to all cvs-based clauses.
9168
9169         vc-list-files: work properly in the CVS+awk case, too
9170         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
9171
9172         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
9173         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
9174         take more than one file argument, so .  Add quotes, just in case $dir
9175         ever contains a shell meta-character.  Prompted by Soren Hansen in
9176         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
9177
9178 2008-04-29  Eric Blake  <ebb9@byu.net>
9179
9180         Optimize getndelim2 to use block operations when possible.
9181         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
9182         freadseek, and memchr2.
9183         * lib/getndelim2.c (getndelim2): Use them for block reads.
9184
9185 2008-04-29  Bruno Haible  <bruno@clisp.org>
9186
9187         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
9188         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
9189         * modules/inet_ntop (Depends-on): Add extensions.
9190         * modules/inet_pton (Depends-on): Likewise.
9191         Reported by Simon Josefsson.
9192
9193 2008-04-29  Jim Meyering  <meyering@redhat.com>
9194
9195         When the is more than one match in a block, match all of them.
9196         * build-aux/useless-if-before-free: Iterate through each block
9197         until there are no more matches.
9198
9199         Fix broken useless-if-before-free script.
9200         * build-aux/useless-if-before-free: Fix typo: missing "?" after
9201         the expression to match cast of argument to free-like function.
9202
9203 2008-04-29  Eric Blake  <ebb9@byu.net>
9204
9205         Use new header.
9206         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
9207
9208 2008-04-29  Jim Meyering  <meyering@redhat.com>
9209
9210         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
9211         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
9212         by gnulib to exist and to declare e.g., inet_ntop.
9213         Don't include "inet_ntop.h", now removed.
9214
9215         * m4/arpa_inet_h.m4: Remove trailing blanks.
9216
9217 2008-04-29  Eric Blake  <ebb9@byu.net>
9218
9219         Silence valgrind on safe reads beyond potential array bounds.
9220         * lib/rawmemchr.valgrind: New file.
9221         * lib/strchrnul.valgrind: Likewise.
9222         * modules/rawmemchr (Files): Distribute new file.
9223         * modules/strchrnul (Files): Likewise.
9224         Suggested by Bruno Haible.
9225
9226 2008-04-29  Bruno Haible  <bruno@clisp.org>
9227
9228         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
9229         (inet_ntop, inet_pton): Change portability warning's wording.
9230         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
9231         Invoke gl_CHECK_NEXT_HEADERS.
9232         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
9233         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
9234         set ARPA_INET_H.
9235         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
9236         * modules/arpa_inet (Description): No longer only for systems that
9237         lack it.
9238         (Depends-on): Add include_next.
9239         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
9240         HAVE_ARPA_INET_H.
9241
9242 2008-04-29  Jim Meyering  <meyering@redhat.com>
9243
9244         * modules/mkdir (License): Re-license as LGPLv2+.
9245
9246 2008-04-29  Bruno Haible  <bruno@clisp.org>
9247
9248         * modules/rawmemchr (Maintainer): Set to Eric.
9249         * modules/strchrnul (Maintainer): Likewise.
9250
9251 2008-04-29  Simon Josefsson  <simon@josefsson.org>
9252
9253         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
9254         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
9255
9256         * modules/arpa_inet (arpa/inet.h): Use them.
9257
9258 2008-04-28  Eric Blake  <ebb9@byu.net>
9259
9260         Test getndelim2.
9261         * modules/getndelim2-tests: New file.
9262         * tests/test-getndelim2.c: Likewise.
9263         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
9264         stream.
9265         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
9266
9267         * MODULES.html.sh: Document new module.
9268
9269 2008-04-20  Bruno Haible  <bruno@clisp.org>
9270
9271         * lib/c-stack.c (die): Use raise.
9272         * modules/c-stack (Depends-on): Add raise.
9273
9274 2008-04-28  Bruno Haible  <bruno@clisp.org>
9275
9276         Expect rpmatch to be declared.
9277         * lib/yesno.c (rpmatch): Remove declaration.
9278
9279         Declare rpmatch.
9280         * lib/stdlib.in.h (rpmatch): New declaration.
9281         * lib/rpmatch.c: Include <stdlib.h> first.
9282         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
9283         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
9284         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
9285         HAVE_RPMATCH.
9286         * modules/rpmatch (Depends-on): Add stdlib, extensions.
9287         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9288         (Include): Set to <stdlib.h>.
9289         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
9290         HAVE_RPMATCH.
9291         * NEWS: Document the change.
9292
9293 2008-04-28  Bruno Haible  <bruno@clisp.org>
9294
9295         Change rpmatch to use nl_langinfo when appropriate.
9296         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
9297         (N_): New macro.
9298         (localized_pattern): New function/macro.
9299         (try): Remove match, nomatch arguments. Copy the pattern into safe
9300         memory before caching it.
9301         (rpmatch): Use localized_pattern. Add translator comments.
9302         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
9303         Suggested by Eric Blake.
9304         * modules/rpmatch (Depends-on): Add stdbool.
9305
9306 2008-04-28  Eric Blake  <ebb9@byu.net>
9307
9308         Add rawmemchr module, matching glibc.
9309         * modules/string (Makefile.am): New indicator.
9310         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
9311         * lib/string.in.h (rawmemchr): Declare when appropriate.
9312         * modules/rawmemchr: New file.
9313         * m4/rawmemchr.m4: Likewise.
9314         * lib/rawmemchr.c: Likewise.
9315         * modules/rawmemchr-tests: Likewise.
9316         * tests/test-rawmemchr.c: Likewise.
9317         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
9318         module.
9319         * modules/strchrnul (Depends-on): Add rawmemchr.
9320         * lib/strchrnul.c (strchrnul): Optimize a corner case.
9321
9322         Whitespace cleanup.
9323         * tests/test-strchrnul.c: Reindent.
9324         * lib/strchrnul.c: Likewise.
9325
9326         Optimize and test strchrnul.
9327         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
9328         * modules/strchrnul-tests: New file.
9329         * tests/test-strchrnul.c: Likewise.
9330
9331         Remove intprops dependency.
9332         * modules/memchr (Depends-on): Remove intprops.
9333         * modules/memrchr (Depends-on): Likewise.
9334         * modules/memchr2 (Depends-on): Likewise.
9335         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
9336         * lib/memrchr.c (__memrchr): Likewise.
9337         * lib/memrchr2.c (memchr2): Likewise.
9338         Reported by Simon Josefsson.
9339
9340 2008-04-28  Simon Josefsson  <simon@josefsson.org>
9341
9342         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
9343         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
9344
9345 2008-04-28  Simon Josefsson  <simon@josefsson.org>
9346
9347         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
9348
9349         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
9350
9351         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
9352
9353         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
9354         declarations.
9355         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
9356
9357         * m4/inet_pton.m4: Don't check for header files.
9358
9359         * m4/inet_ntop.m4: Don't check for header files.
9360
9361 2008-04-28  Simon Josefsson  <simon@josefsson.org>
9362
9363         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
9364         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
9365         trigger for cygwin).
9366         Reported by Bruno Haible  <bruno@clisp.org>.
9367
9368 2008-04-28  Bruno Haible  <bruno@clisp.org>
9369
9370         * doc/posix-functions/strdup.texi: Mention mingw problem.
9371
9372 2008-04-27  Bruno Haible  <bruno@clisp.org>
9373
9374         * modules/stat-time-tests (Depends-on): Add sleep.
9375         * tests/test-stat-time.c (force_unlink): New function.
9376         (cleanup): Use it.
9377         (test_mtime): Remove the ctime related tests.
9378         (test_ctime): New function, containing the ctime related tests.
9379         (main): Call test_ctime, except on native Windows platforms.
9380
9381 2008-04-27  Bruno Haible  <bruno@clisp.org>
9382
9383         * lib/rpmatch.c (rpmatch): Add some comments.
9384         Reported by James Youngman <jay@gnu.org>.
9385
9386 2008-04-27  Bruno Haible  <bruno@clisp.org>
9387
9388         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
9389         quiet NaNs.
9390
9391 2008-04-27  Bruno Haible  <bruno@clisp.org>
9392
9393         Make test-yesno.sh work on mingw.
9394         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
9395         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
9396         (main): Set stdin to binary mode.
9397         * modules/yesno-tests (Depends-on): Add binary-io.
9398
9399 2008-04-27  Bruno Haible  <bruno@clisp.org>
9400
9401         Fix 'isfinite' on x86, x86_64, ia64 platforms.
9402         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
9403         argument that lie outside the IEEE 854 domain.
9404         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
9405         (gl_ISFINITE): Use it.
9406         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
9407
9408 2008-04-27  Bruno Haible  <bruno@clisp.org>
9409
9410         Allow local renaming in config.h.
9411         * lib/memrchr.c (memrchr): Don't undefine outside libc.
9412
9413 2008-04-27  Bruno Haible  <bruno@clisp.org>
9414
9415         * lib/memchr.c (__memchr): Change type of 'i'.
9416         * lib/memchr2.c (memchr2): Likewise.
9417
9418 2008-04-26  Eric Blake  <ebb9@byu.net>
9419         and Bruno Haible  <bruno@clisp.org>
9420
9421         Optimize and test memrchr.
9422         * modules/memrchr (Depends-on): Add intprops.
9423         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
9424         * modules/memrchr-tests: New file.
9425         * tests/test-memrchr.c: New file.
9426
9427 2008-04-26  Bruno Haible  <bruno@clisp.org>
9428
9429         Add tentative support for DragonFly BSD.
9430         * lib/stdio-impl.h: Add macros for DragonFly BSD.
9431         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
9432         fp.
9433         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
9434         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
9435         * lib/fpurge.c (fpurge): Likewise.
9436         * lib/freadable.c (freaadable): Likewise.
9437         * lib/freadahead.c (freadahead): Likewise.
9438         * lib/freading.c (freading): Likewise.
9439         * lib/freadptr.c (freadptr): Likewise.
9440         * lib/freadseek.c (freadptrinc): Likewise.
9441         * lib/fseeko.c (fseeko): Likewise.
9442         * lib/fseterr.c (fseterr): Likewise.
9443         * lib/fwritable.c (fwritable): Likewise.
9444         * lib/fwriting.c (fwriting): Likewise.
9445
9446 2008-04-26  Bruno Haible  <bruno@clisp.org>
9447
9448         * lib/stdio-impl.h: New file.
9449         * lib/fbufmode.c: Include stdio-impl.h.
9450         (fbufmode): Use fp_, remove redundant #defines.
9451         * lib/fflush.c: Include stdio-impl.h.
9452         (clear_ungetc_buffer): Remove redundant #defines.
9453         * lib/fpurge.c: Include stdio-impl.h.
9454         (fpurge): Remove redundant #defines.
9455         * lib/freadable.c: Include stdio-impl.h.
9456         (freadable): Remove redundant #defines.
9457         * lib/freadahead.c: Include stdio-impl.h.
9458         (freadahead): Remove redundant #defines.
9459         * lib/freading.c: Include stdio-impl.h.
9460         (freading): Remove redundant #defines.
9461         * lib/freadptr.c: Include stdio-impl.h.
9462         (freadptr): Remove redundant #defines.
9463         * lib/freadseek.c: Include stdio-impl.h.
9464         (freadptrinc): Remove redundant #defines.
9465         * lib/fseeko.c: Include stdio-impl.h.
9466         (rpl_fseeko): Remove redundant #defines.
9467         * lib/fseterr.c: Include stdio-impl.h.
9468         (fseterr): Remove redundant #defines.
9469         * lib/fwritable.c: Include stdio-impl.h.
9470         (fwritable: Remove redundant #defines.
9471         * lib/fwriting.c: Include stdio-impl.h.
9472         (fwriting): Remove redundant #defines.
9473         * modules/fbufmode (Files): Add lib/stdio-impl.h.
9474         * modules/fflush (Files): Likewise.
9475         * modules/fpurge (Files): Likewise.
9476         * modules/freadable (Files): Likewise.
9477         * modules/freadahead (Files): Likewise.
9478         * modules/freading (Files): Likewise.
9479         * modules/freadptr (Files): Likewise.
9480         * modules/freadseek (Files): Likewise.
9481         * modules/fseeko (Files): Likewise.
9482         * modules/fseterr (Files): Likewise.
9483         * modules/fwritable (Files): Likewise.
9484         * modules/fwriting (Files): Likewise.
9485
9486 2008-04-26  Bruno Haible  <bruno@clisp.org>
9487
9488         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
9489         restore_seek_optimization, update_fpos_cache): New functions, extracted
9490         from rpl_fflush.
9491         (rpl_fflush): Use them.
9492         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
9493         (gl_REPLACE_FFLUSH): Use it.
9494
9495 2008-04-26  Bruno Haible  <bruno@clisp.org>
9496
9497         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
9498         on Solaris.
9499         * tests/test-xstrtoimax.sh: Likewise.
9500         * tests/test-xstrtoumax.sh: Likewise.
9501         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
9502
9503 2008-04-26  Bruno Haible  <bruno@clisp.org>
9504
9505         * modules/memchr-tests: New file.
9506         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
9507
9508 2008-04-26  Eric Blake  <ebb9@byu.net>
9509             Bruno Haible  <bruno@clisp.org>
9510
9511         * lib/memchr.c: Include intprops.h.
9512         (__memchr): Optimize parallel detection of matching bytes. Rename local
9513         variables. Add explanatory comments.
9514
9515 2008-04-26  Bruno Haible  <bruno@clisp.org>
9516
9517         Fix module 'memchr', broken since 2000-10-28.
9518         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
9519
9520 2008-04-26  Bruno Haible  <bruno@clisp.org>
9521
9522         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
9523         comments.
9524
9525 2008-04-25  Eric Blake  <ebb9@byu.net>
9526
9527         Use native fstatat on cygwin 1.7.0.
9528         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
9529         first.
9530
9531 2008-04-23  Eric Blake  <ebb9@byu.net>
9532
9533         Improve memchr2 performance.
9534         * lib/memchr2.c (memchr2): Further optimize parallel detection of
9535         NUL bytes.
9536         * modules/memchr2 (Depends-on): Use intprops.h.
9537
9538 2008-04-23  Simon Josefsson  <simon@josefsson.org>
9539
9540         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
9541         an inline function instead of a CPP macro.  Patch by Ben Pfaff
9542         <blp@cs.stanford.edu>.
9543
9544 2008-04-23  Simon Josefsson  <simon@josefsson.org>
9545
9546         * lib/arpa_inet.in.h: New file.
9547
9548         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
9549         (Makefile.am): Sed in substitute header file.
9550
9551         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
9552         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
9553
9554         * modules/inet_ntop (configure.ac): Use
9555         gl_ARPA_INET_MODULE_INDICATOR.
9556
9557         * modules/inet_pton (configure.ac): Use
9558         gl_ARPA_INET_MODULE_INDICATOR.
9559
9560 2008-04-22  Jim Meyering  <meyering@redhat.com>
9561
9562         * modules/verify (License): Re-license as LGPLv2+.
9563
9564 2008-04-22  Simon Josefsson  <simon@josefsson.org>
9565
9566         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
9567         parameter to void* as per POSIX standard (MinGW uses char*).
9568
9569 2008-04-21  Bruno Haible  <bruno@clisp.org>
9570
9571         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
9572         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
9573         Define to replacements if REPLACE_ISWCNTRL is 1.
9574         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
9575         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
9576         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
9577         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
9578         what it fixes.
9579         * doc/posix-functions/iswalpha.texi: Likewise.
9580         * doc/posix-functions/iswblank.texi: Likewise.
9581         * doc/posix-functions/iswcntrl.texi: Likewise.
9582         * doc/posix-functions/iswdigit.texi: Likewise.
9583         * doc/posix-functions/iswgraph.texi: Likewise.
9584         * doc/posix-functions/iswlower.texi: Likewise.
9585         * doc/posix-functions/iswprint.texi: Likewise.
9586         * doc/posix-functions/iswpunct.texi: Likewise.
9587         * doc/posix-functions/iswspace.texi: Likewise.
9588         * doc/posix-functions/iswupper.texi: Likewise.
9589         * doc/posix-functions/iswxdigit.texi: Likewise.
9590         Reported by Alain Guibert.
9591
9592 2008-04-21  Bruno Haible  <bruno@clisp.org>
9593
9594         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
9595         Patch by Alain Guibert.
9596
9597 2008-04-21  Bruno Haible  <bruno@clisp.org>
9598
9599         Fix test failures on mingw.
9600         * tests/test-xstrtol.c (print_no_progname): New function.
9601         (main): Install it in error_print_progname hook.
9602         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
9603         * tests/test-xstrtoimax.sh: Likewise.
9604         * tests/test-xstrtoumax.sh: Likewise.
9605
9606 2008-04-21  Bruno Haible  <bruno@clisp.org>
9607
9608         Fix test failure on mingw.
9609         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
9610
9611 2008-04-21  Bruno Haible  <bruno@clisp.org>
9612
9613         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
9614         Actually assign a value.
9615
9616 2008-04-20  Bruno Haible  <bruno@clisp.org>
9617
9618         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
9619         take 2.
9620         * lib/canonicalize.c (canonicalize_file_name): Elide if the
9621         'canonicalize-lgpl' module is also used.
9622         * lib/canonicalize-lgpl.c: Undo last change.
9623         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
9624
9625 2008-04-20  Bruno Haible  <bruno@clisp.org>
9626
9627         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
9628         config.h. Provide _mkdir based fallback for mingw.
9629         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
9630         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
9631         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
9632         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
9633         rather than defining mkdir in config.h.
9634         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
9635         (gl_SYS_STAT_H_DEFAULTS): New macro.
9636         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
9637         HAVE_IO_H any more.
9638         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
9639         HAVE_DECL_MKDIR and HAVE_IO_H.
9640
9641 2008-04-20  Bruno Haible  <bruno@clisp.org>
9642
9643         * lib/isapipe.c: Port to native Windows platforms.
9644
9645 2008-04-20  Bruno Haible  <bruno@clisp.org>
9646
9647         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
9648
9649 2008-04-21  Eric Blake  <ebb9@byu.net>
9650
9651         Work around preprocessors that don't handle UINTMAX_MAX.
9652         * lib/memchr2.c (memchr2): Avoid embedded #if.
9653         Reported by Alain Guibert, fix suggested by Bruno Haible.
9654
9655 2008-04-21  Simon Josefsson  <simon@josefsson.org>
9656
9657         * doc/posix-functions/strftime.texi (strftime): Explain better
9658         Windows incompatibility.  Suggested by Micah Cowan
9659         <micah@cowan.name>.
9660
9661 2008-04-20  Bruno Haible  <bruno@clisp.org>
9662
9663         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
9664         unistr/u8-mblen.
9665
9666 2008-04-20  Bruno Haible  <bruno@clisp.org>
9667
9668         Fix test failure on platforms with non-GNU iconv.
9669         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
9670         (U_TO_U8): Use it, rather than u16_to_u8.
9671         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
9672         units at the end of the input string.
9673         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
9674
9675 2008-04-20  Bruno Haible  <bruno@clisp.org>
9676
9677         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
9678         when the resulting length is 0.
9679         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
9680
9681 2008-04-20  Bruno Haible  <bruno@clisp.org>
9682
9683         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
9684         works.
9685         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
9686
9687 2008-04-20  Bruno Haible  <bruno@clisp.org>
9688
9689         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
9690         * modules/tsearch-tests (configure.ac): Test for initstate function.
9691
9692 2008-04-20  Bruno Haible  <bruno@clisp.org>
9693
9694         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
9695         for nlink_t if missing.
9696         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
9697
9698 2008-04-19  Bruno Haible  <bruno@clisp.org>
9699
9700         Work around snprintf bug on Linux libc5.
9701         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
9702         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
9703         gl_SNPRINTF_SIZE1.
9704         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
9705         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
9706         that test failed.
9707         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
9708         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
9709         * modules/snprintf (Files): Add m4/printf.m4.
9710         * modules/vsnprintf (Files): Likewise.
9711         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
9712         * doc/posix-functions/vsnprintf.texi: Likewise.
9713
9714 2008-04-19  Bruno Haible  <bruno@clisp.org>
9715
9716         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
9717         from 0.0058 to less than 10^-7.
9718
9719 2008-04-19  Bruno Haible  <bruno@clisp.org>
9720
9721         Fix rounding when a precision is given.
9722         * lib/vasnprintf.c (is_borderline): New function.
9723         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
9724         9...9x.
9725         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
9726         %e, %g.
9727         * tests/test-vasprintf-posix.c (test_function): Likewise.
9728         * tests/test-snprintf-posix.h (test_function): Likewise.
9729         * tests/test-sprintf-posix.h (test_function): Likewise.
9730         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
9731         * tests/test-printf-posix.h (test_function): Likewise.
9732         * tests/test-printf-posix.output: Update.
9733         Reported by John Darrington <john@darrington.wattle.id.au> via
9734         Ben Pfaff <blp@cs.stanford.edu>.
9735
9736 2008-04-18  Simon Josefsson  <simon@josefsson.org>
9737
9738         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
9739         Suggested by Bruno Haible <bruno@clisp.org>.
9740
9741 2008-04-17  Bruno Haible  <bruno@clisp.org>
9742
9743         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
9744         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
9745         implementation.
9746         Patch by Bruce Merry <bmerry@gmail.com>.
9747
9748 2008-04-17  Simon Josefsson  <simon@josefsson.org>
9749
9750         * doc/posix-functions/strftime.texi (strftime): Mention that %e
9751         doesn't work under Windows.
9752
9753 2008-04-16  Bruno Haible  <bruno@clisp.org>
9754
9755         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
9756         New macros.
9757         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
9758         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
9759         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
9760         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
9761         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
9762         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
9763         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
9764         macros.
9765         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
9766         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
9767         Northern Sotho, Uighur.
9768
9769 2008-04-16  Bruno Haible  <bruno@clisp.org>
9770
9771         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
9772         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
9773         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
9774         Reported by Daniel Bergström <daniel@octocode.com>.
9775
9776 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
9777             Bruno Haible  <bruno@clisp.org>
9778
9779         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
9780         function.
9781         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
9782         New functions, mostly extracted from gl_locale_name_default.
9783         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
9784
9785 2008-04-16  Eric Blake  <ebb9@byu.net>
9786
9787         Adjust strtod detection to catch glibc 2.7 bug.
9788         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
9789         Reported by John Gatewood Ham.
9790
9791 2008-04-16  Bruno Haible  <bruno@clisp.org>
9792
9793         Add tentative support for Linux libc5.
9794         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
9795         * lib/fpurge.c (fpurge): Likewise.
9796         * lib/freadable.c (freadable): Likewise.
9797         * lib/freadahead.c (freadahead): Likewise.
9798         * lib/freading.c (freading): Likewise.
9799         * lib/freadptr.c (freadptr): Likewise.
9800         * lib/freadseek.c (freadptrinc): Likewise.
9801         * lib/fseeko.c (rpl_fseeko): Likewise.
9802         * lib/fseterr.c (fseterr): Likewise.
9803         * lib/fwritable.c (fwritable): Likewise.
9804         * lib/fwriting.c (fwriting): Likewise.
9805         Reported by Alain Guibert <alguibert+bts@free.fr>.
9806
9807 2008-04-15  Bruno Haible  <bruno@clisp.org>
9808
9809         * modules/mathl (configure.ac): Define module indicator.
9810
9811 2008-04-15  Bruno Haible  <bruno@clisp.org>
9812
9813         * lib/logl.c (logl): Remove unused variables.
9814
9815 2008-04-15  Bruno Haible  <bruno@clisp.org>
9816
9817         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
9818         fails.
9819
9820 2008-04-15  Bruno Haible  <bruno@clisp.org>
9821
9822         * lib/trim.c (trim2): Fix argument of isspace() macro.
9823
9824 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
9825
9826         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
9827         to 0.
9828         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
9829
9830 2008-04-14  Bruno Haible  <bruno@clisp.org>
9831
9832         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
9833         AC_LANG_PROGRAM argument.
9834         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
9835         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
9836         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
9837         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
9838         * m4/math_h.m4 (gl_MATH_H): Likewise.
9839         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
9840         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
9841         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
9842         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
9843         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
9844         * m4/regex.m4 (gl_REGEX): Likewise.
9845         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
9846         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
9847         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
9848         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
9849         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
9850         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
9851         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
9852         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
9853
9854 2008-04-14  Jim Meyering  <meyering@redhat.com>
9855
9856         test-strtod: fix typos: s/abs/fabs/
9857         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
9858
9859 2008-04-13  Bruno Haible  <bruno@clisp.org>
9860
9861         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
9862         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
9863         module is also used and while not building the reloc-wrapper.
9864
9865 2008-04-13  Bruno Haible  <bruno@clisp.org>
9866
9867         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
9868
9869 2008-04-13  Bruno Haible  <bruno@clisp.org>
9870
9871         Fix AIX compilation failure introduced on 2008-04-02.
9872         * tests/test-frexp.c (exp): Undefine before redefining.
9873         * tests/test-frexpl.c (exp): Likewise.
9874
9875 2008-04-13  Bruno Haible  <bruno@clisp.org>
9876
9877         Work around a HP-UX stdio bug.
9878         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
9879         * tests/test-ftello.c (main): Likewise.
9880         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
9881         * doc/posix-functions/ftello.texi: Likewise.
9882
9883 2008-04-13  Bruno Haible  <bruno@clisp.org>
9884
9885         Make test-signbit pass on HP-UX/hppa.
9886         * tests/test-signbit.c (minus_zerol): New variable.
9887         (test_signbitl): Use it.
9888
9889 2008-04-13  Bruno Haible  <bruno@clisp.org>
9890
9891         Make truncl work on OSF/1 4.0.
9892         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
9893         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
9894         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
9895         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
9896         HAVE_DECL_TRUNCL.
9897         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
9898         HAVE_DECL_TRUNCL.
9899         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
9900
9901 2008-04-13  Bruno Haible  <bruno@clisp.org>
9902
9903         * lib/unictype.h: Remove trailing comma from enumeration definitions.
9904
9905 2008-04-13  Bruno Haible  <bruno@clisp.org>
9906
9907         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
9908         expression, so as to avoid HP-UX 11 cc compiler bug.
9909
9910 2008-04-13  Bruno Haible  <bruno@clisp.org>
9911
9912         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
9913
9914 2008-04-13  Bruno Haible  <bruno@clisp.org>
9915
9916         * lib/git-merge-changelog.c: Remove empty declaration outside of
9917         functions.
9918
9919 2008-04-13  Bruno Haible  <bruno@clisp.org>
9920
9921         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
9922
9923 2008-04-13  Bruno Haible  <bruno@clisp.org>
9924
9925         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
9926         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
9927         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
9928         also if it exists but lacks definitions of the SHUT_* macros.
9929         * modules/sys_socket (Description): Update.
9930         Reported by Elbert Pol <e.pol@chello.nl>.
9931
9932 2008-04-13  Bruno Haible  <bruno@clisp.org>
9933
9934         * lib/localcharset.c (OS2): Don't redefine if already defined.
9935         Reported by Elbert Pol <e.pol@chello.nl>.
9936
9937 2008-04-13  Bruno Haible  <bruno@clisp.org>
9938
9939         * lib/binary-io.h [__EMX__]: Include <io.h>.
9940         Reported by Elbert Pol <e.pol@chello.nl>.
9941
9942 2008-04-12  Bruno Haible  <bruno@clisp.org>
9943
9944         * lib/fpucw.h: Enable the definitions also for x86_64.
9945         Needed for NetBSD/x86_64.
9946         Reported by Thomas Klausner <tk@giga.or.at>.
9947
9948 2008-04-12  Bruno Haible  <bruno@clisp.org>
9949
9950         * tests/test-strtod.c: Include isnand.h.
9951         (main): Use isnand instead of isnan.
9952         Reported by Jim Meyering.
9953
9954 2008-04-12  Bruno Haible  <bruno@clisp.org>
9955
9956         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
9957         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
9958
9959 2008-04-12  Jim Meyering  <meyering@redhat.com>
9960
9961         * m4/math_h.m4 (gl_MATH_H): Fix typos.
9962
9963 2008-04-12  Bruno Haible  <bruno@clisp.org>
9964
9965         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
9966         Reported by Elbert Pol <e.pol@chello.nl>.
9967
9968 2008-04-12  Eric Blake  <ebb9@byu.net>
9969
9970         Work around Solaris 10 math.h bug.
9971         * m4/math_h.m4 (gl_MATH_H): Check for bug.
9972         (gl_MATH_H_DEFAULTS): Set up default.
9973         * modules/math (Makefile.am): Replace new indicators.
9974         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
9975         * tests/test-math.c (main): Test this.
9976         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
9977         * doc/posix-headers/math.texi (math.h): Mention bug.
9978         Reported by Nelson H. F. Beebe and Jim Meyering.
9979
9980 2008-04-11  Bruno Haible  <bruno@clisp.org>
9981
9982         Adapt to future versions of Apple GCC.
9983         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
9984         Reported by Peter O'Gorman <peter@pogma.com>.
9985
9986 2008-04-11  Bruno Haible  <bruno@clisp.org>
9987
9988         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
9989
9990 2008-04-11  Bruno Haible  <bruno@clisp.org>
9991
9992         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
9993
9994         * modules/getaddrinfo-tests (Makefile.am): Define
9995         test_getaddrinfo_LDADD.
9996
9997 2008-04-11  Bruno Haible  <bruno@clisp.org>
9998
9999         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
10000         (init): Fix syntax error.
10001         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
10002         is declared.
10003
10004 2008-04-11  Bruno Haible  <bruno@clisp.org>
10005
10006         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
10007         * modules/glob (Depends-on): Add stdbool.
10008
10009 2008-04-11  Bruno Haible  <bruno@clisp.org>
10010
10011         * lib/trim.c: Include <string.h>.
10012
10013 2008-04-11  Eric Blake  <ebb9@byu.net>
10014
10015         Avoid compile failure on OS/2.
10016         * lib/regex_internal.h (internal_function): Disable optimization
10017         on OS/2 (__EMX__), where it caused compiler error.
10018         Reported by Elbert Pol.
10019
10020 2008-04-11  Bruno Haible  <bruno@clisp.org>
10021
10022         Flush the standard error stream before aborting. Needed on mingw.
10023         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
10024         * tests/test-array_list.c (ASSERT): Likewise.
10025         * tests/test-array_oset.c (ASSERT): Likewise.
10026         * tests/test-avltree_list.c (ASSERT): Likewise.
10027         * tests/test-avltree_oset.c (ASSERT): Likewise.
10028         * tests/test-avltreehash_list.c (ASSERT): Likewise.
10029         * tests/test-binary-io.c (ASSERT): Likewise.
10030         * tests/test-byteswap.c (ASSERT): Likewise.
10031         * tests/test-c-ctype.c (ASSERT): Likewise.
10032         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
10033         * tests/test-c-strcasestr.c (ASSERT): Likewise.
10034         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
10035         * tests/test-c-strstr.c (ASSERT): Likewise.
10036         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
10037         * tests/test-canonicalize.c (ASSERT): Likewise.
10038         * tests/test-carray_list.c (ASSERT): Likewise.
10039         * tests/test-ceilf1.c (ASSERT): Likewise.
10040         * tests/test-ceilf2.c (ASSERT): Likewise.
10041         * tests/test-ceill.c (ASSERT): Likewise.
10042         * tests/test-count-one-bits.c (ASSERT): Likewise.
10043         * tests/test-fbufmode.c (ASSERT): Likewise.
10044         * tests/test-fflush2.c (ASSERT): Likewise.
10045         * tests/test-floorf1.c (ASSERT): Likewise.
10046         * tests/test-floorf2.c (ASSERT): Likewise.
10047         * tests/test-floorl.c (ASSERT): Likewise.
10048         * tests/test-fopen.c (ASSERT): Likewise.
10049         * tests/test-fpending.c (ASSERT): Likewise.
10050         * tests/test-fprintf-posix.c (ASSERT): Likewise.
10051         * tests/test-fpurge.c (ASSERT): Likewise.
10052         * tests/test-freadable.c (ASSERT): Likewise.
10053         * tests/test-freadahead.c (ASSERT): Likewise.
10054         * tests/test-freading.c (ASSERT): Likewise.
10055         * tests/test-freadptr.c (ASSERT): Likewise.
10056         * tests/test-freadptr2.c (ASSERT): Likewise.
10057         * tests/test-freadseek.c (ASSERT): Likewise.
10058         * tests/test-freopen.c (ASSERT): Likewise.
10059         * tests/test-frexp.c (ASSERT): Likewise.
10060         * tests/test-frexpl.c (ASSERT): Likewise.
10061         * tests/test-fseek.c (ASSERT): Likewise.
10062         * tests/test-fseeko.c (ASSERT): Likewise.
10063         * tests/test-fstrcmp.c (ASSERT): Likewise.
10064         * tests/test-ftell.c (ASSERT): Likewise.
10065         * tests/test-ftello.c (ASSERT): Likewise.
10066         * tests/test-func.c (ASSERT): Likewise.
10067         * tests/test-fwritable.c (ASSERT): Likewise.
10068         * tests/test-fwriting.c (ASSERT): Likewise.
10069         * tests/test-getdelim.c (ASSERT): Likewise.
10070         * tests/test-getline.c (ASSERT): Likewise.
10071         * tests/test-i-ring.c (ASSERT): Likewise.
10072         * tests/test-iconv-utf.c (ASSERT): Likewise.
10073         * tests/test-iconv.c (ASSERT): Likewise.
10074         * tests/test-isfinite.c (ASSERT): Likewise.
10075         * tests/test-isnand.c (ASSERT): Likewise.
10076         * tests/test-isnanf.c (ASSERT): Likewise.
10077         * tests/test-isnanl.h (ASSERT): Likewise.
10078         * tests/test-ldexpl.c (ASSERT): Likewise.
10079         * tests/test-linked_list.c (ASSERT): Likewise.
10080         * tests/test-linkedhash_list.c (ASSERT): Likewise.
10081         * tests/test-localename.c (ASSERT): Likewise.
10082         * tests/test-lseek.c (ASSERT): Likewise.
10083         * tests/test-mbscasecmp.c (ASSERT): Likewise.
10084         * tests/test-mbscasestr1.c (ASSERT): Likewise.
10085         * tests/test-mbscasestr2.c (ASSERT): Likewise.
10086         * tests/test-mbscasestr3.c (ASSERT): Likewise.
10087         * tests/test-mbscasestr4.c (ASSERT): Likewise.
10088         * tests/test-mbschr.c (ASSERT): Likewise.
10089         * tests/test-mbscspn.c (ASSERT): Likewise.
10090         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
10091         * tests/test-mbspbrk.c (ASSERT): Likewise.
10092         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
10093         * tests/test-mbsrchr.c (ASSERT): Likewise.
10094         * tests/test-mbsspn.c (ASSERT): Likewise.
10095         * tests/test-mbsstr1.c (ASSERT): Likewise.
10096         * tests/test-mbsstr2.c (ASSERT): Likewise.
10097         * tests/test-mbsstr3.c (ASSERT): Likewise.
10098         * tests/test-memchr2.c (ASSERT): Likewise.
10099         * tests/test-memmem.c (ASSERT): Likewise.
10100         * tests/test-open.c (ASSERT): Likewise.
10101         * tests/test-printf-frexp.c (ASSERT): Likewise.
10102         * tests/test-printf-frexpl.c (ASSERT): Likewise.
10103         * tests/test-printf-posix.c (ASSERT): Likewise.
10104         * tests/test-quotearg.c (ASSERT): Likewise.
10105         * tests/test-rbtree_list.c (ASSERT): Likewise.
10106         * tests/test-rbtree_oset.c (ASSERT): Likewise.
10107         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
10108         * tests/test-round1.c (ASSERT): Likewise.
10109         * tests/test-roundf1.c (ASSERT): Likewise.
10110         * tests/test-roundl.c (ASSERT): Likewise.
10111         * tests/test-signbit.c (ASSERT): Likewise.
10112         * tests/test-sleep.c (ASSERT): Likewise.
10113         * tests/test-snprintf-posix.c (ASSERT): Likewise.
10114         * tests/test-snprintf.c (ASSERT): Likewise.
10115         * tests/test-sprintf-posix.c (ASSERT): Likewise.
10116         * tests/test-stat-time.c (ASSERT): Likewise.
10117         * tests/test-strcasestr.c (ASSERT): Likewise.
10118         * tests/test-strerror.c (ASSERT): Likewise.
10119         * tests/test-striconv.c (ASSERT): Likewise.
10120         * tests/test-striconveh.c (ASSERT): Likewise.
10121         * tests/test-striconveha.c (ASSERT): Likewise.
10122         * tests/test-strsignal.c (ASSERT): Likewise.
10123         * tests/test-strstr.c (ASSERT): Likewise.
10124         * tests/test-strtod.c (ASSERT): Likewise.
10125         * tests/test-trunc1.c (ASSERT): Likewise.
10126         * tests/test-trunc2.c (ASSERT): Likewise.
10127         * tests/test-truncf1.c (ASSERT): Likewise.
10128         * tests/test-truncf2.c (ASSERT): Likewise.
10129         * tests/test-truncl.c (ASSERT): Likewise.
10130         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
10131         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
10132         * tests/test-vasnprintf.c (ASSERT): Likewise.
10133         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
10134         * tests/test-vasprintf.c (ASSERT): Likewise.
10135         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
10136         * tests/test-vprintf-posix.c (ASSERT): Likewise.
10137         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
10138         * tests/test-vsnprintf.c (ASSERT): Likewise.
10139         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
10140         * tests/test-wcwidth.c (ASSERT): Likewise.
10141         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
10142         * tests/test-xprintf-posix.c (ASSERT): Likewise.
10143         * tests/test-xvasprintf.c (ASSERT): Likewise.
10144         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
10145         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
10146         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
10147         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
10148         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
10149         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
10150         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
10151         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
10152         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
10153         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
10154         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
10155         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
10156         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
10157         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
10158         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
10159         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
10160         * tests/unictype/test-block_list.c (ASSERT): Likewise.
10161         * tests/unictype/test-block_of.c (ASSERT): Likewise.
10162         * tests/unictype/test-block_test.c (ASSERT): Likewise.
10163         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
10164         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
10165         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
10166         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
10167         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
10168         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
10169         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
10170         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
10171         * tests/unictype/test-combining.c (ASSERT): Likewise.
10172         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
10173         * tests/unictype/test-digit.c (ASSERT): Likewise.
10174         * tests/unictype/test-mirror.c (ASSERT): Likewise.
10175         * tests/unictype/test-numeric.c (ASSERT): Likewise.
10176         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
10177         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
10178         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
10179         * tests/unictype/test-scripts.c (ASSERT): Likewise.
10180         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
10181         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
10182         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
10183         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
10184         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
10185         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
10186         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
10187         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
10188         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
10189         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
10190         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
10191         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
10192         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
10193         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
10194         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
10195         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
10196         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
10197         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
10198         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
10199         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
10200         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
10201         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
10202         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
10203         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
10204         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
10205         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
10206         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
10207         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
10208         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
10209         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
10210         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
10211         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
10212         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
10213         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
10214         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
10215         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
10216         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
10217         Reported by Eric Blake.
10218
10219 2008-04-11  Bruno Haible  <bruno@clisp.org>
10220
10221         * lib/wchar.in.h: Tweak comment.
10222
10223 2008-04-11  Bruno Haible  <bruno@clisp.org>
10224
10225         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
10226         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
10227         gl_COMMON.
10228         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
10229
10230 2008-04-11  Bruno Haible  <bruno@clisp.org>
10231
10232         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
10233
10234 2008-04-11  Simon Josefsson  <simon@josefsson.org>
10235
10236         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
10237         of attempting to use non-existing /dev/*random.  Based on patch
10238         from Adam Strzelecki <ono@java.pl> in
10239         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
10240
10241 2008-04-08  Bruno Haible  <bruno@clisp.org>
10242
10243         Add tentative support for emx+gcc.
10244         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
10245         * lib/fpurge.c (fpurge): Likewise.
10246         * lib/freadable.c (freadable): Likewise.
10247         * lib/freadahead.c (freadahead): Likewise.
10248         * lib/freading.c (freading): Likewise.
10249         * lib/freadptr.c (freadptr): Likewise.
10250         * lib/freadseek.c (freadptrinc): Likewise.
10251         * lib/fseeko.c (rpl_fseeko): Likewise.
10252         * lib/fseterr.c (fseterr): Likewise.
10253         * lib/fwritable.c (fwritable): Likewise.
10254         * lib/fwriting.c (fwriting): Likewise.
10255         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
10256
10257 2008-04-09  Eric Blake  <ebb9@byu.net>
10258
10259         Avoid some autoconf warnings.
10260         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
10261         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
10262         * m4/afs.m4 (gl_AFS): Likewise.
10263         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
10264         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
10265         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
10266         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
10267         (gl_INTEGER_TYPE_SUFFIX): Likewise.
10268         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
10269         (AC_CHECK_DECLS_ONCE): Likewise.
10270         Rename file...
10271         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
10272         gnulib-tool requires autoconf 2.59 or better.
10273         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
10274
10275 2008-04-08  Eric Blake  <ebb9@byu.net>
10276
10277         Use 'git describe --match' if present (added in git 1.5.5).
10278         * build-aux/git-version-gen: Limit result to tags that match 'v*'
10279         if possible.
10280
10281 2008-04-08  Bruno Haible  <bruno@clisp.org>
10282
10283         Add tentative support for OpenServer.
10284         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
10285         _ptr, _cnt.
10286         * lib/fpurge.c (fpurge): Likewise.
10287         * lib/freadable.c (freadable): Likewise.
10288         * lib/freadahead.c (freadahead): Likewise.
10289         * lib/freading.c (freading): Likewise.
10290         * lib/freadptr.c (freadptr): Likewise.
10291         * lib/freadseek.c (freadptrinc): Likewise.
10292         * lib/fseeko.c (rpl_fseeko): Likewise.
10293         * lib/fseterr.c (fseterr): Likewise.
10294         * lib/fwritable.c (fwritable): Likewise.
10295         * lib/fwriting.c (fwriting): Likewise.
10296         Reported by Roger Cornelius <rac@tenzing.org> and
10297         Brian K. White <brian@aljex.com>.
10298
10299 2008-04-06  Jim Meyering  <meyering@redhat.com>
10300
10301         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
10302
10303 2008-04-06  Bruno Haible  <bruno@clisp.org>
10304
10305         Avoid possible error with non-ASCII bytes in UTF-8 locales.
10306         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
10307         * tests/test-printf-posix.sh: Likewise.
10308         * tests/test-vfprintf-posix.sh: Likewise.
10309         * tests/test-vprintf-posix.sh: Likewise.
10310         * tests/test-xprintf-posix.sh: Likewise.
10311
10312 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10313
10314         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
10315         hide error from 'ls', needed on OS/2.
10316         Report by Elbert Pol <elbert.pol@gmail.com>.
10317
10318 2008-04-04  Eric Blake  <ebb9@byu.net>
10319
10320         Make test-fseeko.c failures meaningful.
10321         * tests/test-fseeko.c: Print line number on failure.
10322         * tests/test-fseek.c: Likewise.
10323         Reported by Nelson H. F. Beebe.
10324
10325         Improve strtod bug detection check.
10326         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
10327         required for Solaris 10.
10328         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
10329
10330 2008-04-04  Bruno Haible  <bruno@clisp.org>
10331
10332         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
10333         by m4/setenv.m4.
10334
10335 2008-04-03  Eric Blake  <ebb9@byu.net>
10336
10337         Ensure sane .version contents.
10338         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
10339         version string.
10340         * build-aux/git-version-gen: Improve documentation.
10341
10342         Make GNU make output nicer.
10343         * top/GNUmakefile [!_have-Makefile]: Add dependency on
10344         MAKECMDGOALS to enforce message for all command line targets.  Set
10345         srcdir for use in maint.mk.
10346
10347         Another maintainer tweak.
10348         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
10349         a target that regenerates version.
10350
10351 2008-04-03  Jim Meyering  <meyering@redhat.com>
10352
10353         vc-list-files: don't cause coreutils "make po-check" failure
10354         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
10355
10356 2008-04-03  Eric Blake  <ebb9@byu.net>
10357
10358         Allow VPATH usage of vc-list-files.
10359         * build-aux/vc-list-files (scriptversion): Add timestamp.
10360         (options): Add --help, --version, -C.
10361         (CVS): Support installed cvsu.
10362
10363 2008-04-02  Bruno Haible  <bruno@clisp.org>
10364
10365         Avoid some "statement with no effect" warnings from gcc.
10366         * tests/test-wctype.c (main): Explicitly ignore unused values.
10367         Reported by Jim Meyering.
10368
10369 2008-04-02  Jim Meyering  <meyering@redhat.com>
10370
10371         Avoid some warnings from "gcc -Wshadow".
10372         * tests/test-frexp.c (exp): Define to a different identifier.
10373         * tests/test-frexpl.c (exp): Likewise.
10374
10375 2008-04-03  Jim Meyering  <meyering@redhat.com>
10376
10377         bootstrap: remove dangling *.[ch] symlinks from lib
10378         * build-aux/bootstrap [dangling symlink removal]: Move find's
10379         -depth option to precede all others, to avoid a warning.
10380         Remove *.[ch] files too, and from "$source_base" (usually lib/).
10381
10382 2008-04-02  Bruno Haible  <bruno@clisp.org>
10383
10384         Avoid some warnings from "gcc -Wshadow".
10385         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
10386         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
10387         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
10388         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
10389         Reported by Jim Meyering.
10390
10391 2008-04-01  Bruno Haible  <bruno@clisp.org>
10392
10393         Fix test to work on IRIX 6.5 with cc.
10394         * tests/test-math.c (numeric_equal): New function.
10395         (main): Use it.
10396
10397 2008-04-01  Bruno Haible  <bruno@clisp.org>
10398
10399         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
10400
10401 2008-04-01  Bruno Haible  <bruno@clisp.org>
10402
10403         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
10404         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10405         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
10406         (Depends-on): Remove math.
10407
10408         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
10409         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10410         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
10411         (Depends-on): Remove math.
10412
10413         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
10414         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10415         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
10416         (Depends-on): Remove math.
10417         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
10418         (Depends-on): Remove math.
10419
10420         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
10421         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10422         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
10423         (Depends-on): Remove math.
10424         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
10425         (Depends-on): Remove math.
10426
10427         * tests/test-round1.c: Include nan.h.
10428         (main): Use NaNd instead of NAN.
10429         * modules/round-tests (Files): Add tests/nan.h.
10430
10431         * tests/test-trunc1.c: Include nan.h.
10432         (main): Use NaNd instead of NAN.
10433         * modules/trunc-tests (Files): Add tests/nan.h.
10434
10435         * tests/test-roundf1.c: Include nan.h.
10436         (main): Use NaNf instead of NAN.
10437         * modules/roundf-tests (Files): Add tests/nan.h.
10438
10439         * tests/test-truncf1.c: Include nan.h.
10440         (main): Use NaNf instead of NAN.
10441         * modules/truncf-tests (Files): Add tests/nan.h.
10442
10443         * tests/test-ceilf1.c: Include nan.h.
10444         (main): Use NaNf instead of NAN.
10445         * modules/ceilf-tests (Files): Add tests/nan.h.
10446
10447         * tests/test-floorf1.c: Include nan.h.
10448         (main): Use NaNf instead of NAN.
10449         * modules/floorf-tests (Files): Add tests/nan.h.
10450
10451         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
10452         (main): Use NaNf instead of NAN.
10453         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
10454
10455         * tests/test-isnand.c: Include nan.h instead of <math.h>.
10456         (main): Use NaNd instead of NAN.
10457         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
10458
10459         * tests/test-frexp.c: Include nan.h.
10460         (main): Use NaNd instead of NAN.
10461         * modules/frexp-tests (Files): Add tests/nan.h.
10462
10463         * lib/isnan.c: Don't include <math.h>.
10464         (FUNC): Don't use NAN macro.
10465         * modules/isnand-nolibm (Depends-on): Remove math.
10466         * modules/isnanf-nolibm (Depends-on): Remove math.
10467         * modules/isnanl (Depends-on): Remove math.
10468         * modules/isnanl-nolibm (Depends-on): Remove math.
10469
10470         * tests/nan.h: New file.
10471
10472 2008-04-01  Eric Blake  <ebb9@byu.net>
10473
10474         Fix typos.
10475         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
10476         values to be the right type.
10477
10478         For now, cater to gnulib strtod inaccuracies.
10479         * tests/test-strtod.c (main): Allow 1-ulp error on expected
10480         fractional results.  While not as nice from a QoI perspective, it
10481         is a quicker patch than correctly implementing decimal to binary
10482         rounding.
10483
10484 2008-03-31  Eric Blake  <ebb9@byu.net>
10485
10486         Guarantee a definition of NAN.
10487         * lib/math.in.h (NAN): Define if missing.
10488         * tests/test-math.c (main): Test it.
10489         * doc/posix-headers/math.texi (math.h): Document this.
10490         * lib/isnan.c (rpl_isnand): Use it.
10491         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
10492         * tests/test-floorf1.c (NaN): Likewise.
10493         * tests/test-frexp.c (NaN): Likewise.
10494         * tests/test-isnand.c (NaN): Likewise.
10495         * tests/test-isnanf.c (NaN): Likewise.
10496         * tests/test-round1.c (NaN): Likewise.
10497         * tests/test-roundf1.c (NaN): Likewise.
10498         * tests/test-snprintf-posix.h (NaN): Likewise.
10499         * tests/test-sprintf-posix.h (NaN): Likewise.
10500         * tests/test-trunc1.c (NaN): Likewise.
10501         * tests/test-truncf1.c (NaN): Likewise.
10502         * tests/test-vasnprintf-posix.c (NaN): Likewise.
10503         * tests/test-vasprintf-posix.c (NaN): Likewise.
10504         * modules/isnand-nolibm (Depends-on): Add math.
10505         * modules/isnanf-nolibm (Depends-on): Likewise.
10506         * modules/isnanl (Depends-on): Likewise.
10507         * modules/isnanl-nolibm (Depends-on): Likewise.
10508         * modules/snprintf-posix-tests (Depends-on): Likewise.
10509         * modules/sprintf-posix-tests (Depends-on): Likewise.
10510         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
10511         * modules/vsprintf-posix-tests (Depends-on): Likewise.
10512         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
10513         * modules/vasprintf-posix-tests (Depends-on): Likewise.
10514
10515 2008-03-31  Bruno Haible  <bruno@clisp.org>
10516
10517         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
10518         * doc/posix-functions/strtod.texi: Likewise.
10519
10520 2008-03-31  Bruno Haible  <bruno@clisp.org>
10521
10522         * tests/test-strtod.c (main): Don't use C99 syntax.
10523
10524 2008-03-31  Bruno Haible  <bruno@clisp.org>
10525
10526         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
10527         Reported by Eric Blake.
10528
10529 2008-03-31  Jim Meyering  <meyering@redhat.com>
10530
10531         Don't compare actual signbit return values.
10532         * tests/test-strtod.c (main): Rather, compare only their
10533         zero/non-zero nature.
10534
10535 2008-03-31  Eric Blake  <ebb9@byu.net>
10536
10537         More strtod documentation.
10538         * doc/posix-functions/strtod.texi (strtod): Interpret more test
10539         failures as distinct bugs.
10540
10541 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
10542
10543         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
10544         Problem reported by Erik Benada in
10545         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
10546
10547 2008-03-30  Bruno Haible  <bruno@clisp.org>
10548
10549         * tests/test-strtod.c: Add comments about which assertion fails on which
10550         platform.
10551         * doc/posix-functions/strtod.texi: Add info about many more platforms.
10552
10553 2008-03-30  Eric Blake  <ebb9@byu.net>
10554
10555         Test signbit behavior on zeros.
10556         * tests/test-signbit.c (test_signbitf): Add tests for zero.
10557         (test_signbitd, test_signbitl): Likewise.
10558
10559         More strtod touchups.
10560         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
10561         sign of negative underflow, for now.  Use .5, not .1.
10562         * doc/posix-functions/strtod.texi (strtod): Mention these
10563         limitations.
10564         Reported by Jim Meyering.
10565
10566 2008-03-30  Bruno Haible  <bruno@clisp.org>
10567
10568         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
10569         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
10570
10571 2008-03-30  Bruno Haible  <bruno@clisp.org>
10572
10573         Avoid failure when attempting to return empty iconv results on some
10574         platforms.
10575         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
10576         allocation, don't report ENOMEM when the resulting string is empty.
10577
10578 2008-03-30  Bruno Haible  <bruno@clisp.org>
10579
10580         Fix buffer overrun.
10581         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
10582         Don't consider the width for tmp_length. Check count against tmp_length
10583         before doing the padding. Ensure enough allocation during padding.
10584
10585 2008-03-30  Eric Blake  <ebb9@byu.net>
10586
10587         strtod touchups.
10588         * lib/strtod.c (strtod): Avoid compiler warnings.
10589         Reported by Jim Meyering.
10590
10591 2008-03-30  Bruno Haible  <bruno@clisp.org>
10592
10593         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
10594         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
10595         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
10596         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
10597         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
10598         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
10599         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
10600         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
10601
10602         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
10603         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
10604         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
10605         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
10606         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
10607         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
10608         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
10609         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
10610
10611         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
10612         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
10613         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
10614         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
10615         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
10616         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
10617         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
10618         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
10619
10620         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
10621         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
10622
10623         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
10624         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
10625
10626         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
10627         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
10628
10629         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
10630         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
10631         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
10632
10633         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
10634         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
10635         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
10636
10637         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
10638         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
10639         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
10640
10641         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
10642         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
10643         * modules/vasprintf (Depends-on): Add EOVERFLOW.
10644
10645         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
10646         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
10647         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
10648         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
10649         (Depends-on): Add EOVERFLOW.
10650         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
10651         (Depends-on): Add EOVERFLOW.
10652         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
10653         (Depends-on): Add EOVERFLOW.
10654         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
10655         (Depends-on): Add EOVERFLOW.
10656         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
10657         (Depends-on): Add EOVERFLOW.
10658         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
10659         (Depends-on): Add EOVERFLOW.
10660         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
10661         (Depends-on): Add EOVERFLOW.
10662         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
10663         (Depends-on): Add EOVERFLOW.
10664
10665         * lib/sprintf.c (EOVERFLOW): Remove fallback.
10666         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
10667         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
10668
10669         * lib/snprintf.c (EOVERFLOW): Remove fallback.
10670         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
10671         * modules/snprintf (Depends-on): Add EOVERFLOW.
10672
10673         * lib/poll.c (EOVERFLOW): Remove fallback.
10674         * modules/poll (Depends-on): Add EOVERFLOW.
10675
10676         * lib/getugroups.c (EOVERFLOW): Remove fallback.
10677         * modules/getugroups (Depends-on): Add EOVERFLOW.
10678
10679         * lib/getdelim.c (EOVERFLOW): Remove fallback.
10680         * modules/getdelim (Depends-on): Add EOVERFLOW.
10681
10682         * lib/ftell.c (EOVERFLOW): Remove fallback.
10683         * modules/ftell (Depends-on): Add EOVERFLOW.
10684
10685         * lib/fprintf.c (EOVERFLOW): Remove fallback.
10686         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
10687         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
10688
10689         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
10690
10691         * modules/EOVERFLOW-tests: New file.
10692         * tests/test-EOVERFLOW.c: New file.
10693
10694         * modules/EOVERFLOW: New file.
10695         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
10696
10697 2008-03-30  Bruno Haible  <bruno@clisp.org>
10698
10699         Fix bug introduced on 2007-06-10.
10700         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
10701         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
10702
10703 2008-03-30  Bruno Haible  <bruno@clisp.org>
10704
10705         Improve freadseek's efficiency after ungetc.
10706         * lib/freadseek.c: Include freadahead.h.
10707         (freadptrinc): New function, extracted from freadseek.
10708         (freadseek): Use it in a loop. Use freadahead to determine the number
10709         of loop iterations.
10710         * modules/freadseek (Depends-on): Add freadahead.
10711         (configure.ac): Require AC_C_INLINE.
10712
10713 2008-03-30  Bruno Haible  <bruno@clisp.org>
10714
10715         * lib/freadseek.c (freadseek): Don't ignore the return value of
10716         freadptr.
10717
10718 2008-03-29  Eric Blake  <ebb9@byu.net>
10719
10720         Add hex float support.
10721         * modules/strtod (Depends-on): Add c-ctype.
10722         (Link): Mention POW_LIB.
10723         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
10724         whitespace between 'e' and exponent.
10725         * tests/test-strtod.c (main): Enable hex float tests.
10726         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
10727         now provides.
10728
10729         Document various strtod bugs, with some fixes.
10730         * doc/posix-functions/strtod.texi (strtod): Document bugs with
10731         "-0x", "inf", "nan", and hex constants.
10732         * doc/posix-functions/atof.texi (atof): Likewise.
10733         * modules/stdlib (Makefile.am): Support strtod.
10734         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
10735         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
10736         detect additional strtod bugs.
10737         * lib/stdlib.in.h (rpl_strtod): Add declarations.
10738         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
10739         bool where appropriate.  Parse 'inf' and 'nan'.
10740         * tests/test-strtod.c: New file.
10741         * modules/strtod (Depends-on): Add stdbool, stdlib.
10742         (configure.ac): Turn on module indicator.
10743         * modules/strtod-tests: New module.
10744
10745 2008-03-29  Eric Blake  <ebb9@byu.net>
10746
10747         Fix ftell on mingw.
10748         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
10749         * modules/ftell-tests (Depends-on): Add binary-io.
10750         * modules/ftello-tests (Depends-on): Likewise.
10751         * tests/test-ftell.c (main): Enhance test to cover behavior after
10752         ungetc.  Enforce binary mode.
10753         * tests/test-ftello.c (main): Likewise.
10754
10755         Pass test-freadseek on cygwin.
10756         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
10757         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
10758         ungetc buffer.
10759
10760         * tests/test-fflush2.c (main): Fix typo.
10761
10762 2008-03-29  Bruno Haible  <bruno@clisp.org>
10763
10764         * tests/test-fflush2.c (main): Temporarily disable the contents of
10765         this test.
10766         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
10767         Reported by Eric Blake.
10768
10769 2008-03-28  Simon Josefsson  <simon@josefsson.org>
10770
10771         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
10772         (GC_SHA224_DIGEST_SIZE): Add.
10773
10774         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
10775         (gc_hash_digest_length): Likewise.
10776         (gc_hash_buffer): Likewise.
10777
10778 2008-03-25  Bruno Haible  <bruno@clisp.org>
10779
10780         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
10781         detail which gettext release to use.
10782         Reported by Simon Josefsson.
10783
10784 2008-03-26  Jim Meyering  <meyering@redhat.com>
10785
10786         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
10787         * modules/gnumakefile (clean-GNUmakefile): Also, use
10788         test ... && ... || : syntax rather than if-then ... fi.
10789
10790         gnumakefile: Don't double-quote-expand $(VPATH) value.
10791         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
10792
10793 2008-03-24  Eric Blake  <ebb9@byu.net>
10794
10795         Alter GNUmakefile to install into top directory.
10796         * modules/maintainer-makefile: Split, and add dependency...
10797         * modules/gnumakefile: to this new module.
10798         * build-aux/GNUmakefile: Move...
10799         * top/GNUmakefile: ...here.
10800         * build-aux/maint.mk: Move...
10801         * top/maint.mk: ...here.
10802         * MODULES.html.sh (Support for maintaining...): Document new
10803         module.
10804
10805 2008-03-23  Bruno Haible  <bruno@clisp.org>
10806
10807         * gnulib-tool: New options --vc-files, --no-vc-files.
10808         (func_usage): Document them.
10809         (vc_files): New variable.
10810         (func_import): Consider vc_files.
10811         (func_create_testdir): Set vc_files to empty.
10812         Suggested by Jim Meyering and Karl Berry.
10813
10814 2008-03-23  Bruno Haible  <bruno@clisp.org>
10815
10816         Fix regex compilation error on HP-UX 11.
10817         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
10818         * modules/regex (Files): Add m4/mbstate_t.m4.
10819         Reported by Ton Voon <ton.voon@altinity.com>.
10820
10821 2008-03-23  Bruno Haible  <bruno@clisp.org>
10822
10823         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
10824
10825 2008-03-23  Eric Blake  <ebb9@byu.net>
10826             Bruno Haible  <bruno@clisp.org>
10827
10828         Install files from top/ in the destination directory.
10829         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
10830         augmentation also for the files from top/.
10831         (func_import, func_create_testdir): Rewrite file names:
10832         top/filename -> filename.
10833
10834 2008-03-23  Bruno Haible  <bruno@clisp.org>
10835
10836         Tweak "gnulib --version" output.
10837         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
10838
10839 2008-03-23  Bruno Haible  <bruno@clisp.org>
10840
10841         Tweak "gnulib --version" output.
10842         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
10843         rather than contents of ChangeLog, when possible.
10844
10845 2008-03-21  Eric Blake  <ebb9@byu.net>
10846
10847         More --version tweaks.
10848         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
10849         date of last ChangeLog entry.
10850
10851 2008-03-21  Jim Meyering  <meyering@redhat.com>
10852
10853         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
10854
10855 2008-03-20  Eric Blake  <ebb9@byu.net>
10856
10857         VPATH fix.
10858         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
10859
10860 2008-03-20  Simon Josefsson  <simon@josefsson.org>
10861
10862         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
10863         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
10864
10865 2008-03-20  Eric Blake  <ebb9@byu.net>
10866
10867         Sync GNUmakefile with coreutils.
10868         * build-aux/GNUmakefile (have-Makefile): Rename...
10869         (_have-Makefile): ...to this, for namespace consideration.
10870         (GNUmakefile.cfg): Include, if present.
10871         (_autoreconf): Define a default.
10872         (_is-dist-target): New rule for rebuilds to pick up intra-release
10873         version.
10874         (maint-cfg.mk): Rename...
10875         (cfg.mk): ...to this.
10876
10877 2008-03-18  Jim Meyering  <meyering@redhat.com>
10878
10879         New script and module: mktempd
10880         * MODULES.html.sh (maint+release support): Add mktempd.
10881         * build-aux/mktempd: New file.
10882         * modules/mktempd: New file.
10883
10884 2008-03-15  Jim Meyering  <meyering@redhat.com>
10885
10886         Undo last change.
10887         * lib/sha1.c, lib/md5.c: 63 != ~63.
10888         Reported by Andreas Schwab.
10889
10890         sha1.c, md5.c: Hoist a redundant expression.
10891         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
10892         "ctx->buflen" only once, before calling *_process_block.
10893         * lib/md5.c (md5_process_bytes): Likewise.
10894
10895 2008-03-14  Eric Blake  <ebb9@byu.net>
10896
10897         Bump copyright year in files generated by gnulib-tool.
10898         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
10899         gnulib-tool, rather than hard-coding it.
10900
10901         Fix 'gnulib-tool --version' output to work with git.
10902         * gnulib-tool (func_gnulib_dir): New function, extracted from...
10903         (startup): ...here.
10904         (func_version): Use it to invoke git-version-gen, rather than
10905         relying on CVS keyword expansion.  Modernize wording.
10906         (cvsdatestamp, last_checkin_date, version): Kill unused
10907         variables.
10908
10909 2008-03-12  Jim Meyering  <meyering@redhat.com>
10910
10911         Recognize optional cast of the argument to free.
10912         * build-aux/useless-if-before-free: Update regexps.
10913
10914         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
10915
10916 2008-03-11  Bruno Haible  <bruno@clisp.org>
10917
10918         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
10919         by a single package.
10920         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
10921         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
10922         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
10923         Reported by Sam Steingold <sds@gnu.org>.
10924
10925 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
10926
10927         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
10928         repositories.
10929
10930 2008-03-11  Bruno Haible  <bruno@clisp.org>
10931
10932         Avoid conflicts between local macro definitions.
10933         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
10934         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
10935
10936 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
10937             Bruno Haible  <bruno@clisp.org>
10938
10939         Make va_copy work with some version of xlc on AIX 5.1.
10940         * lib/stdarg.in.h: New file.
10941         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
10942         On AIX, use a <stdarg.h> file substitute.
10943         * modules/stdarg (Files): Add lib/stdarg.in.h.
10944         (Depends-on): Add include_next.
10945         (Makefile.am): Build a stdarg.h substitute if requested.
10946         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
10947
10948 2008-03-10  Bruno Haible  <bruno@clisp.org>
10949
10950         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
10951         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
10952         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
10953
10954 2008-03-10  Bruno Haible  <bruno@clisp.org>
10955
10956         * modules/stdlib (Depends-on): Add include_next, remove
10957         absolute-header.
10958
10959 2008-03-09  Bruno Haible  <bruno@clisp.org>
10960
10961         * lib/freadahead.h (freadahead): Document more precisely.
10962         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
10963         the sum of both buffer sizes.
10964         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
10965         * NEWS: Document the change.
10966
10967 2008-03-09  Bruno Haible  <bruno@clisp.org>
10968
10969         Extend freadptr to return also the buffer size.
10970         * lib/freadptr.h (freadptr): Add sizep argument.
10971         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
10972         (freadptr): Add sizep argument. Determine buffer size like freadahead
10973         does.
10974         * tests/test-freadptr.c: Don't include freadahead.h.
10975         (main): Adapt for new calling convention of freadptr.
10976         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
10977         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
10978         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
10979         tests/test-freadptr2.sh.
10980         (Depends): Remove freadahead.
10981         (TESTS): Add test-freadptr2.sh.
10982         (check_PROGRAMS): Add test-freadptr2.
10983
10984 2008-03-09  Bruno Haible  <bruno@clisp.org>
10985
10986         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
10987         Report and solution by Simon Josefsson.
10988
10989 2008-03-06  Bruno Haible  <bruno@clisp.org>
10990
10991         Make fflush after ungetc work on BSD platforms.
10992         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
10993         * tests/test-fflush2.c: New file.
10994         * tests/test-fflush2.sh: New file.
10995         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
10996         tests/test-fflush2.c.
10997         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
10998         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
10999
11000 2008-03-06  Eric Blake  <ebb9@byu.net>
11001
11002         Likewise for ftello.
11003         * modules/ftello (Dependencies): Add extensions.
11004         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
11005
11006 2008-03-06  Bruno Haible  <bruno@clisp.org>
11007
11008         * modules/fseeko (Dependencies): Add extensions.
11009         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
11010         Needed on glibc systems.
11011
11012 2008-03-06  Bruno Haible  <bruno@clisp.org>
11013
11014         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
11015         email address.
11016         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
11017
11018 2008-03-06  Bruno Haible  <bruno@clisp.org>
11019
11020         * users.txt: Add libgnupdf.
11021
11022 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
11023
11024         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
11025         (Header File Substitutes, Function Substitutes,
11026         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
11027         (Build robot for gnulib): Fix typo.
11028
11029 2008-03-06  Bruno Haible  <bruno@clisp.org>
11030
11031         * doc/gnulib-tool.texi (VCS Issues): Small updates.
11032         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
11033
11034 2008-03-06  Bruno Haible  <bruno@clisp.org>
11035
11036         * doc/func.texi: New file, extracted from doc/gnulib.texi.
11037         * doc/gnulib.texi: Include it.
11038
11039 2008-03-06  Simon Josefsson  <simon@josefsson.org>
11040
11041         * modules/func (License): Change license to unlimited; there was
11042         no LGPL parts in the module anyway.
11043
11044 2008-03-06  Simon Josefsson  <simon@josefsson.org>
11045
11046         * modules/__func__: Renamed to modules/func.
11047         * modules/__func__-tests: Renamed to modules/func-tests.
11048         * tests/test-__func__.c: Renamed to tests/test-func.c.
11049         * m4/__func__.m4: Renamed to m4/func.m4.
11050         * doc/gnulib.texi (__func__): Section renamed to func.
11051         Suggested by Eric Blake <ebb9@byu.net>.
11052
11053 2008-03-06  Simon Josefsson  <simon@josefsson.org>
11054
11055         * doc/gnulib.texi (__func__): Use C99 terminology when talking
11056         about __func__.  Make example self-contained.  Suggested by Eric
11057         Blake <ebb9@byu.net>.
11058
11059         * tests/test-__func__.c (main): Avoid extraneous () around __func.
11060         Suggested by Eric Blake <ebb9@byu.net>.
11061
11062 2008-03-06  Simon Josefsson  <simon@josefsson.org>
11063
11064         * modules/__func__: New file.
11065         * modules/__func__-tests: New file.
11066         * tests/test-__func__.c: New file.
11067         * m4/__func__.m4: New file.
11068         * doc/gnulib.texi (__func__): Document __func__ module.
11069
11070 2008-03-05  Simon Josefsson  <simon@josefsson.org>
11071
11072         * modules/byteswap (License): Re-license as LGPLv2+.
11073
11074 2008-03-05  Simon Josefsson  <simon@josefsson.org>
11075
11076         * doc/Makefile: Add pdf target.
11077
11078 2008-03-05  Simon Josefsson  <simon@josefsson.org>
11079
11080         * modules/inline (License): Use 'unlimited', since there are only
11081         *.m4 files in this module.
11082
11083 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
11084             Bruno Haible  <bruno@clisp.org>
11085
11086         Add support for HP C 7.1 on OpenVMS 8.3.
11087         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
11088
11089 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
11090
11091         Update VMS specifics.
11092         * lib/getopt.c [VMS]: Remove include of unixlib.h.
11093
11094 2008-03-02  Jim Meyering  <meyering@redhat.com>
11095
11096         Remove the last dependency on the "free" module.
11097         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
11098         Reported by Bob Proulx.
11099
11100         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
11101
11102         Remove useless "if" tests before free.  Deprecate "free" module.
11103         * doc/posix-functions/free.texi: Mention that this
11104         module is no longer useful.
11105         * modules/free (Notice): Say this module is obsolete.
11106         * modules/readutmp (Depends-on): Remove free.
11107         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
11108         * lib/putenv.c (putenv): Likewise.
11109         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
11110         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
11111         * tests/test-c-strcasestr.c (main): Likewise.
11112         * tests/test-c-strstr.c (main): Likewise.
11113         * tests/test-mbscasestr1.c (main): Likewise.
11114         * tests/test-mbscasestr2.c (main): Likewise.
11115         * tests/test-mbsstr1.c (main): Likewise.
11116         * tests/test-mbsstr2.c (main): Likewise.
11117         * tests/test-memmem.c (main): Likewise.
11118         * tests/test-strcasestr.c (main): Likewise.
11119         * tests/test-striconv.c (main): Likewise.
11120         * tests/test-striconveh.c (main): Likewise.
11121         * tests/test-striconveha.c (main): Likewise.
11122         * tests/test-strstr.c (main): Likewise.
11123
11124         * build-aux/git-version-gen: Adjust a comment and the Usage string.
11125
11126         bootstrap: sync from coreutils again
11127         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
11128
11129 2008-03-01  Jim Meyering  <meyering@redhat.com>
11130
11131         bootstrap: sync from coreutils
11132         * build-aux/bootstrap (update_po_files): Copy a .po file into place
11133         also when the target doesn't exist.
11134
11135 2008-03-01  Eric Blake  <ebb9@byu.net>
11136
11137         Fix bugs in last patch.
11138         * lib/memchr2.c (memchr2): Fix typo.
11139         * tests/test-memchr2.c: Test previous bug, and don't use GNU
11140         extension.
11141         Reported by Bruce Korb.
11142
11143         New module 'memchr2'.
11144         * modules/memchr2: New file.
11145         * modules/memchr2-tests: Likewise.
11146         * lib/memchr2.h: Likewise.
11147         * lib/memchr2.c: Likewise, based on memchr.c.
11148         * tests/test-memchr2.c: New test.
11149         * MODULES.html.sh (String handling): Add memchr2.
11150
11151 2008-02-29  Bruno Haible  <bruno@clisp.org>
11152
11153         * modules/freadseek-tests: New file.
11154         * tests/test-freadseek.sh: New file.
11155         * tests/test-freadseek.c: New file.
11156
11157         New module 'freadseek'.
11158         * modules/freadseek: New file.
11159         * lib/freadseek.h: New file.
11160         * lib/freadseek.c: New file.
11161         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
11162
11163 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
11164
11165         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
11166         wydawca.
11167
11168         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
11169         program_invocation_name and program_invocation_short_name are
11170         present.
11171
11172 2008-02-28  Bruno Haible  <bruno@clisp.org>
11173
11174         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
11175         * tests/test-freadptr.sh: Also test non-seekable stdin.
11176
11177 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
11178
11179         * build-aux/bootstrap (source_base, m4_base)
11180         (doc_base, tests_base): New variables.
11181         (gnulib_tool_options): Do not hardcode base directories, use
11182         the above variables instead.
11183
11184 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
11185
11186         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
11187
11188 2008-02-28  Bruno Haible  <bruno@clisp.org>
11189
11190         * modules/freadptr-tests: New file.
11191         * tests/test-freadptr.sh: New file.
11192         * tests/test-freadptr.c: New file.
11193
11194         New module 'freadptr'.
11195         * modules/freadptr: New file.
11196         * lib/freadptr.h: New file.
11197         * lib/freadptr.c: New file.
11198         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
11199
11200 2008-02-26  Karl Berry  <karl@freefriends.org>
11201
11202         Sync from Libtool:
11203         * libltdl/argz.c (argz_add, argz_count): New functions.
11204         * libltdl/argz.in.h: Declare them.
11205         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
11206
11207 2008-02-22  Bruno Haible  <bruno@clisp.org>
11208
11209         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
11210         is a pointer type.  Needed for HP-UX 10.
11211         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
11212         * doc/posix-functions/gmtime_r.texi: Likewise.
11213         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
11214
11215 2008-02-24  Bruno Haible  <bruno@clisp.org>
11216
11217         * modules/environ-tests: New file.
11218         * tests/test-environ.c: New file.
11219
11220         New module 'environ'.
11221         * modules/environ: New file.
11222         * lib/unistd.in.h (environ): New declaration.
11223         * m4/environ.m4: New file.
11224         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
11225         after use.
11226         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
11227         HAVE_DECL_ENVIRON.
11228         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
11229         HAVE_DECL_ENVIRON.
11230         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
11231         wrong claim that 'environ' is missing on some systems.
11232         * modules/execute (Depends-on): Add environ.
11233         * lib/execute.c (environ): Remove fallback declaration.
11234         * modules/pipe (Depends-on): Add environ.
11235         * lib/pipe.c (environ): Remove fallback declaration.
11236         * modules/setenv (Depends-on): Add environ.
11237         * lib/setenv.c (environ): Remove fallback declaration.
11238         * modules/unsetenv (Depends-on): Add environ.
11239         * lib/unsetenv.c (environ): Remove fallback declaration.
11240         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
11241         m4/environ.m4.
11242         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
11243         (gl_PREREQ_UNSETENV): Likewise.
11244
11245 2008-02-24  Bruno Haible  <bruno@clisp.org>
11246
11247         * doc/posix-functions/environ.texi: Document the MacOS X problem.
11248
11249 2008-02-20  Bob Proulx  <bob@proulx.com>
11250
11251         Enable use of older two part flavor 'git describe'.
11252         * build-aux/git-version-gen: If using the older two part flavor of
11253         git version then recreate the third part now present in the
11254         newer three part flavor of git describe.
11255
11256 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
11257
11258         * lib/fts.c (fts_build): Typo correction to comment.
11259
11260 2008-02-17  Bruno Haible  <bruno@clisp.org>
11261
11262         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
11263         generating no-op conflicts.
11264
11265 2008-02-17  Bruno Haible  <bruno@clisp.org>
11266
11267         Speed up by 10%.
11268         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
11269         result_entries, rather than an index-based loop.
11270
11271 2008-02-17  Bruno Haible  <bruno@clisp.org>
11272
11273         Speed up by 25%.
11274         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
11275         'hashcode_cached'.
11276         (entry_create): New function.
11277         (entry_hashcode): Use the cached hashcode if possible.
11278         (read_changelog_file, try_split_merged_entry): Use entry_create.
11279
11280 2008-02-17  Bruno Haible  <bruno@clisp.org>
11281
11282         Speed up from O(n^2) to O(n) for long ChangeLog files.
11283         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
11284         (read_changelog_file): Change implementation of entries_reversed list
11285         to rbtreehash.
11286         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
11287
11288 2008-02-17  Bruno Haible  <bruno@clisp.org>
11289
11290         New option --split-merged-entry.
11291         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
11292         (find_paragraph_end, try_split_merged_entry): New functions.
11293         (long_options): Add option --split-merged-entry.
11294         (usage): Document option --split-merged-entry.
11295         (main): Implement option --split-merged-entry.
11296         Reported by Eric Blake.
11297
11298 2008-02-17  Bruno Haible  <bruno@clisp.org>
11299
11300         * lib/git-merge-changelog.c: Include c-strstr.h.
11301         (main): Support the "git pull --rebase" situation.
11302         * modules/git-merge-changelog (Depends-on): Add c-strstr.
11303         Reported by Eric Blake.
11304
11305 2008-02-16  Eric Blake  <ebb9@byu.net>
11306
11307         Avoid doubling \ in common case of "c-maybe" quoting style.
11308         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
11309         eliding outer quotes.
11310         * lib/quotearg.h: Document this.
11311         * tests/test-quotearg.c (result_strings, inputs, results_g)
11312         (flag_results, locale_results): Test it by adding a new string to
11313         each test group.
11314         (compare_strings): Test new string.
11315
11316 2008-02-13  Eric Blake  <ebb9@byu.net>
11317
11318         Avoid trigraph quoting in default output.
11319         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
11320         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
11321         unless explicitly requested.
11322         * tests/test-quotearg.c (flag_results, main): Add additional tests.
11323
11324 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
11325
11326         Don't rely on signed integer overflowing to negative value.
11327         * lib/getugroups.c (getugroups): Include <limits.h>.
11328         Instead, compare against INT_MAX, and increment only if the test passes.
11329
11330 2008-02-13  Jim Meyering  <meyering@redhat.com>
11331         and Eric Blake  <ebb9@byu.net>
11332
11333         Avoid shadowing warning and compile errors on Linux.
11334         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
11335         forwarding macros on Linux.
11336         (dcgettext): Define a stub, for Linux.
11337         (results_g, main): Avoid warnings.
11338
11339 2008-02-12  Eric Blake  <ebb9@byu.net>
11340
11341         Silence warning in last patch.
11342         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
11343
11344         Quotearg part 4: add tests, fix c-maybe colon quoting.
11345         * lib/quotearg.h: Improve documentation.
11346         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
11347         escapes when adding outer quotes.  When quoting trigraphs, use
11348         valid C notation.  When quoting NUL, omit extra characters if next
11349         character is not digit.  Alter prototype.
11350         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
11351         callers.
11352         * modules/quotearg-tests: New module.
11353         * tests/test-quotearg.c: New test.
11354
11355 2008-02-07  Eric Blake  <ebb9@byu.net>
11356
11357         Quotearg part 3: add flag to control outer quote elision.
11358         * lib/quotearg.h (c_maybe_quoting_style): New style.
11359         (enum quoting_flags): Better documentation of flags.
11360         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
11361         c-maybe style.
11362         (quotearg_buffer_restyled): Handle new flag to elide outer
11363         quotes.
11364
11365         Quotearg part 2: add flag that can control NUL elision.
11366         * lib/quotearg.h (set_quoting_flags): New prototype.
11367         * lib/quotearg.c (struct quoting_options): Add flag field.
11368         (set_quoting_flags): New function.
11369         (quotearg_buffer_restyled): Add flags parameter.
11370         (quotearg_alloc_mem): Set the flag if length cannot be returned.
11371         (quotearg_n_options): Set the flag, since length cannot be
11372         returned.
11373         (quoting_options_from_style): Default flags correctly.
11374
11375         Quotearg part 1: more wrappers, restore quotearg_char state.
11376         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
11377         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
11378         (quotearg_colon_mem): New wrappers.
11379         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
11380         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
11381         functions.
11382         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
11383         (quotearg_colon_mem): New functions.
11384
11385 2008-02-11  Bruno Haible  <bruno@clisp.org>
11386
11387         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
11388         library in the current directory: it does not work with parallel make.
11389         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
11390
11391 2008-02-11  Bruno Haible  <bruno@clisp.org>
11392
11393         * .gitattributes: New file.
11394
11395 2008-02-11  Jim Meyering  <meyering@redhat.com>
11396
11397         useless-if-before-free: Fix reversed exit values.
11398         * build-aux/useless-if-before-free: Use correct values
11399         for EXIT_MATCH and EXIT_NO_MATCH.
11400
11401         * build-aux/useless-if-before-free: Close stdout carefully.
11402
11403 2008-02-10  Bruno Haible  <bruno@clisp.org>
11404
11405         New module 'git-merge-changelog'.
11406         * modules/git-merge-changelog: New file.
11407         * lib/git-merge-changelog.c: New file.
11408
11409 2008-02-10  Jim Meyering  <meyering@redhat.com>
11410
11411         useless-if-before-free: New option: --list (-l).
11412
11413         useless-if-before-free: Don't exit immediately upon open failure.
11414         * build-aux/useless-if-before-free: Exit 2 for errors.
11415         Upon failure to open a file, don't exit immediately.
11416         Rather, just warn and continue with any remaining files.
11417
11418 2008-02-10  Bruno Haible  <bruno@clisp.org>
11419
11420         New abstract list operation 'node_set_value'.
11421         * lib/gl_list.h (gl_list_node_set_value): New function.
11422         (struct gl_list_implementation): New field node_set_value.
11423         * lib/gl_list.c (gl_list_node_set_value): New function.
11424         * lib/gl_array_list.c (gl_array_node_set_value): New function.
11425         (gl_array_list_implementation): Update.
11426         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
11427         (gl_carray_list_implementation): Update.
11428         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
11429         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
11430         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
11431         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
11432         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
11433         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
11434         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
11435         Update.
11436         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
11437         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
11438         (gl_sublist_list_implementation): Update.
11439
11440 2008-02-10  Bruno Haible  <bruno@clisp.org>
11441
11442         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
11443         Needed when ELEMENT is #defined to 'some_type *'.
11444
11445 2008-02-10  Jim Meyering  <meyering@redhat.com>
11446
11447         New script and module: useless-if-before-free
11448         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
11449         * build-aux/useless-if-before-free: New file.
11450         * modules/useless-if-before-free: New file.
11451
11452         * build-aux/gitlog-to-changelog: Use committer date, not author date.
11453
11454         xstrtol_error: Fix typo.
11455         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
11456         s/exit_failure/exit_status/.
11457
11458 2008-02-09  Jim Meyering  <meyering@redhat.com>
11459
11460         New script and module: gitlog-to-changelog
11461         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
11462         * modules/gitlog-to-changelog: New file.
11463         * build-aux/gitlog-to-changelog: New file.
11464
11465 2008-02-08  Jim Meyering  <meyering@redhat.com>
11466
11467         Avoid two "parameter unused" warnings.
11468         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
11469         Mark "st" as used.
11470
11471         Use "git COMMAND", not "git-COMMAND".
11472         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
11473         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
11474         * build-aux/git-version-gen: Use "git status", not "git-status".
11475
11476 2008-02-07  Bruno Haible  <bruno@clisp.org>
11477
11478         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
11479         Avoids a crash on Windows Vista.
11480         Reported by Adam Strzelecki <ono@java.pl> via
11481         Simon Josefsson <simon@josefsson.org>.
11482
11483 2008-02-06  Bruno Haible  <bruno@clisp.org>
11484
11485         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
11486         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
11487         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
11488         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
11489         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
11490         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11491         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
11492         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
11493         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11494         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11495         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11496         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11497         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11498         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11499         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11500         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
11501         left-adjust flag.
11502         * tests/test-snprintf-posix.h (test_function): Likewise.
11503         * tests/test-sprintf-posix.h (test_function): Likewise.
11504         * tests/test-vasprintf-posix.c (test_function): Likewise.
11505         * doc/posix-functions/fprintf.texi: Update.
11506         * doc/posix-functions/printf.texi: Update.
11507         * doc/posix-functions/snprintf.texi: Update.
11508         * doc/posix-functions/sprintf.texi: Update.
11509         * doc/posix-functions/vfprintf.texi: Update.
11510         * doc/posix-functions/vprintf.texi: Update.
11511         * doc/posix-functions/vsnprintf.texi: Update.
11512         * doc/posix-functions/vsprintf.texi: Update.
11513         Reported by Peter Fales <psfales@alcatel-lucent.com>.
11514
11515 2008-02-06  Bruno Haible  <bruno@clisp.org>
11516
11517         Fix bug introduced on 2008-01-26.
11518         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
11519
11520 2008-02-06  Bruno Haible  <bruno@clisp.org>
11521
11522         Fix bug introduced on 2007-06-10.
11523         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
11524         !NEED_PRINTF_FLAG_ZERO.
11525
11526 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
11527
11528         getloadavg: use libperfstat on AIX5
11529         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
11530
11531 2008-02-03  Bruno Haible  <bruno@clisp.org>
11532
11533         * lib/diffseq.h: Add comments about required #includes.
11534         Reported by Michael Biggs <gnulib@doubleplum.net>.
11535
11536 2008-02-01  Bruno Haible  <bruno@clisp.org>
11537
11538         * users.txt: Add gnuit.
11539
11540 2008-01-31  Bruno Haible  <bruno@clisp.org>
11541
11542         * lib/md4.c (set_uint32): Mark as inline.
11543         * lib/md5.c (set_uint32): Likewise.
11544         * lib/sha1.c (set_uint32): Likewise.
11545         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
11546         * m4/md5.m4 (gl_MD5): Likewise.
11547         * m4/sha1.m4 (gl_SHA1): Likewise.
11548
11549 2008-01-31  Jim Meyering  <meyering@redhat.com>
11550
11551         Use "sizeof VAR", rather than a literal "4".
11552         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
11553         * lib/md4.c (md4_read_ctx): Likewise.
11554         * lib/sha1.c (sha1_read_ctx): Likewise.
11555
11556 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11557
11558         * tests/test-sha1.c: New file, based on test-md5.c.
11559
11560         * modules/crypto/sha1-tests: New file.
11561
11562 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11563
11564         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
11565
11566 2008-01-31  Jim Meyering  <meyering@redhat.com>
11567
11568         Prefer "sizeof v" over the equivalent "4".
11569         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
11570         * lib/md5.c (set_uint32): Likewise.
11571         * lib/sha1.c (set_uint32): Likewise.
11572
11573 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11574
11575         * lib/sha1.c (set_uint32): Mark function as static.
11576
11577 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11578
11579         md2: clarify comments to say that alignment is not required.
11580         * lib/md2.h: Remove warning about alignment in comment.
11581         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
11582         never been required.
11583
11584 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11585
11586         md4: adapt alignment constraint fix from sha1.
11587         * lib/md4.c (set_uint32): New function, from sha1.c
11588         (md4_read_ctx): Use it.
11589         (md4_finish_ctx): Doc fix.
11590         * lib/md4.h: Doc fix.
11591
11592 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11593
11594         md5: adapt alignment constraint fix from sha1.
11595         * lib/md5.c (set_uint32): New function, from sha1.c
11596         (md5_read_ctx): Use it.
11597         (md5_finish_ctx): Doc fix.
11598         * lib/md5.h: Doc fix.
11599
11600 2008-01-30  Peter Palfrader  <weasel@debian.org>
11601
11602         sha1: remove the result buffer alignment constraint
11603         * lib/sha1.c (set_uint32): New function.
11604         (sha1_read_ctx): Rewrite to remove the result buffer alignment
11605         constraint.
11606         (sha1_finish_ctx): Remove comment warning about alignment constraint.
11607         * lib/sha1.h: Likewise.
11608
11609 2008-01-30  Andreas Schwab  <schwab@suse.de>
11610             Bruno Haible  <bruno@clisp.org>
11611
11612         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
11613         correct definition of LDBL_MIN_EXP.
11614
11615 2008-01-30  Karl Berry  <karl@gnu.org>
11616
11617         * config/srclist-update: try to preserve x bit on updates.
11618         * config/srclistvars.sh: update for karl.
11619
11620 2008-01-29  Jim Meyering  <meyering@redhat.com>
11621
11622         vasnprintf.c: Avoid warning about unused label
11623         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
11624         "overflow" label definition and associated code with the
11625         same cpp condition that guards the sole use of that label.
11626
11627 2008-01-26  Bruno Haible  <bruno@clisp.org>
11628
11629         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
11630         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
11631         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
11632         * lib/isnanl-nolibm.h (isnanl): Likewise.
11633         Reported by Paul Eggert <eggert@cs.ucla.edu>.
11634
11635 2008-01-26  Bruno Haible  <bruno@clisp.org>
11636
11637         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
11638         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
11639
11640 2008-01-26  Bruno Haible  <bruno@clisp.org>
11641
11642         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
11643         GCC >= 4.0 built-in.
11644         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
11645
11646 2008-01-26  Bruno Haible  <bruno@clisp.org>
11647
11648         Rename isnan, applicable to 'double' only, to isnand.
11649         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
11650         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
11651         (configure.ac): Update.
11652         (Include): Replace "isnan.h" with "isnand.h".
11653         * m4/isnand.m4: Renamed from m4/isnan.m4.
11654         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
11655         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
11656         instead of isnan.c.
11657         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
11658         instead of HAVE_ISNAN_IN_LIBC.
11659         (isnand): Renamed from isnan.
11660         * lib/isnand.c: New file.
11661         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
11662         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
11663         (Makefile.am): Update.
11664         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
11665         Include isnand.h instead of isnan.h.
11666         (main): Test isnand instead of isnan.
11667         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
11668         isnan-nolibm.
11669         * modules/frexp (Depends-on): Likewise.
11670         * modules/frexp-tests (Depends-on): Likewise.
11671         * modules/frexp-nolibm (Depends-on): Likewise.
11672         * modules/frexp-nolibm-tests (Depends-on): Likewise.
11673         * modules/isfinite (Depends-on): Likewise.
11674         * modules/round-tests (Depends-on): Likewise.
11675         * modules/signbit (Depends-on): Likewise.
11676         * modules/signbit-tests (Depends-on): Likewise.
11677         * modules/snprintf-posix (Depends-on): Likewise.
11678         * modules/sprintf-posix (Depends-on): Likewise.
11679         * modules/trunc-tests (Depends-on): Likewise.
11680         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
11681         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
11682         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
11683         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
11684         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
11685         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
11686         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
11687         * modules/vasnprintf-posix (Depends-on): Likewise.
11688         * modules/vasprintf-posix (Depends-on): Likewise.
11689         * modules/vfprintf-posix (Depends-on): Likewise.
11690         * modules/vsnprintf-posix (Depends-on): Likewise.
11691         * modules/vsprintf-posix (Depends-on): Likewise.
11692         * lib/frexp.c: Include isnand.h instead of isnan.h.
11693         (ISNAN): Set to isnand instead of isnan.
11694         * lib/isfinite.c: Include isnand.h instead of isnan.h.
11695         (gl_isfinited): Use isnand instead of isnan.
11696         * lib/signbitd.c: Include isnand.h instead of isnan.h.
11697         (gl_signbitd): Use isnand instead of isnan.
11698         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
11699         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
11700         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
11701         (main): Use isnand instead of isnan.
11702         * tests/test-round1.c: Include isnand.h.
11703         (main): Use isnand instead of isnan.
11704         * tests/test-round2.c: Include isnand.h instead of isnan.h.
11705         (ISNAN): Set to isnand instead of isnan.
11706         * tests/test-trunc1.c: Include isnand.h.
11707         (main): Use isnand instead of isnan.
11708         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
11709         (equal): Use isnand instead of isnan.
11710         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
11711         isnand-nolibm.
11712         * NEWS: Mention the change.
11713
11714 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
11715             Bruno Haible  <bruno@clisp.org>
11716
11717         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
11718         the GCC builtins for signbits are present and set
11719         REPLACE_SIGNBIT_USING_GCC if so.
11720         * lib/math.in.h (signbit): Define using GCC builtins if
11721         REPLACE_SIGNBIT_USING_GCC is set.
11722         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
11723         REPLACE_SIGNBIT_USING_GCC.
11724         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
11725
11726 2008-01-25  Jim Meyering  <meyering@redhat.com>
11727
11728         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
11729         * lib/poll.c: Include <config.h>, not "config.h".
11730         * tests/test-getaddrinfo.c: Likewise.
11731
11732 2008-01-25  Simon Josefsson  <simon@josefsson.org>
11733
11734         * modules/sockets-tests: New file.
11735
11736 2008-01-24  Simon Josefsson  <simon@josefsson.org>
11737
11738         * modules/sockets: New module, can be used to call WSA_Startup and
11739         WSA_Cleanup when needed.
11740
11741         * lib/sockets.h, lib/sockets.c: New files.
11742
11743         * m4/sockets.m4: New file.
11744
11745         * tests/test-sockets.c: New file.
11746
11747 2008-01-19  Bruno Haible  <bruno@clisp.org>
11748
11749         * doc/posix-headers: Renamed from doc/headers.
11750         * doc/posix-functions: Renamed from doc/functions.
11751         * doc/gnulib.texi: Update.
11752
11753 2008-01-19  Bruno Haible  <bruno@clisp.org>
11754
11755         * doc/glibc-functions/strcasestr.texi: Include contents of
11756         doc/functions/strcasestr.texi, fixing the list of platforms.
11757         * doc/functions/strcasestr.texi: Remove file.
11758
11759 2008-01-19  Bruno Haible  <bruno@clisp.org>
11760
11761         * doc/glibc-functions/memmem.texi: Include contents of
11762         doc/functions/memmem.texi.
11763         * doc/functions/memmem.texi: Remove file.
11764
11765 2008-01-18  Bruno Haible  <bruno@clisp.org>
11766
11767         * doc/glibc-functions/*.texi: New files.
11768         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
11769         to use the new files.
11770
11771 2008-01-17  Bruno Haible  <bruno@clisp.org>
11772
11773         * tests/test-gethostname.c (main): Fix printf statement.
11774
11775 2008-01-17  Simon Josefsson  <simon@josefsson.org>
11776
11777         * modules/gethostname-tests: New file.
11778
11779         * tests/test-gethostname.c: New file.
11780
11781 2008-01-17  Simon Josefsson  <simon@josefsson.org>
11782
11783         * lib/gethostname.c: Include string.h unconditionally, strncpy is
11784         used by the UNAME case.  Reported by Bruno Haible
11785         <bruno@clisp.org>.
11786
11787 2008-01-17  Eric Blake  <ebb9@byu.net>
11788
11789         Convert c-strcasestr to be more efficient.
11790         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
11791         (Depends-on): Add c-strcase, remove malloca, strnlen.
11792         * tests/test-c-strcasestr.c (main): Enhance test.
11793         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
11794
11795 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
11796
11797         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
11798         Use it in creating po/Makevars.
11799
11800 2008-01-15  Simon Josefsson  <simon@josefsson.org>
11801
11802         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
11803         Applications that requires it should initialize libgcrypt
11804         manually.
11805
11806 2008-01-16  Simon Josefsson  <simon@josefsson.org>
11807
11808         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
11809
11810 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
11811
11812         Fix problem with getdate on mingw32 reported by Simon Josefsson
11813         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
11814         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
11815         tzname", when deciding whether to declare tzname.
11816         * lib/strftime.c (tzname): Likewise.
11817
11818 2008-01-15  Bruno Haible  <bruno@clisp.org>
11819
11820         Work around a MacOS X 10.5 bug in frexpl().
11821         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
11822         * doc/functions/frexpl.texi: Document the bug.
11823         Reported by Elias Pipping <pipping@gentoo.org>.
11824
11825 2008-01-14  Eric Blake  <ebb9@byu.net>
11826
11827         Touch up previous patch.
11828         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
11829         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
11830
11831         Convert strcasestr module to use Two-Way algorithm.
11832         * modules/strcasestr-simple: New module, based on the old
11833         strcasestr, but with Two-Way rather than KMP.
11834         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
11835         * lib/string.in.h (rpl_strcasestr): Declare.
11836         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
11837         performance.
11838         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
11839         * modules/string (Makefile.am): Support strcasestr.
11840         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
11841         * modules/strcasestr-tests (Depends-on): Check for alarm.
11842         * tests/test-strcasestr.c: Augment test.
11843         * lib/str-two-way.h: Clean up stray macro.
11844         * NEWS: Document new module.
11845         * MODULES.html.sh (string handling): Likewise.
11846         * doc/functions/strcasestr.texi: New file.
11847         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
11848         here, since it is not a POSIX function.
11849
11850 2008-01-14  Colin Watson  <cjwatson@debian.org>
11851             Bruno Haible  <bruno@clisp.org>
11852
11853         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
11854         works fine; if not, set REPLACE_STRSIGNAL.
11855         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
11856         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
11857         REPLACE_STRSIGNAL.
11858         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
11859         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
11860         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
11861
11862 2008-01-14  Bruno Haible  <bruno@clisp.org>
11863
11864         * modules/strsignal (Include): Change to <string.h>.
11865
11866 2008-01-14  Colin Watson  <cjwatson@debian.org>
11867
11868         * modules/argp (Notice): Add a notice recommending to change
11869         XGETTEXT_OPTIONS.
11870         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
11871
11872 2008-01-13  Colin Watson  <cjwatson@debian.org>
11873
11874         * modules/strsignal-tests: New file.
11875         * tests/test-strsignal.c: New file.
11876
11877         * lib/strsignal.c: New file, from glibc with modifications.
11878         * lib/siglist.h: New file, from glibc with modifications.
11879         * lib/string.in.h (strsignal): New declaration.
11880         * m4/strsignal.m4: New file.
11881         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
11882         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
11883         * modules/strsignal: New file.
11884         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
11885         HAVE_DECL_STRSIGNAL.
11886
11887 2008-01-13  Bruno Haible  <bruno@clisp.org>
11888
11889         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
11890         locale encoding is not ASCII. Needed for OpenBSD 4.0.
11891         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
11892         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
11893
11894 2008-01-13  Bruno Haible  <bruno@clisp.org>
11895
11896         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
11897         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
11898         * lib/argp.h (__attribute__): Likewise.
11899         * lib/c-stack.c (__attribute__): Likewise.
11900         * lib/error.h (__attribute__): Likewise.
11901         * lib/fts.c (__attribute__): Likewise.
11902         * lib/openat.h (__attribute__): Likewise.
11903         * lib/stdio.in.h (__attribute__): Likewise.
11904         * lib/string.in.h (__attribute__): Likewise.
11905         * lib/utimens.c (__attribute__): Likewise.
11906         * lib/vasnprintf.h (__attribute__): Likewise.
11907         * lib/xalloc.h (__attribute__): Likewise.
11908         * lib/xprintf.h (__attribute__): Likewise.
11909         * lib/xstrtol.h (__attribute__): Likewise.
11910         * lib/xvasprintf.h (__attribute__): Likewise.
11911
11912 2008-01-12  Bruno Haible  <bruno@clisp.org>
11913
11914         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
11915         * doc/glibc-headers/a.out.texi: New file.
11916         * doc/glibc-headers/aliases.texi: New file.
11917         * doc/glibc-headers/alloca.texi: New file.
11918         * doc/glibc-headers/ar.texi: New file.
11919         * doc/glibc-headers/argp.texi: New file.
11920         * doc/glibc-headers/argz.texi: New file.
11921         * doc/glibc-headers/byteswap.texi: New file.
11922         * doc/glibc-headers/crypt.texi: New file.
11923         * doc/glibc-headers/endian.texi: New file.
11924         * doc/glibc-headers/envz.texi: New file.
11925         * doc/glibc-headers/err.texi: New file.
11926         * doc/glibc-headers/error.texi: New file.
11927         * doc/glibc-headers/execinfo.texi: New file.
11928         * doc/glibc-headers/fpu_control.texi: New file.
11929         * doc/glibc-headers/fstab.texi: New file.
11930         * doc/glibc-headers/fts.texi: New file.
11931         * doc/glibc-headers/getopt.texi: New file.
11932         * doc/glibc-headers/ieee754.texi: New file.
11933         * doc/glibc-headers/ifaddrs.texi: New file.
11934         * doc/glibc-headers/libintl.texi: New file.
11935         * doc/glibc-headers/mcheck.texi: New file.
11936         * doc/glibc-headers/mntent.texi: New file.
11937         * doc/glibc-headers/obstack.texi: New file.
11938         * doc/glibc-headers/paths.texi: New file.
11939         * doc/glibc-headers/printf.texi: New file.
11940         * doc/glibc-headers/pty.texi: New file.
11941         * doc/glibc-headers/resolv.texi: New file.
11942         * doc/glibc-headers/shadow.texi: New file.
11943         * doc/glibc-headers/sysexits.texi: New file.
11944         * doc/glibc-headers/ttyent.texi: New file.
11945
11946 2008-01-12  Jim Meyering  <meyering@redhat.com>
11947
11948         announce-gen: emit Gnulib's git-based version string.
11949         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
11950         New option --gnulib-version=V, where V is expected to be
11951         the output of running git describe in the gnulib directory.
11952         (get_tool_versions): Request feedback on xdelta.  I suspect it's
11953         not useful, and plan to stop publishing an xdelta file with each
11954         coreutils release.
11955
11956         * build-aux/announce-gen: Also check for lzma-compressed files.
11957
11958 2008-01-11  Bruno Haible  <bruno@clisp.org>
11959
11960         * tests/test-memmem.c (main): Increase maximum allowed time.
11961         * tests/test-strstr.c (main): Likewise.
11962
11963 2008-01-11  Bruno Haible  <bruno@clisp.org>
11964
11965         * doc/functions/memmem.texi: Add more precisions about platforms.
11966         * doc/functions/strstr.texi: Likewise.
11967
11968 2008-01-10  Eric Blake  <ebb9@byu.net>
11969
11970         * m4/strstr.m4: Delete cruft from copy-n-paste.
11971         Reported by Bruno Haible.
11972
11973 2008-01-10  Bruno Haible  <bruno@clisp.org>
11974
11975         Make c-strstr rely on strstr.
11976         * lib/c-strstr.c: Don't include str-kmp.h.
11977         (c_strstr): Define in terms of strstr.
11978         * modules/c-strstr (Files): Remove lib/str-kmp.h.
11979         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
11980
11981 2008-01-10  Bruno Haible  <bruno@clisp.org>
11982
11983         * doc/gnulib.texi (String Functions in C Locale): New section.
11984         * doc/c-ctype.texi: New file.
11985         * doc/c-strcase.texi: New file.
11986         * doc/c-strcaseeq.texi: New file.
11987         * doc/c-strcasestr.texi: New file.
11988         * doc/c-strstr.texi: New file.
11989         * doc/c-strtod.texi: New file.
11990         * doc/c-strtold.texi: New file.
11991
11992 2008-01-10  Eric Blake  <ebb9@byu.net>
11993
11994         * lib/relocatable.h: Fix a comment.
11995
11996 2008-01-10  Eric Blake  <ebb9@byu.net>
11997
11998         Share two-way algorithm.
11999         * lib/str-two-way.h: New file, merged from...
12000         * lib/memmem.c: ...here...
12001         * lib/strstr.c: ...and here.
12002         * modules/memmem (Files): Use it.
12003         * modules/strstr (Files): Likewise.
12004
12005         Avoid quadratic strstr implementations.
12006         * lib/strstr.c: New file.
12007         * m4/strstr.m4: Likewise.
12008         * modules/strstr: Likewise.
12009         * modules/strstr-tests: Likewise.
12010         * tests/test-strstr.c: Likewise.
12011         * lib/string.in.h (rpl_strstr): Declare.
12012         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
12013         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
12014         * modules/string (Makefile.am): Likewise.
12015         * MODULES.html.sh (string handling): Mention new module.
12016         * doc/functions/strstr.texi (strstr): Document the bug.
12017
12018 2008-01-10  Bruno Haible  <bruno@clisp.org>
12019
12020         * lib/relocatable.h (relocate): State whether result is freshly
12021         allocated or not.
12022         * lib/relocatable.c (relocate): Return a freshly allocated string
12023         instead of a pointer to a privately held string.
12024         Reported by Sylvain Beucler <beuc@gnu.org>.
12025
12026 2008-01-10  Colin Watson  <cjwatson@debian.org>
12027
12028         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
12029         s/S_ISNLK/S_ISLNK/.
12030
12031 2008-01-09  Bruno Haible  <bruno@clisp.org>
12032
12033         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
12034         and other files.
12035         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
12036         if it's only a guess.
12037         * modules/memmem: Simplify by depending on memmem-simple.
12038
12039 2008-01-09  Bruno Haible  <bruno@clisp.org>
12040
12041         Work around OpenBSD 4.0 tdelete() bug.
12042         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
12043         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
12044         macros and don't redefine the enum values.
12045         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
12046         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
12047         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
12048
12049 2008-01-09  Bruno Haible  <bruno@clisp.org>
12050
12051         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
12052         (main): Don't perform the tests if setlocale did not install a UTF-8
12053         locale. Needed on OpenBSD 4.0.
12054         * modules/wcwidth-tests (Depends-on): Add localcharset.
12055
12056 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
12057
12058         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
12059         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
12060         * NEWS: announce this.
12061         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
12062
12063 2008-01-09  Simon Josefsson  <simon@josefsson.org>
12064         and Eric Blake  <ebb9@byu.net>
12065
12066         Add memmem-simple module.
12067         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
12068         (gl_FUNC_MEMMEM): Separate performance from presence checks.
12069         * modules/memmem-simple: New file.
12070         * modules/memmem (Description): Tweak.
12071         * MODULES.html.sh (string handling): Mention new module.
12072         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
12073         addressed by memmem-simple.
12074         * NEWS: Document the difference.
12075
12076 2008-01-09  Eric Blake  <ebb9@byu.net>
12077
12078         Give gcc some memmem optimization hints.
12079         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
12080         (strcasestr): Declare as pure.
12081         * modules/memmem (Maintainer): Claim my implementation.
12082
12083 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12084
12085         Support AIX 6.1 and higher.
12086         * build-aux/config.libpath: Likewise.
12087         * build-aux/config.rpath: Likewise.
12088
12089 2008-01-08  Jim Meyering  <meyering@redhat.com>
12090             Bruno Haible  <bruno@clisp.org>
12091
12092         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
12093         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
12094         Reported by Peter Fales in
12095         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
12096
12097 2008-01-08  Bruno Haible  <bruno@clisp.org>
12098
12099         * modules/unictype/category-of (Depends-on): Add
12100         unictype/category-none.
12101         * modules/unictype/category-and-tests (Depends-on): Add
12102         unictype/category-{L,N,Lu,Nd}.
12103         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
12104         * modules/unictype/category-or-tests (Depends-on): Add
12105         unictype/category-{L,N}.
12106         * modules/unictype/category-name-tests (Depends-on): Add
12107         unictype/category-{Z,Nl}.
12108         Reported by Simon Josefsson.
12109
12110 2008-01-08  Bruno Haible  <bruno@clisp.org>
12111
12112         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
12113         convention better.
12114         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
12115         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
12116         Reported by Peter Miller <millerp@canb.auug.org.au>.
12117
12118 2008-01-08  Eric Blake  <ebb9@byu.net>
12119
12120         Rewrite memmem to guarantee linear complexity without malloc.
12121         * lib/memmem.c (memmem): Use Two-Way rather than
12122         Knuth-Morris-Pratt, to allow O(1) space usage.
12123         (critical_factorization, two_way_short_needle)
12124         (two_way_long_needle): New functions.
12125         (knuth_morris_pratt): Delete.
12126         * modules/memmem (Depends-on): No longer need malloca or stdbool.
12127         Add stdint.
12128         * tests/test-memmem.c (main): Add tests for periodic needle and
12129         sublinear performance.
12130         * doc/functions/memmem.texi (memmem): Document other deficiencies
12131         in cygwin and older glibc.
12132
12133 2008-01-08  Bruno Haible  <bruno@clisp.org>
12134
12135         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
12136         augmentation.
12137
12138 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
12139
12140         Add a configure time option: --disable-acl.
12141         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
12142         AC_ARG_ENABLE(acl).
12143
12144 2008-01-06  Simon Josefsson  <simon@josefsson.org>
12145
12146         * tests/test-localename.c: Don't include obsolete "setenv.h".
12147
12148         * modules/localename-tests (Depends-on): Need unsetenv.
12149
12150 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12151
12152         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
12153
12154 2008-01-06  Colin Watson  <cjwatson@debian.org>
12155
12156         * users.txt: Add man-db.
12157
12158 2008-01-07  Bruno Haible  <bruno@clisp.org>
12159
12160         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
12161         previous section name.
12162
12163 2008-01-07  Bruno Haible  <bruno@clisp.org>
12164
12165         * lib/progname.c (set_program_name): Don't strip off a leading
12166         "lt-" prefix outside a .libs directory.
12167         Suggested by Paul Eggert.
12168
12169 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
12170             Bruno Haible  <bruno@clisp.org>
12171
12172         Improve memory cleanup in 'relocatable' module.
12173         * lib/relocatable.h (compute_curr_prefix): Change return type to
12174         'char *'.
12175         * lib/relocatable.c (compute_curr_prefix): Change return type to
12176         'char *'. Free curr_installdir after use.
12177         (relocate): Free curr_prefix_better after use.
12178         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
12179
12180 2008-01-01  Bruno Haible  <bruno@clisp.org>
12181
12182         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
12183         failure on older glibc systems.
12184         Reported by Peter Fales <psfales@alcatel-lucent.com>.
12185
12186 2008-01-05  Eric Blake  <ebb9@byu.net>
12187
12188         Avoid quadratic system memmem.
12189         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
12190         Reported by Ralf Wildenhues.
12191
12192         Fix memmem test for mingw.
12193         * modules/memmem-tests (configure.ac): Check for alarm.
12194         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
12195         it.
12196         * doc/functions/memmem.texi: New file.
12197         * doc/gnulib.texi (Function Substitutes): Add memmem.
12198         Reported by Bruno Haible.
12199
12200 2008-01-04  Bruno Haible  <bruno@clisp.org>
12201
12202         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
12203         Require gl_HEADER_STRINGS_H_DEFAULTS, not
12204         gl_HEADER_STRING_H_DEFAULTS.
12205
12206 2008-01-04  Eric Blake  <ebb9@byu.net>
12207
12208         Shorten duration of memmem test.
12209         * tests/test-memmem.c (main): Use alarm to declare failure if test
12210         is taking too long.
12211         Reported by Ralf Wildenhues.
12212
12213 2007-12-21  Simon Josefsson  <simon@josefsson.org>
12214
12215         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
12216         string, needed by strerror.
12217
12218 2008-01-03  Colin Watson  <cjwatson@debian.org>
12219             Bruno Haible  <bruno@clisp.org>
12220
12221         * doc/gnulib-tool.texi (Localization): New section.
12222
12223 2008-01-02  Bruno Haible  <bruno@clisp.org>
12224
12225         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
12226         variables to 'unsigned char *' type.
12227         Reported by Paul Eggert.
12228
12229 2008-01-02  Jim Meyering  <jim@meyering.net>
12230
12231         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
12232
12233 2007-12-31  Jim Meyering  <jim@meyering.net>
12234
12235         Avoid use of private FTS type name.
12236         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
12237
12238 2007-12-30  Karl Berry  <karl@gnu.org>
12239
12240         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
12241         work around defect in Texinfo and/or the standalone Info browser.
12242
12243 2007-12-30  Bruno Haible  <bruno@clisp.org>
12244
12245         Unify 5 copies of the KMP code.
12246         * lib/str-kmp.h: New file.
12247         * lib/c-strcasestr.c: Include str-kmp.h.
12248         (knuth_morris_pratt): Remove function.
12249         (c_strcasestr): Update.
12250         * lib/c-strstr.c: Include str-kmp.h.
12251         (knuth_morris_pratt): Remove function.
12252         (c_strcasestr): Update.
12253         * lib/mbscasestr.c: Include str-kmp.h.
12254         (knuth_morris_pratt_unibyte): Remove function.
12255         * lib/mbsstr.c: Include str-kmp.h.
12256         (knuth_morris_pratt_unibyte): Remove function.
12257         * lib/strcasestr.c: Include str-kmp.h.
12258         (knuth_morris_pratt): Remove function.
12259         (strcasestr): Update.
12260         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
12261         * modules/c-strstr (Files): Likewise.
12262         * modules/mbscasestr (Files): Likewise.
12263         * modules/mbsstr (Files): Likewise.
12264         * modules/strcasestr (Files): Likewise.
12265         Suggested by Paul Eggert.
12266
12267 2007-12-30  Bruno Haible  <bruno@clisp.org>
12268
12269         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
12270         defined.
12271
12272 2007-12-30  Bruno Haible  <bruno@clisp.org>
12273
12274         * lib/xmalloca.h: Include xalloc.h.
12275         (xnmalloca): New macro.
12276
12277 2007-12-30  Bruno Haible  <bruno@clisp.org>
12278
12279         * lib/malloca.h (nmalloca): New macro.
12280         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
12281         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
12282         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
12283         knuth_morris_pratt_multibyte): Likewise.
12284         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
12285         knuth_morris_pratt_multibyte): Likewise.
12286         * lib/memmem.c (knuth_morris_pratt): Likewise.
12287         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
12288
12289 2007-12-25  Bruno Haible  <bruno@clisp.org>
12290
12291         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
12292         * lib/glob.c: Don't include openat.h.
12293         (link_exists2_p): Add back the code that deals with the
12294         !GLOB_ALTDIRFUNC case.
12295         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
12296         let it do the filename concatenation.
12297         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
12298         * modules/glob (Depends-on): Remove openat.
12299
12300 2007-12-31  Bruno Haible  <bruno@clisp.org>
12301
12302         * modules/dirfd (License): Change to LGPLv2+.
12303         Approved by Jim Meyering.
12304
12305 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12306
12307         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
12308         when multiplying M by sizeof (size_t).
12309
12310 2007-12-10  Martin Lambers  <marlam@marlam.de>
12311
12312         Override getpagesize on mingw.
12313         * lib/getpagesize.c: New file.
12314         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
12315         * modules/getpagesize (Files): Add lib/getpagesize.c.
12316         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
12317         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
12318         REPLACE_GETPAGESIZE.
12319         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
12320
12321 2007-12-25  Bruno Haible  <bruno@clisp.org>
12322
12323         * modules/localcharset (Notice): New field.
12324         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
12325         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
12326
12327 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
12328             Bruno Haible  <bruno@clisp.org>
12329
12330         Avoid using the syntax symbol() in formatted documentation.
12331         * MODULES.html.sh (func_module): When replacing symbol() with a
12332         hyperlink, remove the parentheses. Show an error if some remain.
12333         Recognize and render the '...' syntax.
12334         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
12335         Rework. Add paragraph about GCC's inlining.
12336         * doc/alloca.texi: Likewise.
12337         * doc/error.texi: Remove parentheses from symbol reference.
12338         * doc/gnulib-intro.texi: Likewise.
12339         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
12340         * modules/fnmatch (Description): Reword to say "the ... function".
12341         * modules/full-read (Description): Likewise.
12342         * modules/full-write (Description): Likewise.
12343         * modules/safe-read (Description): Likewise.
12344         * modules/safe-write (Description): Likewise.
12345         * modules/strchrnul (Description): Likewise.
12346         * modules/trim (Description): Likewise.
12347         * modules/error (Description): Remove parentheses from symbol
12348         references.
12349         * modules/verror (Description): Likewise.
12350         Reported by Karl Berry.
12351
12352 2007-12-25  Bruno Haible  <bruno@clisp.org>
12353
12354         Fixup after 2007-10-16 commit.
12355         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
12356
12357 2007-12-24  Bruno Haible  <bruno@clisp.org>
12358
12359         Make --enable-relocatable work with DESTDIR.
12360         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
12361         to compute installdir from destprog.
12362         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
12363         also set the RELOC_DESTDIR variable.
12364         Reported by Левашев Иван <octagram@bluebottle.com>.
12365
12366 2007-12-24  Bruno Haible  <bruno@clisp.org>
12367
12368         Fix link error due to xalloc_die().
12369         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
12370         of xreadlink.
12371         * lib/relocwrapper.c: Update comments.
12372         * build-aux/install-reloc: Remove xreadlink.c from file list.
12373         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
12374         xreadlink.c.
12375         Reported by Левашев Иван <octagram@bluebottle.com>.
12376
12377 2007-12-24  Bruno Haible  <bruno@clisp.org>
12378
12379         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
12380         * lib/setenv.h: Remove file.
12381         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
12382         lib/setenv.h.
12383         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
12384         (Depends-on): Add stdlib.
12385         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
12386         gl_FUNC_UNSETENV.
12387         (Include): Replace setenv.h with <stdlib.h>.
12388         * modules/unsetenv: New file.
12389         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
12390         * lib/unsetenv.c: Include <stdlib.h> first.
12391         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
12392         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
12393         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
12394         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
12395         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
12396         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
12397         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
12398         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
12399         * doc/functions/unsetenv.texi: Update.
12400         * modules/xsetenv (Depends-on): Add unsetenv.
12401         * modules/getdate (Depends-on): Likewise.
12402         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
12403         * lib/xsetenv.c: Don't include setenv.h.
12404         * lib/getdate.y: Likewise.
12405         * lib/relocwrapper.c: Likewise.
12406         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
12407         (Depends-on): Add stdlib.
12408         * NEWS: Mention the changes.
12409         Reported by Левашев Иван <octagram@bluebottle.com>.
12410
12411 2007-12-23  Bruno Haible  <bruno@clisp.org>
12412
12413         * lib/memmem.c (memmem): Use lowercase variable names. Tab
12414         indentation.
12415
12416 2007-12-23  Bruno Haible  <bruno@clisp.org>
12417
12418         * lib/c-strcasestr.c: Add more comments.
12419         * lib/c-strstr.c: Likewise.
12420         * lib/mbscasestr.c: Likewise.
12421         * lib/mbsstr.c: Likewise.
12422         * lib/strcasestr.c: Likewise.
12423         * lib/memmem.c: Likewise.
12424
12425 2007-12-23  Bruno Haible  <bruno@clisp.org>
12426
12427         * tests/test-memmem.c: Include <string.h> first.
12428
12429 2007-12-22  Bruno Haible  <bruno@clisp.org>
12430
12431         * gnulib-tool (func_create_testdir): Change $auxdir while generating
12432         the contents of $testsbase.
12433         Reported by Ralf Wildenhues.
12434
12435 2007-12-22  Bruno Haible  <bruno@clisp.org>
12436
12437         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
12438         two variables local_ldadd_before, local_ldadd_last.
12439
12440 2007-12-20  Eric Blake  <ebb9@byu.net>
12441
12442         Work around circular library issue when cross-compiling.
12443         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
12444         that progname.o does not need to pull in rpl_memcmp.
12445
12446 2007-12-19  Eric Blake  <ebb9@byu.net>
12447
12448         Fix memmem to avoid O(n^2) worst-case complexity.
12449         * lib/memmem.c (knuth_morris_pratt): New function.
12450         (memmem): Use it if first few naive iterations fail.
12451         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
12452         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
12453         * modules/memchr (License): Likewise.
12454         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
12455         malloca.
12456         * tests/test-memmem.c: Rewrite, borrowing ideas from
12457         test-mbsstr1.c; the old version wouldn't even compile!
12458         * modules/memmem-tests: New file.
12459         * lib/string.in.h (rpl_memmem): Add declaration.
12460         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
12461         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
12462         REPLACE_MEMMEM.
12463
12464 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
12465
12466         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
12467         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
12468         before any system include files, and undef after them all.  This
12469         should fix a problem on VMS reported by John E. Malmberg in
12470         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
12471
12472 2007-12-17  Eric Blake  <ebb9@byu.net>
12473
12474         Revert addition of verify, for BSD/OS.
12475         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
12476         can't handle large files, for the sake of obsolete platforms.
12477         * modules/fseeko (Depends-on): Remove verify.
12478         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
12479         * doc/functions/ftello.texi (ftello): Likewise.
12480         * doc/functions/fgetpos.texi (fgetpos): Likewise.
12481         Reported by Larry Jones.
12482
12483 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
12484
12485         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
12486         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
12487
12488 2007-12-17  Jim Meyering  <meyering@redhat.com>
12489
12490         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
12491         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
12492         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
12493         * modules/getcwd (Depends-on): Add openat.
12494         Reported by Petr Salinger.
12495
12496 2007-12-17  Bruno Haible  <bruno@clisp.org>
12497
12498         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
12499         avoid a segmentation fault of the configure test on x86_64 systems.
12500
12501 2007-12-15  Jim Meyering  <meyering@redhat.com>
12502
12503         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
12504
12505 2007-12-13  Eric Blake  <ebb9@byu.net>
12506
12507         Another fseek test.
12508         * tests/test-fseek.c (main): Also test ungetc handling.
12509         * tests/test-fseeko.c (main): Likewise.
12510         * modules/fseeko (Depends-on): Add verify.
12511         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
12512         large.
12513         Reported by Larry Jones.
12514
12515         Fix fseeko on mingw.
12516         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
12517         seek.
12518
12519         Beef up fseek tests.
12520         * tests/test-fseek.c (main): Also test eof handling.
12521         * tests/test-fseeko.c (main): Likewise.
12522         Reported by Larry Jones.
12523
12524 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
12525
12526         Fix fseeko on BSD-based platforms.
12527         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
12528         successful seek.
12529
12530 2007-12-12  Eric Blake  <ebb9@byu.net>
12531
12532         Allow circular dependency of separate libtests.a
12533         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
12534         when use_libtests.
12535
12536 2007-12-11  Eric Blake  <ebb9@byu.net>
12537
12538         Fix bug with -0.0L in previous patch.
12539         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
12540         * tests/test-isnan.c (main): Also test on zeroes.
12541         * tests/test-isnanf.c (main): Likewise.
12542         * tests/test-isnanl.h (main): Likewise.
12543
12544         Detect pseudo-denormals on x86 even when cross-compiling.
12545         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
12546         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
12547         invalid bit patterns that happen to satisfy ==.
12548
12549         Avoid link failures with separate libtests.a.
12550         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
12551         last, to satisfy circular dependencies.
12552
12553 2007-12-11  Eric Blake  <ebb9@byu.net>
12554         and Bruno Haible  <bruno@clisp.org>
12555
12556         Fix OpenBSD 4.0 <float.h> handling of long double.
12557         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
12558         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
12559         * doc/headers/float.texi (float.h): Document OpenBSD bug.
12560
12561 2007-12-11  Jim Meyering  <meyering@redhat.com>
12562
12563         * users.txt: Add libvirt.
12564
12565         Support versions of autoconf prior to 2.59c.
12566         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
12567         if it is not already defined.
12568
12569 2007-12-09  Bruno Haible  <bruno@clisp.org>
12570
12571         Let 'gnulib-tool --import' collect sources needed for the tests in
12572         tests/ rather than in lib/.
12573         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
12574         argument. If true, add rules to generate libtests.a, and put libtests.a
12575         into $(LDADD). Consider source files in subdirectories and set
12576         uses_subdirs.
12577         (func_emit_initmacro_start, func_emit_initmacro_end,
12578         func_emit_initmacro_done): Pass all arguments explicitly.
12579         (func_import): Determine two module lists main_modules,
12580         testsrelated_modules. Determine use_libtests. Determine two variables
12581         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
12582         instead of just sed_transform_lib_file. Determine two variables
12583         main_files and testsrelated_files. Compute 'files' as the union of
12584         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
12585         func_add_or_update. In the generated gnulib-comp.m4, collect the
12586         object files for tests/ in different variables than those for lib/.
12587         Substitute LIBTESTS_LIBDEPS.
12588         (func_create_testdir): Combine the uses_subdirs results from
12589         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
12590
12591 2007-12-09  Bruno Haible  <bruno@clisp.org>
12592
12593         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
12594         the build-aux directory.
12595
12596 2007-12-09  Bruno Haible  <bruno@clisp.org>
12597
12598         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
12599         introduced on 2006-09-09.
12600
12601 2007-12-07  Jim Meyering  <meyering@redhat.com>
12602
12603         Let these macros work also with autoconf-2.59.
12604         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
12605         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
12606         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
12607
12608 2007-12-06  Jim Meyering  <meyering@redhat.com>
12609
12610         Avoid a configure-time syntax error in gl_FUNC_ACL.
12611         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
12612         function in each branch, before testing the cache variable.
12613
12614 2007-12-04  Eric Blake  <ebb9@byu.net>
12615
12616         Make scripts executable.
12617         * build-aux/config.guess: Add execute permissions.
12618         * build-aux/config.sub: Likewise.
12619         * build-aux/gendocs.sh: Likewise.
12620
12621         Fix frexp on mingw.
12622         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
12623         cross-compiling.
12624         * doc/functions/frexp.texi (frexp): Document the bug.
12625
12626         Make cygwin fseeko check more reliable.
12627         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
12628         version numbers, rather than unrelated feature check.
12629         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
12630         * doc/functions/ftello.texi (ftello): Likewise.
12631         Reported by Bruno Haible.
12632
12633         * m4/strerror.m4: Bump version number.
12634
12635 2007-12-03  Bruno Haible  <bruno@clisp.org>
12636
12637         * doc/functions/mprotect.texi: Mention the mingw problem.
12638
12639 2007-12-03  Eric Blake  <ebb9@byu.net>
12640
12641         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
12642         REPLACE_STRERROR is initialized before this macro.
12643
12644 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
12645
12646         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
12647         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
12648         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
12649         put -lsec in even for programs other than 'ls'.  This fixes a problem
12650         for gettext reported by Bruno Haible in
12651         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
12652         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
12653         Add support for Solaris 10.  This isn't efficient, but should get the
12654         job done for now.
12655
12656 2007-12-03  James Youngman  <jay@gnu.org>
12657
12658         * doc/regexprops-generic.texi: change "an close-group" to "a
12659         close-group" and "illegal" to "not allowed".
12660
12661 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12662
12663         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
12664         pr_byname.h. Needed for the rare case when the maintainer has done
12665         "make maintainer-clean" in the source directory and then attempts a
12666         build outside the source directory.
12667         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
12668         scripts_byname.h.
12669
12670 2007-12-02  Martin Lambers <marlam@marlam.de>
12671             Bruno Haible  <bruno@clisp.org>
12672
12673         * lib/getpagesize.h: Remove file.
12674         * lib/unistd.in.h: Include declaration of getpagesize here.
12675         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
12676         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
12677         HAVE_SYS_PARAM_H.
12678         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
12679         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
12680         * modules/getpagesize (Files): Remove lib/getpagesize.h.
12681         (Depends-on): Add unistd.
12682         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
12683         (Include): Use <unistd.h> instead of getpagesize.h.
12684         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
12685         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
12686         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
12687         gl_GETPAGESIZE invocation, already handled by module dependency.
12688         * lib/pagealign_alloc.c: Don't include getpagesize.h.
12689
12690 2007-12-02  Bruno Haible  <bruno@clisp.org>
12691
12692         * modules/strings-tests: New file.
12693         * tests/test-strings.c: New file.
12694
12695         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
12696         * lib/strings.in.h: New file.
12697         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
12698         * m4/strings_h.m4: New file.
12699         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
12700         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
12701         * modules/strings: New file.
12702         * modules/string (Makefile.am): Update.
12703         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
12704         Reported by Karl Berry.
12705
12706 2007-12-01  Eric Blake  <ebb9@byu.net>
12707
12708         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
12709         accomodate fix in cygwin 1.5.25.
12710
12711 2007-12-01  Jim Meyering  <meyering@redhat.com>
12712
12713         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
12714         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
12715         that would inhibit utf8-optimization of a regexp containing line-
12716         or buffer-anchors, e.g., `^', `$'.
12717
12718 2007-11-30  Bruno Haible  <bruno@clisp.org>
12719
12720         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
12721         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
12722         glthread_recursive_lock_init.
12723         * lib/lock.c (glthread_recursive_lock_init)
12724         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
12725         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
12726
12727 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
12728
12729         New function qset_acl, like set_acl but with syscall semantics.
12730         * lib/acl.h (qset_acl): New decl.
12731         * lib/acl.c (qset_acl): New function.
12732         (set_acl): Use new function.  Use more-consistent diagnostics.
12733
12734 2007-11-28  Jim Meyering  <meyering@redhat.com>
12735
12736         * modules/physmem (License): Change from GPL to LGPLv2+.
12737
12738 2007-11-26  Bruno Haible  <bruno@clisp.org>
12739
12740         * lib/vasnprintf.c (decode_long_double): Don't abort if the
12741         'long double' type has excess precision.
12742         Reported by Jim Meyering in
12743         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
12744
12745 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12746
12747         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
12748         Sync from <http://gnu.org/licenses>.
12749         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
12750         with license text from same location.
12751         * doc/maintain.texi, doc/standards.texi:  Sync from
12752         <http://savannah.gnu.org/projects/gnustandards>.
12753
12754 2007-11-22  Ondřej Vašík  <ovasik@redhat.com>
12755         and Jim Meyering  <meyering@redhat.com>
12756
12757         Adjust getdate' grammar to accept a slightly more regular language.
12758         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
12759         Before, the former was rejected.
12760         * lib/getdate.y (digits_to_date_time): New function, factored
12761         out of ...
12762         (number): ...here.  Just call digits_to_date_time.
12763         (hybrid): New non-terminal to handle an <unsigned number,
12764         signed relative offset> sequence consistently.
12765
12766 2007-11-18  Jim Meyering  <meyering@redhat.com>
12767
12768         Pull my changes from coreutils:
12769         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
12770         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
12771         use of $gnulib_tool_option_extras, so that it's separated from the
12772         preceding argument.
12773
12774         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
12775         * build-aux/bootstrap (cp_mark_as_generated): Create any required
12776         parent destination directories before copying a file into place.
12777
12778 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
12779
12780         bootstrap: work also with 4-argument variant of AC_INIT
12781         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
12782
12783 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
12784
12785         Port test-getaddrinfo to Solaris.
12786         Problem reported by Bruno Haible in
12787         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
12788         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
12789         explanation of setting 'hints'.
12790         Don't reject an implementation merely because it returns EAI_SERVICE.
12791         (EAI_SERVICE): Define to 0 if not defined.
12792
12793 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
12794
12795         The license of gnu-make and posix-shell is now "GPLed build tool".
12796         * modules/gnu-make (License): Likewise.
12797         * modules/posix-shell (License): Likewise.
12798
12799         New module posix-shell, for determining a POSIX shell
12800         or perhaps something that is close enough to a POSIX shell.
12801         * m4/posix-shell.m4: New file.
12802         * modules/posix-shell: New file.
12803
12804         * MODULES.html.sh: Mention new module.
12805
12806         New module gnu-make, for determining whether we're using GNU Make.
12807         * m4/gnu-make.m4: New file.
12808         * modules/gnu-make: New file.
12809         * MODULES.html.sh: Mention new module.
12810
12811 2007-11-14  Jim Meyering  <meyering@redhat.com>
12812
12813         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
12814         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
12815         use this macro to create a function _definition_.
12816         Remove useless "#undef ARGMATCH_DIE".
12817
12818 2007-11-14  Bruno Haible  <bruno@clisp.org>
12819
12820         * lib/config.charset: Update for OpenBSD 4.1.
12821         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
12822
12823 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
12824
12825         Document 64-bit #if problems in stdint.texi.
12826         * doc/headers/stdint.texi (stdint.h): Mention problems with
12827         64-bit-#if, and how to work around them.
12828
12829         Don't insist on 'long long int' support in the preprocessor.  It
12830         breaks too many things.  For example, PRIdMAX still uses a 'long
12831         long int' format with the latest Sun compiler, even though
12832         HAVE_LONG_LONG_INT isn't defined due to that compiler's
12833         preprocessor problem.  This causes the latest coreutils to dump
12834         core on Solaris 10 sparc with the Sun C compiler.
12835         Instead, fix the 2007-10-16 problem in a different way, by evaluating
12836         the troublesome expressions at configure-time, not at #if-time.
12837         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
12838         preprocessor.
12839         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
12840         compile-time C checks, done at 'configure'-time.
12841         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
12842         * modules/inttypes (Makefile): Substitute the new symbols that
12843         gl_INTTYPES_H now generates.
12844         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
12845
12846 2007-11-12  Bruno Haible  <bruno@clisp.org>
12847
12848         Tests for Unicode character classification functions.
12849
12850         * modules/unictype/bidicategory-byname-tests: New file.
12851         * modules/unictype/bidicategory-name-tests: New file.
12852         * modules/unictype/bidicategory-of-tests: New file.
12853         * modules/unictype/bidicategory-test-tests: New file.
12854         * modules/unictype/block-list-tests: New file.
12855         * modules/unictype/block-of-tests: New file.
12856         * modules/unictype/block-test-tests: New file.
12857         * modules/unictype/category-C-tests: New file.
12858         * modules/unictype/category-Cc-tests: New file.
12859         * modules/unictype/category-Cf-tests: New file.
12860         * modules/unictype/category-Cn-tests: New file.
12861         * modules/unictype/category-Co-tests: New file.
12862         * modules/unictype/category-Cs-tests: New file.
12863         * modules/unictype/category-L-tests: New file.
12864         * modules/unictype/category-Ll-tests: New file.
12865         * modules/unictype/category-Lm-tests: New file.
12866         * modules/unictype/category-Lo-tests: New file.
12867         * modules/unictype/category-Lt-tests: New file.
12868         * modules/unictype/category-Lu-tests: New file.
12869         * modules/unictype/category-M-tests: New file.
12870         * modules/unictype/category-Mc-tests: New file.
12871         * modules/unictype/category-Me-tests: New file.
12872         * modules/unictype/category-Mn-tests: New file.
12873         * modules/unictype/category-N-tests: New file.
12874         * modules/unictype/category-Nd-tests: New file.
12875         * modules/unictype/category-Nl-tests: New file.
12876         * modules/unictype/category-No-tests: New file.
12877         * modules/unictype/category-P-tests: New file.
12878         * modules/unictype/category-Pc-tests: New file.
12879         * modules/unictype/category-Pd-tests: New file.
12880         * modules/unictype/category-Pe-tests: New file.
12881         * modules/unictype/category-Pf-tests: New file.
12882         * modules/unictype/category-Pi-tests: New file.
12883         * modules/unictype/category-Po-tests: New file.
12884         * modules/unictype/category-Ps-tests: New file.
12885         * modules/unictype/category-S-tests: New file.
12886         * modules/unictype/category-Sc-tests: New file.
12887         * modules/unictype/category-Sk-tests: New file.
12888         * modules/unictype/category-Sm-tests: New file.
12889         * modules/unictype/category-So-tests: New file.
12890         * modules/unictype/category-Z-tests: New file.
12891         * modules/unictype/category-Zl-tests: New file.
12892         * modules/unictype/category-Zp-tests: New file.
12893         * modules/unictype/category-Zs-tests: New file.
12894         * modules/unictype/category-and-not-tests: New file.
12895         * modules/unictype/category-and-tests: New file.
12896         * modules/unictype/category-byname-tests: New file.
12897         * modules/unictype/category-name-tests: New file.
12898         * modules/unictype/category-none-tests: New file.
12899         * modules/unictype/category-of-tests: New file.
12900         * modules/unictype/category-or-tests: New file.
12901         * modules/unictype/category-test-withtable-tests: New file.
12902         * modules/unictype/combining-class-tests: New file.
12903         * modules/unictype/ctype-alnum-tests: New file.
12904         * modules/unictype/ctype-alpha-tests: New file.
12905         * modules/unictype/ctype-blank-tests: New file.
12906         * modules/unictype/ctype-cntrl-tests: New file.
12907         * modules/unictype/ctype-digit-tests: New file.
12908         * modules/unictype/ctype-graph-tests: New file.
12909         * modules/unictype/ctype-lower-tests: New file.
12910         * modules/unictype/ctype-print-tests: New file.
12911         * modules/unictype/ctype-punct-tests: New file.
12912         * modules/unictype/ctype-space-tests: New file.
12913         * modules/unictype/ctype-upper-tests: New file.
12914         * modules/unictype/ctype-xdigit-tests: New file.
12915         * modules/unictype/decimal-digit-tests: New file.
12916         * modules/unictype/digit-tests: New file.
12917         * modules/unictype/mirror-tests: New file.
12918         * modules/unictype/numeric-tests: New file.
12919         * modules/unictype/property-alphabetic-tests: New file.
12920         * modules/unictype/property-ascii-hex-digit-tests: New file.
12921         * modules/unictype/property-bidi-arabic-digit-tests: New file.
12922         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
12923         * modules/unictype/property-bidi-block-separator-tests: New file.
12924         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
12925         * modules/unictype/property-bidi-common-separator-tests: New file.
12926         * modules/unictype/property-bidi-control-tests: New file.
12927         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
12928         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
12929         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
12930         * modules/unictype/property-bidi-european-digit-tests: New file.
12931         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
12932         * modules/unictype/property-bidi-left-to-right-tests: New file.
12933         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
12934         * modules/unictype/property-bidi-other-neutral-tests: New file.
12935         * modules/unictype/property-bidi-pdf-tests: New file.
12936         * modules/unictype/property-bidi-segment-separator-tests: New file.
12937         * modules/unictype/property-bidi-whitespace-tests: New file.
12938         * modules/unictype/property-byname-tests: New file.
12939         * modules/unictype/property-combining-tests: New file.
12940         * modules/unictype/property-composite-tests: New file.
12941         * modules/unictype/property-currency-symbol-tests: New file.
12942         * modules/unictype/property-dash-tests: New file.
12943         * modules/unictype/property-decimal-digit-tests: New file.
12944         * modules/unictype/property-default-ignorable-code-point-tests: New file.
12945         * modules/unictype/property-deprecated-tests: New file.
12946         * modules/unictype/property-diacritic-tests: New file.
12947         * modules/unictype/property-extender-tests: New file.
12948         * modules/unictype/property-format-control-tests: New file.
12949         * modules/unictype/property-grapheme-base-tests: New file.
12950         * modules/unictype/property-grapheme-extend-tests: New file.
12951         * modules/unictype/property-grapheme-link-tests: New file.
12952         * modules/unictype/property-hex-digit-tests: New file.
12953         * modules/unictype/property-hyphen-tests: New file.
12954         * modules/unictype/property-id-continue-tests: New file.
12955         * modules/unictype/property-id-start-tests: New file.
12956         * modules/unictype/property-ideographic-tests: New file.
12957         * modules/unictype/property-ids-binary-operator-tests: New file.
12958         * modules/unictype/property-ids-trinary-operator-tests: New file.
12959         * modules/unictype/property-ignorable-control-tests: New file.
12960         * modules/unictype/property-iso-control-tests: New file.
12961         * modules/unictype/property-join-control-tests: New file.
12962         * modules/unictype/property-left-of-pair-tests: New file.
12963         * modules/unictype/property-line-separator-tests: New file.
12964         * modules/unictype/property-logical-order-exception-tests: New file.
12965         * modules/unictype/property-lowercase-tests: New file.
12966         * modules/unictype/property-math-tests: New file.
12967         * modules/unictype/property-non-break-tests: New file.
12968         * modules/unictype/property-not-a-character-tests: New file.
12969         * modules/unictype/property-numeric-tests: New file.
12970         * modules/unictype/property-other-alphabetic-tests: New file.
12971         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
12972         * modules/unictype/property-other-grapheme-extend-tests: New file.
12973         * modules/unictype/property-other-id-continue-tests: New file.
12974         * modules/unictype/property-other-id-start-tests: New file.
12975         * modules/unictype/property-other-lowercase-tests: New file.
12976         * modules/unictype/property-other-math-tests: New file.
12977         * modules/unictype/property-other-uppercase-tests: New file.
12978         * modules/unictype/property-paired-punctuation-tests: New file.
12979         * modules/unictype/property-paragraph-separator-tests: New file.
12980         * modules/unictype/property-pattern-syntax-tests: New file.
12981         * modules/unictype/property-pattern-white-space-tests: New file.
12982         * modules/unictype/property-private-use-tests: New file.
12983         * modules/unictype/property-punctuation-tests: New file.
12984         * modules/unictype/property-quotation-mark-tests: New file.
12985         * modules/unictype/property-radical-tests: New file.
12986         * modules/unictype/property-sentence-terminal-tests: New file.
12987         * modules/unictype/property-soft-dotted-tests: New file.
12988         * modules/unictype/property-space-tests: New file.
12989         * modules/unictype/property-terminal-punctuation-tests: New file.
12990         * modules/unictype/property-test-tests: New file.
12991         * modules/unictype/property-titlecase-tests: New file.
12992         * modules/unictype/property-unassigned-code-value-tests: New file.
12993         * modules/unictype/property-unified-ideograph-tests: New file.
12994         * modules/unictype/property-uppercase-tests: New file.
12995         * modules/unictype/property-variation-selector-tests: New file.
12996         * modules/unictype/property-white-space-tests: New file.
12997         * modules/unictype/property-xid-continue-tests: New file.
12998         * modules/unictype/property-xid-start-tests: New file.
12999         * modules/unictype/property-zero-width-tests: New file.
13000         * modules/unictype/scripts-tests: New file.
13001         * modules/unictype/syntax-c-ident-tests: New file.
13002         * modules/unictype/syntax-c-whitespace-tests: New file.
13003         * modules/unictype/syntax-java-ident-tests: New file.
13004         * modules/unictype/syntax-java-whitespace-tests: New file.
13005         * tests/unictype/test-bidi_byname.c: New file.
13006         * tests/unictype/test-bidi_name.c: New file.
13007         * tests/unictype/test-bidi_of.c: New file.
13008         * tests/unictype/test-bidi_test.c: New file.
13009         * tests/unictype/test-block_list.c: New file.
13010         * tests/unictype/test-block_of.c: New file.
13011         * tests/unictype/test-block_test.c: New file.
13012         * tests/unictype/test-categ_and.c: New file.
13013         * tests/unictype/test-categ_and_not.c: New file.
13014         * tests/unictype/test-categ_byname.c: New file.
13015         * tests/unictype/test-categ_name.c: New file.
13016         * tests/unictype/test-categ_none.c: New file.
13017         * tests/unictype/test-categ_of.c: New file.
13018         * tests/unictype/test-categ_or.c: New file.
13019         * tests/unictype/test-categ_test_withtable.c: New file.
13020         * tests/unictype/test-combining.c: New file.
13021         * tests/unictype/test-decdigit.c: New file.
13022         * tests/unictype/test-digit.c: New file.
13023         * tests/unictype/test-mirror.c: New file.
13024         * tests/unictype/test-numeric.c: New file.
13025         * tests/unictype/test-pr_byname.c: New file.
13026         * tests/unictype/test-pr_test.c: New file.
13027         * tests/unictype/test-predicate-part1.h: New file.
13028         * tests/unictype/test-predicate-part2.h: New file.
13029         * tests/unictype/test-scripts.c: New file.
13030         * tests/unictype/test-sy_c_ident.c: New file.
13031         * tests/unictype/test-sy_java_ident.c: New file.
13032
13033         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
13034         for Unicode 5.0.0.
13035         * tests/unictype/test-categ_Cc.c: Likewise.
13036         * tests/unictype/test-categ_Cf.c: Likewise.
13037         * tests/unictype/test-categ_Cn.c: Likewise.
13038         * tests/unictype/test-categ_Co.c: Likewise.
13039         * tests/unictype/test-categ_Cs.c: Likewise.
13040         * tests/unictype/test-categ_L.c: Likewise.
13041         * tests/unictype/test-categ_Ll.c: Likewise.
13042         * tests/unictype/test-categ_Lm.c: Likewise.
13043         * tests/unictype/test-categ_Lo.c: Likewise.
13044         * tests/unictype/test-categ_Lt.c: Likewise.
13045         * tests/unictype/test-categ_Lu.c: Likewise.
13046         * tests/unictype/test-categ_M.c: Likewise.
13047         * tests/unictype/test-categ_Mc.c: Likewise.
13048         * tests/unictype/test-categ_Me.c: Likewise.
13049         * tests/unictype/test-categ_Mn.c: Likewise.
13050         * tests/unictype/test-categ_N.c: Likewise.
13051         * tests/unictype/test-categ_Nd.c: Likewise.
13052         * tests/unictype/test-categ_Nl.c: Likewise.
13053         * tests/unictype/test-categ_No.c: Likewise.
13054         * tests/unictype/test-categ_P.c: Likewise.
13055         * tests/unictype/test-categ_Pc.c: Likewise.
13056         * tests/unictype/test-categ_Pd.c: Likewise.
13057         * tests/unictype/test-categ_Pe.c: Likewise.
13058         * tests/unictype/test-categ_Pf.c: Likewise.
13059         * tests/unictype/test-categ_Pi.c: Likewise.
13060         * tests/unictype/test-categ_Po.c: Likewise.
13061         * tests/unictype/test-categ_Ps.c: Likewise.
13062         * tests/unictype/test-categ_S.c: Likewise.
13063         * tests/unictype/test-categ_Sc.c: Likewise.
13064         * tests/unictype/test-categ_Sk.c: Likewise.
13065         * tests/unictype/test-categ_Sm.c: Likewise.
13066         * tests/unictype/test-categ_So.c: Likewise.
13067         * tests/unictype/test-categ_Z.c: Likewise.
13068         * tests/unictype/test-categ_Zl.c: Likewise.
13069         * tests/unictype/test-categ_Zp.c: Likewise.
13070         * tests/unictype/test-categ_Zs.c: Likewise.
13071         * tests/unictype/test-ctype_alnum.c: Likewise.
13072         * tests/unictype/test-ctype_alpha.c: Likewise.
13073         * tests/unictype/test-ctype_blank.c: Likewise.
13074         * tests/unictype/test-ctype_cntrl.c: Likewise.
13075         * tests/unictype/test-ctype_digit.c: Likewise.
13076         * tests/unictype/test-ctype_graph.c: Likewise.
13077         * tests/unictype/test-ctype_lower.c: Likewise.
13078         * tests/unictype/test-ctype_print.c: Likewise.
13079         * tests/unictype/test-ctype_punct.c: Likewise.
13080         * tests/unictype/test-ctype_space.c: Likewise.
13081         * tests/unictype/test-ctype_upper.c: Likewise.
13082         * tests/unictype/test-ctype_xdigit.c: Likewise.
13083         * tests/unictype/test-decdigit.h: Likewise.
13084         * tests/unictype/test-digit.h: Likewise.
13085         * tests/unictype/test-numeric.h: Likewise.
13086         * tests/unictype/test-pr_alphabetic.c: Likewise.
13087         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
13088         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
13089         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
13090         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
13091         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
13092         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
13093         * tests/unictype/test-pr_bidi_control.c: Likewise.
13094         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
13095         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
13096         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
13097         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
13098         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
13099         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
13100         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
13101         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
13102         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
13103         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
13104         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
13105         * tests/unictype/test-pr_combining.c: Likewise.
13106         * tests/unictype/test-pr_composite.c: Likewise.
13107         * tests/unictype/test-pr_currency_symbol.c: Likewise.
13108         * tests/unictype/test-pr_dash.c: Likewise.
13109         * tests/unictype/test-pr_decimal_digit.c: Likewise.
13110         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
13111         * tests/unictype/test-pr_deprecated.c: Likewise.
13112         * tests/unictype/test-pr_diacritic.c: Likewise.
13113         * tests/unictype/test-pr_extender.c: Likewise.
13114         * tests/unictype/test-pr_format_control.c: Likewise.
13115         * tests/unictype/test-pr_grapheme_base.c: Likewise.
13116         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
13117         * tests/unictype/test-pr_grapheme_link.c: Likewise.
13118         * tests/unictype/test-pr_hex_digit.c: Likewise.
13119         * tests/unictype/test-pr_hyphen.c: Likewise.
13120         * tests/unictype/test-pr_id_continue.c: Likewise.
13121         * tests/unictype/test-pr_id_start.c: Likewise.
13122         * tests/unictype/test-pr_ideographic.c: Likewise.
13123         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
13124         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
13125         * tests/unictype/test-pr_ignorable_control.c: Likewise.
13126         * tests/unictype/test-pr_iso_control.c: Likewise.
13127         * tests/unictype/test-pr_join_control.c: Likewise.
13128         * tests/unictype/test-pr_left_of_pair.c: Likewise.
13129         * tests/unictype/test-pr_line_separator.c: Likewise.
13130         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
13131         * tests/unictype/test-pr_lowercase.c: Likewise.
13132         * tests/unictype/test-pr_math.c: Likewise.
13133         * tests/unictype/test-pr_non_break.c: Likewise.
13134         * tests/unictype/test-pr_not_a_character.c: Likewise.
13135         * tests/unictype/test-pr_numeric.c: Likewise.
13136         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
13137         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
13138         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
13139         * tests/unictype/test-pr_other_id_continue.c: Likewise.
13140         * tests/unictype/test-pr_other_id_start.c: Likewise.
13141         * tests/unictype/test-pr_other_lowercase.c: Likewise.
13142         * tests/unictype/test-pr_other_math.c: Likewise.
13143         * tests/unictype/test-pr_other_uppercase.c: Likewise.
13144         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
13145         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
13146         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
13147         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
13148         * tests/unictype/test-pr_private_use.c: Likewise.
13149         * tests/unictype/test-pr_punctuation.c: Likewise.
13150         * tests/unictype/test-pr_quotation_mark.c: Likewise.
13151         * tests/unictype/test-pr_radical.c: Likewise.
13152         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
13153         * tests/unictype/test-pr_soft_dotted.c: Likewise.
13154         * tests/unictype/test-pr_space.c: Likewise.
13155         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
13156         * tests/unictype/test-pr_titlecase.c: Likewise.
13157         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
13158         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
13159         * tests/unictype/test-pr_uppercase.c: Likewise.
13160         * tests/unictype/test-pr_variation_selector.c: Likewise.
13161         * tests/unictype/test-pr_white_space.c: Likewise.
13162         * tests/unictype/test-pr_xid_continue.c: Likewise.
13163         * tests/unictype/test-pr_xid_start.c: Likewise.
13164         * tests/unictype/test-pr_zero_width.c: Likewise.
13165         * tests/unictype/test-sy_c_whitespace.c: Likewise.
13166         * tests/unictype/test-sy_java_whitespace.c: Likewise.
13167
13168 2007-11-12  Bruno Haible  <bruno@clisp.org>
13169
13170         Unicode character classification functions.
13171         * lib/unictype.h: New file.
13172         * modules/unictype/base: New file.
13173         * modules/unictype/category-L: New file.
13174         * modules/unictype/category-Lu: New file.
13175         * modules/unictype/category-Ll: New file.
13176         * modules/unictype/category-Lt: New file.
13177         * modules/unictype/category-Lm: New file.
13178         * modules/unictype/category-Lo: New file.
13179         * modules/unictype/category-M: New file.
13180         * modules/unictype/category-Mn: New file.
13181         * modules/unictype/category-Mc: New file.
13182         * modules/unictype/category-Me: New file.
13183         * modules/unictype/category-N: New file.
13184         * modules/unictype/category-Nd: New file.
13185         * modules/unictype/category-Nl: New file.
13186         * modules/unictype/category-No: New file.
13187         * modules/unictype/category-P: New file.
13188         * modules/unictype/category-Pc: New file.
13189         * modules/unictype/category-Pd: New file.
13190         * modules/unictype/category-Ps: New file.
13191         * modules/unictype/category-Pe: New file.
13192         * modules/unictype/category-Pi: New file.
13193         * modules/unictype/category-Pf: New file.
13194         * modules/unictype/category-Po: New file.
13195         * modules/unictype/category-S: New file.
13196         * modules/unictype/category-Sm: New file.
13197         * modules/unictype/category-Sc: New file.
13198         * modules/unictype/category-Sk: New file.
13199         * modules/unictype/category-So: New file.
13200         * modules/unictype/category-Z: New file.
13201         * modules/unictype/category-Zs: New file.
13202         * modules/unictype/category-Zl: New file.
13203         * modules/unictype/category-Zp: New file.
13204         * modules/unictype/category-C: New file.
13205         * modules/unictype/category-Cc: New file.
13206         * modules/unictype/category-Cf: New file.
13207         * modules/unictype/category-Cs: New file.
13208         * modules/unictype/category-Co: New file.
13209         * modules/unictype/category-Cn: New file.
13210         * modules/unictype/category-or: New file.
13211         * modules/unictype/category-of: New file.
13212         * modules/unictype/category-test: New file.
13213         * modules/unictype/category-test-withtable: New file.
13214         * modules/unictype/category-byname: New file.
13215         * modules/unictype/category-none: New file.
13216         * modules/unictype/category-and: New file.
13217         * modules/unictype/category-and-not: New file.
13218         * modules/unictype/category-name: New file.
13219         * modules/unictype/combining-class: New file.
13220         * modules/unictype/category-all: New file.
13221         * modules/unictype/bidicategory-all: New file.
13222         * modules/unictype/bidicategory-byname: New file.
13223         * modules/unictype/bidicategory-name: New file.
13224         * modules/unictype/bidicategory-of: New file.
13225         * modules/unictype/bidicategory-test: New file.
13226         * modules/unictype/decimal-digit: New file.
13227         * modules/unictype/digit: New file.
13228         * modules/unictype/numeric: New file.
13229         * modules/unictype/mirror: New file.
13230         * modules/unictype/property-white-space: New file.
13231         * modules/unictype/property-alphabetic: New file.
13232         * modules/unictype/property-other-alphabetic: New file.
13233         * modules/unictype/property-not-a-character: New file.
13234         * modules/unictype/property-default-ignorable-code-point: New file.
13235         * modules/unictype/property-other-default-ignorable-code-point: New
13236         file.
13237         * modules/unictype/property-deprecated: New file.
13238         * modules/unictype/property-logical-order-exception: New file.
13239         * modules/unictype/property-variation-selector: New file.
13240         * modules/unictype/property-private-use: New file.
13241         * modules/unictype/property-unassigned-code-value: New file.
13242         * modules/unictype/property-uppercase: New file.
13243         * modules/unictype/property-other-uppercase: New file.
13244         * modules/unictype/property-lowercase: New file.
13245         * modules/unictype/property-other-lowercase: New file.
13246         * modules/unictype/property-titlecase: New file.
13247         * modules/unictype/property-soft-dotted: New file.
13248         * modules/unictype/property-id-start: New file.
13249         * modules/unictype/property-other-id-start: New file.
13250         * modules/unictype/property-id-continue: New file.
13251         * modules/unictype/property-other-id-continue: New file.
13252         * modules/unictype/property-xid-start: New file.
13253         * modules/unictype/property-xid-continue: New file.
13254         * modules/unictype/property-pattern-white-space: New file.
13255         * modules/unictype/property-pattern-syntax: New file.
13256         * modules/unictype/property-join-control: New file.
13257         * modules/unictype/property-grapheme-base: New file.
13258         * modules/unictype/property-grapheme-extend: New file.
13259         * modules/unictype/property-other-grapheme-extend: New file.
13260         * modules/unictype/property-grapheme-link: New file.
13261         * modules/unictype/property-bidi-control: New file.
13262         * modules/unictype/property-bidi-left-to-right: New file.
13263         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
13264         * modules/unictype/property-bidi-arabic-right-to-left: New file.
13265         * modules/unictype/property-bidi-european-digit: New file.
13266         * modules/unictype/property-bidi-eur-num-separator: New file.
13267         * modules/unictype/property-bidi-eur-num-terminator: New file.
13268         * modules/unictype/property-bidi-arabic-digit: New file.
13269         * modules/unictype/property-bidi-common-separator: New file.
13270         * modules/unictype/property-bidi-block-separator: New file.
13271         * modules/unictype/property-bidi-segment-separator: New file.
13272         * modules/unictype/property-bidi-whitespace: New file.
13273         * modules/unictype/property-bidi-non-spacing-mark: New file.
13274         * modules/unictype/property-bidi-boundary-neutral: New file.
13275         * modules/unictype/property-bidi-pdf: New file.
13276         * modules/unictype/property-bidi-embedding-or-override: New file.
13277         * modules/unictype/property-bidi-other-neutral: New file.
13278         * modules/unictype/property-hex-digit: New file.
13279         * modules/unictype/property-ascii-hex-digit: New file.
13280         * modules/unictype/property-ideographic: New file.
13281         * modules/unictype/property-unified-ideograph: New file.
13282         * modules/unictype/property-radical: New file.
13283         * modules/unictype/property-ids-binary-operator: New file.
13284         * modules/unictype/property-ids-trinary-operator: New file.
13285         * modules/unictype/property-zero-width: New file.
13286         * modules/unictype/property-space: New file.
13287         * modules/unictype/property-non-break: New file.
13288         * modules/unictype/property-iso-control: New file.
13289         * modules/unictype/property-format-control: New file.
13290         * modules/unictype/property-dash: New file.
13291         * modules/unictype/property-hyphen: New file.
13292         * modules/unictype/property-punctuation: New file.
13293         * modules/unictype/property-line-separator: New file.
13294         * modules/unictype/property-paragraph-separator: New file.
13295         * modules/unictype/property-quotation-mark: New file.
13296         * modules/unictype/property-sentence-terminal: New file.
13297         * modules/unictype/property-terminal-punctuation: New file.
13298         * modules/unictype/property-currency-symbol: New file.
13299         * modules/unictype/property-math: New file.
13300         * modules/unictype/property-other-math: New file.
13301         * modules/unictype/property-paired-punctuation: New file.
13302         * modules/unictype/property-left-of-pair: New file.
13303         * modules/unictype/property-combining: New file.
13304         * modules/unictype/property-composite: New file.
13305         * modules/unictype/property-decimal-digit: New file.
13306         * modules/unictype/property-numeric: New file.
13307         * modules/unictype/property-diacritic: New file.
13308         * modules/unictype/property-extender: New file.
13309         * modules/unictype/property-ignorable-control: New file.
13310         * modules/unictype/property-test: New file.
13311         * modules/unictype/property-byname: New file.
13312         * modules/unictype/property-all: New file.
13313         * modules/unictype/scripts: New file.
13314         * modules/unictype/scripts-all: New file.
13315         * modules/unictype/block-of: New file.
13316         * modules/unictype/block-test: New file.
13317         * modules/unictype/block-list: New file.
13318         * modules/unictype/block-all: New file.
13319         * modules/unictype/syntax-c-whitespace: New file.
13320         * modules/unictype/syntax-java-whitespace: New file.
13321         * modules/unictype/syntax-c-ident: New file.
13322         * modules/unictype/syntax-java-ident: New file.
13323         * modules/unictype/ctype-alnum: New file.
13324         * modules/unictype/ctype-alpha: New file.
13325         * modules/unictype/ctype-cntrl: New file.
13326         * modules/unictype/ctype-digit: New file.
13327         * modules/unictype/ctype-graph: New file.
13328         * modules/unictype/ctype-lower: New file.
13329         * modules/unictype/ctype-print: New file.
13330         * modules/unictype/ctype-punct: New file.
13331         * modules/unictype/ctype-space: New file.
13332         * modules/unictype/ctype-upper: New file.
13333         * modules/unictype/ctype-xdigit: New file.
13334         * modules/unictype/ctype-blank: New file.
13335         * lib/unictype/bidi_byname.c: New file.
13336         * lib/unictype/bidi_name.c: New file.
13337         * lib/unictype/bidi_of.c: New file.
13338         * lib/unictype/bidi_test.c: New file.
13339         * lib/unictype/bitmap.h: New file.
13340         * lib/unictype/block_test.c: New file.
13341         * lib/unictype/blocks.c: New file.
13342         * lib/unictype/categ_C.c: New file.
13343         * lib/unictype/categ_Cc.c: New file.
13344         * lib/unictype/categ_Cf.c: New file.
13345         * lib/unictype/categ_Cn.c: New file.
13346         * lib/unictype/categ_Co.c: New file.
13347         * lib/unictype/categ_Cs.c: New file.
13348         * lib/unictype/categ_L.c: New file.
13349         * lib/unictype/categ_Ll.c: New file.
13350         * lib/unictype/categ_Lm.c: New file.
13351         * lib/unictype/categ_Lo.c: New file.
13352         * lib/unictype/categ_Lt.c: New file.
13353         * lib/unictype/categ_Lu.c: New file.
13354         * lib/unictype/categ_M.c: New file.
13355         * lib/unictype/categ_Mc.c: New file.
13356         * lib/unictype/categ_Me.c: New file.
13357         * lib/unictype/categ_Mn.c: New file.
13358         * lib/unictype/categ_N.c: New file.
13359         * lib/unictype/categ_Nd.c: New file.
13360         * lib/unictype/categ_Nl.c: New file.
13361         * lib/unictype/categ_No.c: New file.
13362         * lib/unictype/categ_P.c: New file.
13363         * lib/unictype/categ_Pc.c: New file.
13364         * lib/unictype/categ_Pd.c: New file.
13365         * lib/unictype/categ_Pe.c: New file.
13366         * lib/unictype/categ_Pf.c: New file.
13367         * lib/unictype/categ_Pi.c: New file.
13368         * lib/unictype/categ_Po.c: New file.
13369         * lib/unictype/categ_Ps.c: New file.
13370         * lib/unictype/categ_S.c: New file.
13371         * lib/unictype/categ_Sc.c: New file.
13372         * lib/unictype/categ_Sk.c: New file.
13373         * lib/unictype/categ_Sm.c: New file.
13374         * lib/unictype/categ_So.c: New file.
13375         * lib/unictype/categ_Z.c: New file.
13376         * lib/unictype/categ_Zl.c: New file.
13377         * lib/unictype/categ_Zp.c: New file.
13378         * lib/unictype/categ_Zs.c: New file.
13379         * lib/unictype/categ_and.c: New file.
13380         * lib/unictype/categ_and_not.c: New file.
13381         * lib/unictype/categ_byname.c: New file.
13382         * lib/unictype/categ_name.c: New file.
13383         * lib/unictype/categ_none.c: New file.
13384         * lib/unictype/categ_of.c: New file.
13385         * lib/unictype/categ_or.c: New file.
13386         * lib/unictype/categ_test.c: New file.
13387         * lib/unictype/combining.c: New file.
13388         * lib/unictype/ctype_alnum.c: New file.
13389         * lib/unictype/ctype_alpha.c: New file.
13390         * lib/unictype/ctype_blank.c: New file.
13391         * lib/unictype/ctype_cntrl.c: New file.
13392         * lib/unictype/ctype_digit.c: New file.
13393         * lib/unictype/ctype_graph.c: New file.
13394         * lib/unictype/ctype_lower.c: New file.
13395         * lib/unictype/ctype_print.c: New file.
13396         * lib/unictype/ctype_punct.c: New file.
13397         * lib/unictype/ctype_space.c: New file.
13398         * lib/unictype/ctype_upper.c: New file.
13399         * lib/unictype/ctype_xdigit.c: New file.
13400         * lib/unictype/decdigit.c: New file.
13401         * lib/unictype/digit.c: New file.
13402         * lib/unictype/identsyntaxmap.h: New file.
13403         * lib/unictype/mirror.c: New file.
13404         * lib/unictype/numeric.c: New file.
13405         * lib/unictype/pr_alphabetic.c: New file.
13406         * lib/unictype/pr_ascii_hex_digit.c: New file.
13407         * lib/unictype/pr_bidi_arabic_digit.c: New file.
13408         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
13409         * lib/unictype/pr_bidi_block_separator.c: New file.
13410         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
13411         * lib/unictype/pr_bidi_common_separator.c: New file.
13412         * lib/unictype/pr_bidi_control.c: New file.
13413         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
13414         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
13415         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
13416         * lib/unictype/pr_bidi_european_digit.c: New file.
13417         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
13418         * lib/unictype/pr_bidi_left_to_right.c: New file.
13419         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
13420         * lib/unictype/pr_bidi_other_neutral.c: New file.
13421         * lib/unictype/pr_bidi_pdf.c: New file.
13422         * lib/unictype/pr_bidi_segment_separator.c: New file.
13423         * lib/unictype/pr_bidi_whitespace.c: New file.
13424         * lib/unictype/pr_byname.c: New file.
13425         * lib/unictype/pr_byname.gperf: New file.
13426         * lib/unictype/pr_combining.c: New file.
13427         * lib/unictype/pr_composite.c: New file.
13428         * lib/unictype/pr_currency_symbol.c: New file.
13429         * lib/unictype/pr_dash.c: New file.
13430         * lib/unictype/pr_decimal_digit.c: New file.
13431         * lib/unictype/pr_default_ignorable_code_point.c: New file.
13432         * lib/unictype/pr_deprecated.c: New file.
13433         * lib/unictype/pr_diacritic.c: New file.
13434         * lib/unictype/pr_extender.c: New file.
13435         * lib/unictype/pr_format_control.c: New file.
13436         * lib/unictype/pr_grapheme_base.c: New file.
13437         * lib/unictype/pr_grapheme_extend.c: New file.
13438         * lib/unictype/pr_grapheme_link.c: New file.
13439         * lib/unictype/pr_hex_digit.c: New file.
13440         * lib/unictype/pr_hyphen.c: New file.
13441         * lib/unictype/pr_id_continue.c: New file.
13442         * lib/unictype/pr_id_start.c: New file.
13443         * lib/unictype/pr_ideographic.c: New file.
13444         * lib/unictype/pr_ids_binary_operator.c: New file.
13445         * lib/unictype/pr_ids_trinary_operator.c: New file.
13446         * lib/unictype/pr_ignorable_control.c: New file.
13447         * lib/unictype/pr_iso_control.c: New file.
13448         * lib/unictype/pr_join_control.c: New file.
13449         * lib/unictype/pr_left_of_pair.c: New file.
13450         * lib/unictype/pr_line_separator.c: New file.
13451         * lib/unictype/pr_logical_order_exception.c: New file.
13452         * lib/unictype/pr_lowercase.c: New file.
13453         * lib/unictype/pr_math.c: New file.
13454         * lib/unictype/pr_non_break.c: New file.
13455         * lib/unictype/pr_not_a_character.c: New file.
13456         * lib/unictype/pr_numeric.c: New file.
13457         * lib/unictype/pr_other_alphabetic.c: New file.
13458         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
13459         * lib/unictype/pr_other_grapheme_extend.c: New file.
13460         * lib/unictype/pr_other_id_continue.c: New file.
13461         * lib/unictype/pr_other_id_start.c: New file.
13462         * lib/unictype/pr_other_lowercase.c: New file.
13463         * lib/unictype/pr_other_math.c: New file.
13464         * lib/unictype/pr_other_uppercase.c: New file.
13465         * lib/unictype/pr_paired_punctuation.c: New file.
13466         * lib/unictype/pr_paragraph_separator.c: New file.
13467         * lib/unictype/pr_pattern_syntax.c: New file.
13468         * lib/unictype/pr_pattern_white_space.c: New file.
13469         * lib/unictype/pr_private_use.c: New file.
13470         * lib/unictype/pr_punctuation.c: New file.
13471         * lib/unictype/pr_quotation_mark.c: New file.
13472         * lib/unictype/pr_radical.c: New file.
13473         * lib/unictype/pr_sentence_terminal.c: New file.
13474         * lib/unictype/pr_soft_dotted.c: New file.
13475         * lib/unictype/pr_space.c: New file.
13476         * lib/unictype/pr_terminal_punctuation.c: New file.
13477         * lib/unictype/pr_test.c: New file.
13478         * lib/unictype/pr_titlecase.c: New file.
13479         * lib/unictype/pr_unassigned_code_value.c: New file.
13480         * lib/unictype/pr_unified_ideograph.c: New file.
13481         * lib/unictype/pr_uppercase.c: New file.
13482         * lib/unictype/pr_variation_selector.c: New file.
13483         * lib/unictype/pr_white_space.c: New file.
13484         * lib/unictype/pr_xid_continue.c: New file.
13485         * lib/unictype/pr_xid_start.c: New file.
13486         * lib/unictype/pr_zero_width.c: New file.
13487         * lib/unictype/scripts.c: New file.
13488         * lib/unictype/sy_c_ident.c: New file.
13489         * lib/unictype/sy_c_whitespace.c: New file.
13490         * lib/unictype/sy_java_ident.c: New file.
13491         * lib/unictype/sy_java_whitespace.c: New file.
13492
13493         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
13494         Unicode 5.0.0.
13495         * lib/unictype/blocks.h: Likewise.
13496         * lib/unictype/categ_C.h: Likewise.
13497         * lib/unictype/categ_Cc.h: Likewise.
13498         * lib/unictype/categ_Cf.h: Likewise.
13499         * lib/unictype/categ_Cn.h: Likewise.
13500         * lib/unictype/categ_Co.h: Likewise.
13501         * lib/unictype/categ_Cs.h: Likewise.
13502         * lib/unictype/categ_L.h: Likewise.
13503         * lib/unictype/categ_Ll.h: Likewise.
13504         * lib/unictype/categ_Lm.h: Likewise.
13505         * lib/unictype/categ_Lo.h: Likewise.
13506         * lib/unictype/categ_Lt.h: Likewise.
13507         * lib/unictype/categ_Lu.h: Likewise.
13508         * lib/unictype/categ_M.h: Likewise.
13509         * lib/unictype/categ_Mc.h: Likewise.
13510         * lib/unictype/categ_Me.h: Likewise.
13511         * lib/unictype/categ_Mn.h: Likewise.
13512         * lib/unictype/categ_N.h: Likewise.
13513         * lib/unictype/categ_Nd.h: Likewise.
13514         * lib/unictype/categ_Nl.h: Likewise.
13515         * lib/unictype/categ_No.h: Likewise.
13516         * lib/unictype/categ_P.h: Likewise.
13517         * lib/unictype/categ_Pc.h: Likewise.
13518         * lib/unictype/categ_Pd.h: Likewise.
13519         * lib/unictype/categ_Pe.h: Likewise.
13520         * lib/unictype/categ_Pf.h: Likewise.
13521         * lib/unictype/categ_Pi.h: Likewise.
13522         * lib/unictype/categ_Po.h: Likewise.
13523         * lib/unictype/categ_Ps.h: Likewise.
13524         * lib/unictype/categ_S.h: Likewise.
13525         * lib/unictype/categ_Sc.h: Likewise.
13526         * lib/unictype/categ_Sk.h: Likewise.
13527         * lib/unictype/categ_Sm.h: Likewise.
13528         * lib/unictype/categ_So.h: Likewise.
13529         * lib/unictype/categ_Z.h: Likewise.
13530         * lib/unictype/categ_Zl.h: Likewise.
13531         * lib/unictype/categ_Zp.h: Likewise.
13532         * lib/unictype/categ_Zs.h: Likewise.
13533         * lib/unictype/categ_of.h: Likewise.
13534         * lib/unictype/combining.h: Likewise.
13535         * lib/unictype/ctype_alnum.h: Likewise.
13536         * lib/unictype/ctype_alpha.h: Likewise.
13537         * lib/unictype/ctype_blank.h: Likewise.
13538         * lib/unictype/ctype_cntrl.h: Likewise.
13539         * lib/unictype/ctype_digit.h: Likewise.
13540         * lib/unictype/ctype_graph.h: Likewise.
13541         * lib/unictype/ctype_lower.h: Likewise.
13542         * lib/unictype/ctype_print.h: Likewise.
13543         * lib/unictype/ctype_punct.h: Likewise.
13544         * lib/unictype/ctype_space.h: Likewise.
13545         * lib/unictype/ctype_upper.h: Likewise.
13546         * lib/unictype/ctype_xdigit.h: Likewise.
13547         * lib/unictype/decdigit.h: Likewise.
13548         * lib/unictype/digit.h: Likewise.
13549         * lib/unictype/mirror.h: Likewise.
13550         * lib/unictype/numeric.h: Likewise.
13551         * lib/unictype/pr_alphabetic.h: Likewise.
13552         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
13553         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
13554         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
13555         * lib/unictype/pr_bidi_block_separator.h: Likewise.
13556         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
13557         * lib/unictype/pr_bidi_common_separator.h: Likewise.
13558         * lib/unictype/pr_bidi_control.h: Likewise.
13559         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
13560         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
13561         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
13562         * lib/unictype/pr_bidi_european_digit.h: Likewise.
13563         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
13564         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
13565         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
13566         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
13567         * lib/unictype/pr_bidi_pdf.h: Likewise.
13568         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
13569         * lib/unictype/pr_bidi_whitespace.h: Likewise.
13570         * lib/unictype/pr_combining.h: Likewise.
13571         * lib/unictype/pr_composite.h: Likewise.
13572         * lib/unictype/pr_currency_symbol.h: Likewise.
13573         * lib/unictype/pr_dash.h: Likewise.
13574         * lib/unictype/pr_decimal_digit.h: Likewise.
13575         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
13576         * lib/unictype/pr_deprecated.h: Likewise.
13577         * lib/unictype/pr_diacritic.h: Likewise.
13578         * lib/unictype/pr_extender.h: Likewise.
13579         * lib/unictype/pr_format_control.h: Likewise.
13580         * lib/unictype/pr_grapheme_base.h: Likewise.
13581         * lib/unictype/pr_grapheme_extend.h: Likewise.
13582         * lib/unictype/pr_grapheme_link.h: Likewise.
13583         * lib/unictype/pr_hex_digit.h: Likewise.
13584         * lib/unictype/pr_hyphen.h: Likewise.
13585         * lib/unictype/pr_id_continue.h: Likewise.
13586         * lib/unictype/pr_id_start.h: Likewise.
13587         * lib/unictype/pr_ideographic.h: Likewise.
13588         * lib/unictype/pr_ids_binary_operator.h: Likewise.
13589         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
13590         * lib/unictype/pr_ignorable_control.h: Likewise.
13591         * lib/unictype/pr_iso_control.h: Likewise.
13592         * lib/unictype/pr_join_control.h: Likewise.
13593         * lib/unictype/pr_left_of_pair.h: Likewise.
13594         * lib/unictype/pr_line_separator.h: Likewise.
13595         * lib/unictype/pr_logical_order_exception.h: Likewise.
13596         * lib/unictype/pr_lowercase.h: Likewise.
13597         * lib/unictype/pr_math.h: Likewise.
13598         * lib/unictype/pr_non_break.h: Likewise.
13599         * lib/unictype/pr_not_a_character.h: Likewise.
13600         * lib/unictype/pr_numeric.h: Likewise.
13601         * lib/unictype/pr_other_alphabetic.h: Likewise.
13602         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
13603         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
13604         * lib/unictype/pr_other_id_continue.h: Likewise.
13605         * lib/unictype/pr_other_id_start.h: Likewise.
13606         * lib/unictype/pr_other_lowercase.h: Likewise.
13607         * lib/unictype/pr_other_math.h: Likewise.
13608         * lib/unictype/pr_other_uppercase.h: Likewise.
13609         * lib/unictype/pr_paired_punctuation.h: Likewise.
13610         * lib/unictype/pr_paragraph_separator.h: Likewise.
13611         * lib/unictype/pr_pattern_syntax.h: Likewise.
13612         * lib/unictype/pr_pattern_white_space.h: Likewise.
13613         * lib/unictype/pr_private_use.h: Likewise.
13614         * lib/unictype/pr_punctuation.h: Likewise.
13615         * lib/unictype/pr_quotation_mark.h: Likewise.
13616         * lib/unictype/pr_radical.h: Likewise.
13617         * lib/unictype/pr_sentence_terminal.h: Likewise.
13618         * lib/unictype/pr_soft_dotted.h: Likewise.
13619         * lib/unictype/pr_space.h: Likewise.
13620         * lib/unictype/pr_terminal_punctuation.h: Likewise.
13621         * lib/unictype/pr_titlecase.h: Likewise.
13622         * lib/unictype/pr_unassigned_code_value.h: Likewise.
13623         * lib/unictype/pr_unified_ideograph.h: Likewise.
13624         * lib/unictype/pr_uppercase.h: Likewise.
13625         * lib/unictype/pr_variation_selector.h: Likewise.
13626         * lib/unictype/pr_white_space.h: Likewise.
13627         * lib/unictype/pr_xid_continue.h: Likewise.
13628         * lib/unictype/pr_xid_start.h: Likewise.
13629         * lib/unictype/pr_zero_width.h: Likewise.
13630         * lib/unictype/scripts.h: Likewise.
13631         * lib/unictype/scripts_byname.gperf: Likewise.
13632         * lib/unictype/sy_c_ident.h: Likewise.
13633         * lib/unictype/sy_c_whitespace.h: Likewise.
13634         * lib/unictype/sy_java_ident.h: Likewise.
13635         * lib/unictype/sy_java_whitespace.h: Likewise.
13636
13637         * lib/unictype/Makefile: New file.
13638         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
13639         glibc.
13640         * lib/unictype/3level.h: New file, copied from glibc.
13641         * lib/unictype/3levelbit.h: New file.
13642
13643 2007-11-11  Bruno Haible  <bruno@clisp.org>
13644
13645         * modules/gperf: New file.
13646         * modules/iconv_open (Depends-on): Add it.
13647         (Makefile.am): Remove the GPERF definition.
13648
13649 2007-11-11  Bruno Haible  <bruno@clisp.org>
13650
13651         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
13652         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
13653
13654 2007-11-11  Bruno Haible  <bruno@clisp.org>
13655
13656         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
13657         (usage): Remove function.
13658
13659 2007-11-11  Bruno Haible  <bruno@clisp.org>
13660
13661         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
13662         gl_FUNC_CEILF_LIBS.
13663         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
13664         gl_FUNC_CEIL_LIBS.
13665         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
13666         gl_FUNC_CEILL_LIBS.
13667         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
13668         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
13669         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
13670
13671 2007-11-11  Bruno Haible  <bruno@clisp.org>
13672
13673         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
13674         roundf were declared but do not exist on functions.
13675         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
13676         roundl were declared but do not exist on functions.
13677         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
13678         HAVE_FLOORL_AND_CEILL, respectively.
13679         Needed for Sun C on Solaris 10.
13680
13681 2007-11-11  Bruno Haible  <bruno@clisp.org>
13682
13683         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
13684         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
13685         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
13686         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
13687         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
13688         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
13689         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
13690         HAVE_DECL_ROUNDF.
13691         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
13692         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
13693         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
13694         of HAVE_DECL_ROUND*.
13695         * modules/math (Makefile.am): Update.
13696
13697 2007-11-10  Bruno Haible  <bruno@clisp.org>
13698
13699         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
13700         ptrdiff_t as m4/intl.m4.
13701
13702 2007-11-10  Jim Meyering  <meyering@redhat.com>
13703
13704         Avoid link failure for the argmatch test.
13705         * tests/test-argmatch.c (usage): Define function to avoid a link
13706         failure: argmatch_die requires a usage function.
13707
13708 2007-11-09  Bruno Haible  <bruno@clisp.org>
13709
13710         * doc/functions/snprintf.texi: Mention BeOS deficiency.
13711         * doc/functions/vsnprintf.texi: Likewise.
13712         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
13713         with a size argument < 2.
13714
13715 2007-11-09  Bruno Haible  <bruno@clisp.org>
13716
13717         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
13718         buffer. Fixes an inefficiency introduced on 2007-11-03.
13719
13720 2007-11-09  Bruno Haible  <bruno@clisp.org>
13721
13722         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
13723         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
13724
13725 2007-11-08  Jim Meyering  <meyering@redhat.com>
13726
13727         Change cache variable name prefix "jm_" to "gl_" everywhere.
13728         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
13729         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
13730         * m4/uptime.m4: s/gl_/jm_/
13731
13732 2007-11-07  Bruno Haible  <bruno@clisp.org>
13733
13734         Update to GNU gettext 0.17.
13735         * m4/intl.m4: Update to GNU gettext 0.17.
13736         * m4/po.m4: Likewise.
13737         * modules/gettext (Files): Remove m4/ulonglong.m4.
13738         (configure.ac): Require gettext infrastructure from version 0.17.
13739
13740 2007-11-06  Bruno Haible  <bruno@clisp.org>
13741
13742         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
13743         symbolic values are not defined in a public header.
13744         * lib/freadable.c (freadable) [QNX]: Likewise.
13745         * lib/freadahead.c (freadahead) [QNX]: Likewise.
13746         * lib/freading.c (freading) [QNX]: Likewise.
13747         * lib/fseterr.c (fseterr) [QNX]: Likewise.
13748         * lib/fwritable.c (fwritable) [QNX]: Likewise.
13749         * lib/fwriting.c (fwriting) [QNX]: Likewise.
13750         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
13751         Reported by Alain Magloire.
13752
13753         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
13754
13755 2007-11-05  Bruno Haible  <bruno@clisp.org>
13756
13757         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
13758         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
13759         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
13760         Reported by Eric Blake.
13761
13762 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13763             Bruno Haible  <bruno@clisp.org>
13764
13765         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
13766         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
13767         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
13768         (malloc): Undefine also before including <stdlib.h>.
13769         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
13770         Needed on OSF/1 4.0.
13771
13772 2007-11-05  Jim Meyering  <meyering@redhat.com>
13773
13774         git-version-gen: sync from coreutils.
13775         * build-aux/git-version-gen: Add comments.
13776         Change the first '-' to '.' in the snapshot version string,
13777         e.g., 6.9-377-08144 -> 6.9.377-08144
13778         Remove first parameter.
13779         Don't declare a version "-dirty" merely because a time
13780         stamp has changed.
13781
13782 2007-11-04  Bruno Haible  <bruno@clisp.org>
13783
13784         * lib/lock.h: Protect all macro definitions containing an 'if'
13785         statement through a "do { ... } while (0)".
13786         * lib/tls.h: Likewise.
13787
13788 2007-11-04  Bruno Haible  <bruno@clisp.org>
13789
13790         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
13791
13792 2007-11-04  Bruno Haible  <bruno@clisp.org>
13793
13794         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
13795         * modules/fprintf-posix (Depends-on): Add nocrash.
13796         * modules/snprintf-posix (Depends-on): Likewise.
13797         * modules/sprintf-posix (Depends-on): Likewise.
13798         * modules/vasnprintf-posix (Depends-on): Likewise.
13799         * modules/vasprintf-posix (Depends-on): Likewise.
13800         * modules/vfprintf-posix (Depends-on): Likewise.
13801         * modules/vsnprintf-posix (Depends-on): Likewise.
13802         * modules/vsprintf-posix (Depends-on): Likewise.
13803         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
13804         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
13805         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
13806         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
13807         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
13808         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
13809         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
13810
13811 2007-11-04  Bruno Haible  <bruno@clisp.org>
13812
13813         * modules/nocrash: New file.
13814         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
13815         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
13816
13817 2007-11-04  Bruno Haible  <bruno@clisp.org>
13818
13819         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
13820         precision handling.
13821         * tests/test-vasprintf-posix.c (test_function): Likewise.
13822         * tests/test-snprintf-posix.h (test_function): Likewise.
13823         * tests/test-sprintf-posix.h (test_function): Likewise.
13824
13825         Fix *printf behaviour for large precisions on mingw and BeOS.
13826         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
13827         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
13828         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
13829         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
13830         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
13831         gl_PRINTF_PRECISION and test its result. Invoke
13832         gl_PREREQ_VASNPRINTF_PRECISION.
13833         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
13834         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
13835         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
13836         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
13837         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
13838         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
13839         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
13840         * doc/functions/fprintf.texi: Update.
13841         * doc/functions/printf.texi: Update.
13842         * doc/functions/snprintf.texi: Update.
13843         * doc/functions/sprintf.texi: Update.
13844         * doc/functions/vfprintf.texi: Update.
13845         * doc/functions/vprintf.texi: Update.
13846         * doc/functions/vsnprintf.texi: Update.
13847         * doc/functions/vsprintf.texi: Update.
13848
13849 2007-11-04  Bruno Haible  <bruno@clisp.org>
13850
13851         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
13852
13853 2007-11-04  Bruno Haible  <bruno@clisp.org>
13854
13855         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
13856         Reported by Sylvain Beucler <beuc@gnu.org>.
13857
13858 2007-11-03  Bruno Haible  <bruno@clisp.org>
13859
13860         * tests/test-fprintf-posix2.sh: New file.
13861         * tests/test-fprintf-posix2.c: New file.
13862         * modules/fprintf-posix-tests (Files): Add them.
13863         (TESTS): Add test-fprintf-posix2.sh.
13864         (configure.ac): Check for getrlimit and setrlimit.
13865         (check_PROGRAMS): Add test-fprintf-posix2.
13866
13867         * tests/test-printf-posix2.sh: New file.
13868         * tests/test-printf-posix2.c: New file.
13869         * modules/printf-posix-tests (Files): Add them.
13870         (TESTS): Add test-printf-posix2.sh.
13871         (configure.ac): Check for getrlimit and setrlimit.
13872         (check_PROGRAMS): Add test-printf-posix2.
13873
13874         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
13875         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
13876         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
13877         (decode_double): New function, copied from decode_long_double.
13878         (scale10_round_decimal_decoded): New function, extracted from
13879         scale10_round_decimal_long_double.
13880         (scale10_round_decimal_long_double): Use it.
13881         (scale10_round_decimal_double): New function.
13882         (floorlog10): New function.
13883         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
13884         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
13885         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
13886         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
13887         gl_PRINTF_ENOMEM and test its result. Invoke
13888         gl_PREREQ_VASNPRINTF_ENOMEM.
13889         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
13890         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
13891         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
13892         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
13893         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
13894         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
13895         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
13896         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
13897         * modules/snprintf-posix (Depends-on): Likewise.
13898         * modules/sprintf-posix (Depends-on): Likewise.
13899         * modules/vasnprintf-posix (Depends-on): Likewise.
13900         * modules/vasprintf-posix (Depends-on): Likewise.
13901         * modules/vfprintf-posix (Depends-on): Likewise.
13902         * modules/vsnprintf-posix (Depends-on): Likewise.
13903         * modules/vsprintf-posix (Depends-on): Likewise.
13904         * doc/functions/fprintf.texi: Update.
13905         * doc/functions/printf.texi: Update.
13906         * doc/functions/snprintf.texi: Update.
13907         * doc/functions/sprintf.texi: Update.
13908         * doc/functions/vfprintf.texi: Update.
13909         * doc/functions/vprintf.texi: Update.
13910         * doc/functions/vsnprintf.texi: Update.
13911         * doc/functions/vsprintf.texi: Update.
13912
13913 2007-11-03  Bruno Haible  <bruno@clisp.org>
13914
13915         * modules/frexp-nolibm-tests: New file.
13916
13917         * modules/frexp-nolibm: New file.
13918         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
13919
13920 2007-11-03  Bruno Haible  <bruno@clisp.org>
13921
13922         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
13923         value is C99 compliant.
13924         Needed for OSF/1 5.1.
13925
13926 2007-11-03  Bruno Haible  <bruno@clisp.org>
13927
13928         Fix out-of-memory handling of vasnprintf.
13929         * lib/printf-parse.c: Include <errno.h>.
13930         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
13931         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
13932         is already set.
13933
13934 2007-11-02  Eric Blake  <ebb9@byu.net>
13935
13936         Fix tests on cygwin.
13937         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
13938
13939 2007-11-01  Bruno Haible  <bruno@clisp.org>
13940
13941         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
13942         warning.
13943         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
13944         needed for POSIX compatibility.
13945
13946 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
13947
13948         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
13949         for compatibility with GNU.
13950
13951 2007-11-01  Bruno Haible  <bruno@clisp.org>
13952
13953         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
13954         (putenv): Renamed from rpl_putenv. Change argument type from
13955         'const char *' to 'char *'.
13956         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
13957         of defining putenv in config.h, just set REPLACE_PUTENV.
13958         * modules/putenv (Depends-on): Add stdlib.
13959         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
13960         (Include): Use <stdlib.h>.
13961         * lib/stdlib.in.h (putenv): New declaration.
13962         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
13963         REPLACE_PUTENV.
13964         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
13965         REPLACE_PUTENV.
13966         Needed for MacOS X 10.5.0.
13967         Reported by Peter O'Gorman <peter@pogma.com>.
13968
13969 2007-11-01  Jim Meyering  <meyering@redhat.com>
13970
13971         Treat an empty date string exactly like "0".
13972         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
13973         if the remaining date string (to be parsed) is empty, use "0".
13974         Reported by Mischa Molhoek and discussed in this thread:
13975         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
13976
13977 2007-10-31  Bruno Haible  <bruno@clisp.org>
13978
13979         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
13980         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
13981         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
13982         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
13983         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
13984         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
13985
13986 2007-10-31  Bruno Haible  <bruno@clisp.org>
13987
13988         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
13989         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
13990         (AC_TYPE_LONG_LONG_INT): Use it.
13991         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
13992         it as well.
13993         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
13994         to m4/longlong.m4.
13995         * modules/stdint (Files): Remove m4/ulonglong.m4.
13996         * modules/strtoull (Files): Use m4/longlong.m4 instead of
13997         m4/ulonglong.m4.
13998         * modules/strtoumax (Files): Likewise.
13999
14000 2007-10-30  Bruno Haible  <bruno@clisp.org>
14001
14002         * modules/xvasprintf-posix: New file.
14003         Suggested by Eric Blake.
14004
14005 2007-10-30  Bruno Haible  <bruno@clisp.org>
14006
14007         * modules/xprintf-posix-tests: New file.
14008         * tests/test-xprintf-posix.sh: New file.
14009         * tests/test-xprintf-posix.c: New file.
14010         * tests/test-xfprintf-posix.c: New file.
14011
14012         * modules/xprintf-posix: New file.
14013
14014 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14015
14016         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
14017         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
14018         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
14019
14020 2007-10-29  Bruno Haible  <bruno@clisp.org>
14021
14022         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
14023         contain the special marker '_cv_'.
14024         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
14025         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
14026         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
14027         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
14028         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
14029         Reported by Ralf Wildenhues.
14030
14031 2007-10-29  Bruno Haible  <bruno@clisp.org>
14032
14033         * gnulib-tool (func_import): When --lgpl is not specified, set
14034         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
14035         GPLv3.
14036         Reported by Simon Josefsson.
14037
14038 2007-10-28  Bruno Haible  <bruno@clisp.org>
14039
14040         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
14041         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
14042         HAVE_DECL_ISFINITE.
14043         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
14044         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
14045         HAVE_DECL_ISFINITE.
14046
14047 2007-10-28  Bruno Haible  <bruno@clisp.org>
14048
14049         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
14050         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
14051
14052 2007-10-28  Bruno Haible  <bruno@clisp.org>
14053
14054         Fix link errors with Sun C 5.0 on Solaris 10.
14055         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
14056         function is declared but not present in the compiler's libm.
14057         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
14058         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
14059         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
14060         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
14061         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
14062         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
14063         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
14064         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
14065         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
14066         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
14067         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
14068         HAVE_DECL_FLOORL.
14069
14070 2007-10-28  Bruno Haible  <bruno@clisp.org>
14071
14072         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
14073         gl_FUNC_FLOORL. Cache the result.
14074         (gl_FUNC_FLOORL): Use it.
14075         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
14076         gl_FUNC_CEILL. Cache the result.
14077         (gl_FUNC_CEILL): Use it.
14078
14079         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
14080         gl_FUNC_FLOOR. Cache the result.
14081         (gl_FUNC_FLOOR): Use it.
14082         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
14083         gl_FUNC_CEIL. Cache the result.
14084         (gl_FUNC_CEIL): Use it.
14085
14086         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
14087         gl_FUNC_FLOORF. Cache the result.
14088         (gl_FUNC_FLOORF): Use it.
14089         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
14090         gl_FUNC_CEILF. Cache the result.
14091         (gl_FUNC_CEILF): Use it.
14092
14093 2007-10-28  Bruno Haible  <bruno@clisp.org>
14094
14095         * gnulib-tool: Allow specifying the LGPL version number through
14096         --lgpl=2 or --lgpl=3.
14097         (func_usage): Document --lgpl with argument.
14098         Handle --lgpl=... arguments.
14099         (func_import): Recognize also gl_LGPL calls with an argument. When
14100         --lgpl=2 is used and the module's license is just LGPL, report an
14101         error. Set sed_transform_lib_file according to the lgpl variable. In
14102         the generated files, use --lgpl or gl_LGPL invocations with argument,
14103         if necessary.
14104         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
14105         an LGPv2+ license.
14106         * doc/gnulib-tool.texi (Modified imports): Update explanation of
14107         gl_LGPL macro.
14108
14109 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14110             Bruno Haible  <bruno@clisp.org>
14111
14112         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
14113         (u16_uctomb_aux): Likewise.
14114         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
14115         !HAVE_INLINE.
14116         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
14117
14118 2007-10-28  Bruno Haible  <bruno@clisp.org>
14119
14120         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
14121         Invoke AM_GETTEXT_OPTION if it exists.
14122         * modules/vasprintf: Likewise.
14123         * modules/verror: Likewise.
14124         * modules/xprintf: Likewise.
14125         * modules/xvasprintf: Likewise.
14126
14127 2007-10-27  Ben Pfaff  <blp@gnu.org>
14128
14129         * lib/math.in.h: Define isfinite macro and prototypes for
14130         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
14131         implementations.
14132         * m4/math_h.m4: New substitutions for isfinite module.
14133         * lib/isfinite.c: New file.
14134         * m4/isfinite.m4: New file.
14135         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
14136         * modules/isfinite: New file.
14137         * modules/isfinite-tests: New file.
14138         * tests/tests-isfinite.c: New file.
14139         * doc/functions/isfinite.texi: Mention isfinite module.
14140         * MODULES.html.sh: Mention new module.
14141
14142 2007-10-27  Ben Pfaff  <blp@gnu.org>
14143
14144         Ralf Wildenhues reported that Tru64 4.0D declares the round
14145         functions but does not have definitions.
14146         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
14147         cannot be found in any library, set the output variable to
14148         "missing" instead of "".
14149         * m4/round.m4: Also use our substitute if we cannot find round in
14150         any library, even if it is declared.
14151         * m4/roundf.m4: Likewise for roundf.
14152         * m4/roundl.m4: Likewise for roundl.
14153         * lib/math.in.h: Undefine roundf, round, roundl before defining
14154         their replacements, to allow for hypothetical systems where these
14155         may be defined as macros but not available in libraries.
14156
14157 2007-10-27  Bruno Haible  <bruno@clisp.org>
14158
14159         * doc/gnulib.texi: Invoke @firstparagraphindent.
14160         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
14161         changes in gnulib.
14162         (Source changes): New section.
14163
14164 2007-10-26  Bruno Haible  <bruno@clisp.org>
14165
14166         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
14167         borrowed from autoconf.
14168
14169 2007-10-26  Bruno Haible  <bruno@clisp.org>
14170
14171         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
14172         strerror returned the empty string. Needed on HP-UX 11.00.
14173
14174 2007-10-24  Micah Cowan  <micah@cowan.name>
14175
14176         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
14177         * build-aux/bootstrap: Remove support for now-unnecessary option,
14178         --cvs-user, and envvars CVS_USER, CVS_RSH.
14179
14180 2007-10-24  Jim Meyering  <meyering@redhat.com>
14181
14182         Avoid diagnostics from sha1sum when there is no cached checksum.
14183         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
14184         if the po.s1 file hasn't been created yet.
14185
14186         * build-aux/bootstrap: Sync from coreutils:
14187         2007-10-24  Jim Meyering  <meyering@redhat.com>
14188         Get gnulib from the git repository, not from an obsolete cvs one.
14189         * build-aux/bootstrap: Suggestion from Micah Cowan.
14190         2007-10-04  Jim Meyering  <jim@meyering.net>
14191         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
14192         (update_po_files): Work also when there are no .po files in po/.
14193
14194 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
14195
14196         * README: Append ".git" to git and cg examples.
14197         Problem reported by Benoit Sigoure.
14198
14199 2007-10-23  Micah Cowan  <micah@cowan.name>
14200
14201         * users.txt: Add wget.
14202
14203 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14204
14205         Fix linking of some unistdio tests on FreeBSD.
14206         * modules/unistdio/u16-vsnprintf-tests
14207         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
14208         * modules/unistdio/u16-vsprintf-tests
14209         (test_u16_vsnprintf1_LDADD): Likewise.
14210         * modules/unistdio/u32-vsnprintf-tests
14211         (test_u32_vsnprintf1_LDADD): Likewise.
14212         * modules/unistdio/u32-vsprintf-tests
14213         (test_u32_vsprintf1_LDADD): Likewise.
14214         * modules/unistdio/u8-vsnprintf-tests
14215         (test_u8_vsnprintf1_LDADD): Likewise.
14216         * modules/unistdio/u8-vsprintf-tests
14217         (test_u8_vsprintf1_LDADD): Likewise.
14218         * modules/unistdio/ulc-vsnprintf-tests
14219         (test_ulc_vsnprintf1_LDADD): Likewise.
14220         * modules/unistdio/ulc-vsprintf-tests
14221         (test_ulc_vsprintf1_LDADD): Likewise.
14222
14223         Fix linking of some uniconv tests on FreeBSD.
14224         * modules/uniconv/u16-conv-from-enc-tests
14225         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
14226         * modules/uniconv/u16-conv-to-enc-tests
14227         (test_u16_conv_to_enc_LDADD): Likewise.
14228         * modules/uniconv/u16-strconv-from-enc-tests
14229         (test_u16_strconv_from_enc_LDADD): Likewise.
14230         * modules/uniconv/u16-strconv-to-enc-tests
14231         (test_u16_strconv_to_enc_LDADD): Likewise.
14232         * modules/uniconv/u32-conv-from-enc-tests
14233         (test_u32_conv_from_enc_LDADD): Likewise.
14234         * modules/uniconv/u32-conv-to-enc-tests
14235         (test_u32_conv_to_enc_LDADD): Likewise.
14236         * modules/uniconv/u32-strconv-from-enc-tests
14237         (test_u32_strconv_from_enc_LDADD): Likewise.
14238         * modules/uniconv/u32-strconv-to-enc-tests
14239         (test_u32_strconv_to_enc_LDADD): Likewise.
14240         * modules/uniconv/u8-conv-from-enc-tests
14241         (test_u8_conv_from_enc_LDADD): Likewise.
14242         * modules/uniconv/u8-conv-to-enc-tests
14243         (test_u8_conv_to_enc_LDADD): Likewise.
14244         * modules/uniconv/u8-strconv-from-enc-tests
14245         (test_u8_strconv_from_enc_LDADD): Likewise.
14246         * modules/uniconv/u8-strconv-to-enc-tests
14247         (test_u8_strconv_to_enc_LDADD): Likewise.
14248
14249 2007-10-22  Bruno Haible  <bruno@clisp.org>
14250
14251         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
14252         size.
14253
14254 2007-10-22  Eric Blake  <ebb9@byu.net>
14255
14256         Tweak x*printf documentation.
14257         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
14258         variable name and comments.
14259         Suggested by Bruno Haible.
14260
14261 2007-10-22  Bruno Haible  <bruno@clisp.org>
14262
14263         * lib/acl.c (copy_acl): Fix file name in comment.
14264
14265 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
14266
14267         Fix Tru64 problem with stdbool.h.
14268         * lib/stdbool.in.h (false, true):
14269         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
14270         Don't declare as an enum in this situation; it runs afoul of Tru64.
14271         Problem reported by Steven M. Schweda in
14272         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
14273
14274 2007-10-22  Eric Blake  <ebb9@byu.net>
14275
14276         Also wrap vf?printf.
14277         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
14278         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
14279         (xvprintf, xvfprintf): New functions.
14280
14281 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14282
14283         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
14284         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
14285
14286         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
14287         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
14288
14289 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
14290
14291         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
14292         by Bruno Haible.
14293
14294 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14295
14296         * lib/getloadavg.c
14297         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
14298         Undef `sys' after including sys/table.h, for Tru64 4.0D.
14299
14300         * tests/test-i-ring.c: Work for C89.
14301
14302 2007-10-22  Bruno Haible  <bruno@clisp.org>
14303
14304         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
14305         -1u, in preprocessor expression, so that we don't test for the bug
14306         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
14307         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
14308
14309 2007-10-22  Eric Blake  <ebb9@byu.net>
14310
14311         * tests/test-yesno.sh: Silence stderr during test.
14312
14313 2007-10-22  Simon Josefsson  <simon@josefsson.org>
14314
14315         * modules/crypto/gc-camellia: New file.
14316
14317         * m4/gc-camellia.m4: New file.
14318
14319         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
14320
14321         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
14322
14323 2007-10-22  Simon Josefsson  <simon@josefsson.org>
14324
14325         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
14326         --help to stdout.  Reported by sms@antinode.org (Steven
14327         M. Schweda).
14328
14329 2007-10-22  Simon Josefsson  <simon@josefsson.org>
14330
14331         * users.txt: Fix link to libksba.
14332
14333 2007-10-21  Ben Pfaff  <blp@gnu.org>
14334
14335         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
14336         round.c roundf implementation that depends on floorf and ceilf to
14337         be tested unconditionally.
14338
14339 2007-10-21  Ben Pfaff  <blp@gnu.org>
14340
14341         * m4/check-libm-func.m4: Removed.
14342         * m4/check-math-lib.m4: New file.
14343         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
14344         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
14345         definition and lack of AC_LIBOBJ([roundf]).
14346         * m4/roundl.m4: Ditto, and similarly for roundl.
14347         * modules/round: Reference new m4 file.
14348         * modules/roundf: Ditto.
14349         * modules/roundl: Ditto.
14350         * tests/test-round2.c (main): Use ROUND instead of round.
14351         Bug report from Bruno Haible.
14352
14353 2007-10-21  Bruno Haible  <bruno@clisp.org>
14354
14355         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
14356         context.
14357
14358 2007-10-21  Bruno Haible  <bruno@clisp.org>
14359
14360         * tests/test-wcwidth.c (main): Allow negative result for some control
14361         characters.
14362
14363         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
14364         Needed on OSF/1 5.1.
14365
14366 2007-10-21  Bruno Haible  <bruno@clisp.org>
14367
14368         * tests/test-floorf1.c: Include isnanf.h.
14369         (main): Use isnanf() instead of isnan().
14370         * tests/test-ceilf1.c: Include isnanf.h.
14371         (main): Use isnanf() instead of isnan().
14372         * tests/test-truncf1.c: Include isnanf.h.
14373         (main): Use isnanf() instead of isnan().
14374         * tests/test-roundf1.c: Include isnanf.h.
14375         (main): Use isnanf() instead of isnan().
14376
14377 2007-10-21  Eric Blake  <ebb9@byu.net>
14378
14379         * users.txt: Update URL for m4.
14380
14381 2007-10-21  Bruno Haible  <bruno@clisp.org>
14382
14383         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
14384
14385 2007-10-21  Bruno Haible  <bruno@clisp.org>
14386
14387         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
14388         Git's management files if the CVS files are not present.
14389
14390 2007-10-20  Bruno Haible  <bruno@clisp.org>
14391
14392         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
14393         gcc-3.4.x.
14394
14395 2007-10-20  Ben Pfaff  <blp@gnu.org>
14396
14397         * lib/math.in.h: Declare round, roundf, roundl if we are providing
14398         implementations.
14399         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
14400         * lib/round.c: New file.
14401         * lib/roundf.c: New file.
14402         * lib/roundl.c: New file.
14403         * m4/round.m4: New file.
14404         * m4/roundf.m4: New file.
14405         * m4/roundl.m4: New file.
14406         * m4/check-libm-func-m4: New file.
14407         * modules/math: Replace round, roundf, roundl related @VARS@ in
14408         math.in.h.
14409         * modules/round: New file.
14410         * modules/round-tests: New file.
14411         * modules/roundf: New file.
14412         * modules/roundf-tests: New file.
14413         * modules/roundl: New file.
14414         * modules/roundl-tests: New file.
14415         * tests/test-round1.c: New file.
14416         * tests/test-round2.c: New file.
14417         * tests/test-roundf1.c: New file.
14418         * tests/test-roundf2.c: New file.
14419         * tests/test-roundl.c: New file.
14420         * doc/functions/round.texi: Mention round module.
14421         * doc/functions/roundf.texi: Mention roundf module.
14422         * doc/functions/roundl.texi: Mention roundl module.
14423         * MODULES.html.sh: Mention new modules.
14424         Thanks to Bruno Haible for suggestions.
14425
14426 2007-10-20  Jim Meyering  <meyering@redhat.com>
14427
14428         * lib/xprintf.c: Include <config.h> unconditionally.
14429
14430         Change xprintf's license to GPL.
14431         * modules/xprintf (License): s/LGPL/GPL/, since this module
14432         depends on modules (exit and exitfail) which are GPL.
14433         Suggestion from Bruno Haible.
14434
14435         xprintf fixes.
14436         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
14437         Use a clearer diagnostic.
14438         Patch from Bruno Haible.
14439
14440 2007-10-20  Bruno Haible  <bruno@clisp.org>
14441
14442         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
14443         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
14444         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14445
14446 2007-10-20  Bruno Haible  <bruno@clisp.org>
14447
14448         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
14449         precision in the comparison result > x - 1 or similar.
14450         * tests/test-ceilf2.c (correct_result_p): Likewise.
14451         * tests/test-truncf2.c (correct_result_p): Likewise.
14452         * tests/test-trunc2.c (correct_result_p): Likewise.
14453         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14454
14455 2007-10-20  Bruno Haible  <bruno@clisp.org>
14456
14457         * modules/ceil: New file.
14458         * m4/ceil.m4: New file.
14459         * doc/functions/ceil.texi: Mention the 'ceil' module.
14460
14461 2007-10-20  Bruno Haible  <bruno@clisp.org>
14462
14463         * modules/floor: New file.
14464         * m4/floor.m4: New file.
14465         * doc/functions/floor.texi: Mention the 'floor' module.
14466
14467 2007-10-20  Bruno Haible  <bruno@clisp.org>
14468
14469         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
14470         of %a.
14471         * modules/floorf-tests (Depends-on): Likewise.
14472         * modules/truncf-tests (Depends-on): Likewise.
14473         * modules/trunc-tests (Depends-on): Likewise.
14474         Reported by Ben Pfaff.
14475
14476 2007-10-19  Jim Meyering  <meyering@redhat.com>
14477
14478         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
14479         Don't bother testing specific errno values.  Just test ferror.
14480
14481         New module: xprintf
14482         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
14483
14484 2007-10-19  Bruno Haible  <bruno@clisp.org>
14485
14486         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
14487         syntax.
14488         * modules/javaexec (Makefile.am): Likewise.
14489         * modules/relocatable-prog (Makefile.am): Likewise.
14490         Suggested by Jim Meyering.
14491
14492 2007-10-18  Bruno Haible  <bruno@clisp.org>
14493
14494         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
14495         Reported by Jim Meyering.
14496
14497 2007-10-18  Eric Blake  <ebb9@byu.net>
14498
14499         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
14500
14501 2007-10-18  Bruno Haible  <bruno@clisp.org>
14502
14503         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
14504         the format string into writable memory. Needed in Fortify conditions.
14505
14506 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
14507             Bruno Haible  <bruno@clisp.org>
14508
14509         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
14510         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
14511         * modules/trim (Depends-on): Add mbchar.
14512         (configure.ac): Add gl_FUNC_MBRTOWC.
14513         (Makefile.am): Augment lib_SOURCES.
14514
14515 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
14516
14517         Modify glob.c to use fstatat and dirfd, to simplify it.
14518         Suggested by Eric Blake.
14519         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
14520         Don't include <stdbool.h>; not used.
14521         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
14522         (link_exists_p): Simplify implementation, since we can now assume
14523         dirfd and fstatat.
14524         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
14525
14526 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14527
14528         * gnulib-tool (func_get_dependencies): Fix sed script to
14529         match only tests.
14530
14531 2007-10-17  Bruno Haible  <bruno@clisp.org>
14532
14533         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
14534         allow locale names without encoding suffix.
14535         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
14536         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
14537
14538 2007-10-16  Bruno Haible  <bruno@clisp.org>
14539
14540         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
14541         * lib/getgroups.c (getgroups): Likewise.
14542         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
14543
14544 2007-10-16  Bruno Haible  <bruno@clisp.org>
14545
14546         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
14547         * modules/malloc-posix (License): Likewise.
14548         * modules/realloc-posix (License): Likewise.
14549         * modules/calloc-posix (License): Likewise.
14550         * modules/intprops (License): Change from GPL to LGPL, with
14551         Paul Eggert's approval.
14552
14553 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
14554
14555         Merge glibc changes into lib/glob.c.
14556
14557         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
14558         2007-10-15 04:59:03 UTC.  Here are the changes:
14559
14560         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
14561
14562         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
14563
14564         * lib/glob.c: Add some branch prediction throughout.
14565
14566         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
14567
14568         [BZ #5103]
14569         * lib/glob.c (glob): Recognize patterns starting \/.
14570
14571         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
14572
14573         [BZ #3996]
14574         * lib/glob.c (attribute_hidden): Define if not defined.
14575         (glob): Unescape dirname, filename or username when needed and not
14576         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
14577         is NULL.  Handle unescaped [ in pattern without closing ].
14578         Don't pass GLOB_CHECK down to recursive glob for directories.
14579         (__glob_pattern_type): New function.
14580         (__glob_pattern_p): Implement using __glob_pattern_type.
14581         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
14582         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
14583         Remove unreachable code.
14584
14585         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
14586
14587         * lib/glob.c (glob_in_dir): Add some comments and asserts to
14588         explain why there are no leaks.
14589
14590         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
14591
14592         [BZ #3253]
14593         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
14594         time, rather allocate increasingly bigger arrays of pointers, if
14595         possible with alloca, if too large with malloc.
14596
14597 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
14598
14599         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
14600         Problem reported by H.Merijn Brand in
14601         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
14602         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
14603         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
14604
14605 2007-10-15  Bruno Haible  <bruno@clisp.org>
14606
14607         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
14608         with explicit rpl_ prefix.
14609         * lib/fopen.c (fopen): Likewise.
14610         * lib/freopen.c (freopen): Likewise.
14611         * lib/iconv.c (iconv): Likewise.
14612         * lib/iconv_close.c (iconv_close): Likewise.
14613
14614 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14615
14616         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
14617
14618 2007-10-15  Bruno Haible  <bruno@clisp.org>
14619
14620         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
14621         <stddef.h> instead of <stdlib.h> since we only need NULL.
14622         Reported by Ben Pfaff <blp@cs.stanford.edu>.
14623
14624 2007-10-15  Bruno Haible  <bruno@clisp.org>
14625
14626         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
14627         Replace paragraph talking about LIBOBJS.
14628         Reported by Colin Watson <cjwatson@debian.org>.
14629
14630 2007-10-15  Bruno Haible  <bruno@clisp.org>
14631
14632         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
14633         <stdlib.h> before using NULL.
14634
14635 2007-10-15  Simon Josefsson  <simon@josefsson.org>
14636
14637         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
14638         Reported by Albert Chin <china@thewrittenword.com>.
14639
14640 2007-10-14  Bruno Haible  <bruno@clisp.org>
14641
14642         * modules/iconv_open-utf-tests: New file.
14643         * tests/test-iconv-utf.c: New file.
14644
14645         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
14646         * modules/iconv_open-utf: New file.
14647         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
14648         (iconv, iconv_close): New declarations.
14649         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
14650         be defined.
14651         (iconv_open): Add special handling of conversion between UTF-8 and
14652         UTF-{16,32}{BE,LE}.
14653         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
14654         * lib/iconv_close.c: New file.
14655         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
14656         gl_FUNC_ICONV_OPEN.
14657         (gl_FUNC_ICONV_OPEN): Use it.
14658         (gl_FUNC_ICONV_OPEN_UTF): New macro.
14659         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
14660         and REPLACE_ICONV_UTF.
14661         * modules/iconv_open (Depends-on): Add c-strcase.
14662         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
14663         ICONV_CONST.
14664         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
14665
14666 2007-10-13  Albert Chin  <china@thewrittenword.com>
14667             Bruno Haible  <bruno@clisp.org>
14668
14669         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
14670         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
14671
14672 2007-10-13  Bruno Haible  <bruno@clisp.org>
14673
14674         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
14675         defined, use the ISO C99 inline semantics.
14676         * lib/argp.h (ARGP_EI): Likewise.
14677
14678 2007-10-13  Bruno Haible  <bruno@clisp.org>
14679
14680         Handle 'inline' change in gcc 4.3.0.
14681         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
14682         argp_fmtstream_write, argp_fmtstream_set_lmargin,
14683         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
14684         argp_fmtstream_point): Disable 'extern' declaration if the function
14685         definition is going to be provided inline.
14686         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
14687         semantics, not the ISO C99 inline semantics.
14688         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
14689         'extern' declaration if the function definition is going to be provided
14690         inline.
14691         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
14692         the GNU C inline semantics, not the ISO C99 inline semantics. With
14693         GCC 4.2, avoid a warning.
14694
14695 2007-10-13  Bruno Haible  <bruno@clisp.org>
14696
14697         * lib/freading.h (freading): Enable the use of __freading for
14698         glibc >= 2.7.
14699         * lib/freading.c (freading): Likewise.
14700
14701 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
14702
14703         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
14704         "warning: C99 inline functions are not supported; using GNU89".
14705
14706 2007-10-12  Bruno Haible  <bruno@clisp.org>
14707
14708         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
14709         of 2.
14710         * tests/test-ceilf2.c: New file.
14711         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
14712
14713         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
14714         * modules/ceilf-tests: Update.
14715
14716 2007-10-12  Bruno Haible  <bruno@clisp.org>
14717
14718         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
14719         of 2.
14720         * tests/test-floorf2.c: New file.
14721         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
14722
14723         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
14724         * modules/floorf-tests: Update.
14725
14726 2007-10-12  Bruno Haible  <bruno@clisp.org>
14727
14728         * tests/test-trunc2.c: New file.
14729         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
14730
14731         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
14732         * modules/trunc-tests: Update.
14733
14734 2007-10-12  Bruno Haible  <bruno@clisp.org>
14735
14736         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
14737         of 2.
14738         * tests/test-truncf2.c: New file.
14739         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
14740
14741         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
14742         * modules/truncf-tests: Update.
14743
14744 2007-10-11  Eric Blake  <ebb9@byu.net>
14745
14746         Don't claim strerror is broken on Interix.
14747         * doc/functions/strerror.texi (strerror): Known broken systems are
14748         now Solaris 8, and not Interix.
14749         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
14750         Interix on cross-compile.
14751         Reported by Martin Koeppe in
14752         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
14753
14754 2007-10-11  Bruno Haible  <bruno@clisp.org>
14755
14756         * modules/i-ring-tests: New file.
14757         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
14758         instead of assert.
14759
14760 2007-10-11  Bruno Haible  <bruno@clisp.org>
14761
14762         * modules/filenamecat-tests: New file.
14763         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
14764         * lib/filenamecat.c: Remove test code.
14765
14766 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
14767
14768         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
14769
14770         * lib/strerror.c: Include <string.h> always, to test interface,
14771         and to remove the need for the dummy.
14772         Include intprops.h to compute width instead of doing it ourselves
14773         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
14774         (strerror): Define it to return NULL if there's no system strerror.
14775         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
14776         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
14777         ancient pre-strerror Unix systems well any more.  Saying "unknown
14778         system error" is enough.
14779         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
14780         simpler strerror.c implementation.
14781         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
14782         Simplify the tests to reflect the simpler strerror implementation.
14783         * modules/strerror (Depends-on): Add intprops.
14784
14785 2007-10-09  Eric Blake  <ebb9@byu.net>
14786
14787         Silence test-fpending.
14788         * modules/fpending-tests (Files): Add wrapper script.
14789         * tests/test-fpending.sh: New file.
14790
14791 2007-10-09  Bruno Haible  <bruno@clisp.org>
14792
14793         * MODULES.html.sh (func_module): Don't create a hyperlink for
14794         function names like 'printf_frexp'.
14795         (Misc): Add crc, memxor.
14796         (Characteristics of floating types): New section.
14797         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
14798         isnanf-nolibm, signbit, trunc, truncf, truncl.
14799         (Enhancements for ISO C 99 functions): New subsection Input/output.
14800         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
14801         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
14802         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
14803         (Compatibility checks for POSIX:2001 functions): Add clock-time.
14804         (Enhancements for POSIX:2001 functions): Add chdir-long.
14805         (File system functions): Add areadlink, chdir-safer, read-file.
14806         Remove cycle-check.
14807         (File system as inode set): New section.
14808         (Date and time): Add gethrxtime.
14809         (Multithreading): Add openmp.
14810         (Internationalization functions): Add localename.
14811         (Unicode string functions): Add unistr/u*-mbsnlen.
14812         (Support for maintaining and releasing projects): Add git-version-gen.
14813         (Lone files): Remove directories.
14814
14815 2007-10-08  Ben Pfaff  <blp@gnu.org>
14816
14817         * lib/xmalloca.h: Fix typo in comment.
14818
14819 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
14820
14821         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
14822         when avoiding problems with integer overflow.  Use a portable test
14823         instead.
14824
14825 2007-10-08  Simon Josefsson  <simon@josefsson.org>
14826
14827         * modules/dummy (License): Change to LGPLv2+.
14828         * modules/float (License): Likewise
14829         * modules/realloc (License): Likewise
14830         * modules/stdlib (License): Likewise
14831
14832 2007-10-07  Bruno Haible  <bruno@clisp.org>
14833
14834         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
14835         * floor.c (TWO_MANT_DIG): Likewise.
14836         * ceil.c (TWO_MANT_DIG): Likewise.
14837         Reported by Ben Pfaff.
14838
14839 2007-10-07  Bruno Haible  <bruno@clisp.org>
14840
14841         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
14842         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
14843         * lib/frexp.c (FUNC): Likewise.
14844         * lib/printf-frexp.h (printf_frexp): Likewise.
14845         * lib/printf-frexpl.h (printf_frexpl): Likewise.
14846         * lib/printf-frexp.c (FUNC): Likewise.
14847         Suggested by Jim Meyering.
14848
14849 2007-10-07  Jim Meyering  <meyering@redhat.com>
14850
14851         Make xnanosleep's integer overflow test more robust.
14852         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
14853         so that gcc-4.3.0 doesn't optimize away this test for overflow.
14854
14855 2007-10-07  Bruno Haible  <bruno@clisp.org>
14856
14857         * NEWS: Mention the license change.
14858
14859         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
14860         abbreviations in the modules files.
14861
14862         Change copyright notice from GPLv2+ to GPLv3+.
14863         * README: Change copyright notice.
14864         * MODULES.html.sh: Likewise.
14865         * build-aux/bootstrap.conf: Likewise.
14866         * build-aux/config.libpath: Likewise.
14867         * build-aux/csharpcomp.sh.in: Likewise.
14868         * build-aux/csharpexec.sh.in: Likewise.
14869         * build-aux/install-reloc: Likewise.
14870         * build-aux/javacomp.sh.in: Likewise.
14871         * build-aux/javaexec.sh.in: Likewise.
14872         * build-aux/ldd.sh.in: Likewise.
14873         * build-aux/reloc-ldflags: Likewise.
14874         * build-aux/relocatable.sh.in: Likewise.
14875         * build-aux/x-to-1.in: Likewise.
14876         * check-module: Likewise.
14877         * config/srclistvars.sh: Likewise.
14878         * gnulib-tool: Likewise.
14879         * lib/acl-internal.h: Likewise.
14880         * lib/acl.c: Likewise.
14881         * lib/acl.h: Likewise.
14882         * lib/acl_entries.c: Likewise.
14883         * lib/areadlink-with-size.c: Likewise.
14884         * lib/areadlink.c: Likewise.
14885         * lib/areadlink.h: Likewise.
14886         * lib/argmatch.c: Likewise.
14887         * lib/argmatch.h: Likewise.
14888         * lib/argp-ba.c: Likewise.
14889         * lib/argp-eexst.c: Likewise.
14890         * lib/argp-fmtstream.c: Likewise.
14891         * lib/argp-fmtstream.h: Likewise.
14892         * lib/argp-fs-xinl.c: Likewise.
14893         * lib/argp-help.c: Likewise.
14894         * lib/argp-namefrob.h: Likewise.
14895         * lib/argp-parse.c: Likewise.
14896         * lib/argp-pin.c: Likewise.
14897         * lib/argp-pv.c: Likewise.
14898         * lib/argp-pvh.c: Likewise.
14899         * lib/argp-xinl.c: Likewise.
14900         * lib/argp.h: Likewise.
14901         * lib/at-func.c: Likewise.
14902         * lib/atanl.c: Likewise.
14903         * lib/backupfile.c: Likewise.
14904         * lib/backupfile.h: Likewise.
14905         * lib/basename.c: Likewise.
14906         * lib/binary-io.h: Likewise.
14907         * lib/byteswap.in.h: Likewise.
14908         * lib/c-stack.c: Likewise.
14909         * lib/c-stack.h: Likewise.
14910         * lib/c-strcasestr.c: Likewise.
14911         * lib/c-strcasestr.h: Likewise.
14912         * lib/c-strstr.c: Likewise.
14913         * lib/c-strstr.h: Likewise.
14914         * lib/c-strtod.c: Likewise.
14915         * lib/calloc.c: Likewise.
14916         * lib/canon-host.c: Likewise.
14917         * lib/canon-host.h: Likewise.
14918         * lib/canonicalize-lgpl.c: Likewise.
14919         * lib/canonicalize.c: Likewise.
14920         * lib/canonicalize.h: Likewise.
14921         * lib/ceil.c: Likewise.
14922         * lib/ceilf.c: Likewise.
14923         * lib/ceill.c: Likewise.
14924         * lib/chdir-long.c: Likewise.
14925         * lib/chdir-long.h: Likewise.
14926         * lib/chdir-safer.c: Likewise.
14927         * lib/chdir-safer.h: Likewise.
14928         * lib/chown.c: Likewise.
14929         * lib/classpath.c: Likewise.
14930         * lib/classpath.h: Likewise.
14931         * lib/clean-temp.c: Likewise.
14932         * lib/clean-temp.h: Likewise.
14933         * lib/cloexec.c: Likewise.
14934         * lib/close-stream.c: Likewise.
14935         * lib/closein.c: Likewise.
14936         * lib/closein.h: Likewise.
14937         * lib/closeout.c: Likewise.
14938         * lib/closeout.h: Likewise.
14939         * lib/concat-filename.c: Likewise.
14940         * lib/copy-file.c: Likewise.
14941         * lib/copy-file.h: Likewise.
14942         * lib/count-one-bits.h: Likewise.
14943         * lib/crc.c: Likewise.
14944         * lib/crc.h: Likewise.
14945         * lib/creat-safer.c: Likewise.
14946         * lib/csharpcomp.c: Likewise.
14947         * lib/csharpcomp.h: Likewise.
14948         * lib/csharpexec.c: Likewise.
14949         * lib/csharpexec.h: Likewise.
14950         * lib/cycle-check.c: Likewise.
14951         * lib/cycle-check.h: Likewise.
14952         * lib/diacrit.c: Likewise.
14953         * lib/diacrit.h: Likewise.
14954         * lib/diffseq.h: Likewise.
14955         * lib/dirchownmod.c: Likewise.
14956         * lib/dirent.in.h: Likewise.
14957         * lib/dirfd.c: Likewise.
14958         * lib/dirfd.h: Likewise.
14959         * lib/dirname.c: Likewise.
14960         * lib/dirname.h: Likewise.
14961         * lib/dummy.c: Likewise.
14962         * lib/dup-safer.c: Likewise.
14963         * lib/dup2.c: Likewise.
14964         * lib/eealloc.h: Likewise.
14965         * lib/error.c: Likewise.
14966         * lib/error.h: Likewise.
14967         * lib/euidaccess.c: Likewise.
14968         * lib/exclude.c: Likewise.
14969         * lib/exclude.h: Likewise.
14970         * lib/execute.c: Likewise.
14971         * lib/execute.h: Likewise.
14972         * lib/exitfail.c: Likewise.
14973         * lib/exitfail.h: Likewise.
14974         * lib/expl.c: Likewise.
14975         * lib/fatal-signal.c: Likewise.
14976         * lib/fatal-signal.h: Likewise.
14977         * lib/fbufmode.c: Likewise.
14978         * lib/fbufmode.h: Likewise.
14979         * lib/fchdir.c: Likewise.
14980         * lib/fchmodat.c: Likewise.
14981         * lib/fchownat.c: Likewise.
14982         * lib/fcntl--.h: Likewise.
14983         * lib/fcntl-safer.h: Likewise.
14984         * lib/fcntl.in.h: Likewise.
14985         * lib/fd-safer.c: Likewise.
14986         * lib/fflush.c: Likewise.
14987         * lib/file-has-acl.c: Likewise.
14988         * lib/file-set.c: Likewise.
14989         * lib/file-type.c: Likewise.
14990         * lib/file-type.h: Likewise.
14991         * lib/fileblocks.c: Likewise.
14992         * lib/filemode.c: Likewise.
14993         * lib/filemode.h: Likewise.
14994         * lib/filename.h: Likewise.
14995         * lib/filenamecat.c: Likewise.
14996         * lib/filenamecat.h: Likewise.
14997         * lib/findprog.c: Likewise.
14998         * lib/findprog.h: Likewise.
14999         * lib/float.in.h: Likewise.
15000         * lib/floor.c: Likewise.
15001         * lib/floorf.c: Likewise.
15002         * lib/floorl.c: Likewise.
15003         * lib/fopen-safer.c: Likewise.
15004         * lib/fopen.c: Likewise.
15005         * lib/fpending.c: Likewise.
15006         * lib/fpending.h: Likewise.
15007         * lib/fprintf.c: Likewise.
15008         * lib/fprintftime.h: Likewise.
15009         * lib/fpucw.h: Likewise.
15010         * lib/fpurge.c: Likewise.
15011         * lib/fpurge.h: Likewise.
15012         * lib/freadable.c: Likewise.
15013         * lib/freadable.h: Likewise.
15014         * lib/freadahead.c: Likewise.
15015         * lib/freadahead.h: Likewise.
15016         * lib/freading.c: Likewise.
15017         * lib/freading.h: Likewise.
15018         * lib/free.c: Likewise.
15019         * lib/freopen.c: Likewise.
15020         * lib/frexp.c: Likewise.
15021         * lib/frexpl.c: Likewise.
15022         * lib/fseek.c: Likewise.
15023         * lib/fseterr.c: Likewise.
15024         * lib/fseterr.h: Likewise.
15025         * lib/fstatat.c: Likewise.
15026         * lib/fstrcmp.c: Likewise.
15027         * lib/fstrcmp.h: Likewise.
15028         * lib/fsusage.c: Likewise.
15029         * lib/fsusage.h: Likewise.
15030         * lib/ftell.c: Likewise.
15031         * lib/ftello.c: Likewise.
15032         * lib/fts-cycle.c: Likewise.
15033         * lib/fts.c: Likewise.
15034         * lib/fts_.h: Likewise.
15035         * lib/full-read.c: Likewise.
15036         * lib/full-read.h: Likewise.
15037         * lib/full-write.c: Likewise.
15038         * lib/full-write.h: Likewise.
15039         * lib/fwritable.c: Likewise.
15040         * lib/fwritable.h: Likewise.
15041         * lib/fwriteerror.c: Likewise.
15042         * lib/fwriteerror.h: Likewise.
15043         * lib/fwriting.c: Likewise.
15044         * lib/fwriting.h: Likewise.
15045         * lib/gcd.c: Likewise.
15046         * lib/gcd.h: Likewise.
15047         * lib/getcwd.c: Likewise.
15048         * lib/getdate.h: Likewise.
15049         * lib/getdate.y: Likewise.
15050         * lib/getdomainname.c: Likewise.
15051         * lib/getdomainname.h: Likewise.
15052         * lib/getgroups.c: Likewise.
15053         * lib/gethostname.c: Likewise.
15054         * lib/gethrxtime.c: Likewise.
15055         * lib/gethrxtime.h: Likewise.
15056         * lib/getloadavg.c: Likewise.
15057         * lib/getndelim2.c: Likewise.
15058         * lib/getndelim2.h: Likewise.
15059         * lib/getnline.c: Likewise.
15060         * lib/getnline.h: Likewise.
15061         * lib/getopt.c: Likewise.
15062         * lib/getopt.in.h: Likewise.
15063         * lib/getopt1.c: Likewise.
15064         * lib/getopt_int.h: Likewise.
15065         * lib/getpagesize.h: Likewise.
15066         * lib/getsubopt.c: Likewise.
15067         * lib/gettime.c: Likewise.
15068         * lib/getugroups.c: Likewise.
15069         * lib/getugroups.h: Likewise.
15070         * lib/getusershell.c: Likewise.
15071         * lib/gl_anyavltree_list1.h: Likewise.
15072         * lib/gl_anyavltree_list2.h: Likewise.
15073         * lib/gl_anyhash_list1.h: Likewise.
15074         * lib/gl_anyhash_list2.h: Likewise.
15075         * lib/gl_anylinked_list1.h: Likewise.
15076         * lib/gl_anylinked_list2.h: Likewise.
15077         * lib/gl_anyrbtree_list1.h: Likewise.
15078         * lib/gl_anyrbtree_list2.h: Likewise.
15079         * lib/gl_anytree_list1.h: Likewise.
15080         * lib/gl_anytree_list2.h: Likewise.
15081         * lib/gl_anytree_oset.h: Likewise.
15082         * lib/gl_anytreehash_list1.h: Likewise.
15083         * lib/gl_anytreehash_list2.h: Likewise.
15084         * lib/gl_array_list.c: Likewise.
15085         * lib/gl_array_list.h: Likewise.
15086         * lib/gl_array_oset.c: Likewise.
15087         * lib/gl_array_oset.h: Likewise.
15088         * lib/gl_avltree_list.c: Likewise.
15089         * lib/gl_avltree_list.h: Likewise.
15090         * lib/gl_avltree_oset.c: Likewise.
15091         * lib/gl_avltree_oset.h: Likewise.
15092         * lib/gl_avltreehash_list.c: Likewise.
15093         * lib/gl_avltreehash_list.h: Likewise.
15094         * lib/gl_carray_list.c: Likewise.
15095         * lib/gl_carray_list.h: Likewise.
15096         * lib/gl_linked_list.c: Likewise.
15097         * lib/gl_linked_list.h: Likewise.
15098         * lib/gl_linkedhash_list.c: Likewise.
15099         * lib/gl_linkedhash_list.h: Likewise.
15100         * lib/gl_list.c: Likewise.
15101         * lib/gl_list.h: Likewise.
15102         * lib/gl_oset.c: Likewise.
15103         * lib/gl_oset.h: Likewise.
15104         * lib/gl_rbtree_list.c: Likewise.
15105         * lib/gl_rbtree_list.h: Likewise.
15106         * lib/gl_rbtree_oset.c: Likewise.
15107         * lib/gl_rbtree_oset.h: Likewise.
15108         * lib/gl_rbtreehash_list.c: Likewise.
15109         * lib/gl_rbtreehash_list.h: Likewise.
15110         * lib/gl_sublist.c: Likewise.
15111         * lib/gl_sublist.h: Likewise.
15112         * lib/group-member.c: Likewise.
15113         * lib/group-member.h: Likewise.
15114         * lib/hard-locale.c: Likewise.
15115         * lib/hard-locale.h: Likewise.
15116         * lib/hash-pjw.c: Likewise.
15117         * lib/hash-pjw.h: Likewise.
15118         * lib/hash-triple.c: Likewise.
15119         * lib/hash.c: Likewise.
15120         * lib/hash.h: Likewise.
15121         * lib/human.c: Likewise.
15122         * lib/human.h: Likewise.
15123         * lib/i-ring.c: Likewise.
15124         * lib/i-ring.h: Likewise.
15125         * lib/idcache.c: Likewise.
15126         * lib/imaxabs.c: Likewise.
15127         * lib/imaxdiv.c: Likewise.
15128         * lib/inet_pton.c: Likewise.
15129         * lib/inet_pton.h: Likewise.
15130         * lib/intprops.h: Likewise.
15131         * lib/inttostr.c: Likewise.
15132         * lib/inttostr.h: Likewise.
15133         * lib/inttypes.in.h: Likewise.
15134         * lib/isapipe.c: Likewise.
15135         * lib/isdir.c: Likewise.
15136         * lib/isnan.c: Likewise.
15137         * lib/isnan.h: Likewise.
15138         * lib/isnanf.c: Likewise.
15139         * lib/isnanf.h: Likewise.
15140         * lib/isnanl-nolibm.h: Likewise.
15141         * lib/isnanl.c: Likewise.
15142         * lib/isnanl.h: Likewise.
15143         * lib/javacomp.c: Likewise.
15144         * lib/javacomp.h: Likewise.
15145         * lib/javaexec.c: Likewise.
15146         * lib/javaexec.h: Likewise.
15147         * lib/javaversion.c: Likewise.
15148         * lib/javaversion.h: Likewise.
15149         * lib/javaversion.java: Likewise.
15150         * lib/lbrkprop.h: Likewise.
15151         * lib/lchmod.h: Likewise.
15152         * lib/lchown.c: Likewise.
15153         * lib/ldexpl.c: Likewise.
15154         * lib/linebreak.c: Likewise.
15155         * lib/linebreak.h: Likewise.
15156         * lib/linebuffer.c: Likewise.
15157         * lib/linebuffer.h: Likewise.
15158         * lib/locale.in.h: Likewise.
15159         * lib/logl.c: Likewise.
15160         * lib/long-options.c: Likewise.
15161         * lib/long-options.h: Likewise.
15162         * lib/lstat.c: Likewise.
15163         * lib/lstat.h: Likewise.
15164         * lib/math.in.h: Likewise.
15165         * lib/mbchar.c: Likewise.
15166         * lib/mbchar.h: Likewise.
15167         * lib/mbfile.h: Likewise.
15168         * lib/mbiter.h: Likewise.
15169         * lib/mbscasecmp.c: Likewise.
15170         * lib/mbscasestr.c: Likewise.
15171         * lib/mbschr.c: Likewise.
15172         * lib/mbscspn.c: Likewise.
15173         * lib/mbslen.c: Likewise.
15174         * lib/mbsncasecmp.c: Likewise.
15175         * lib/mbsnlen.c: Likewise.
15176         * lib/mbspbrk.c: Likewise.
15177         * lib/mbspcasecmp.c: Likewise.
15178         * lib/mbsrchr.c: Likewise.
15179         * lib/mbssep.c: Likewise.
15180         * lib/mbsspn.c: Likewise.
15181         * lib/mbsstr.c: Likewise.
15182         * lib/mbstok_r.c: Likewise.
15183         * lib/mbswidth.c: Likewise.
15184         * lib/mbswidth.h: Likewise.
15185         * lib/mbuiter.h: Likewise.
15186         * lib/memcasecmp.c: Likewise.
15187         * lib/memcasecmp.h: Likewise.
15188         * lib/memchr.c: Likewise.
15189         * lib/memcmp.c: Likewise.
15190         * lib/memcoll.c: Likewise.
15191         * lib/memcoll.h: Likewise.
15192         * lib/memcpy.c: Likewise.
15193         * lib/memrchr.c: Likewise.
15194         * lib/mkancesdirs.c: Likewise.
15195         * lib/mkdir-p.c: Likewise.
15196         * lib/mkdir-p.h: Likewise.
15197         * lib/mkdir.c: Likewise.
15198         * lib/mkdirat.c: Likewise.
15199         * lib/mkdtemp.c: Likewise.
15200         * lib/mkstemp-safer.c: Likewise.
15201         * lib/mkstemp.c: Likewise.
15202         * lib/modechange.c: Likewise.
15203         * lib/modechange.h: Likewise.
15204         * lib/mountlist.c: Likewise.
15205         * lib/mountlist.h: Likewise.
15206         * lib/mpsort.c: Likewise.
15207         * lib/nanosleep.c: Likewise.
15208         * lib/obstack.c: Likewise.
15209         * lib/obstack.h: Likewise.
15210         * lib/open-safer.c: Likewise.
15211         * lib/open.c: Likewise.
15212         * lib/openat-die.c: Likewise.
15213         * lib/openat-priv.h: Likewise.
15214         * lib/openat-proc.c: Likewise.
15215         * lib/openat.c: Likewise.
15216         * lib/openat.h: Likewise.
15217         * lib/pagealign_alloc.c: Likewise.
15218         * lib/pagealign_alloc.h: Likewise.
15219         * lib/physmem.c: Likewise.
15220         * lib/physmem.h: Likewise.
15221         * lib/pipe-safer.c: Likewise.
15222         * lib/pipe.c: Likewise.
15223         * lib/pipe.h: Likewise.
15224         * lib/posixtm.c: Likewise.
15225         * lib/posixtm.h: Likewise.
15226         * lib/posixver.c: Likewise.
15227         * lib/printf-frexp.c: Likewise.
15228         * lib/printf-frexp.h: Likewise.
15229         * lib/printf-frexpl.c: Likewise.
15230         * lib/printf-frexpl.h: Likewise.
15231         * lib/printf.c: Likewise.
15232         * lib/progname.c: Likewise.
15233         * lib/progname.h: Likewise.
15234         * lib/progreloc.c: Likewise.
15235         * lib/putenv.c: Likewise.
15236         * lib/quote.c: Likewise.
15237         * lib/quote.h: Likewise.
15238         * lib/quotearg.c: Likewise.
15239         * lib/quotearg.h: Likewise.
15240         * lib/raise.c: Likewise.
15241         * lib/readline.c: Likewise.
15242         * lib/readline.h: Likewise.
15243         * lib/readlink.c: Likewise.
15244         * lib/readtokens.c: Likewise.
15245         * lib/readtokens.h: Likewise.
15246         * lib/readtokens0.c: Likewise.
15247         * lib/readtokens0.h: Likewise.
15248         * lib/readutmp.c: Likewise.
15249         * lib/readutmp.h: Likewise.
15250         * lib/realloc.c: Likewise.
15251         * lib/relocwrapper.c: Likewise.
15252         * lib/rename-dest-slash.c: Likewise.
15253         * lib/rename.c: Likewise.
15254         * lib/rmdir.c: Likewise.
15255         * lib/rpmatch.c: Likewise.
15256         * lib/safe-read.c: Likewise.
15257         * lib/safe-read.h: Likewise.
15258         * lib/safe-write.c: Likewise.
15259         * lib/safe-write.h: Likewise.
15260         * lib/same-inode.h: Likewise.
15261         * lib/same.c: Likewise.
15262         * lib/same.h: Likewise.
15263         * lib/save-cwd.c: Likewise.
15264         * lib/save-cwd.h: Likewise.
15265         * lib/savedir.c: Likewise.
15266         * lib/savedir.h: Likewise.
15267         * lib/savewd.c: Likewise.
15268         * lib/savewd.h: Likewise.
15269         * lib/search.in.h: Likewise.
15270         * lib/setenv.c: Likewise.
15271         * lib/setenv.h: Likewise.
15272         * lib/settime.c: Likewise.
15273         * lib/sh-quote.c: Likewise.
15274         * lib/sh-quote.h: Likewise.
15275         * lib/sig2str.c: Likewise.
15276         * lib/sig2str.h: Likewise.
15277         * lib/signal.in.h: Likewise.
15278         * lib/signbitd.c: Likewise.
15279         * lib/signbitf.c: Likewise.
15280         * lib/signbitl.c: Likewise.
15281         * lib/sigprocmask.c: Likewise.
15282         * lib/sincosl.c: Likewise.
15283         * lib/sleep.c: Likewise.
15284         * lib/sprintf.c: Likewise.
15285         * lib/sqrtl.c: Likewise.
15286         * lib/stat-time.h: Likewise.
15287         * lib/stdio--.h: Likewise.
15288         * lib/stdio-safer.h: Likewise.
15289         * lib/stdlib--.h: Likewise.
15290         * lib/stdlib-safer.h: Likewise.
15291         * lib/stdlib.in.h: Likewise.
15292         * lib/stpcpy.c: Likewise.
15293         * lib/stpncpy.c: Likewise.
15294         * lib/strchrnul.c: Likewise.
15295         * lib/strcspn.c: Likewise.
15296         * lib/strerror.c: Likewise.
15297         * lib/strftime.c: Likewise.
15298         * lib/strftime.h: Likewise.
15299         * lib/striconveh.c: Likewise.
15300         * lib/striconveh.h: Likewise.
15301         * lib/striconveha.c: Likewise.
15302         * lib/striconveha.h: Likewise.
15303         * lib/stripslash.c: Likewise.
15304         * lib/strnlen1.c: Likewise.
15305         * lib/strnlen1.h: Likewise.
15306         * lib/strtod.c: Likewise.
15307         * lib/strtoimax.c: Likewise.
15308         * lib/strtok_r.c: Likewise.
15309         * lib/strtol.c: Likewise.
15310         * lib/strtoll.c: Likewise.
15311         * lib/strtoul.c: Likewise.
15312         * lib/strtoull.c: Likewise.
15313         * lib/sysexits.in.h: Likewise.
15314         * lib/tempname.c: Likewise.
15315         * lib/tempname.h: Likewise.
15316         * lib/timespec.h: Likewise.
15317         * lib/tls.c: Likewise.
15318         * lib/tls.h: Likewise.
15319         * lib/tmpdir.c: Likewise.
15320         * lib/tmpdir.h: Likewise.
15321         * lib/tmpfile-safer.c: Likewise.
15322         * lib/tmpfile.c: Likewise.
15323         * lib/trigl.c: Likewise.
15324         * lib/trigl.h: Likewise.
15325         * lib/trim.c: Likewise.
15326         * lib/trim.h: Likewise.
15327         * lib/trunc.c: Likewise.
15328         * lib/truncf.c: Likewise.
15329         * lib/truncl.c: Likewise.
15330         * lib/tsearch.c: Likewise.
15331         * lib/unicodeio.c: Likewise.
15332         * lib/unicodeio.h: Likewise.
15333         * lib/unistd--.h: Likewise.
15334         * lib/unistd-safer.h: Likewise.
15335         * lib/unistdio/ulc-fprintf.c: Likewise.
15336         * lib/unistdio/ulc-vfprintf.c: Likewise.
15337         * lib/unlinkdir.c: Likewise.
15338         * lib/unlinkdir.h: Likewise.
15339         * lib/unlocked-io.h: Likewise.
15340         * lib/unsetenv.c: Likewise.
15341         * lib/userspec.c: Likewise.
15342         * lib/utime.c: Likewise.
15343         * lib/utimecmp.c: Likewise.
15344         * lib/utimecmp.h: Likewise.
15345         * lib/utimens.c: Likewise.
15346         * lib/verify.h: Likewise.
15347         * lib/verror.c: Likewise.
15348         * lib/verror.h: Likewise.
15349         * lib/version-etc-fsf.c: Likewise.
15350         * lib/version-etc.c: Likewise.
15351         * lib/version-etc.h: Likewise.
15352         * lib/vfprintf.c: Likewise.
15353         * lib/vprintf.c: Likewise.
15354         * lib/vsprintf.c: Likewise.
15355         * lib/w32spawn.h: Likewise.
15356         * lib/wait-process.c: Likewise.
15357         * lib/wait-process.h: Likewise.
15358         * lib/wcwidth.c: Likewise.
15359         * lib/write-any-file.c: Likewise.
15360         * lib/xalloc-die.c: Likewise.
15361         * lib/xalloc.h: Likewise.
15362         * lib/xasprintf.c: Likewise.
15363         * lib/xgetcwd.c: Likewise.
15364         * lib/xgetcwd.h: Likewise.
15365         * lib/xgetdomainname.c: Likewise.
15366         * lib/xgetdomainname.h: Likewise.
15367         * lib/xgethostname.c: Likewise.
15368         * lib/xmalloc.c: Likewise.
15369         * lib/xmalloca.c: Likewise.
15370         * lib/xmalloca.h: Likewise.
15371         * lib/xmemcoll.c: Likewise.
15372         * lib/xnanosleep.c: Likewise.
15373         * lib/xreadlink.c: Likewise.
15374         * lib/xreadlink.h: Likewise.
15375         * lib/xsetenv.c: Likewise.
15376         * lib/xsetenv.h: Likewise.
15377         * lib/xstriconv.c: Likewise.
15378         * lib/xstriconv.h: Likewise.
15379         * lib/xstrndup.c: Likewise.
15380         * lib/xstrndup.h: Likewise.
15381         * lib/xstrtod.c: Likewise.
15382         * lib/xstrtod.h: Likewise.
15383         * lib/xstrtol-error.c: Likewise.
15384         * lib/xstrtol.c: Likewise.
15385         * lib/xstrtol.h: Likewise.
15386         * lib/xtime.h: Likewise.
15387         * lib/xvasprintf.c: Likewise.
15388         * lib/xvasprintf.h: Likewise.
15389         * lib/yesno.c: Likewise.
15390         * lib/yesno.h: Likewise.
15391         * posix-modules: Likewise.
15392         * tests/test-alloca-opt.c: Likewise.
15393         * tests/test-arcfour.c: Likewise.
15394         * tests/test-arctwo.c: Likewise.
15395         * tests/test-argmatch.c: Likewise.
15396         * tests/test-argp-2.sh: Likewise.
15397         * tests/test-argp.c: Likewise.
15398         * tests/test-arpa_inet.c: Likewise.
15399         * tests/test-array_list.c: Likewise.
15400         * tests/test-array_oset.c: Likewise.
15401         * tests/test-atexit.c: Likewise.
15402         * tests/test-avltree_list.c: Likewise.
15403         * tests/test-avltree_oset.c: Likewise.
15404         * tests/test-avltreehash_list.c: Likewise.
15405         * tests/test-base64.c: Likewise.
15406         * tests/test-binary-io.c: Likewise.
15407         * tests/test-byteswap.c: Likewise.
15408         * tests/test-c-ctype.c: Likewise.
15409         * tests/test-c-strcasecmp.c: Likewise.
15410         * tests/test-c-strcasestr.c: Likewise.
15411         * tests/test-c-strncasecmp.c: Likewise.
15412         * tests/test-c-strstr.c: Likewise.
15413         * tests/test-canonicalize-lgpl.c: Likewise.
15414         * tests/test-canonicalize.c: Likewise.
15415         * tests/test-carray_list.c: Likewise.
15416         * tests/test-ceilf.c: Likewise.
15417         * tests/test-ceill.c: Likewise.
15418         * tests/test-count-one-bits.c: Likewise.
15419         * tests/test-crc.c: Likewise.
15420         * tests/test-dirname.c: Likewise.
15421         * tests/test-fbufmode.c: Likewise.
15422         * tests/test-fcntl.c: Likewise.
15423         * tests/test-fflush.c: Likewise.
15424         * tests/test-floorf.c: Likewise.
15425         * tests/test-floorl.c: Likewise.
15426         * tests/test-fopen.c: Likewise.
15427         * tests/test-fprintf-posix.c: Likewise.
15428         * tests/test-fprintf-posix.h: Likewise.
15429         * tests/test-fpurge.c: Likewise.
15430         * tests/test-freadable.c: Likewise.
15431         * tests/test-freadahead.c: Likewise.
15432         * tests/test-freading.c: Likewise.
15433         * tests/test-freopen.c: Likewise.
15434         * tests/test-frexp.c: Likewise.
15435         * tests/test-frexpl.c: Likewise.
15436         * tests/test-fseek.c: Likewise.
15437         * tests/test-fseeko.c: Likewise.
15438         * tests/test-fseterr.c: Likewise.
15439         * tests/test-fstrcmp.c: Likewise.
15440         * tests/test-ftell.c: Likewise.
15441         * tests/test-ftello.c: Likewise.
15442         * tests/test-fwritable.c: Likewise.
15443         * tests/test-fwriting.c: Likewise.
15444         * tests/test-getaddrinfo.c: Likewise.
15445         * tests/test-getpass.c: Likewise.
15446         * tests/test-gettimeofday.c: Likewise.
15447         * tests/test-hmac-md5.c: Likewise.
15448         * tests/test-hmac-sha1.c: Likewise.
15449         * tests/test-iconv.c: Likewise.
15450         * tests/test-iconvme.c: Likewise.
15451         * tests/test-inttypes.c: Likewise.
15452         * tests/test-isnan.c: Likewise.
15453         * tests/test-isnanf.c: Likewise.
15454         * tests/test-isnanl-nolibm.c: Likewise.
15455         * tests/test-isnanl.c: Likewise.
15456         * tests/test-isnanl.h: Likewise.
15457         * tests/test-ldexpl.c: Likewise.
15458         * tests/test-linked_list.c: Likewise.
15459         * tests/test-linkedhash_list.c: Likewise.
15460         * tests/test-locale.c: Likewise.
15461         * tests/test-localename.c: Likewise.
15462         * tests/test-lock.c: Likewise.
15463         * tests/test-lseek.c: Likewise.
15464         * tests/test-malloca.c: Likewise.
15465         * tests/test-math.c: Likewise.
15466         * tests/test-mbscasecmp.c: Likewise.
15467         * tests/test-mbscasestr1.c: Likewise.
15468         * tests/test-mbscasestr2.c: Likewise.
15469         * tests/test-mbscasestr3.c: Likewise.
15470         * tests/test-mbscasestr4.c: Likewise.
15471         * tests/test-mbschr.c: Likewise.
15472         * tests/test-mbscspn.c: Likewise.
15473         * tests/test-mbsncasecmp.c: Likewise.
15474         * tests/test-mbspbrk.c: Likewise.
15475         * tests/test-mbspcasecmp.c: Likewise.
15476         * tests/test-mbsrchr.c: Likewise.
15477         * tests/test-mbsspn.c: Likewise.
15478         * tests/test-mbsstr1.c: Likewise.
15479         * tests/test-mbsstr2.c: Likewise.
15480         * tests/test-mbsstr3.c: Likewise.
15481         * tests/test-md5.c: Likewise.
15482         * tests/test-memmem.c: Likewise.
15483         * tests/test-netinet_in.c: Likewise.
15484         * tests/test-open.c: Likewise.
15485         * tests/test-printf-frexp.c: Likewise.
15486         * tests/test-printf-frexpl.c: Likewise.
15487         * tests/test-printf-posix.c: Likewise.
15488         * tests/test-printf-posix.h: Likewise.
15489         * tests/test-rbtree_list.c: Likewise.
15490         * tests/test-rbtree_oset.c: Likewise.
15491         * tests/test-rbtreehash_list.c: Likewise.
15492         * tests/test-read-file.c: Likewise.
15493         * tests/test-rijndael.c: Likewise.
15494         * tests/test-search.c: Likewise.
15495         * tests/test-signbit.c: Likewise.
15496         * tests/test-sleep.c: Likewise.
15497         * tests/test-snprintf-posix.c: Likewise.
15498         * tests/test-snprintf-posix.h: Likewise.
15499         * tests/test-snprintf.c: Likewise.
15500         * tests/test-sprintf-posix.c: Likewise.
15501         * tests/test-sprintf-posix.h: Likewise.
15502         * tests/test-stat-time.c: Likewise.
15503         * tests/test-stdbool.c: Likewise.
15504         * tests/test-stdint.c: Likewise.
15505         * tests/test-stdio.c: Likewise.
15506         * tests/test-stdlib.c: Likewise.
15507         * tests/test-stpncpy.c: Likewise.
15508         * tests/test-strcasestr.c: Likewise.
15509         * tests/test-striconv.c: Likewise.
15510         * tests/test-striconveh.c: Likewise.
15511         * tests/test-striconveha.c: Likewise.
15512         * tests/test-string.c: Likewise.
15513         * tests/test-sys_select.c: Likewise.
15514         * tests/test-sys_socket.c: Likewise.
15515         * tests/test-sys_stat.c: Likewise.
15516         * tests/test-sys_time.c: Likewise.
15517         * tests/test-sysexits.c: Likewise.
15518         * tests/test-time.c: Likewise.
15519         * tests/test-tls.c: Likewise.
15520         * tests/test-trunc.c: Likewise.
15521         * tests/test-truncf.c: Likewise.
15522         * tests/test-truncl.c: Likewise.
15523         * tests/test-unistd.c: Likewise.
15524         * tests/test-vasnprintf-posix.c: Likewise.
15525         * tests/test-vasnprintf-posix2.c: Likewise.
15526         * tests/test-vasnprintf.c: Likewise.
15527         * tests/test-vasprintf-posix.c: Likewise.
15528         * tests/test-vasprintf.c: Likewise.
15529         * tests/test-verify.c: Likewise.
15530         * tests/test-vfprintf-posix.c: Likewise.
15531         * tests/test-vprintf-posix.c: Likewise.
15532         * tests/test-vsnprintf-posix.c: Likewise.
15533         * tests/test-vsnprintf.c: Likewise.
15534         * tests/test-vsprintf-posix.c: Likewise.
15535         * tests/test-wchar.c: Likewise.
15536         * tests/test-wctype.c: Likewise.
15537         * tests/test-wcwidth.c: Likewise.
15538         * tests/test-xstrtol.c: Likewise.
15539         * tests/test-xvasprintf.c: Likewise.
15540         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
15541         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
15542         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
15543         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
15544         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
15545         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
15546         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
15547         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
15548         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
15549         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
15550         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
15551         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
15552         * tests/uniname/test-uninames.c: Likewise.
15553         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
15554         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
15555         * tests/unistdio/test-u16-printf1.h: Likewise.
15556         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
15557         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
15558         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
15559         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
15560         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
15561         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
15562         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
15563         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
15564         * tests/unistdio/test-u32-printf1.h: Likewise.
15565         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
15566         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
15567         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
15568         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
15569         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
15570         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
15571         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
15572         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
15573         * tests/unistdio/test-u8-printf1.h: Likewise.
15574         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
15575         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
15576         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
15577         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
15578         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
15579         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
15580         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
15581         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
15582         * tests/unistdio/test-ulc-printf1.h: Likewise.
15583         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
15584         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
15585         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
15586         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
15587         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
15588         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
15589         * tests/uniwidth/test-u16-strwidth.c: Likewise.
15590         * tests/uniwidth/test-u16-width.c: Likewise.
15591         * tests/uniwidth/test-u32-strwidth.c: Likewise.
15592         * tests/uniwidth/test-u32-width.c: Likewise.
15593         * tests/uniwidth/test-u8-strwidth.c: Likewise.
15594         * tests/uniwidth/test-u8-width.c: Likewise.
15595         * tests/uniwidth/test-uc_width.c: Likewise.
15596         * config/srclist-update: Likewise.
15597         (fixlicense): Update to GPLv3+.
15598
15599         Change copyright notice from LGPLv2.1+ to LGPLv3+.
15600         * tests/test-tsearch.c: Change copyright notice.
15601
15602         Change copyright notice from LGPLv2.0+ to LGPLv3+.
15603         * lib/c-strcaseeq.h: Change copyright notice.
15604         * lib/streq.h: Likewise.
15605         * lib/uniconv.h: Likewise.
15606         * lib/uniconv/u-conv-from-enc.h: Likewise.
15607         * lib/uniconv/u-conv-to-enc.h: Likewise.
15608         * lib/uniconv/u-strconv-from-enc.h: Likewise.
15609         * lib/uniconv/u-strconv-to-enc.h: Likewise.
15610         * lib/uniconv/u16-conv-from-enc.c: Likewise.
15611         * lib/uniconv/u16-conv-to-enc.c: Likewise.
15612         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
15613         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
15614         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
15615         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
15616         * lib/uniconv/u32-conv-from-enc.c: Likewise.
15617         * lib/uniconv/u32-conv-to-enc.c: Likewise.
15618         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
15619         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
15620         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
15621         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
15622         * lib/uniconv/u8-conv-from-enc.c: Likewise.
15623         * lib/uniconv/u8-conv-to-enc.c: Likewise.
15624         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
15625         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
15626         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
15627         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
15628         * lib/uniname.h: Likewise.
15629         * lib/uniname/uniname.c: Likewise.
15630         * lib/unistdio.h: Likewise.
15631         * lib/unistdio/u-asnprintf.h: Likewise.
15632         * lib/unistdio/u-asprintf.h: Likewise.
15633         * lib/unistdio/u-printf-args.c: Likewise.
15634         * lib/unistdio/u-printf-args.h: Likewise.
15635         * lib/unistdio/u-printf-parse.h: Likewise.
15636         * lib/unistdio/u-snprintf.h: Likewise.
15637         * lib/unistdio/u-sprintf.h: Likewise.
15638         * lib/unistdio/u-vasprintf.h: Likewise.
15639         * lib/unistdio/u-vsnprintf.h: Likewise.
15640         * lib/unistdio/u-vsprintf.h: Likewise.
15641         * lib/unistdio/u16-asnprintf.c: Likewise.
15642         * lib/unistdio/u16-asprintf.c: Likewise.
15643         * lib/unistdio/u16-printf-parse.c: Likewise.
15644         * lib/unistdio/u16-snprintf.c: Likewise.
15645         * lib/unistdio/u16-sprintf.c: Likewise.
15646         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
15647         * lib/unistdio/u16-u16-asprintf.c: Likewise.
15648         * lib/unistdio/u16-u16-snprintf.c: Likewise.
15649         * lib/unistdio/u16-u16-sprintf.c: Likewise.
15650         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
15651         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
15652         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
15653         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
15654         * lib/unistdio/u16-vasnprintf.c: Likewise.
15655         * lib/unistdio/u16-vasprintf.c: Likewise.
15656         * lib/unistdio/u16-vsnprintf.c: Likewise.
15657         * lib/unistdio/u16-vsprintf.c: Likewise.
15658         * lib/unistdio/u32-asnprintf.c: Likewise.
15659         * lib/unistdio/u32-asprintf.c: Likewise.
15660         * lib/unistdio/u32-printf-parse.c: Likewise.
15661         * lib/unistdio/u32-snprintf.c: Likewise.
15662         * lib/unistdio/u32-sprintf.c: Likewise.
15663         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
15664         * lib/unistdio/u32-u32-asprintf.c: Likewise.
15665         * lib/unistdio/u32-u32-snprintf.c: Likewise.
15666         * lib/unistdio/u32-u32-sprintf.c: Likewise.
15667         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
15668         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
15669         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
15670         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
15671         * lib/unistdio/u32-vasnprintf.c: Likewise.
15672         * lib/unistdio/u32-vasprintf.c: Likewise.
15673         * lib/unistdio/u32-vsnprintf.c: Likewise.
15674         * lib/unistdio/u32-vsprintf.c: Likewise.
15675         * lib/unistdio/u8-asnprintf.c: Likewise.
15676         * lib/unistdio/u8-asprintf.c: Likewise.
15677         * lib/unistdio/u8-printf-parse.c: Likewise.
15678         * lib/unistdio/u8-snprintf.c: Likewise.
15679         * lib/unistdio/u8-sprintf.c: Likewise.
15680         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
15681         * lib/unistdio/u8-u8-asprintf.c: Likewise.
15682         * lib/unistdio/u8-u8-snprintf.c: Likewise.
15683         * lib/unistdio/u8-u8-sprintf.c: Likewise.
15684         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
15685         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
15686         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
15687         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
15688         * lib/unistdio/u8-vasnprintf.c: Likewise.
15689         * lib/unistdio/u8-vasprintf.c: Likewise.
15690         * lib/unistdio/u8-vsnprintf.c: Likewise.
15691         * lib/unistdio/u8-vsprintf.c: Likewise.
15692         * lib/unistdio/ulc-asnprintf.c: Likewise.
15693         * lib/unistdio/ulc-asprintf.c: Likewise.
15694         * lib/unistdio/ulc-printf-parse.c: Likewise.
15695         * lib/unistdio/ulc-snprintf.c: Likewise.
15696         * lib/unistdio/ulc-sprintf.c: Likewise.
15697         * lib/unistdio/ulc-vasnprintf.c: Likewise.
15698         * lib/unistdio/ulc-vasprintf.c: Likewise.
15699         * lib/unistdio/ulc-vsnprintf.c: Likewise.
15700         * lib/unistdio/ulc-vsprintf.c: Likewise.
15701         * lib/unistr.h: Likewise.
15702         * lib/unistr/u-cpy-alloc.h: Likewise.
15703         * lib/unistr/u-cpy.h: Likewise.
15704         * lib/unistr/u-endswith.h: Likewise.
15705         * lib/unistr/u-move.h: Likewise.
15706         * lib/unistr/u-set.h: Likewise.
15707         * lib/unistr/u-startswith.h: Likewise.
15708         * lib/unistr/u-stpcpy.h: Likewise.
15709         * lib/unistr/u-stpncpy.h: Likewise.
15710         * lib/unistr/u-strcat.h: Likewise.
15711         * lib/unistr/u-strcpy.h: Likewise.
15712         * lib/unistr/u-strcspn.h: Likewise.
15713         * lib/unistr/u-strdup.h: Likewise.
15714         * lib/unistr/u-strlen.h: Likewise.
15715         * lib/unistr/u-strncat.h: Likewise.
15716         * lib/unistr/u-strncpy.h: Likewise.
15717         * lib/unistr/u-strnlen.h: Likewise.
15718         * lib/unistr/u-strpbrk.h: Likewise.
15719         * lib/unistr/u-strspn.h: Likewise.
15720         * lib/unistr/u-strstr.h: Likewise.
15721         * lib/unistr/u-strtok.h: Likewise.
15722         * lib/unistr/u16-check.c: Likewise.
15723         * lib/unistr/u16-chr.c: Likewise.
15724         * lib/unistr/u16-cmp.c: Likewise.
15725         * lib/unistr/u16-cpy-alloc.c: Likewise.
15726         * lib/unistr/u16-cpy.c: Likewise.
15727         * lib/unistr/u16-endswith.c: Likewise.
15728         * lib/unistr/u16-mblen.c: Likewise.
15729         * lib/unistr/u16-mbsnlen.c: Likewise.
15730         * lib/unistr/u16-mbtouc-aux.c: Likewise.
15731         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
15732         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
15733         * lib/unistr/u16-mbtouc.c: Likewise.
15734         * lib/unistr/u16-mbtoucr.c: Likewise.
15735         * lib/unistr/u16-move.c: Likewise.
15736         * lib/unistr/u16-next.c: Likewise.
15737         * lib/unistr/u16-prev.c: Likewise.
15738         * lib/unistr/u16-set.c: Likewise.
15739         * lib/unistr/u16-startswith.c: Likewise.
15740         * lib/unistr/u16-stpcpy.c: Likewise.
15741         * lib/unistr/u16-stpncpy.c: Likewise.
15742         * lib/unistr/u16-strcat.c: Likewise.
15743         * lib/unistr/u16-strchr.c: Likewise.
15744         * lib/unistr/u16-strcmp.c: Likewise.
15745         * lib/unistr/u16-strcpy.c: Likewise.
15746         * lib/unistr/u16-strcspn.c: Likewise.
15747         * lib/unistr/u16-strdup.c: Likewise.
15748         * lib/unistr/u16-strlen.c: Likewise.
15749         * lib/unistr/u16-strmblen.c: Likewise.
15750         * lib/unistr/u16-strmbtouc.c: Likewise.
15751         * lib/unistr/u16-strncat.c: Likewise.
15752         * lib/unistr/u16-strncmp.c: Likewise.
15753         * lib/unistr/u16-strncpy.c: Likewise.
15754         * lib/unistr/u16-strnlen.c: Likewise.
15755         * lib/unistr/u16-strpbrk.c: Likewise.
15756         * lib/unistr/u16-strrchr.c: Likewise.
15757         * lib/unistr/u16-strspn.c: Likewise.
15758         * lib/unistr/u16-strstr.c: Likewise.
15759         * lib/unistr/u16-strtok.c: Likewise.
15760         * lib/unistr/u16-to-u32.c: Likewise.
15761         * lib/unistr/u16-to-u8.c: Likewise.
15762         * lib/unistr/u16-uctomb-aux.c: Likewise.
15763         * lib/unistr/u16-uctomb.c: Likewise.
15764         * lib/unistr/u32-check.c: Likewise.
15765         * lib/unistr/u32-chr.c: Likewise.
15766         * lib/unistr/u32-cmp.c: Likewise.
15767         * lib/unistr/u32-cpy-alloc.c: Likewise.
15768         * lib/unistr/u32-cpy.c: Likewise.
15769         * lib/unistr/u32-endswith.c: Likewise.
15770         * lib/unistr/u32-mblen.c: Likewise.
15771         * lib/unistr/u32-mbsnlen.c: Likewise.
15772         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
15773         * lib/unistr/u32-mbtouc.c: Likewise.
15774         * lib/unistr/u32-mbtoucr.c: Likewise.
15775         * lib/unistr/u32-move.c: Likewise.
15776         * lib/unistr/u32-next.c: Likewise.
15777         * lib/unistr/u32-prev.c: Likewise.
15778         * lib/unistr/u32-set.c: Likewise.
15779         * lib/unistr/u32-startswith.c: Likewise.
15780         * lib/unistr/u32-stpcpy.c: Likewise.
15781         * lib/unistr/u32-stpncpy.c: Likewise.
15782         * lib/unistr/u32-strcat.c: Likewise.
15783         * lib/unistr/u32-strchr.c: Likewise.
15784         * lib/unistr/u32-strcmp.c: Likewise.
15785         * lib/unistr/u32-strcpy.c: Likewise.
15786         * lib/unistr/u32-strcspn.c: Likewise.
15787         * lib/unistr/u32-strdup.c: Likewise.
15788         * lib/unistr/u32-strlen.c: Likewise.
15789         * lib/unistr/u32-strmblen.c: Likewise.
15790         * lib/unistr/u32-strmbtouc.c: Likewise.
15791         * lib/unistr/u32-strncat.c: Likewise.
15792         * lib/unistr/u32-strncmp.c: Likewise.
15793         * lib/unistr/u32-strncpy.c: Likewise.
15794         * lib/unistr/u32-strnlen.c: Likewise.
15795         * lib/unistr/u32-strpbrk.c: Likewise.
15796         * lib/unistr/u32-strrchr.c: Likewise.
15797         * lib/unistr/u32-strspn.c: Likewise.
15798         * lib/unistr/u32-strstr.c: Likewise.
15799         * lib/unistr/u32-strtok.c: Likewise.
15800         * lib/unistr/u32-to-u16.c: Likewise.
15801         * lib/unistr/u32-to-u8.c: Likewise.
15802         * lib/unistr/u32-uctomb.c: Likewise.
15803         * lib/unistr/u8-check.c: Likewise.
15804         * lib/unistr/u8-chr.c: Likewise.
15805         * lib/unistr/u8-cmp.c: Likewise.
15806         * lib/unistr/u8-cpy-alloc.c: Likewise.
15807         * lib/unistr/u8-cpy.c: Likewise.
15808         * lib/unistr/u8-endswith.c: Likewise.
15809         * lib/unistr/u8-mblen.c: Likewise.
15810         * lib/unistr/u8-mbsnlen.c: Likewise.
15811         * lib/unistr/u8-mbtouc-aux.c: Likewise.
15812         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
15813         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
15814         * lib/unistr/u8-mbtouc.c: Likewise.
15815         * lib/unistr/u8-mbtoucr.c: Likewise.
15816         * lib/unistr/u8-move.c: Likewise.
15817         * lib/unistr/u8-next.c: Likewise.
15818         * lib/unistr/u8-prev.c: Likewise.
15819         * lib/unistr/u8-set.c: Likewise.
15820         * lib/unistr/u8-startswith.c: Likewise.
15821         * lib/unistr/u8-stpcpy.c: Likewise.
15822         * lib/unistr/u8-stpncpy.c: Likewise.
15823         * lib/unistr/u8-strcat.c: Likewise.
15824         * lib/unistr/u8-strchr.c: Likewise.
15825         * lib/unistr/u8-strcmp.c: Likewise.
15826         * lib/unistr/u8-strcpy.c: Likewise.
15827         * lib/unistr/u8-strcspn.c: Likewise.
15828         * lib/unistr/u8-strdup.c: Likewise.
15829         * lib/unistr/u8-strlen.c: Likewise.
15830         * lib/unistr/u8-strmblen.c: Likewise.
15831         * lib/unistr/u8-strmbtouc.c: Likewise.
15832         * lib/unistr/u8-strncat.c: Likewise.
15833         * lib/unistr/u8-strncmp.c: Likewise.
15834         * lib/unistr/u8-strncpy.c: Likewise.
15835         * lib/unistr/u8-strnlen.c: Likewise.
15836         * lib/unistr/u8-strpbrk.c: Likewise.
15837         * lib/unistr/u8-strrchr.c: Likewise.
15838         * lib/unistr/u8-strspn.c: Likewise.
15839         * lib/unistr/u8-strstr.c: Likewise.
15840         * lib/unistr/u8-strtok.c: Likewise.
15841         * lib/unistr/u8-to-u16.c: Likewise.
15842         * lib/unistr/u8-to-u32.c: Likewise.
15843         * lib/unistr/u8-uctomb-aux.c: Likewise.
15844         * lib/unistr/u8-uctomb.c: Likewise.
15845         * lib/unitypes.h: Likewise.
15846         * lib/uniwidth.h: Likewise.
15847         * lib/uniwidth/cjk.h: Likewise.
15848         * lib/uniwidth/u16-strwidth.c: Likewise.
15849         * lib/uniwidth/u16-width.c: Likewise.
15850         * lib/uniwidth/u32-strwidth.c: Likewise.
15851         * lib/uniwidth/u32-width.c: Likewise.
15852         * lib/uniwidth/u8-strwidth.c: Likewise.
15853         * lib/uniwidth/u8-width.c: Likewise.
15854         * lib/uniwidth/width.c: Likewise.
15855
15856 2007-10-07  Bruno Haible  <bruno@clisp.org>
15857
15858         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
15859         The file is still under LGPL (see modules/inttypes).
15860
15861 2007-10-06  Bruno Haible  <bruno@clisp.org>
15862
15863         * modules/trunc (Dependencies): Add 'extensions'.
15864         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
15865         Reported by Ben Pfaff <blp@gnu.org>.
15866
15867 2007-10-06  Bruno Haible  <bruno@clisp.org>
15868
15869         * modules/freopen-tests: New file.
15870         * tests/test-freopen.c: New file.
15871
15872         * modules/fopen-tests: New file.
15873         * tests/test-fopen.c: New file.
15874
15875         * modules/fopen: New file.
15876         * lib/fopen.c: New file.
15877         * m4/fopen.m4: New file.
15878         * modules/freopen: New file.
15879         * lib/freopen.c: New file.
15880         * m4/freopen.m4: New file.
15881         * lib/stdio.in.h (fopen, freopen): New declarations.
15882         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
15883         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
15884         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
15885         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
15886         * doc/functions/fopen.texi: Mention the 'fopen' module.
15887         * doc/functions/freopen.texi: Mention the 'freopen' module.
15888
15889 2007-10-06  Bruno Haible  <bruno@clisp.org>
15890
15891         * modules/open-tests: New file.
15892         * tests/test-open.c: New file.
15893
15894         * modules/open: New file.
15895         * lib/open.c: New file.
15896         * m4/open.m4: New file.
15897         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
15898         lib/open.c does.
15899         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
15900         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
15901         macros.
15902         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
15903         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
15904         REPLACE_OPEN.
15905         * doc/functions/open.texi: Mention the 'open' module.
15906
15907 2007-10-04  Bruno Haible  <bruno@clisp.org>
15908
15909         * modules/ceill-tests: New file.
15910         * tests/test-ceill.c: New file.
15911
15912         * modules/ceill: New file.
15913         * lib/ceill.c: Replace entire file.
15914         * m4/ceill.m4: New file.
15915         * lib/math.in.h (ceill): Replace declaration.
15916         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
15917         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
15918         * doc/functions/ceill.texi: Mention the 'ceill' module.
15919         * modules/mathl (Files): Remove lib/ceill.c.
15920         (Depends-on): Add ceill.
15921
15922 2007-10-04  Bruno Haible  <bruno@clisp.org>
15923
15924         * modules/ceilf-tests: New file.
15925         * tests/test-ceilf.c: New file.
15926
15927         * modules/ceilf: New file.
15928         * lib/ceil.c: New file.
15929         * lib/ceilf.c: New file.
15930         * m4/ceilf.m4: New file.
15931         * lib/math.in.h (ceilf): New declaration.
15932         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
15933         HAVE_DECL_CEILF.
15934         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
15935         HAVE_DECL_CEILF.
15936         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
15937
15938 2007-10-04  Bruno Haible  <bruno@clisp.org>
15939
15940         * modules/floorl-tests: New file.
15941         * tests/test-floorl.c: New file.
15942
15943         * modules/floorl: New file.
15944         * lib/floorl.c: Replace entire file.
15945         * m4/floorl.m4: New file.
15946         * lib/math.in.h (floorl): Replace declaration.
15947         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
15948         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
15949         * doc/functions/floorl.texi: Mention the 'floorl' module.
15950         * modules/mathl (Files): Remove lib/floorl.c.
15951         (Depends-on): Add floorl.
15952
15953 2007-10-04  Bruno Haible  <bruno@clisp.org>
15954
15955         * modules/floorf-tests: New file.
15956         * tests/test-floorf.c: New file.
15957
15958         * modules/floorf: New file.
15959         * lib/floor.c: New file.
15960         * lib/floorf.c: New file.
15961         * m4/floorf.m4: New file.
15962         * lib/math.in.h (floorf): New declaration.
15963         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
15964         HAVE_DECL_FLOORF.
15965         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
15966         HAVE_DECL_FLOORF.
15967         * doc/functions/floorf.texi: Mention the 'floorf' module.
15968
15969 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
15970             Bruno Haible  <bruno@clisp.org>
15971
15972         Advertise for the Git server instead of the CVS server.
15973         * doc/gnulib-intro.texi (Steady Development): Mention the Git
15974         repository instead of the CVS one.
15975         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
15976         about all VCS systems generically.
15977         * doc/gnulib.texi (Introduction): Capitalize `Git'.
15978
15979 2007-10-04  Bruno Haible  <bruno@clisp.org>
15980
15981         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
15982         means.
15983         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
15984
15985 2007-10-04  Bruno Haible  <bruno@clisp.org>
15986
15987         * modules/truncl-tests: New file.
15988         * tests/test-truncl.c: New file.
15989
15990         * modules/truncl: New file.
15991         * lib/truncl.c: New file.
15992         * m4/truncl.m4: New file.
15993         * lib/math.in.h (truncl): New declaration.
15994         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
15995         HAVE_DECL_TRUNCL.
15996         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
15997         HAVE_DECL_TRUNCL.
15998         * doc/functions/truncl.texi: Mention the 'truncl' module.
15999
16000 2007-10-04  Bruno Haible  <bruno@clisp.org>
16001
16002         * modules/truncf-tests: New file.
16003         * tests/test-truncf.c: New file.
16004
16005         * modules/truncf: New file.
16006         * lib/trunc.c: Make paramerizable through USE_* macros.
16007         * lib/truncf.c: New file.
16008         * m4/truncf.m4: New file.
16009         * lib/math.in.h (truncf): New declaration.
16010         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
16011         HAVE_DECL_TRUNCF.
16012         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
16013         HAVE_DECL_TRUNCF.
16014         * doc/functions/truncf.texi: Mention the 'truncf' module.
16015
16016 2007-10-03  Bruno Haible  <bruno@clisp.org>
16017
16018         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
16019         augmentation also for tests modules.
16020         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
16021         * modules/atexit-tests (Makefile.am): Likewise.
16022         * modules/binary-io-tests (Makefile.am): Likewise.
16023         * modules/c-strcase-tests (Makefile.am): Likewise.
16024         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
16025         * modules/canonicalize-tests (Makefile.am): Likewise.
16026         * modules/closein-tests (Makefile.am): Likewise.
16027         * modules/fprintf-posix-tests (Makefile.am): Likewise.
16028         * modules/freadahead-tests (Makefile.am): Likewise.
16029         * modules/fseek-tests (Makefile.am): Likewise.
16030         * modules/fseeko-tests (Makefile.am): Likewise.
16031         * modules/ftell-tests (Makefile.am): Likewise.
16032         * modules/ftello-tests (Makefile.am): Likewise.
16033         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
16034         * modules/isnanl-tests (Makefile.am): Likewise.
16035         * modules/lseek-tests (Makefile.am): Likewise.
16036         * modules/mbscasecmp-tests (Makefile.am): Likewise.
16037         * modules/mbscasestr-tests (Makefile.am): Likewise.
16038         * modules/mbschr-tests (Makefile.am): Likewise.
16039         * modules/mbscspn-tests (Makefile.am): Likewise.
16040         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
16041         * modules/mbspbrk-tests (Makefile.am): Likewise.
16042         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
16043         * modules/mbsrchr-tests (Makefile.am): Likewise.
16044         * modules/mbsspn-tests (Makefile.am): Likewise.
16045         * modules/mbsstr-tests (Makefile.am): Likewise.
16046         * modules/printf-posix-tests (Makefile.am): Likewise.
16047         * modules/snprintf-posix-tests (Makefile.am): Likewise.
16048         * modules/sprintf-posix-tests (Makefile.am): Likewise.
16049         * modules/tsearch-tests (Makefile.am): Likewise.
16050         * modules/uniname/uniname-tests (Makefile.am): Likewise.
16051         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
16052         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
16053         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
16054         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
16055         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
16056         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
16057         * modules/vprintf-posix-tests (Makefile.am): Likewise.
16058         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
16059         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
16060         * modules/xstrtoimax-tests (Makefile.am): Likewise.
16061         * modules/xstrtol-tests (Makefile.am): Likewise.
16062         * modules/xstrtoumax-tests (Makefile.am): Likewise.
16063         * modules/yesno-tests (Makefile.am): Likewise.
16064
16065 2007-10-03  Bruno Haible  <bruno@clisp.org>
16066
16067         * modules/trunc-tests: New file.
16068         * tests/test-trunc.c: New file.
16069
16070         * modules/trunc: New file.
16071         * lib/trunc.c: New file.
16072         * m4/trunc.m4: New file.
16073         * lib/math.in.h (trunc): New declaration.
16074         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
16075         HAVE_DECL_TRUNC.
16076         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
16077         HAVE_DECL_TRUNC.
16078         * doc/functions/trunc.texi: Mention the 'trunc' module.
16079
16080 2007-10-03  Bruno Haible  <bruno@clisp.org>
16081
16082         * tests/test-fpending.c: New file, mostly copied
16083         from coreutils/lib/t-fpending.c.
16084         * modules/fpending-tests: New file.
16085
16086 2007-10-03  Bruno Haible  <bruno@clisp.org>
16087
16088         Port the stdio extensions to QNX (untested).
16089         * lib/fseterr.c (fseterr): Add support for QNX.
16090         * lib/fbufmode.c (fbufmode): Likewise.
16091         * lib/freadable.c (freadable): Likewise.
16092         * lib/fwritable.c (fwritable): Likewise.
16093         * lib/freading.c (freading): Likewise.
16094         * lib/fwriting.c (fwriting): Likewise.
16095         * lib/freadahead.c (freadahed): Likewise.
16096         * lib/fpurge.c (fpurge): Likewise.
16097         * lib/fseeko.c (rpl_fseeko): Likewise.
16098
16099 2007-10-03  Bruno Haible  <bruno@clisp.org>
16100             Jim Meyering  <jim@meyering.net>
16101             Eric Blake  <ebb9@byu.net>
16102
16103         * doc/relocatable.texi: Use @command instead of @program.
16104
16105 2007-10-02  Jim Meyering  <jim@meyering.net>
16106
16107         Perform one more "_.h" -> ".in.h" substitution.
16108         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
16109         instead of unistd_.h here, too.
16110
16111 2007-10-01  Bruno Haible  <bruno@clisp.org>
16112
16113         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
16114         Needed for the alloca-opt module.
16115
16116 2007-09-30  Bruno Haible  <bruno@clisp.org>
16117
16118         * lib/alloca.in.h: Renamed from lib/alloca_.h.
16119         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
16120         alloca_.h.
16121         * lib/argz.in.h: Renamed from lib/argz_.h.
16122         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
16123         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
16124         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
16125         byteswap_.h.
16126         * lib/dirent.in.h: Renamed from lib/dirent_.h.
16127         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
16128         dirent_.h.
16129         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
16130         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
16131         fcntl_.h.
16132         * lib/float.in.h: Renamed from lib/float_.h.
16133         * modules/float (Files, Makefile.am): Use float.in.h instead of
16134         float_.h.
16135         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
16136         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
16137         fnmatch_.h.
16138         * lib/getopt.in.h: Renamed from lib/getopt_.h.
16139         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
16140         getopt_.h.
16141         * lib/glob.in.h: Renamed from lib/glob_.h.
16142         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
16143         * lib/iconv.in.h: Renamed from lib/iconv_.h.
16144         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
16145         iconv_.h.
16146         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
16147         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
16148         inttypes_.h.
16149         * lib/locale.in.h: Renamed from lib/locale_.h.
16150         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
16151         locale_.h.
16152         * lib/math.in.h: Renamed from lib/math_.h.
16153         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
16154         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
16155         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
16156         of netinet_in_.h. Add dependency.
16157         * lib/poll.in.h: Renamed from lib/poll_.h.
16158         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
16159         * lib/search.in.h: Renamed from lib/search_.h.
16160         * modules/search (Files, Makefile.am): Use search.in.h instead of
16161         search_.h.
16162         * lib/signal.in.h: Renamed from lib/signal_.h.
16163         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
16164         _signal.h.
16165         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
16166         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
16167         stdbool_.h.
16168         * lib/stdint.in.h: Renamed from lib/stdint_.h.
16169         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
16170         stdint_.h.
16171         * lib/stdio.in.h: Renamed from lib/stdio_.h.
16172         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
16173         stdio_.h.
16174         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
16175         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
16176         stdlib_.h.
16177         * lib/string.in.h: Renamed from lib/string_.h.
16178         * modules/string (Files, Makefile.am): Use string.in.h instead of
16179         string_.h.
16180         * doc/gnulib-tool.texi (Initial import): Update.
16181         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
16182         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
16183         of sys_select_.h. Add dependency.
16184         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
16185         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
16186         of sys_socket_.h.
16187         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
16188         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
16189         sys_stat_.h.
16190         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
16191         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
16192         sys_time_.h.
16193         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
16194         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
16195         sysexits_.h.
16196         * lib/time.in.h: Renamed from lib/time_.h.
16197         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
16198         * lib/unistd.in.h: Renamed from lib/unistd_.h.
16199         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
16200         unistd_.h.
16201         * lib/wchar.in.h: Renamed from lib/wchar_.h.
16202         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
16203         wchar_.h.
16204         * lib/wctype.in.h: Renamed from lib/wctype_.h.
16205         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
16206         wctype_.h.
16207         * build-aux/bootstrap (slurp): Update.
16208         * lib/.cppi-disable: Update.
16209
16210 2007-09-30  Bruno Haible  <bruno@clisp.org>
16211
16212         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
16213         Needed on BeOS.
16214
16215 2007-09-30  Bruno Haible  <bruno@clisp.org>
16216
16217         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
16218
16219 2007-09-29  Bruno Haible  <bruno@clisp.org>
16220
16221         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
16222
16223 2007-09-29  Bruno Haible  <bruno@clisp.org>
16224
16225         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
16226         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
16227         * build-aux/install-reloc: Compile also areadlink.c.
16228         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
16229
16230 2007-09-29  Bruno Haible  <bruno@clisp.org>
16231
16232         * gnulib-tool (func_emit_initmacro_done): Indentation.
16233
16234 2007-09-29  Bruno Haible  <bruno@clisp.org>
16235
16236         * README: Add CVS checkout update instructions.
16237         Info from Bob Proulx <bob@proulx.com>.
16238
16239 2007-09-28  Eric Blake  <ebb9@byu.net>
16240
16241         Provide move-if-change.
16242         * build-aux/move-if-change: New file, based on best practice
16243         rather than any canonical upstream location.
16244
16245 2007-09-28  Jim Meyering  <jim@meyering.net>
16246
16247         Fix canonicalize loop-detection corner case.
16248         Do not attempt to stat the symlink values stored via seen_triple.
16249         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
16250         on linux-2.6.18, (but not 2.6.22).
16251         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
16252         triple_compare.  The former compares dev,ino,filename, while the latter
16253         would actually stat dirname(filename) when dev and ino were equal.
16254         * lib/hash-triple.c: Install <string.h>.
16255         (STREQ): Define.
16256         (triple_compare_ino_str): New function.
16257         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
16258
16259 2007-09-28  Eric Blake  <ebb9@byu.net>
16260
16261         Enforce that AC_REPLACE_FUNCS files exist.
16262         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
16263         override check for typos.
16264
16265         Fix test-closein on Solaris 10.
16266         * tests/test-closein.c (main): Don't assume stdin can be inherited
16267         closed on all systems.
16268         * tests/test-closein.sh: Likewise.
16269         Reported by Piotr Tarnowski.
16270
16271 2007-09-28  Jim Meyering  <jim@meyering.net>
16272
16273         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
16274
16275 2007-09-27  Jim Meyering  <jim@meyering.net>
16276
16277         canonicalize: Avoid a false-positive cycle failure.
16278         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
16279         Sort.  Remove cycle-check.
16280         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
16281         not cycle-check.h.
16282         (seen_triple): New function.
16283         (canonicalize_filename_mode): Use it instead of cycle-check.
16284         * tests/test-canonicalize.c: Add a test for this bug.
16285         * tests/test-canonicalize.sh: Set up and run the test.
16286
16287         New module, file-set, from coreutils.
16288         * modules/file-set: Define it.
16289         * lib/file-set.c, lib/file-set.h: Implement.
16290
16291         New module, hash-triple, from coreutils.
16292         * modules/hash-triple: Define it.
16293         * lib/hash-triple.c, lib/hash-triple.h: Implement.
16294
16295 2007-09-25  Eric Blake  <ebb9@byu.net>
16296
16297         Fix strerror on Interix.
16298         * lib/string_.h (strerror): Declare replacement.
16299         * doc/functions/strerror.texi (strerror): Document the Interix
16300         shortcoming.
16301         * modules/string (Makefile.am): Support new hooks.
16302         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
16303         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
16304         gl_FUNC_STRERROR_SEPARATE.
16305         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
16306         * lib/strerror.c (rpl_strerror): Provide replacement.
16307         * modules/strerror (Depends-on): Add string.
16308         (configure.ac): Detect use of module.
16309         * tests/test-strerror.c: New file.
16310         * modules/strerror-tests: New test module.
16311         * modules/argp (Depends-on): Add strerror.
16312         * modules/error (Depends-on): Likewise.
16313         Reported by Martin Koeppe.
16314
16315 2007-09-24  Bruno Haible  <bruno@clisp.org>
16316
16317         * README: Update git instructions.
16318
16319 2007-09-24  Eric Blake  <ebb9@byu.net>
16320
16321         Revert fpending breakage from 2007-09-08.
16322         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
16323         __fpending.c.
16324
16325 2007-09-24  Jim Meyering  <jim@meyering.net>
16326
16327         filenamecat.c: Add a test.
16328         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
16329         showing how the function works when DIR is the empty string.
16330
16331 2007-09-21  Simon Josefsson  <simon@josefsson.org>
16332
16333         * tests/test-canonicalize.sh: Turn on executable bit.
16334
16335 2007-09-19  Eric Blake  <ebb9@byu.net>
16336
16337         * README: Update CVS instructions.
16338
16339 2007-09-18  Bruno Haible  <bruno@clisp.org>
16340
16341         * modules/areadlink: New file.
16342         * lib/areadlink.h (areadlink): New declaration.
16343         * lib/areadlink.c: New file, based on lib/xreadlink.c.
16344
16345 2007-09-17  Jim Meyering  <jim@meyering.net>
16346
16347         * lib/savewd.c (ESTALE) [!defined]: Define.
16348         Reported to be required on Interix by Martin Koeppe.
16349
16350 2007-09-17  Bruno Haible  <bruno@clisp.org>
16351
16352         * gnulib-tool (func_version): Use $version.
16353
16354 2007-09-16  Bruno Haible  <bruno@clisp.org>
16355
16356         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
16357         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
16358         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
16359         Reported by Greg Schafer <gschafer@zip.com.au>.
16360
16361 2007-09-15  Bruno Haible  <bruno@clisp.org>
16362
16363         * gnulib-tool (sed): Try a little harder to make bash understand the
16364         alias.
16365         Reported by Bruce Korb <bruce.korb@gmail.com>.
16366
16367 2007-09-13  Eric Blake  <ebb9@byu.net>
16368
16369         * ChangeLog: Remove conflict markers.
16370
16371 2007-09-13  Simon Josefsson  <simon@josefsson.org>
16372
16373         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
16374         Reported by Bruno Haible <bruno@clisp.org>.
16375
16376 2007-09-12  Bruno Haible  <bruno@clisp.org>
16377
16378         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
16379         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
16380         is not defined.
16381
16382 2007-09-12  Eric Blake  <ebb9@byu.net>
16383
16384         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
16385         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
16386         Autoconf definition.
16387         * modules/euidaccess (Depends-on): Add extensions, for
16388         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
16389         * modules/fnmatch (Depends-on): Likewise.
16390         * modules/getaddrinfo (Depends-on): Likewise.
16391         * modules/getdelim (Depends-on): Likewise.
16392         * modules/getline (Depends-on): Likewise.
16393         * modules/getsubopt (Depends-on): Likewise.
16394         * modules/gettext (Depends-on): Likewise.
16395         * modules/group-member (Depends-on): Likewise.
16396         * modules/mbchar (Depends-on): Likewise.
16397         * modules/memmem (Depends-on): Likewise.
16398         * modules/mempcpy (Depends-on): Likewise.
16399         * modules/memrchr (Depends-on): Likewise.
16400         * modules/pagealign_alloc (Depends-on): Likewise.
16401         * modules/readutmp (Depends-on): Likewise.
16402         * modules/stpcpy (Depends-on): Likewise.
16403         * modules/stpncpy (Depends-on): Likewise.
16404         * modules/strchrnul (Depends-on): Likewise.
16405         * modules/strndup (Depends-on): Likewise.
16406         * modules/strsep (Depends-on): Likewise.
16407         * modules/strverscmp (Depends-on): Likewise.
16408         * modules/vasprintf (Depends-on): Likewise.
16409         * modules/wcwidth (Depends-on): Likewise.
16410         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
16411         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
16412         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
16413         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
16414         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
16415         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
16416         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
16417         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
16418         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
16419         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
16420         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
16421         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
16422         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
16423         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
16424         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
16425         * m4/readutmp.m4 (gl_READUTMP): Likewise.
16426         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
16427         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
16428         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
16429         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
16430         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
16431         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
16432         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
16433         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
16434         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
16435         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
16436         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
16437         so that lock.m4 can be used in gettext without extensions module.
16438
16439 2007-09-11  Bruno Haible  <bruno@clisp.org>
16440
16441         * m4/isc-posix.m4: Remove file.
16442         Suggested by Eric Blake.
16443
16444 2007-09-11  Eric Blake  <ebb9@byu.net>
16445
16446         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
16447
16448 2007-09-10  Bruno Haible  <bruno@clisp.org>
16449
16450         * posix-modules: Fix typo in error message.
16451         Reported by Matt <mkraai@beckman.com>.
16452
16453 2007-09-09  Bruno Haible  <bruno@clisp.org>
16454
16455         * doc/functions/getdelim.texi: Update list of platforms lacking the
16456         function.
16457         * doc/functions/getline.texi: Likewise.
16458
16459 2007-09-09  Jim Meyering  <jim@meyering.net>
16460
16461         * lib/hash.c (hash_initialize): Detect calloc failure.
16462         Reported by Bruno Haible.
16463
16464 2007-09-09  Bruno Haible  <bruno@clisp.org>
16465
16466         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
16467         malloc or realloc fails.
16468
16469 2007-09-09  Bruno Haible  <bruno@clisp.org>
16470
16471         * modules/getcwd (Depends-on): Add malloc-posix.
16472         * modules/glob (Depends-on): Likewise.
16473         * modules/putenv (Depends-on): Likewise.
16474         * modules/strdup (Depends-on): Likewise.
16475         * modules/getdelim (Depends-on): Add realloc-posix.
16476         * modules/read-file (Depends-on): Likewise.
16477
16478 2007-09-09  Bruno Haible  <bruno@clisp.org>
16479
16480         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
16481         (gl_FUNC_MALLOC_POSIX): Require it.
16482         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
16483         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
16484         * modules/realloc (Files): Add m4/malloc.m4.
16485         * modules/calloc (Files): Likewise.
16486
16487 2007-09-09  Bruno Haible  <bruno@clisp.org>
16488
16489         * modules/malloc-posix: New file.
16490         * modules/malloc (Depends-on): Add malloc-posix.
16491         * lib/malloc.c: Include errno.h.
16492         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
16493         and a POSIX-compatible malloc into a single function. Set ENOMEM
16494         when returning NULL.
16495         * m4/malloc.m4: New file.
16496         * doc/functions/malloc.texi: Mention the malloc-posix module.
16497         * lib/stdlib_.h (malloc): New declaration.
16498         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
16499         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
16500         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
16501         and HAVE_MALLOC_POSIX.
16502
16503 2007-09-09  Bruno Haible  <bruno@clisp.org>
16504
16505         * modules/realloc-posix: New file.
16506         * modules/realloc (Depends-on): Add realloc-posix.
16507         * lib/realloc.c: Include errno.h.
16508         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
16509         and a POSIX-compatible realloc into a single function. Set ENOMEM
16510         when returning NULL.
16511         * m4/realloc.m4: New file.
16512         * doc/functions/realloc.texi: Mention the realloc-posix module.
16513         * lib/stdlib_.h (realloc): New declaration.
16514         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
16515         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
16516         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
16517         and HAVE_REALLOC_POSIX.
16518
16519 2007-09-09  Bruno Haible  <bruno@clisp.org>
16520
16521         * modules/calloc-posix: New file.
16522         * modules/calloc (Depends-on): Add calloc-posix.
16523         * lib/calloc.c: Include errno.h.
16524         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
16525         and a POSIX-compatible calloc into a single function. Set ENOMEM
16526         when returning NULL.
16527         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
16528         * doc/functions/calloc.texi: Mention the calloc-posix module.
16529         * lib/stdlib_.h (calloc): New declaration.
16530         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
16531         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
16532         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
16533         and HAVE_CALLOC_POSIX.
16534
16535 2007-09-09  Bruno Haible  <bruno@clisp.org>
16536
16537         Allow for modules to show an arbitrary notice.
16538         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
16539         * gnulib-tool: New option --extract-notice.
16540         (func_usage): Document it.
16541         (sed_extract_prog): Update.
16542         (func_get_notice): New function.
16543         (func_modules_notice): New function.
16544         (func_import, func_create_testdir): Invoke it.
16545         Suggested by Jim Meyering.
16546
16547 2007-09-09  Bruno Haible  <bruno@clisp.org>
16548
16549         * gnulib-tool: New options --verbose, --quiet.
16550         (func_usage): Document them.
16551         (verbose): New variable.
16552         (func_execute_command): New function.
16553         (func_import): Don't show the module list and the file list if
16554         $verbose < 0.
16555         (func_create_testdir): Likewise. Use func_execute_command.
16556         (func_create_megatestdir): Use func_execute_command.
16557
16558 2007-09-08  Bruno Haible  <bruno@clisp.org>
16559
16560         * gnulib-tool (func_import): Prefer rsync over wget when available,
16561         for fetching the PO files.
16562
16563 2007-09-08  Bruno Haible  <bruno@clisp.org>
16564
16565         * posix-modules: New file. Portions copied from gnulib-tool.
16566         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
16567
16568 2007-09-08  Jim Meyering  <jim@meyering.net>
16569
16570         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
16571         * lib/fpending.h: Rename from __fpending.h.
16572         * lib/fpending.c: Rename from __fpending.c.
16573         Include "fpending.h", not "__fpending.h".
16574         * lib/__fpending.h, lib/__fpending.c: Remove files.
16575         * modules/fpending (Files): Reflect new file names.
16576         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
16577
16578 2007-09-08  Bruno Haible  <bruno@clisp.org>
16579
16580         * m4/inttypes-h.m4: Remove stub file.
16581
16582 2007-09-07  Simon Josefsson  <simon@josefsson.org>
16583
16584         * doc/headers/stdint.texi: Discuss #include_next issue.
16585
16586 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
16587
16588         * build-aux/bootstrap: Remove obsolete comment about wget --help.
16589
16590 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16591
16592         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
16593         in variable name.
16594
16595 2007-09-03  Jim Meyering  <jim@meyering.net>
16596
16597         New module: git-version-gen.
16598         * modules/git-version-gen: New file.
16599
16600         Import changes from coreutils for bootstrap script.
16601
16602         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
16603
16604         bootstrap: uses rsync to download the .po files
16605         * build-aux/bootstrap (po_download_command_format): New global.
16606         (download_po_files): Use rsync.
16607         (update_po_files): Don't remove .po files after download,
16608         so future rsync runs can take advantage of the copies.
16609
16610         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
16611
16612         Solve the unnecessary-.po-file-regeneration problem once and for all.
16613         * build-aux/bootstrap (download_po_files): New function, renamed from
16614         get_translations.  Now, downloads, but doesn't update LINGUAS.
16615         (update_po_files): New function.
16616
16617         bootstrap: Ignore more.
16618         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
16619         uniwidth to e.g., lib/.gitignore.
16620         (slurp): Handle the sys_stat_.h -> sys mapping, too.
16621
16622         * build-aux/bootstrap: New setting: vc_ignore.
16623         (insert_sorted_if_absent): Create $file if absent.
16624         Adapt to new, possibly empty, list: $vc_ignore.
16625
16626         bootstrap: generate more ignorable names
16627         * build-aux/bootstrap (slurp): When generating ignorable names,
16628         also map .sin to .sed, .gperf to .c, and .y to .c.
16629
16630 2007-09-03  Jim Meyering  <jim@meyering.net>
16631
16632         * build-aux/git-version-gen: New file, from coreutils.  For details, see
16633         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
16634
16635 2007-09-02  Bruno Haible  <bruno@clisp.org>
16636
16637         Fix mis-recognition of 'mcs' on QNX 6.
16638         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
16639         output contains the string "Mono".
16640         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
16641         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
16642
16643 2007-09-01  Bruno Haible  <bruno@clisp.org>
16644
16645         Fix collision between uniwidth/* and linebreak modules.
16646         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
16647         u32_width): Remove declarations.
16648         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
16649         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
16650         streq3, streq2, streq1, streq0): Remove functions.
16651         (STREQ): Remove macro.
16652         (is_cjk_encoding): Remove function.
16653         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
16654         (uc_width, u8_width, u16_width, u32_width): Remove functions.
16655         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
16656         * NEWS: Document the change.
16657
16658 2007-09-01  Bruno Haible  <bruno@clisp.org>
16659
16660         * lib/streq.h: Add double-inclusion guard.
16661
16662 2007-09-01  Karl Berry  <karl@gnu.org>
16663
16664         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
16665
16666 2007-08-28  Jim Meyering  <jim@meyering.net>
16667
16668         Rename mreadlink_with_size to areadlink_with_size.
16669         * NEWS: Document the change.
16670         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
16671         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
16672         * lib/mreadlink.h: Rename this to...
16673         * lib/areadlink.h: ...this.
16674         * modules/mreadlink-with-size: Rename this to...
16675         * modules/areadlink-with-size: ...this.
16676         * lib/canonicalize.c: Reflect the renaming.
16677         * modules/canonicalize: Likewise.
16678
16679 2007-08-26  Bruno Haible  <bruno@clisp.org>
16680
16681         * gnulib-tool (func_import): When deciding which files to remove,
16682         consider also dangling symbolic links.
16683         Reported by Eric Blake.
16684
16685 2007-08-26  Bruno Haible  <bruno@clisp.org>
16686
16687         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
16688
16689 2007-08-23  Simon Josefsson  <simon@josefsson.org>
16690
16691         * lib/readline.c: Don't include getline.h, the prototype is now
16692         found in stdio.h.
16693
16694 2007-08-23  Jim Meyering  <jim@meyering.net>
16695
16696         Getdelim touchup.
16697         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
16698         around the funlockfile call, since funlockfile never sets errno.
16699         Don't set errno upon failed realloc.
16700
16701 2007-08-22  Eric Blake  <ebb9@byu.net>
16702
16703         Getline touchups.
16704         * lib/getdelim.c (getdelim): Revert regression that required *n to
16705         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
16706         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
16707         getdelim, rather than whether implementation is missing.
16708         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
16709         * lib/stdio_.h (getline): Also declare if replacement is
16710         required.
16711         * doc/functions/getdelim.texi: New file.
16712         * doc/functions/getline.texi: Likewise.
16713         * doc/gnulib.texi (Function Substitutes): Add new files.
16714         Reported by Bruno Haible.
16715
16716 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
16717
16718         * users.txt: Add Guile.
16719
16720 2007-08-22  Eric Blake  <ebb9@byu.net>
16721
16722         * tests/test-getdelim.c (main): Use remove, not unlink.
16723         * tests/test-getline.c (main): Likewise.
16724
16725         Move getline and getdelim into stdio.h, per POSIX 200x.
16726         * modules/getline (Files): Remove getline.h.
16727         (Depends-on): Add stdio.
16728         (configure.ac): Add module indicator.
16729         * modules/getdelim (Files): Remove getdelim.h.
16730         (Depends-on): Add stdio.
16731         (configure.ac): Add module indicator.
16732         * modules/stdio (Makefile.am): Work with new indicators.
16733         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
16734         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
16735         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
16736         * lib/getdelim.h: Delete.
16737         * lib/getline.h: Delete.
16738         * lib/stdio_.h (getdelim, getline): Declare.
16739         * modules/getdelim-tests: New module.
16740         * modules/getline-tests: Likewise.
16741         * tests/test-getdelim.c: New file.
16742         * tests/test-getline.c: Likewise.
16743         * NEWS: Document the change.
16744         * lib/getline.c: Update choice of header.
16745         * lib/csharpcomp.c: Likewise.
16746         * lib/getpass.c: Likewise.
16747         * lib/javacomp.c: Likewise.
16748         * lib/javaversion.c: Likewise.
16749         * lib/yesno.c: Likewise.
16750         * lib/getdelim.c: Likewise.
16751         (getdelim): Set errno on failure, and avoid memory leak.
16752
16753 2007-08-19  Bruno Haible  <bruno@clisp.org>
16754
16755         * modules/closein (Depends-on): Add freadahead.
16756         * lib/closein.c: Include freadahead.h.
16757         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
16758         is zero.
16759
16760 2007-08-19  Bruno Haible  <bruno@clisp.org>
16761
16762         * modules/freadahead-tests: New file.
16763         * tests/test-freadahead.sh: New file.
16764         * tests/test-freadahead.c: New file.
16765
16766         * modules/freadahead: New file.
16767         * lib/freadahead.h: New file.
16768         * lib/freadahead.c: New file.
16769         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
16770         fbufmode, fpurge, freadable, fwritable.
16771
16772 2007-08-19  Eric Blake  <ebb9@byu.net>
16773
16774         Test yesno in combination with closein.
16775         * lib/yesno.c (yesno): Document use of stdin.
16776         * modules/yesno-tests (Files): New module.
16777         * tests/test-yesno.c (main): New file.
16778         * tests/test-yesno.sh: Likewise.
16779
16780 2007-08-19  Bruno Haible  <bruno@clisp.org>
16781
16782         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
16783         * lib/fseeko.c (rpl_fseeko): Likewise.
16784         * lib/fseterr.c (fseterr): Likewise.
16785
16786 2007-08-19  Bruno Haible  <bruno@clisp.org>
16787
16788         * tests/test-lseek.c (main): Disable a test for BeOS.
16789         * doc/functions/lseek.texi: Document the BeOS bug.
16790
16791 2007-08-19  Bruno Haible  <bruno@clisp.org>
16792             Eric Blake  <ebb9@byu.net>
16793
16794         * lib/lseek.c: Include <sys/stat.h>.
16795         (rpl_lseek): Add workaround code also for Unix platforms.
16796         Needed for BeOS.
16797         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
16798         * doc/functions/lseek.texi: Document BeOS definiency.
16799
16800 2007-08-18  Bruno Haible  <bruno@clisp.org>
16801
16802         * modules/fstrcmp-tests: New file.
16803         * tests/test-fstrcmp.c: New file.
16804
16805 2007-08-18  Bruno Haible  <bruno@clisp.org>
16806
16807         * modules/fstrcmp: New file, from GNU gettext with modifications.
16808         * lib/fstrcmp.h: New file, from GNU gettext.
16809         * lib/fstrcmp.c: New file, from GNU gettext.
16810         * MODULES.html.sh (String handling): Add fstrcmp.
16811
16812 2007-08-18  Bruno Haible  <bruno@clisp.org>
16813
16814         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
16815         'bool'.
16816         (diag, compareseq): Remove const from the ctxt argument.
16817         (USE_HEURISTIC): Undefine at the end.
16818
16819 2007-08-18  Jim Meyering  <jim@meyering.net>
16820
16821         New file: lib/idcache.h
16822         * NEWS: Mention the addition.
16823         * modules/idcache (Files): Add lib/idcache.h
16824         * lib/idcache.c: Include "idcache.h".
16825         Don't include <sys/types.h>.
16826         Add a FIXME comment.
16827         Move file-scoped "static" declarations to the top.
16828         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
16829
16830 2007-08-17  Bruno Haible  <bruno@clisp.org>
16831         and Paul Eggert  <eggert@cs.ucla.edu>
16832
16833         * MODULES.html.sh: Add diffseq.
16834         * modules/diffseq: New file.
16835         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
16836         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
16837
16838 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
16839
16840         Import changes from coreutils for bootstrap script.
16841
16842         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
16843
16844         * build-aux/bootstrap (slurp): Work even in environments where
16845         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
16846         current code does not slurp files whose names start with ".", and
16847         this looks like it might be a troublesome area.
16848
16849         2007-07-11  Jim Meyering  <jim@meyering.net>
16850
16851         If there's a GPL vN copyright comment, require that N == 3.
16852
16853         2007-07-08  Jim Meyering  <jim@meyering.net>
16854
16855         Run the coreutils-specific code only if tests/Makefile.am.in exists.
16856         * build-aux/bootstrap (mam_template): Move definition out of loop.
16857
16858         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
16859
16860         * build-aux/bootstrap (symlink_to_dir): Rename function from
16861         symlink_to_gnulib.  Add a directory parameter.  Update all
16862         callers.
16863         (cp_mark_as_generated): Also check for -- and link to -- files in
16864         gl/.
16865
16866         2007-07-08  Jim Meyering  <jim@meyering.net>
16867
16868         Adapt to deeper hierarchy in gnulib.
16869         * build-aux/bootstrap (symlink_to_dir): If the destination
16870         directory doesn't exist, create it. This is required at least for
16871         "lib/uniwidth/cjk.h".
16872
16873         2007-05-15  Jim Meyering  <jim@meyering.net>
16874
16875         * build-aux/bootstrap: Now that generated Makefile.am files
16876         are no longer under version control, they must be created at
16877         bootstrap time.
16878
16879 2007-08-14  Ben Pfaff  <blp@gnu.org>
16880
16881         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
16882
16883 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
16884
16885         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
16886         given the changes below.
16887         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
16888         even on hosts that have padding bits beyond the supported 64.
16889
16890 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
16891
16892         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
16893         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
16894         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
16895         depends on it.
16896         (xstrtol_error): Remove.
16897         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
16898         but with a different signature.
16899         (ATTRIBUTE_NORETURN, __attribute__): New macros.
16900         * lib/xstrtol-error.c: Include exitfail.h.
16901         (xstrtol_fatal): New function, with a different signature from the
16902         old xstrtol_error, so that the caller need not worry about passing
16903         in an exit status, or about storage management of the option argument.
16904         (xstrtol_error): Now a static function.  Redo signature to
16905         implement xstrtol_fatal.  Output the correct number of hyphens in
16906         front of the option so that the caller need not worry about
16907         storage management.
16908         (N_): New macro.
16909         (_): Remove; not used now.
16910         * modules/xstrtol: Depend on getopt.
16911         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
16912         of old STRTOL_FATAL_ERROR macro.
16913         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
16914         of test program.
16915         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
16916         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
16917
16918 2007-08-08  Eric Blake  <ebb9@byu.net>
16919
16920         * lib/xstrtol-error.c: Add missing include.
16921
16922         Move xstrtol messages into gnulib domain, when --pobase is used.
16923         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
16924         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
16925         * modules/xstrtol (Files): Distribute new file.
16926         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
16927         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
16928         * tests/test-xstrtol.c: ...into new file.
16929         * tests/test-xstrtoul.c: Also test xstrtoul.
16930         * tests/test-xstrtoimax.c: Also test xstrtoimax.
16931         * tests/test-xstrtoumax.c: Also test xstrtoumax.
16932         * tests/test-xstrtol.sh: Drive the tests.
16933         * tests/test-xstrtoimax.sh: Likewise.
16934         * tests/test-xstrtoumax.sh: Likewise.
16935         * modules/xstrtol-tests: New module.
16936         * modules/xstrtoimax-tests: Likewise.
16937         * modules/xstrtoumax-tests: Likewise.
16938
16939 2007-08-08  Jim Meyering  <jim@meyering.net>
16940
16941         New function: mfile_name_concat.
16942         * lib/filenamecat.c (mfile_name_concat): New function, just like
16943         file_name_concat, but return NULL upon failure rather than exiting
16944         with a diagnostic.
16945         * lib/filenamecat.h: Declare it.
16946
16947 2007-08-07  Bruno Haible  <bruno@clisp.org>
16948
16949         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
16950         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
16951         warning from gcc.
16952         Reported by Eric Blake.
16953
16954 2007-08-07  Simon Josefsson  <simon@josefsson.org>
16955
16956         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
16957         * modules/crypto/arcfour (License): Likewise.
16958         * modules/crypto/des-tests (License): Likewise.
16959         * modules/crypto/gc-arctwo-tests (License): Likewise.
16960         * modules/crypto/gc-des-tests (License): Likewise.
16961         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
16962         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
16963         * modules/crypto/gc-md2-tests (License): Likewise.
16964         * modules/crypto/gc-md4-tests (License): Likewise.
16965         * modules/crypto/gc-md5-tests (License): Likewise.
16966         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
16967         * modules/crypto/gc-rijndael-tests (License): Likewise.
16968         * modules/crypto/gc-sha1-tests (License): Likewise.
16969         * modules/crypto/gc-tests (License): Likewise.
16970         * modules/crypto/hmac-md5 (License): Likewise.
16971         * modules/crypto/hmac-sha1 (License): Likewise.
16972         * modules/crypto/md2-tests (License): Likewise.
16973         * modules/crypto/md4-tests (License): Likewise.
16974         * modules/crypto/md5 (License): Likewise.
16975         * modules/crypto/rijndael (License): Likewise.
16976         * modules/crypto/sha1 (License): Likewise.
16977         * modules/memxor (License): Likewise.
16978
16979 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
16980         and Bruno Haible  <bruno@clisp.org>
16981
16982         * NEWS: Describe interface changes to human, xstrtol.
16983         * lib/human.h: Include <xstrtol.h>.
16984         (human_options): Return enum strtol_error, not int.  Remove
16985         bool arg; take int * instead.
16986         * lib/human.c: Don't include "gettext.h".
16987         (_): Remove; no longer used.
16988         Don't include <xstrtol.h>, since human.h does it.
16989         (human_options): Adjust to abovementioned interface changes.
16990         Do not report error to stderr; that's now the caller's
16991         responsibility.
16992         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
16993         interface change.
16994         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
16995         Str, Argument_type_string.  All uses changed.  Put " argument"
16996         in diagnostics to make them clearer.  Change wording of suffix
16997         message for clarity.
16998         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
16999         Argument_type_string.
17000         (STRTOL_FATAL_WARN): Remove; no longer used.
17001         * modules/human (Depends-on): Remove gettext-h.
17002
17003 2007-08-06  Simon Josefsson  <simon@josefsson.org>
17004
17005         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
17006
17007 2007-07-31  Bruno Haible  <bruno@clisp.org>
17008
17009         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
17010         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
17011         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
17012
17013 2007-07-31  Bruno Haible  <bruno@clisp.org>
17014
17015         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
17016         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
17017
17018 2007-07-30  Bruno Haible  <bruno@clisp.org>
17019
17020         * modules/base64 (License): Use the synonymous term "LGPLv2+".
17021         * modules/c-ctype (License): Likewise.
17022         * modules/c-strcase (License): Likewise.
17023         * modules/check-version (License): Likewise.
17024         * modules/iconv (License): Likewise.
17025         * modules/iconv_open (License): Likewise.
17026         * modules/read-file (License): Likewise.
17027         * modules/striconv (License): Likewise.
17028         * modules/strverscmp (License): Likewise.
17029         * modules/vasprintf (License): Likewise.
17030         * modules/crypto/des (License): Likewise.
17031         * modules/crypto/gc (License): Likewise.
17032         * modules/crypto/gc-arcfour (License): Likewise.
17033         * modules/crypto/gc-arctwo (License): Likewise.
17034         * modules/crypto/gc-des (License): Likewise.
17035         * modules/crypto/gc-hmac-md5 (License): Likewise.
17036         * modules/crypto/gc-hmac-sha1 (License): Likewise.
17037         * modules/crypto/gc-md2 (License): Likewise.
17038         * modules/crypto/gc-md4 (License): Likewise.
17039         * modules/crypto/gc-md5 (License): Likewise.
17040         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
17041         * modules/crypto/gc-random (License): Likewise.
17042         * modules/crypto/gc-rijndael (License): Likewise.
17043         * modules/crypto/gc-sha1 (License): Likewise.
17044         * modules/crypto/md2 (License): Likewise.
17045         * modules/crypto/md4 (License): Likewise.
17046
17047 2007-07-30  Jim Meyering  <jim@meyering.net>
17048
17049         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
17050         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
17051         it has valid stat data.  This bug would cause du not to count the
17052         sizes of inaccessible directories.
17053         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
17054         in <http://bugzilla.redhat.com/250077>.
17055
17056 2007-07-25  Peter O'Gorman  <peter@pogma.com>
17057             Bruno Haible  <bruno@clisp.org>
17058
17059         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
17060         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
17061         #include_next, gives a diagnostic about it, but reports no error in
17062         the exit code.
17063         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
17064
17065 2007-07-24  Ben Pfaff  <blp@gnu.org>
17066
17067         Improve name: "count-one-bits" is better than "popcount".
17068         * MODULES.html.sh: Update name.
17069         * lib/popcount.h: Renamed lib/count-one-bits.h.
17070         (popcount): Renamed count_one_bits.
17071         (popcountl): Renamed count_one_bits_l.
17072         (popcountll): Renamed count_one_bits_ll.
17073         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
17074         * modules/popcount: Renamed module/count-one-bits.
17075         * modules/popcount-tests: Renamed module/count-one-bits-tests.
17076         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
17077
17078 2007-07-23  Ben Pfaff  <blp@gnu.org>
17079
17080         * lib/popcount.h (popcount32): Reduce size of constants, to allow
17081         better code generation, and add U to large constants to avoid
17082         warnings, in non-GCC case.
17083         Suggested by Bruno Haible.
17084
17085 2007-07-23  Ben Pfaff  <blp@gnu.org>
17086
17087         * lib/popcount.h: Use verify_true instead of if...abort.
17088         * modules/popcount: Depend on verify module.
17089         Suggested by Jim Meyering.
17090
17091 2007-07-23  Bruno Haible  <bruno@clisp.org>
17092
17093         * gnulib-tool (func_import): Create a .cvsignore file also when the
17094         directory is not yet in CVS but the toplevel directory is. When
17095         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
17096         Reported by Karl Berry.
17097
17098 2007-07-22  Ben Pfaff  <blp@gnu.org>
17099
17100         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
17101         case.
17102         Suggested by Eric Blake.
17103
17104 2007-07-22  Ben Pfaff  <blp@gnu.org>
17105
17106         New module: popcount.
17107         * MODULES.html.sh: Add popcount.
17108         * modules/popcount: New file.
17109         * modules/popcount-tests: New file.
17110         * tests/test-popcount.c: New file.
17111         * lib/popcount.h: New file.
17112         * m4/popcount.m4: New file.
17113
17114 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
17115
17116         * build-aux/announce-gen: Update to GPLv3.
17117
17118         * build-aux/config.guess: Update from config.
17119
17120 2007-07-21  Bruno Haible  <bruno@clisp.org>
17121
17122         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
17123         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
17124
17125 2007-07-20  Jim Meyering  <jim@meyering.net>
17126
17127         * check-module: Diagnose a self-dependency.
17128
17129 2007-07-19  Bruno Haible  <bruno@clisp.org>
17130
17131         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
17132         empty.
17133         Reported by Eric Blake.
17134
17135 2007-07-18  Bruno Haible  <bruno@clisp.org>
17136
17137         * gnulib-tool: New options --po-base, --po-domain.
17138         (func_usage): Document them.
17139         (pobase, po_domain): New variables.
17140         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
17141         DEFAULT_TEXT_DOMAIN.
17142         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
17143         (func_import): Consider pobase and po_domain. Create a po/ directory.
17144         (func_create_testdir): Set pobase and po_domain to empty.
17145         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
17146         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
17147
17148 2007-07-18  Bruno Haible  <bruno@clisp.org>
17149
17150         * gnulib-tool (func_get_automake_snippet): Synthesize also an
17151         EXTRA_DIST augmentation for files in build-aux/.
17152
17153 2007-07-16  Bruno Haible  <bruno@clisp.org>
17154
17155         * modules/lseek (License): Use the synonymous term "LGPLv2+".
17156         * modules/getdelim (License): Likewise.
17157
17158 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17159
17160         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
17161         * modules/d-type (License): Likewise.
17162         * modules/extensions (License): Likewise.
17163         * modules/fnmatch (License): Likewise.
17164         * modules/fseeko (License): Likewise.
17165         * modules/getaddrinfo (License): Likewise.
17166         * modules/getline (License): Likewise.
17167         * modules/getlogin_r (License): Likewise.
17168         * modules/getpass (License): Likewise.
17169         * modules/gettimeofday (License): Likewise.
17170         * modules/glob (License): Likewise.
17171         * modules/inet_ntop (License): Likewise.
17172         * modules/malloc (License): Likewise.
17173         * modules/malloca (License): Likewise.
17174         * modules/memmem (License): Likewise.
17175         * modules/mempcpy (License): Likewise.
17176         * modules/memset (License): Likewise.
17177         * modules/minmax (License): Likewise.
17178         * modules/mktime (License): Likewise.
17179         * modules/netinet_in (License): Likewise.
17180         * modules/pathmax (License): Likewise.
17181         * modules/poll (License): Likewise.
17182         * modules/regex (License): Likewise.
17183         * modules/snprintf (License): Likewise.
17184         * modules/stdbool (License): Likewise.
17185         * modules/stdint (License): Likewise.
17186         * modules/stdio (License): Likewise.
17187         * modules/strcase (License): Likewise.
17188         * modules/strcasestr (License): Likewise.
17189         * modules/strdup (License): Likewise.
17190         * modules/string (License): Likewise.
17191         * modules/strndup (License): Likewise.
17192         * modules/strnlen (License): Likewise.
17193         * modules/strpbrk (License): Likewise.
17194         * modules/strptime (License): Likewise.
17195         * modules/strsep (License): Likewise.
17196         * modules/sys_select (License): Likewise.
17197         * modules/sys_socket (License): Likewise.
17198         * modules/sys_stat (License): Likewise.
17199         * modules/sys_time (License): Likewise.
17200         * modules/time (License): Likewise.
17201         * modules/time_r (License): Likewise.
17202         * modules/timegm (License): Likewise.
17203         * modules/unistd (License): Likewise.
17204         * modules/vsnprintf (License): Likewise.
17205         * modules/wctype (License): Likewise.
17206
17207 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17208
17209         * modules/argz (License): LGPLv2+.
17210
17211 2007-07-15  Karl Berry  <karl@gnu.org>
17212
17213         * doc/gnulib.texi: revise node structure per new fdl.texi.
17214
17215 2007-07-14  Bruno Haible  <bruno@clisp.org>
17216
17217         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
17218         the output file.
17219         * lib/uniname/uninames.h: Regenerated.
17220
17221 2007-07-14  Karl Berry  <karl@gnu.org>
17222
17223         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
17224         omitting sectioning and index commands.
17225
17226 2007-07-13  Bruno Haible  <bruno@clisp.org>
17227
17228         New gnulib-tool option --more-symlinks.
17229         * gnulib-tool (func_usage): Document --more-symlinks.
17230         (do_copyrights): New variable.
17231         Recognize option --more-symlinks.
17232         (func_import): Don't add a copyright notice transform to
17233         sed_transform_lib_file if do_copyrights is empty.
17234
17235 2007-07-13  Bruno Haible  <bruno@clisp.org>
17236
17237         * lib/vasnprintf.c (decimal_point_char): Define also if
17238         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
17239         && !NEED_PRINTF_DIRECTIVE_A.
17240         Reported by Clemens Koller <clemens.koller@anagramm.de> via
17241         Gary V. Vaughan <gary@gnu.org>.
17242
17243 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
17244
17245         * lib/inttypes_.h: Undo previous change, since it was fixed
17246         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
17247
17248 2007-07-13  Bruno Haible  <bruno@clisp.org>
17249
17250         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
17251         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
17252
17253 2007-07-13  Jim Meyering  <jim@meyering.net>
17254
17255         df: Don't fail for Tru64's "file-on-file mount".
17256         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
17257         so we fall through and use statfs instead.  Details here:
17258         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
17259         Reported by Albert Chin.
17260
17261 2007-07-13  Bruno Haible  <bruno@clisp.org>
17262
17263         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
17264         * modules/configmake (License): Likewise.
17265         * modules/gettext (License): Likewise.
17266         * modules/gettext-h (License): Likewise.
17267         * modules/include_next (License): Likewise.
17268         * modules/link-warning (License): Likewise.
17269         * modules/localcharset (License): Likewise.
17270         * modules/localename (License): Likewise.
17271         * modules/lock (License): Likewise.
17272         * modules/relocatable-lib-lgpl (License): Likewise.
17273         * modules/size_max (License): Likewise.
17274         * modules/vasnprintf (License): Likewise.
17275         * modules/wchar (License): Likewise.
17276         * modules/xsize (License): Likewise.
17277
17278 2007-07-13  Bruno Haible  <bruno@clisp.org>
17279
17280         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
17281         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
17282
17283 2007-07-12  Bruno Haible  <bruno@clisp.org>
17284
17285         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
17286         in the modules files.
17287
17288 2007-07-11  Karl Berry  <karl@gnu.org>
17289
17290         * MODULES.html.sh (func_module): use
17291          sed -e '\|^'"${includefile}"'$|d'
17292          instead of /.../d, to avoid errors on $includefile's containing /.
17293
17294 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
17295
17296         * gnulib-tool (func_import): Avoid duplication of --avoid
17297         statements
17298         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
17299         names to `_' in variable names.
17300
17301 2007-07-10  Eric Blake  <ebb9@byu.net>
17302
17303         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
17304         * NEWS: Document this change.
17305
17306 2007-07-08  Bruno Haible  <bruno@clisp.org>
17307
17308         Update to Unicode 5.0.
17309         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
17310         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
17311         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
17312         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
17313         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
17314         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
17315         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
17316         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
17317         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
17318         U+10A3F, U+1D242..U+1D244.
17319         (nonspacing_table_ind): Update.
17320         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
17321         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
17322
17323 2007-07-08  Bruno Haible  <bruno@clisp.org>
17324
17325         Update to Unicode 5.0.
17326         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
17327         code transform. Extend the name index field of unicode_name_to_code and
17328         unicode_code_to_name from 16 to 24 bits.
17329         * lib/uniname/uniname.c (unicode_character_name,
17330         unicode_name_character): Add the range 0x12xxx to the code transform.
17331         * lib/uniname/uninames.h: Regenerated.
17332         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
17333
17334 2007-07-07  Bruno Haible  <bruno@clisp.org>
17335
17336         * modules/wcwidth-tests: New file.
17337         * tests/test-wcwidth.c: New file.
17338
17339         Work around MacOS X wcwidth() bug.
17340         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
17341         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
17342         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
17343         original wcwidth in non-UTF-8 locales.
17344         * modules/wcwidth (Depends-on): Add localcharset, streq,
17345         uniwidth/width.
17346         * doc/functions/wcwidth.texi: Update.
17347
17348 2007-07-07  Bruno Haible  <bruno@clisp.org>
17349
17350         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
17351         (wcwidth): New declaration.
17352         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
17353         macros.
17354         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
17355         here. Prepare for creating <wchar.h> unconditionally.
17356         * modules/wchar (Depends-on): Add link-warning.
17357         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
17358         REPLACE_WCWIDTH, and GL_LINK_WARNING.
17359         * lib/wcwidth.h: Remove file.
17360         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
17361         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
17362         * modules/wcwidth (Files): Remove lib/wcwidth.h.
17363         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
17364         (Include): Replace wcwidth.h with <wchar.h>.
17365         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
17366         * lib/mbchar.h: Don't include wcwidth.h.
17367         * lib/mbswidth.c: Likewise.
17368         * NEWS: Mention the change.
17369
17370 2007-07-07  Bruno Haible  <bruno@clisp.org>
17371
17372         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
17373         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
17374         definition with an external declaration.
17375         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
17376         defined as a function. Remove AC_C_INLINE requirement.
17377         * modules/wcwidth (Files): Add lib/wcwidth.c.
17378         (Makefile.am): Remove redundant statement.
17379
17380 2007-07-07  Bruno Haible  <bruno@clisp.org>
17381
17382         * MODULES.html.sh (Unicode string functions): Add the new modules.
17383
17384         * tests/uniwidth/test-u32-strwidth.c: New file.
17385         * modules/uniwidth/u32-strwidth-tests: New file.
17386
17387         * lib/uniwidth/u32-strwidth.c: New file.
17388         * modules/uniwidth/u32-strwidth: New file.
17389
17390         * tests/uniwidth/test-u16-strwidth.c: New file.
17391         * modules/uniwidth/u16-strwidth-tests: New file.
17392
17393         * lib/uniwidth/u16-strwidth.c: New file.
17394         * modules/uniwidth/u16-strwidth: New file.
17395
17396         * tests/uniwidth/test-u8-strwidth.c: New file.
17397         * modules/uniwidth/u8-strwidth-tests: New file.
17398
17399         * lib/uniwidth/u8-strwidth.c: New file.
17400         * modules/uniwidth/u8-strwidth: New file.
17401
17402         * tests/uniwidth/test-u32-width.c: New file.
17403         * modules/uniwidth/u32-width-tests: New file.
17404
17405         * lib/uniwidth/u32-width.c: New file.
17406         * modules/uniwidth/u32-width: New file.
17407
17408         * tests/uniwidth/test-u16-width.c: New file.
17409         * modules/uniwidth/u16-width-tests: New file.
17410
17411         * lib/uniwidth/u16-width.c: New file.
17412         * modules/uniwidth/u16-width: New file.
17413
17414         * tests/uniwidth/test-u8-width.c: New file.
17415         * modules/uniwidth/u8-width-tests: New file.
17416
17417         * lib/uniwidth/u8-width.c: New file.
17418         * modules/uniwidth/u8-width: New file.
17419
17420         * tests/uniwidth/test-uc_width.c: New file.
17421         * modules/uniwidth/width-tests: New file.
17422
17423         * lib/uniwidth/width.c: New file, from GNU libiconv.
17424         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
17425         * modules/uniwidth/width: New file.
17426
17427         * lib/uniwidth.h: New file, from GNU libiconv.
17428         * modules/uniwidth/base: New file.
17429
17430 2007-07-07  Bruno Haible  <bruno@clisp.org>
17431
17432         * lib/uniname.h: New file, from GNU gettext.
17433         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
17434         * lib/uniname/uninames.h: New file, from GNU gettext.
17435         * lib/uniname/uniname.c: New file, from GNU gettext.
17436         * tests/uniname/test-uninames.sh: New file.
17437         * tests/uniname/test-uninames.c: New file, from GNU gettext.
17438         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
17439         * modules/uniname/base: New file.
17440         * modules/uniname/uniname: New file.
17441         * modules/uniname/uniname-tests: New file.
17442         * MODULES.html.sh (Unicode string functions): Add the new modules.
17443
17444 2007-07-06  Bruno Haible  <bruno@clisp.org>
17445
17446         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
17447
17448 2007-07-06  Bruno Haible  <bruno@clisp.org>
17449
17450         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
17451         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
17452         includes <cygwin/sys_time.h> which includes <sys/select.h> which
17453         include <sys/time.h>.
17454         Reported by Eric Blake.
17455
17456 2007-07-06  Eric Blake  <ebb9@byu.net>
17457
17458         Fix testing canonicalize on cygwin.
17459         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
17460         Revert patch from 2007-06-19.
17461         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
17462         canonicalize module is also in use.
17463         * tests/test-canonicalize.c: New file.
17464         * tests/test-canonicalize.sh: Likewise.
17465         * modules/canonicalize-tests: Likewise.
17466
17467 2007-07-06  Jim Meyering  <jim@meyering.net>
17468
17469         * lib/getugroups.c (getugroups): Detect getgrent failure.
17470         Adjust comment to reflect reality: this function may return -1.
17471
17472 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
17473
17474         * build-aux/bootstrap (TP_URL,get_translations): Update to use
17475         the new TP address.
17476         (usage): Fix typo
17477         (gnulib_mk): New variable.
17478
17479 2007-07-05  Jim Meyering  <jim@meyering.net>
17480
17481         Don't let endgrent clobber errno, no matter how improbable.
17482         * lib/getugroups.c (getugroups): Save and restore errno around
17483         endgrent call.
17484
17485         Close the group DB even when failing with 2^31 or more members.
17486         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
17487
17488 2007-07-04  Jim Meyering  <jim@meyering.net>
17489
17490         * lib/getugroups.h: New file.
17491         * lib/getugroups.c: Include "getugroups.h".
17492         Remove uses of "register" keyword.
17493         Move local variable, "cp", down into scope where used.
17494         Give "username" parameter the "const" attribute.
17495         * modules/getugroups (Files): Add lib/getugroups.h
17496
17497 2007-07-04  Karl Berry  <karl@gnu.org>
17498
17499         * MODULES.html.sh (func_all_modules): Complete rename of
17500         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
17501
17502 2007-07-02  Bruno Haible  <bruno@clisp.org>
17503
17504         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
17505         mode, when inttypes.h comes from gnulib.
17506         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
17507
17508 2007-07-02  Simon Josefsson  <simon@josefsson.org>
17509
17510         * NEWS: Mention lgpl module name change.
17511
17512         * modules/lgpl-2.1: Renamed from lgpl.
17513
17514         * NEWS: Mention gpl module name change.
17515
17516         * modules/gpl-3.0: New file, based on gpl-2.0.
17517
17518         * modules/gpl-2.0: Renamed from gpl.
17519
17520         * modules/gpl: Fix filename, doc/gpl.texi is now found at
17521         doc/gpl-2.0.texi.
17522
17523 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
17524
17525         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
17526         #define __STDC_LIMIT_MACROS temporarily while including
17527         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
17528         Problem reported by Joel E. Denny in
17529         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
17530
17531 2007-07-01  Bruno Haible  <bruno@clisp.org>
17532
17533         * lib/unistdio.h: New file.
17534         * lib/unistdio/u-asnprintf.h: New file.
17535         * lib/unistdio/u-asprintf.h: New file.
17536         * lib/unistdio/u-printf-args.c: New file.
17537         * lib/unistdio/u-printf-args.h: New file.
17538         * lib/unistdio/u-printf-parse.h: New file.
17539         * lib/unistdio/u-snprintf.h: New file.
17540         * lib/unistdio/u-sprintf.h: New file.
17541         * lib/unistdio/u-vasprintf.h: New file.
17542         * lib/unistdio/u-vsnprintf.h: New file.
17543         * lib/unistdio/u-vsprintf.h: New file.
17544         * lib/unistdio/ulc-asnprintf.c: New file.
17545         * lib/unistdio/ulc-asprintf.c: New file.
17546         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
17547         * lib/unistdio/ulc-printf-parse.c: New file.
17548         * lib/unistdio/ulc-snprintf.c: New file.
17549         * lib/unistdio/ulc-sprintf.c: New file.
17550         * lib/unistdio/ulc-vasnprintf.c: New file.
17551         * lib/unistdio/ulc-vasprintf.c: New file.
17552         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
17553         * lib/unistdio/ulc-vsnprintf.c: New file.
17554         * lib/unistdio/ulc-vsprintf.c: New file.
17555         * lib/unistdio/u8-asnprintf.c: New file.
17556         * lib/unistdio/u8-asprintf.c: New file.
17557         * lib/unistdio/u8-printf-parse.c: New file.
17558         * lib/unistdio/u8-snprintf.c: New file.
17559         * lib/unistdio/u8-sprintf.c: New file.
17560         * lib/unistdio/u8-vasnprintf.c: New file.
17561         * lib/unistdio/u8-vasprintf.c: New file.
17562         * lib/unistdio/u8-vsnprintf.c: New file.
17563         * lib/unistdio/u8-vsprintf.c: New file.
17564         * lib/unistdio/u8-u8-asnprintf.c: New file.
17565         * lib/unistdio/u8-u8-asprintf.c: New file.
17566         * lib/unistdio/u8-u8-snprintf.c: New file.
17567         * lib/unistdio/u8-u8-sprintf.c: New file.
17568         * lib/unistdio/u8-u8-vasnprintf.c: New file.
17569         * lib/unistdio/u8-u8-vasprintf.c: New file.
17570         * lib/unistdio/u8-u8-vsnprintf.c: New file.
17571         * lib/unistdio/u8-u8-vsprintf.c: New file.
17572         * lib/unistdio/u16-asnprintf.c: New file.
17573         * lib/unistdio/u16-asprintf.c: New file.
17574         * lib/unistdio/u16-printf-parse.c: New file.
17575         * lib/unistdio/u16-snprintf.c: New file.
17576         * lib/unistdio/u16-sprintf.c: New file.
17577         * lib/unistdio/u16-vasnprintf.c: New file.
17578         * lib/unistdio/u16-vasprintf.c: New file.
17579         * lib/unistdio/u16-vsnprintf.c: New file.
17580         * lib/unistdio/u16-vsprintf.c: New file.
17581         * lib/unistdio/u16-u16-asnprintf.c: New file.
17582         * lib/unistdio/u16-u16-asprintf.c: New file.
17583         * lib/unistdio/u16-u16-snprintf.c: New file.
17584         * lib/unistdio/u16-u16-sprintf.c: New file.
17585         * lib/unistdio/u16-u16-vasnprintf.c: New file.
17586         * lib/unistdio/u16-u16-vasprintf.c: New file.
17587         * lib/unistdio/u16-u16-vsnprintf.c: New file.
17588         * lib/unistdio/u16-u16-vsprintf.c: New file.
17589         * lib/unistdio/u32-asnprintf.c: New file.
17590         * lib/unistdio/u32-asprintf.c: New file.
17591         * lib/unistdio/u32-printf-parse.c: New file.
17592         * lib/unistdio/u32-snprintf.c: New file.
17593         * lib/unistdio/u32-sprintf.c: New file.
17594         * lib/unistdio/u32-vasnprintf.c: New file.
17595         * lib/unistdio/u32-vasprintf.c: New file.
17596         * lib/unistdio/u32-vsnprintf.c: New file.
17597         * lib/unistdio/u32-vsprintf.c: New file.
17598         * lib/unistdio/u32-u32-asnprintf.c: New file.
17599         * lib/unistdio/u32-u32-asprintf.c: New file.
17600         * lib/unistdio/u32-u32-snprintf.c: New file.
17601         * lib/unistdio/u32-u32-sprintf.c: New file.
17602         * lib/unistdio/u32-u32-vasnprintf.c: New file.
17603         * lib/unistdio/u32-u32-vasprintf.c: New file.
17604         * lib/unistdio/u32-u32-vsnprintf.c: New file.
17605         * lib/unistdio/u32-u32-vsprintf.c: New file.
17606         * tests/unistdio/test-ulc-asnprintf1.c: New file.
17607         * tests/unistdio/test-ulc-asnprintf1.h: New file.
17608         * tests/unistdio/test-ulc-printf1.h: New file.
17609         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
17610         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
17611         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
17612         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
17613         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
17614         * tests/unistdio/test-ulc-vasprintf1.c: New file.
17615         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
17616         * tests/unistdio/test-ulc-vsprintf1.c: New file.
17617         * tests/unistdio/test-u8-asnprintf1.c: New file.
17618         * tests/unistdio/test-u8-asnprintf1.h: New file.
17619         * tests/unistdio/test-u8-printf1.h: New file.
17620         * tests/unistdio/test-u8-vasnprintf1.c: New file.
17621         * tests/unistdio/test-u8-vasnprintf2.c: New file.
17622         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
17623         * tests/unistdio/test-u8-vasnprintf3.c: New file.
17624         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
17625         * tests/unistdio/test-u8-vasprintf1.c: New file.
17626         * tests/unistdio/test-u8-vsnprintf1.c: New file.
17627         * tests/unistdio/test-u8-vsprintf1.c: New file.
17628         * tests/unistdio/test-u16-asnprintf1.c: New file.
17629         * tests/unistdio/test-u16-asnprintf1.h: New file.
17630         * tests/unistdio/test-u16-printf1.h: New file.
17631         * tests/unistdio/test-u16-vasnprintf1.c: New file.
17632         * tests/unistdio/test-u16-vasnprintf2.c: New file.
17633         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
17634         * tests/unistdio/test-u16-vasnprintf3.c: New file.
17635         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
17636         * tests/unistdio/test-u16-vasprintf1.c: New file.
17637         * tests/unistdio/test-u16-vsnprintf1.c: New file.
17638         * tests/unistdio/test-u16-vsprintf1.c: New file.
17639         * tests/unistdio/test-u32-asnprintf1.c: New file.
17640         * tests/unistdio/test-u32-asnprintf1.h: New file.
17641         * tests/unistdio/test-u32-printf1.h: New file.
17642         * tests/unistdio/test-u32-vasnprintf1.c: New file.
17643         * tests/unistdio/test-u32-vasnprintf2.c: New file.
17644         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
17645         * tests/unistdio/test-u32-vasnprintf3.c: New file.
17646         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
17647         * tests/unistdio/test-u32-vasprintf1.c: New file.
17648         * tests/unistdio/test-u32-vsnprintf1.c: New file.
17649         * tests/unistdio/test-u32-vsprintf1.c: New file.
17650         * modules/unistdio/base: New file.
17651         * modules/unistdio/u-printf-args: New file.
17652         * modules/unistdio/ulc-asnprintf: New file.
17653         * modules/unistdio/ulc-asprintf: New file.
17654         * modules/unistdio/ulc-fprintf: New file.
17655         * modules/unistdio/ulc-printf-parse: New file.
17656         * modules/unistdio/ulc-snprintf: New file.
17657         * modules/unistdio/ulc-sprintf: New file.
17658         * modules/unistdio/ulc-vasnprintf: New file.
17659         * modules/unistdio/ulc-vasprintf: New file.
17660         * modules/unistdio/ulc-vfprintf: New file.
17661         * modules/unistdio/ulc-vsnprintf: New file.
17662         * modules/unistdio/ulc-vsprintf: New file.
17663         * modules/unistdio/u8-asnprintf: New file.
17664         * modules/unistdio/u8-asprintf: New file.
17665         * modules/unistdio/u8-printf-parse: New file.
17666         * modules/unistdio/u8-snprintf: New file.
17667         * modules/unistdio/u8-sprintf: New file.
17668         * modules/unistdio/u8-vasnprintf: New file.
17669         * modules/unistdio/u8-vasprintf: New file.
17670         * modules/unistdio/u8-vsnprintf: New file.
17671         * modules/unistdio/u8-vsprintf: New file.
17672         * modules/unistdio/u8-u8-asnprintf: New file.
17673         * modules/unistdio/u8-u8-asprintf: New file.
17674         * modules/unistdio/u8-u8-snprintf: New file.
17675         * modules/unistdio/u8-u8-sprintf: New file.
17676         * modules/unistdio/u8-u8-vasnprintf: New file.
17677         * modules/unistdio/u8-u8-vasprintf: New file.
17678         * modules/unistdio/u8-u8-vsnprintf: New file.
17679         * modules/unistdio/u8-u8-vsprintf: New file.
17680         * modules/unistdio/u16-asnprintf: New file.
17681         * modules/unistdio/u16-asprintf: New file.
17682         * modules/unistdio/u16-printf-parse: New file.
17683         * modules/unistdio/u16-snprintf: New file.
17684         * modules/unistdio/u16-sprintf: New file.
17685         * modules/unistdio/u16-vasnprintf: New file.
17686         * modules/unistdio/u16-vasprintf: New file.
17687         * modules/unistdio/u16-vsnprintf: New file.
17688         * modules/unistdio/u16-vsprintf: New file.
17689         * modules/unistdio/u16-u16-asnprintf: New file.
17690         * modules/unistdio/u16-u16-asprintf: New file.
17691         * modules/unistdio/u16-u16-snprintf: New file.
17692         * modules/unistdio/u16-u16-sprintf: New file.
17693         * modules/unistdio/u16-u16-vasnprintf: New file.
17694         * modules/unistdio/u16-u16-vasprintf: New file.
17695         * modules/unistdio/u16-u16-vsnprintf: New file.
17696         * modules/unistdio/u16-u16-vsprintf: New file.
17697         * modules/unistdio/u32-asnprintf: New file.
17698         * modules/unistdio/u32-asprintf: New file.
17699         * modules/unistdio/u32-printf-parse: New file.
17700         * modules/unistdio/u32-snprintf: New file.
17701         * modules/unistdio/u32-sprintf: New file.
17702         * modules/unistdio/u32-vasnprintf: New file.
17703         * modules/unistdio/u32-vasprintf: New file.
17704         * modules/unistdio/u32-vsnprintf: New file.
17705         * modules/unistdio/u32-vsprintf: New file.
17706         * modules/unistdio/u32-u32-asnprintf: New file.
17707         * modules/unistdio/u32-u32-asprintf: New file.
17708         * modules/unistdio/u32-u32-snprintf: New file.
17709         * modules/unistdio/u32-u32-sprintf: New file.
17710         * modules/unistdio/u32-u32-vasnprintf: New file.
17711         * modules/unistdio/u32-u32-vasprintf: New file.
17712         * modules/unistdio/u32-u32-vsnprintf: New file.
17713         * modules/unistdio/u32-u32-vsprintf: New file.
17714         * modules/unistdio/ulc-asnprintf-tests: New file.
17715         * modules/unistdio/ulc-vasnprintf-tests: New file.
17716         * modules/unistdio/ulc-vasprintf-tests: New file.
17717         * modules/unistdio/ulc-vsnprintf-tests: New file.
17718         * modules/unistdio/ulc-vsprintf-tests: New file.
17719         * modules/unistdio/u8-asnprintf-tests: New file.
17720         * modules/unistdio/u8-vasnprintf-tests: New file.
17721         * modules/unistdio/u8-vasprintf-tests: New file.
17722         * modules/unistdio/u8-vsnprintf-tests: New file.
17723         * modules/unistdio/u8-vsprintf-tests: New file.
17724         * modules/unistdio/u16-asnprintf-tests: New file.
17725         * modules/unistdio/u16-vasnprintf-tests: New file.
17726         * modules/unistdio/u16-vasprintf-tests: New file.
17727         * modules/unistdio/u16-vsnprintf-tests: New file.
17728         * modules/unistdio/u16-vsprintf-tests: New file.
17729         * modules/unistdio/u32-asnprintf-tests: New file.
17730         * modules/unistdio/u32-vasnprintf-tests: New file.
17731         * modules/unistdio/u32-vasprintf-tests: New file.
17732         * modules/unistdio/u32-vsnprintf-tests: New file.
17733         * modules/unistdio/u32-vsprintf-tests: New file.
17734         * MODULES.html.sh (Unicode string functions): Add the new modules.
17735
17736 2007-07-01  Bruno Haible  <bruno@clisp.org>
17737
17738         * lib/sprintf.c (sprintf): Limit the available length estimation,
17739         to avoid address wraparound.
17740         * lib/vsprintf.c (vsprintf): Likewise.
17741         * modules/sprintf-posix (Dependencies): Add stdint.
17742         * modules/vsprintf-posix (Dependencies): Likewise.
17743
17744 2007-07-01  Bruno Haible  <bruno@clisp.org>
17745
17746         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
17747         Windows PATH as well. Conservative double-quoting. Comments.
17748
17749 2007-07-01  Bruno Haible  <bruno@clisp.org>
17750             Eric Blake  <ebb9@byu.net>
17751             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17752
17753         * gnulib-tool (self_abspathname): Fix algorithm to cope with
17754         empty components in $PATH, denoting '.'.
17755
17756 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17757
17758         * gnulib-tool: Fix indentation.
17759         (func_create_megatestdir): Likewise.
17760         Report by Bruno Haible.
17761
17762 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17763
17764         Sync from Automake.
17765         * build-aux/gnupload: Fix shell portability issues with for loops.
17766         Report by Karl Berry.
17767
17768 2007-06-29  Simon Josefsson  <simon@josefsson.org>
17769
17770         * build-aux/maint.mk (POURL): Use translationproject.org.
17771
17772 2007-06-27  Simon Josefsson  <simon@josefsson.org>
17773             Bruno Haible  <bruno@clisp.org>
17774
17775         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
17776         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
17777         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
17778         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
17779         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
17780
17781 2007-06-27  Bruno Haible  <bruno@clisp.org>
17782
17783         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
17784         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
17785
17786 2007-06-26  Karl Berry  <karl@gnu.org>
17787
17788         * MODULES.html.sh: remove xreadlink-with-size.
17789
17790 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
17791
17792         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
17793         method that I hope also handles the double-include problem noted
17794         by Bruno Haible in
17795         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
17796
17797 2007-06-23  Bruno Haible  <bruno@clisp.org>
17798
17799         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17800         Don't let the 'mostlyclean' target fail if the last subdirectory could
17801         not be removed.
17802         Reported by Karl Berry.
17803
17804 2007-06-23  Bruno Haible  <bruno@clisp.org>
17805
17806         * gnulib-tool (echo): Add a speedier workaround for ksh.
17807         * tests/test-echo.sh: Likewise.
17808
17809 2007-06-23  Bruno Haible  <bruno@clisp.org>
17810
17811         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
17812         * tests/test-echo.sh: Likewise.
17813
17814 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17815
17816         * gnulib-tool (IFS): Initialize early, so we don't set it to
17817         empty later.
17818         (self_abspathname): Rewrite algorithm to set it, reindent.
17819         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
17820         (func_create_megatestdir): Merge some sed scripts.
17821
17822 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
17823
17824         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
17825         exposed by Sun Studio 11 cc on Solaris 8.
17826
17827 2007-06-22  Bruno Haible  <bruno@clisp.org>
17828
17829         * gnulib-tool (echo): Ensure the echo primitive does not interpret
17830         backslashes.
17831         * tests/test-echo.sh: New file.
17832
17833 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17834
17835         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
17836         simplify `sed_replace_build_aux' scripts, they are portable but
17837         echoing them with `echo' is not.
17838         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
17839
17840 2007-06-21  Karl Berry  <karl@gnu.org>
17841
17842         * config/srclist.txt: guess we can't handle the licenses via
17843         srclist at the moment.
17844
17845 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
17846
17847         * MODULES.html.sh: Add include_next.
17848         * modules/include_next: New file.
17849
17850 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
17851
17852         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
17853         INCLUDE_NEXT.
17854         (gl_CHECK_NEXT_HEADERS): New macro.
17855         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
17856         the obsolescent gl_ABSOLUTE_HEADER.
17857         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
17858         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
17859         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
17860         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
17861         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
17862         * m4/math_h.m4 (gl_MATH_H): Likewise.
17863         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
17864         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
17865         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
17866         * m4/stdint.m4 (gl_STDINT_H): Likewise.
17867         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
17868         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
17869         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
17870         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
17871         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
17872         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
17873         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
17874         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
17875         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
17876         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
17877         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
17878         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
17879         * m4/inttypes.m4 (gl_INTTYPES_H): Define
17880         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
17881         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
17882         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
17883         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
17884         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
17885         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
17886         * lib/float_.h: Likewise.
17887         * lib/inttypes_.h: Likewise.
17888         * lib/math_.h: Likewise.
17889         * lib/search_.h: Likewise.
17890         * lib/signal_.h: Likewise.
17891         * lib/stdint_.h: Likewise.
17892         * lib/stdio_.h: Likewise.
17893         * lib/stdlib_.h: Likewise.
17894         * lib/string_.h: Likewise.
17895         * lib/sys_stat_.h: Likewise.
17896         * lib/sys_time_.h: Likewise.
17897         * lib/time_.h: Likewise.
17898         * lib/unistd_.h: Likewise.
17899         * lib/wchar_.h: Likewise.
17900         * lib/wctype_.h: Likewise.
17901         * lib/dirent_.h: Likewise.
17902         * lib/iconv_.h: Likewise.
17903         * lib/locale_.h: Likewise.
17904         * lib/netinet_in_.h: Likewise.
17905         * lib/sys_select_.h: Likewise.
17906         * lib/sys_socket_.h: Likewise.
17907         * lib/sysexits_.h: Likewise.
17908         * modules/fcntl (Depends-on): Depend on include_next, not
17909         absolute_header.
17910         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
17911         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
17912         * modules/fchdir: Likewise.
17913         * modules/float: Likewise.
17914         * modules/iconv_open: Likewise.
17915         * modules/inttypes: Likewise.
17916         * modules/locale: Likewise.
17917         * modules/math: Likewise.
17918         * modules/netinet_in: Likewise.
17919         * modules/search: Likewise.
17920         * modules/signal: Likewise.
17921         * modules/stdint: Likewise.
17922         * modules/stdio: Likewise.
17923         * modules/stdlib: Likewise.
17924         * modules/string: Likewise.
17925         * modules/sys_select: Likewise.
17926         * modules/sys_socket: Likewise.
17927         * modules/sys_stat: Likewise.
17928         * modules/sys_time: Likewise.
17929         * modules/sysexits: Likewise.
17930         * modules/time: Likewise.
17931         * modules/unistd: Likewise.
17932         * modules/wchar: Likewise.
17933         * modules/wctype: Likewise.
17934         * modules/sys_stat: Change maintainer to "all".
17935         * modules/unistd: Likewise.
17936
17937 2007-06-20  Karl Berry  <karl@gnu.org>
17938
17939         * config/srclist.txt: track www changes in license files.
17940
17941 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
17942
17943         * build-aux/bootstrap: Remove stray dot.
17944         Make sure build_aux settings are honored when linking
17945         gnulib_extra_files.
17946
17947 2007-06-19  Eric Blake  <ebb9@byu.net>
17948
17949         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
17950         Allow compilation on cygwin.
17951
17952 2007-06-19  Jim Meyering  <jim@meyering.net>
17953
17954         xreadlink-with-size: Remove module.  No longer used.
17955         Ex-callers now use xreadlink or mreadlink-with-size.
17956         * modules/xreadlink-with-size: Remove module.
17957         * lib/xreadlink-with-size.c: Remove file.
17958         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
17959         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
17960         just before the function definition *is* accurate.
17961
17962         Eliminate one way canonicalize_filename_mode could exit.
17963         * lib/canonicalize.c (canonicalize_filename_mode):
17964         Use mreadlink_with_size, not xreadlink_with_size.
17965
17966 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
17967
17968         Detect porting problems to FreeBSD/arm, which has time_t wider than
17969         long int.  Original problem reported for GNU diff by Xin Li in
17970         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
17971         * modules/getdate (Depends-on): Add intprops, verify.
17972         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
17973         is an integer type no wider than long int.
17974
17975 2007-06-18  Jim Meyering  <jim@meyering.net>
17976
17977         New module: mreadlink-with-size.
17978         * MODULES.html.sh: Add mreadlink-with-size.
17979         * modules/mreadlink-with-size: New module
17980         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
17981         not xreadlink-with-size.
17982         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
17983
17984 2007-06-16  Bruno Haible  <bruno@clisp.org>
17985
17986         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
17987         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
17988         Reported by Gary V. Vaughan <gary@gnu.org>.
17989
17990 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
17991
17992         Revamp lchown so that it lives in unistd.h where it belongs.
17993         * lib/lchown.h: Remove.
17994         * lib/dirchownmod.c: Don't include lib/lchown.h.
17995         * lib/fchownat.c: Likewise.
17996         * lib/openat.c: Likewise.
17997         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
17998         does not follow symlinks.
17999         (EOPNOTSUPP): Define if not defined.
18000         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
18001         is defined to 0.
18002         (lchown): New decl.
18003         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
18004         Do not check for lchown decl.
18005         Set REPLACE_LCHOWN.
18006         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
18007         REPLACE_LCHOWN.
18008         * modules/chown: Make it clear it follows symlinks.
18009         * modules/lchown: Make it clear it doesn't follow symlinks.
18010         (Files): Remove lib/lchown.h
18011         (Depends-on): Add unistd.
18012         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
18013         (Include): Include <unistd.h>, not "lchown.h".
18014         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
18015         REPLACE_LCHOWN.
18016
18017 2007-06-15  Jim Meyering  <jim@meyering.net>
18018
18019         Change license (GPL to LGPL) of fsusage and dependents.
18020         * modules/fsusage (License): Change to LGPL.
18021         * modules/full-read (License): Likewise.
18022         * modules/full-write (License): Likewise.
18023         * modules/safe-read (License): Likewise.
18024         * modules/safe-write (License): Likewise.
18025
18026 2007-06-14  Ben Pfaff  <blp@gnu.org>
18027
18028         Missing part of allocsa -> malloca transition.
18029         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
18030         gl_MALLOCA.
18031
18032 2007-06-12  Bruno Haible  <bruno@clisp.org>
18033
18034         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
18035         to ia64, x86_64, i386.
18036         Reported by Eric Blake.
18037
18038 2007-06-12  Bruno Haible  <bruno@clisp.org>
18039
18040         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
18041         cross-compiling to x86_64.
18042
18043 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
18044
18045         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
18046         glitch reported by Ralf Wildenhues in
18047         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
18048
18049         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
18050         Vin Shelton.
18051
18052 2007-06-11  Bruno Haible  <bruno@clisp.org>
18053
18054         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
18055         replacement string.
18056         Reported by Eric Blake.
18057
18058 2007-06-10  Bruno Haible  <bruno@clisp.org>
18059
18060         Prepare vasnprintf code for use with Unicode strings.
18061         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
18062         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
18063         TYPE_U32_STRING.
18064         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
18065         a_u32_string variants.
18066         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
18067         * lib/printf-args.c: Don't include config.h and the specification
18068         header if PRINTF_FETCHARGS is already defined.
18069         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
18070         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
18071         TYPE_U16_STRING, TYPE_U32_STRING.
18072         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
18073         u16_directive, u16_directives, u32_directive, u32_directives): New
18074         types.
18075         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
18076         New declarations.
18077         * lib/printf-parse.c: Don't include config.h and the specification
18078         header if PRINTF_PARSE is already defined. Eliminate the set of
18079         parameters for WIDE_CHAR_VERSION; the user of this file must provide
18080         them now. Include c-ctype.h.
18081         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
18082         directive and CHAR_T_ONLY_ASCII.
18083         * lib/vasnprintf.c: Don't include config.h and the specification header
18084         if VASNPRINTF is already defined.
18085         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
18086         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
18087         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
18088         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
18089         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
18090         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
18091         code accordingly.
18092         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
18093         pad_ourselves also in this case, with the 'c' and 's' directives, and
18094         with a different notion of "width".
18095         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
18096
18097 2007-06-10  Bruno Haible  <bruno@clisp.org>
18098
18099         * modules/unistr/u32-mbsnlen: New file.
18100         * lib/unistr/u32-mbsnlen.c: New file.
18101
18102         * modules/unistr/u16-mbsnlen: New file.
18103         * lib/unistr/u16-mbsnlen.c: New file.
18104
18105         * modules/unistr/u8-mbsnlen: New file.
18106         * lib/unistr/u8-mbsnlen.c: New file.
18107
18108         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
18109         declarations.
18110
18111 2007-06-10  Bruno Haible  <bruno@clisp.org>
18112
18113         * lib/string_.h (mbsnlen): New declaration.
18114         * lib/mbsnlen.c: New file.
18115         * m4/mbsnlen.m4: New file.
18116         * modules/mbsnlen: New file.
18117         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
18118         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
18119         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
18120
18121 2007-06-10  Bruno Haible  <bruno@clisp.org>
18122
18123         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
18124
18125 2007-06-10  Bruno Haible  <bruno@clisp.org>
18126
18127         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
18128         * lib/mbuiter.h: Likewise.
18129
18130 2007-06-10  Bruno Haible  <bruno@clisp.org>
18131
18132         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
18133         declaration.
18134
18135 2007-06-10  Karl Berry  <karl@gnu.org>
18136
18137         * config/srclist.txt: remove gettext entries, Bruno prefers
18138         to update individually.
18139
18140 2007-06-10  Bruno Haible  <bruno@clisp.org>
18141
18142         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
18143         'maxlen'. Ensure only length + width bytes are allocated, not
18144         length + 1 + width.
18145
18146 2007-06-09  Bruno Haible  <bruno@clisp.org>
18147
18148         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
18149         (CHAR_T): Remove macro.
18150         (VASNPRINTF): Update.
18151
18152 2007-06-09  Bruno Haible  <bruno@clisp.org>
18153
18154         * MODULES.html.sh (Unicode string functions): Add the new modules.
18155
18156         * modules/uniconv/u32-conv-to-enc: New file.
18157         * lib/uniconv/u32-conv-to-enc.c: New file.
18158         * modules/uniconv/u32-conv-to-enc-tests: New file.
18159         * tests/uniconv/test-u32-conv-to-enc.c: New file.
18160
18161         * modules/uniconv/u16-conv-to-enc: New file.
18162         * lib/uniconv/u16-conv-to-enc.c: New file.
18163         * lib/uniconv/u-conv-to-enc.h: New file.
18164         * modules/uniconv/u16-conv-to-enc-tests: New file.
18165         * tests/uniconv/test-u16-conv-to-enc.c: New file.
18166
18167         * modules/uniconv/u8-conv-to-enc: New file.
18168         * lib/uniconv/u8-conv-to-enc.c: New file.
18169         * modules/uniconv/u8-conv-to-enc-tests: New file.
18170         * tests/uniconv/test-u8-conv-to-enc.c: New file.
18171
18172         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
18173         u32_conv_to_encoding): New declarations.
18174
18175 2007-06-09  Bruno Haible  <bruno@clisp.org>
18176
18177         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
18178
18179 2007-06-09  Bruno Haible  <bruno@clisp.org>
18180
18181         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
18182         * modules/malloca: Renamed from modules/allocsa, updated.
18183         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
18184         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
18185         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
18186         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
18187         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
18188         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
18189         * modules/xmalloca: Renamed from modules/xallocsa, updated.
18190         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
18191         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
18192         * modules/c-strcasestr (Depends-on): Update.
18193         * lib/c-strcasestr.c: Update.
18194         * modules/c-strstr (Depends-on): Update.
18195         * lib/c-strstr.c: Update.
18196         * modules/canonicalize-lgpl (Depends-on): Update.
18197         * lib/canonicalize-lgpl.c: Update.
18198         * modules/clean-temp (Depends-on): Update.
18199         * lib/clean-temp.c: Update.
18200         * modules/csharpcomp (Depends-on): Update.
18201         * lib/csharpcomp.c: Update.
18202         * modules/csharpexec (Depends-on): Update.
18203         * lib/csharpexec.c: Update.
18204         * modules/javacomp (Depends-on): Update.
18205         * lib/javacomp.c: Update.
18206         * modules/javaexec (Depends-on): Update.
18207         * lib/javaexec.c: Update.
18208         * modules/mbscasestr (Depends-on): Update.
18209         * lib/mbscasestr.c: Update.
18210         * modules/mbsstr (Depends-on): Update.
18211         * lib/mbsstr.c: Update.
18212         * modules/setenv (Depends-on): Update.
18213         * lib/setenv.c: Update.
18214         * modules/strcasestr (Depends-on): Update.
18215         * lib/strcasestr.c: Update.
18216         * modules/striconveha (Depends-on): Update.
18217         * lib/striconveha.c: Update.
18218         * modules/relocatable-prog-wrapper (Files): Update.
18219         * lib/relocwrapper.c: Update.
18220         * build-aux/install-reloc: Update.
18221         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
18222
18223 2007-06-08  Bruno Haible  <bruno@clisp.org>
18224
18225         Port to uClibc.
18226         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
18227         * lib/fpurge.c (fpurge): Likewise.
18228         * lib/freading.c (freading): Likewise.
18229         * lib/fseeko.c (rpl_fseeko): Likewise.
18230         * lib/fseterr.c (fseterr): Likewise.
18231         * lib/fwriting.c (fwriting): Likewise.
18232         * tests/test-fflush.c (main): Avoid a failure on uClibc.
18233
18234 2007-06-08  Bruno Haible  <bruno@clisp.org>
18235
18236         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
18237         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
18238         * modules/gettext (Files): Add m4/intlmacosx.m4.
18239
18240 2007-06-07  Bruno Haible  <bruno@clisp.org>
18241
18242         * modules/localename-tests: New file.
18243         * tests/test-localename.c: New file.
18244
18245         New module 'localename'.
18246         * lib/localename.h: New file.
18247         * lib/localename.c: New file, from GNU gettext.
18248         * m4/localename.m4: New file.
18249         * modules/localename: New file.
18250
18251 2007-06-07  Bruno Haible  <bruno@clisp.org>
18252
18253         Work around the lack of <wchar.h> on some builds of uClibc.
18254         * doc/headers/wchar.texi: Update.
18255         * lib/wchar_.h: Include <wchar.h> only if it exists.
18256         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
18257         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
18258         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
18259         doesn't exist.
18260         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
18261         * modules/mbfile (Depends-on): Add wchar.
18262         * modules/mbiter (Depends-on): Likewise.
18263         * modules/mbuiter (Depends-on): Likewise.
18264         Reported by Simon Josefsson.
18265
18266 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
18267
18268         Work around problem reported by Steven M. Schweda in
18269         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
18270         Tru64 5.1B with the Compaq compiler environment installed declares
18271         an 'isblank' function but does not define it in the C library.
18272         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
18273         * lib/regex_internal.h (isblank): Likewise.
18274         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
18275         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
18276
18277 2007-06-05  Bruno Haible  <bruno@clisp.org>
18278
18279         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
18280         ia64.
18281         * modules/printf-safe: New file.
18282         * modules/fprintf-posix (Depends-on): Add printf-safe.
18283         * modules/printf-posix (Depends-on): Likewise.
18284         * modules/snprintf-posix (Depends-on): Likewise.
18285         * modules/sprintf-posix (Depends-on): Likewise.
18286         * modules/vasnprintf-posix (Depends-on): Likewise.
18287         * modules/vasprintf-posix (Depends-on): Likewise.
18288         * modules/vfprintf-posix (Depends-on): Likewise.
18289         * modules/vprintf-posix (Depends-on): Likewise.
18290         * modules/vsnprintf-posix (Depends-on): Likewise.
18291         * modules/vsprintf-posix (Depends-on): Likewise.
18292         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
18293         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
18294         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
18295         "no" on i386, x86_64, ia64.
18296         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
18297         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
18298         on i386, x86_64, ia64.
18299         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
18300         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
18301         on i386, x86_64, ia64.
18302         * tests/test-vasnprintf-posix.c: Include float.h.
18303         (LDBL80_WORDS): New macro.
18304         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
18305         on i386, x86_64, ia64.
18306         * tests/test-vasprintf-posix.c: Include float.h.
18307         (LDBL80_WORDS): New macro.
18308         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
18309         on i386, x86_64, ia64.
18310         * tests/test-snprintf-posix.c: Include float.h.
18311         * tests/test-sprintf-posix.c: Likewise.
18312         * tests/test-vsnprintf-posix.c: Likewise.
18313         * tests/test-vsprintf-posix.c: Likewise.
18314
18315 2007-06-05  Bruno Haible  <bruno@clisp.org>
18316
18317         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
18318         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
18319         non-IEEE numbers on i386, x86_64, ia64.
18320         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
18321         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
18322         * tests/test-isnanl.h: Include float.h.
18323         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
18324
18325 2007-06-05  Bruno Haible  <bruno@clisp.org>
18326
18327         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
18328         also the %a / %A. Handle the %a / %A code before this extra handling.
18329
18330 2007-06-05  Bruno Haible  <bruno@clisp.org>
18331
18332         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
18333         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
18334
18335 2007-06-05  Bruno Haible  <bruno@clisp.org>
18336
18337         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
18338         typo in variable name.
18339
18340 2007-06-05  Eric Blake  <ebb9@byu.net>
18341
18342         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
18343         Reported by Simon Josefsson.
18344
18345 2007-06-04  Bruno Haible  <bruno@clisp.org>
18346
18347         Avoid test failures on some PowerPC platforms.
18348         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
18349         Define differently for PowerPC.
18350         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
18351         Reported by Gary V. Vaughan <gary@gnu.org>.
18352
18353 2007-06-02  Bruno Haible  <bruno@clisp.org>
18354
18355         Fix test-stdint failure on FreeBSD/ia64.
18356         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
18357         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
18358         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
18359         * doc/headers/stdint.texi: Update.
18360
18361 2007-06-01  Bruno Haible  <bruno@clisp.org>
18362
18363         * tests/test-binary-io.c (main): Pass a third argument to open().
18364         Reported by Gary V. Vaughan <gary@gnu.org>.
18365
18366 2007-06-01  Bruno Haible  <bruno@clisp.org>
18367
18368         * doc/functions/frexpl.texi: Update for mingw.
18369
18370 2007-06-01  Bruno Haible  <bruno@clisp.org>
18371
18372         * tests/test-lseek.c (main): Disable test of errno for invalid third
18373         argument.
18374         * doc/functions/lseek.texi: Update.
18375         Reported by Gary V. Vaughan <gary@gnu.org>.
18376
18377 2007-05-28  Bruno Haible  <bruno@clisp.org>
18378
18379         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
18380
18381 2007-05-31  Eric Blake  <ebb9@byu.net>
18382
18383         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
18384         cross compiling.
18385
18386 2007-05-30  Eric Blake  <ebb9@byu.net>
18387         and Bruno Haible  <bruno@clisp.org>
18388
18389         Work around mingw test failures exposed by m4-1.4.9b.
18390         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
18391         * tests/test-unistd.c: Disable uid_t and git_t tests for the
18392         moment.
18393
18394 2007-05-30  Bruno Haible  <bruno@clisp.org>
18395
18396         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
18397         assuming that they are closed. Needed on HP-UX 11.
18398
18399 2007-05-29  Bruno Haible  <bruno@clisp.org>
18400
18401         Fix a problem with #include_next.
18402         * lib/dirent_.h: Split the double-inclusion guard.
18403         * lib/fcntl_.h: Likewise.
18404         * lib/float_.h: Likewise.
18405         * lib/iconv_.h: Likewise.
18406         * lib/inttypes_.h: Likewise.
18407         * lib/locale_.h: Likewise.
18408         * lib/math_.h: Likewise.
18409         * lib/netinet_in_.h: Likewise.
18410         * lib/search_.h: Likewise.
18411         * lib/signal_.h: Likewise.
18412         * lib/stdint_.h: Likewise.
18413         * lib/stdio_.h: Likewise.
18414         * lib/stdlib_.h: Likewise.
18415         * lib/string_.h: Likewise.
18416         * lib/sys_select_.h: Likewise.
18417         * lib/sys_socket_.h: Likewise.
18418         * lib/sys_stat_.h: Likewise.
18419         * lib/sys_time_.h: Likewise.
18420         * lib/sysexits_.h: Likewise.
18421         * lib/time_.h: Likewise.
18422         * lib/unistd_.h: Likewise.
18423         * lib/wchar_.h: Likewise.
18424         * lib/wctype_.h: Likewise.
18425
18426 2007-05-29  Bruno Haible  <bruno@clisp.org>
18427
18428         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
18429         for the moment.
18430
18431 2007-05-29  Bruno Haible  <bruno@clisp.org>
18432
18433         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
18434         invocation.
18435         Reported by Eric Blake.
18436
18437 2007-05-29  Bruno Haible  <bruno@clisp.org>
18438
18439         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
18440         compiling case.
18441
18442 2007-05-29  Eric Blake  <ebb9@byu.net>
18443             Bruno Haible  <bruno@clisp.org>
18444
18445         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
18446         cross compiles.
18447
18448 2007-05-28  Eric Blake  <ebb9@byu.net>
18449
18450         * modules/closein-tests (test_closein_LDADD): Support test on
18451         cygwin with libtool.
18452
18453 2007-05-28  Bruno Haible  <bruno@clisp.org>
18454
18455         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
18456         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
18457         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
18458         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
18459         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
18460         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
18461         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
18462         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
18463         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
18464
18465 2007-05-28  Eric Blake  <ebb9@byu.net>
18466
18467         Unconditionally include <config.h> in unit tests.
18468         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
18469         * tests/test-allocsa.c, tests/test-arcfour.c,
18470         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
18471         tests/test-array_list.c, tests/test-array_oset.c,
18472         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
18473         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
18474         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
18475         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
18476         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
18477         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
18478         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
18479         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
18480         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
18481         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
18482         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
18483         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
18484         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
18485         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
18486         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
18487         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
18488         test-md5.c, test-memmem.c, test-printf-posix.c,
18489         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
18490         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
18491         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
18492         test-strcasestr.c, test-striconv.c, test-striconveh.c,
18493         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
18494         test-vasnprintf-posix2.c, test-vasnprintf.c,
18495         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
18496         test-vfprintf-posix.c, test-vprintf-posix.c,
18497         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
18498         test-xvasprintf.c: Likewise.
18499
18500 2007-05-28  Bruno Haible  <bruno@clisp.org>
18501
18502         * gnulib-tool (func_import): Remember the --with-tests command-line
18503         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
18504         Reported by Eric Blake.
18505
18506 2007-05-28  Bruno Haible  <bruno@clisp.org>
18507
18508         * modules/ftell-tests: New file.
18509         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
18510         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
18511
18512         * lib/ftell.c: New file.
18513         * modules/ftell: New file.
18514         * m4/ftell.m4: New file.
18515         * doc/functions/ftell.texi: Update.
18516         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
18517         REPLACE_FTELL.
18518         * lib/stdio_.h (rpl_ftell): New declaration.
18519         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
18520         REPLACE_FTELL.
18521
18522 2007-05-28  Eric Blake  <ebb9@byu.net>
18523
18524         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
18525
18526 2007-05-28  Bruno Haible  <bruno@clisp.org>
18527
18528         * modules/fseek-tests: New file.
18529         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
18530         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
18531
18532         * lib/fseek.c: New file.
18533         * modules/fseek: New file.
18534         * m4/fseek.m4: New file.
18535         * doc/functions/fseek.texi: Update.
18536         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
18537         REPLACE_FSEEK.
18538         * lib/stdio_.h (rpl_fseek): New declaration.
18539         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
18540         REPLACE_FSEEK.
18541
18542 2007-05-28  Bruno Haible  <bruno@clisp.org>
18543
18544         * lib/stdio_.h (fflush): More comments.
18545
18546 2007-05-28  Bruno Haible  <bruno@clisp.org>
18547
18548         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
18549         runtime test.
18550
18551 2007-05-28  Eric Blake  <ebb9@byu.net>
18552
18553         Improve lseek module.
18554         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
18555         * lib/unistd_.h (lseek): Scale back link warning message.
18556         * tests/test-lseek.c: Beef up test.
18557         * tests/test-lseek.sh: Exercise more facets of lseek.
18558         Reported by Bruno Haible.
18559
18560 2007-05-28  Bruno Haible  <bruno@clisp.org>
18561
18562         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
18563         to define.
18564
18565 2007-05-27  Bruno Haible  <bruno@clisp.org>
18566
18567         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
18568
18569 2007-05-27  Bruno Haible  <bruno@clisp.org>
18570
18571         * modules/openmp: New file.
18572         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
18573         Noah Misch.
18574
18575 2007-05-26  Bruno Haible  <bruno@clisp.org>
18576
18577         * modules/chdir-long (Depends-on): Add fchdir.
18578         * modules/chdir-safer (Depends-on): Likewise.
18579         * modules/fts (Depends-on): Likewise.
18580         * modules/fts-lgpl (Depends-on): Likewise.
18581         * modules/openat (Depends-on): Likewise.
18582         * modules/savewd (Depends-on): Likewise.
18583
18584 2007-05-24  Eric Blake  <ebb9@byu.net>
18585
18586         Fix lseek on mingw.
18587         * modules/lseek: New module.
18588         * m4/lseek.m4: New file.
18589         * lib/lseek.c: New file.
18590         * modules/lseek-tests: New file.
18591         * tests/test-lseek.c: New file.
18592         * tests/test-lseek.sh: New file.
18593         * MODULES.html.sh: Document lseek module.
18594         * modules/fflush (Depends-on): Add lseek, fseeko.
18595         * modules/fseeko (Depends-on): Likewise.
18596         * modules/ftello (Depends-on): Likewise.
18597         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
18598         broken.
18599         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
18600         broken.
18601         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
18602         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
18603         * lib/ftello.c (rpl_ftello): Likewise.
18604         * tests/test-fseeko.c (main): Test this.
18605         * tests/test-fseeko.sh: Likewise.
18606         * tests/test-ftello.c (main): Likewise.
18607         * tests/test-ftello.sh: Likewise.
18608         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
18609         implies replacing fseek.
18610         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
18611         HAVE_FTELLO.
18612         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
18613         * modules/unistd (Makefile.am): Likewise.
18614         * lib/unistd_.h (lseek): Declare a replacement.
18615         * doc/functions/lseek.texi (lseek): Document this fix.
18616         * doc/functions/fseek.texi (fseek): Likewise.
18617         * doc/functions/ftell.texi (ftell): Likewise.
18618
18619 2007-05-24  Bruno Haible  <bruno@clisp.org>
18620
18621         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
18622         in the printed representation of a NaN.
18623         * tests/test-vasprintf-posix.c (test_function): Likewise.
18624         * tests/test-snprintf-posix.h (test_function): Likewise.
18625         * tests/test-sprintf-posix.h (test_function): Likewise.
18626         Reported by Eric Blake.
18627
18628 2007-05-23  Eric Blake  <ebb9@byu.net>
18629
18630         Fix fseeko/ftello on cygwin 1.5.24.
18631         * doc/functions/fseeko.texi (fseeko): Document the fix.
18632         * doc/functions/ftello.texi (ftello): Document the fix.
18633         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
18634         * doc/functions/stdout.text (stdout): New file.
18635         * doc/functions/stderr.text (stderr): New file.
18636         * doc/gnulib.texi (Function Substitutes): Use new files.
18637         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
18638         prior to 1.7.0.
18639         * tests/test-ftello.c (main): Likewise for ftello.
18640         * tests/test-fseeko.sh: New file.
18641         * tests/test-ftello.sh: New file.
18642         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
18643         with seekable stdin.
18644         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
18645         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
18646         (gl_REPLACE_FSEEKO): New macro.
18647         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
18648         * modules/fseeko (Files): Distribute fseeko.c.
18649         * modules/ftello (Files): Distribute ftello.c.
18650         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
18651         mode.
18652         * lib/ftello.c (rpl_ftello): New file.
18653         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
18654         fseeko, ftello.
18655         (gl_STDIN_LARGE_OFFSET): New macro.
18656         * modules/stdio (Makefile.am): Perform the replacement.
18657         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
18658
18659 2007-05-23  Bruno Haible  <bruno@clisp.org>
18660
18661         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
18662         GNULIB_POSIXCHECK is defined.
18663
18664 2007-05-21  Bruno Haible  <bruno@clisp.org>
18665
18666         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
18667         Check also the output for NaN arguments. When cross-compiling, guess
18668         no on IRIX.
18669         * lib/vasnprintf.c: Update comments.
18670         * tests/test-vasnprintf-posix.c (strisnan): New function.
18671         (test_function): Use it.
18672         * tests/test-vasprintf-posix.c (strisnan): New function.
18673         (test_function): Use it.
18674         * tests/test-snprintf-posix.h (strisnan): New function.
18675         (test_function): Use it.
18676         * tests/test-sprintf-posix.h (strisnan): New function.
18677         (test_function): Use it.
18678         Reported by Eric Blake.
18679
18680 2007-05-20  Bruno Haible  <bruno@clisp.org>
18681
18682         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
18683         numbers that fails on BeOS.
18684         * doc/functions/frexpl.texi: Update.
18685
18686 2007-05-20  Jim Meyering  <jim@meyering.net>
18687
18688         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
18689         forced upon us by glibc-2.6.
18690
18691 2007-05-20  Bruno Haible  <bruno@clisp.org>
18692
18693         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
18694         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
18695         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
18696         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
18697         NEED_PRINTF_INFINITE.
18698         (is_infinitel): New function.
18699         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
18700         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
18701         gl_PREREQ_VASNPRINTF_INFINITE.
18702         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
18703         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18704         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
18705         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
18706         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
18707         gl_PREREQ_VASNPRINTF_INFINITE.
18708         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18709         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18710         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18711         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18712         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18713         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18714         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18715         * doc/functions/fprintf.texi: Update.
18716         * doc/functions/printf.texi: Update.
18717         * doc/functions/snprintf.texi: Update.
18718         * doc/functions/sprintf.texi: Update.
18719         * doc/functions/vfprintf.texi: Update.
18720         * doc/functions/vprintf.texi: Update.
18721         * doc/functions/vsnprintf.texi: Update.
18722         * doc/functions/vsprintf.texi: Update.
18723
18724 2007-05-20  Bruno Haible  <bruno@clisp.org>
18725
18726         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
18727         was not found in libc.
18728         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
18729
18730 2007-05-20  Bruno Haible  <bruno@clisp.org>
18731
18732         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
18733         printed as "-nan" instead of "nan".
18734         * tests/test-vasprintf-posix.c (test_function): Likewise.
18735         * tests/test-snprintf-posix.h (test_function): Likewise.
18736         * tests/test-sprintf-posix.h (test_function): Likewise.
18737         Needed for HP-UX 11.
18738
18739 2007-05-20  Jim Meyering  <jim@meyering.net>
18740
18741         Fix buggy test for the fchownat-deref bug.
18742         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
18743         symlink required for the run-test.  Without it, this test would
18744         always declare that fchownat doesn't work, and client code would
18745         unnecessarily use the replacement function with fixed libc.
18746         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
18747         Reported by Greg Schafer.
18748
18749 2007-05-19  Bruno Haible  <bruno@clisp.org>
18750
18751         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
18752         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
18753         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
18754         Needed for IRIX 6.5 and Solaris 2.5.1.
18755
18756 2007-05-19  Bruno Haible  <bruno@clisp.org>
18757
18758         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
18759         (test_function): Skip tests involving -0.0 on platforms where
18760         -0.0 = 0.0.
18761         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
18762         (test_function): Skip tests involving -0.0 on platforms where
18763         -0.0 = 0.0.
18764         * tests/test-snprintf-posix.h (have_minus_zero): New function.
18765         (test_function): Skip tests involving -0.0 on platforms where
18766         -0.0 = 0.0.
18767         * tests/test-sprintf-posix.h (have_minus_zero): New function.
18768         (test_function): Skip tests involving -0.0 on platforms where
18769         -0.0 = 0.0.
18770         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
18771         tests.
18772         * tests/test-printf-posix.h (test_function): Likewise.
18773         * tests/test-printf-posix.output: Remove all -0.0 related results.
18774         Needed for IRIX 6.5.
18775
18776 2007-05-19  Bruno Haible  <bruno@clisp.org>
18777
18778         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
18779         printed as "nan0x7fffffff" instead of "nan".
18780         * tests/test-vasprintf-posix.c (test_function): Likewise.
18781         * tests/test-snprintf-posix.h (test_function): Likewise.
18782         * tests/test-sprintf-posix.h (test_function): Likewise.
18783         * tests/test-fprintf-posix.h (NaN): Remove macro.
18784         (test_function): Remove all NaN related tests.
18785         * tests/test-printf-posix.h (NaN): Remove macro.
18786         (test_function): Remove all NaN related tests.
18787         * tests/test-printf-posix.output: Remove all NaN related results.
18788         Needed for IRIX 6.5.
18789
18790 2007-05-19  Bruno Haible  <bruno@clisp.org>
18791
18792         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
18793         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
18794
18795 2007-05-19  Bruno Haible  <bruno@clisp.org>
18796
18797         * lib/float_.h: New file.
18798         * m4/float_h.m4: New file.
18799         * modules/float: New file.
18800         * modules/isnanl (Dependencies): Add float.
18801         * modules/isnanl-nolibm (Dependencies): Likewise.
18802         * modules/mathl (Dependencies): Likewise.
18803         * modules/printf-frexpl (Dependencies): Likewise.
18804         * modules/signbit (Dependencies): Likewise.
18805         * modules/vasnprintf (Dependencies): Likewise.
18806         * doc/headers/float.texi: Update.
18807
18808 2007-05-19  Jim Meyering  <jim@meyering.net>
18809
18810         * lib/utimens.c (gl_futimens): Rename from futimens,
18811         now that glibc-2.6 declares futimens.
18812         * lib/utimens.h: Likewise.
18813
18814 2007-05-19  Bruno Haible  <bruno@clisp.org>
18815
18816         Avoid test failures on mingw.
18817         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
18818         * tests/test-printf-posix.sh: Likewise.
18819         * tests/test-vfprintf-posix.sh: Likewise.
18820         * tests/test-vprintf-posix.sh: Likewise.
18821
18822 2007-05-19  Bruno Haible  <bruno@clisp.org>
18823
18824         Fix *printf result for NaN, Inf, -0.0 on mingw.
18825         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
18826         * lib/vasnprintf.c: Include math.h and isnan.h.
18827         (is_infinite_or_zero): New function.
18828         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
18829         values in the %f, %F, %e, %E, %g, %G directives.
18830         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
18831         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18832         gl_PRINTF_INFINITE and test its result. Invoke
18833         gl_PREREQ_VASNPRINTF_INFINITE.
18834         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18835         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18836         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18837         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18838         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18839         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18840         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18841         * doc/functions/fprintf.texi: Update.
18842         * doc/functions/printf.texi: Update.
18843         * doc/functions/snprintf.texi: Update.
18844         * doc/functions/sprintf.texi: Update.
18845         * doc/functions/vfprintf.texi: Update.
18846         * doc/functions/vprintf.texi: Update.
18847         * doc/functions/vsnprintf.texi: Update.
18848         * doc/functions/vsprintf.texi: Update.
18849
18850 2007-05-19  Bruno Haible  <bruno@clisp.org>
18851
18852         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
18853         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
18854         Instead of multiplying with 10^k, set extra_zeroes to k.
18855         (scale10_round_long_double): Remove function.
18856
18857 2007-05-18  Bruno Haible  <bruno@clisp.org>
18858
18859         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
18860         introduced on 2007-05-06.
18861
18862 2007-05-18  Bruno Haible  <bruno@clisp.org>
18863
18864         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
18865         %g directives.
18866         * tests/test-vasprintf-posix.c (test_function): Likewise.
18867         * tests/test-snprintf-posix.h (test_function): Likewise.
18868         * tests/test-sprintf-posix.h (test_function): Likewise.
18869
18870 2007-05-18  Bruno Haible  <bruno@clisp.org>
18871
18872         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
18873         (strmatch): New function.
18874         (test_function): Test the %f directive on numbers of various exponents.
18875         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
18876         (strmatch): New function.
18877         (test_function): Test the %f directive on numbers of various exponents.
18878         * tests/test-snprintf-posix.h (strmatch): New function.
18879         (test_function): Test the %f directive on numbers of various exponents.
18880         * tests/test-sprintf-posix.h (strmatch): New function.
18881         (test_function): Test the %f directive on numbers of various exponents.
18882         * tests/test-snprintf-posix.c (SIZEOF): New macro.
18883         * tests/test-sprintf-posix.c (SIZEOF): New macro.
18884         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
18885         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
18886
18887 2007-05-18  Bruno Haible  <bruno@clisp.org>
18888
18889         Add support for 'long double' number output.
18890         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
18891         * lib/vasnprintf.c: Include math.h and float+.h.
18892         (mp_limb_t): New type.
18893         (GMP_LIMB_BITS): New macro.
18894         (mp_twolimb_t): New type.
18895         (GMP_TWOLIMB_BITS): New macro.
18896         (mpn_t): New type.
18897         (multiply, divide, convert_to_decimal, decode_long_double,
18898         scale10_round_long_double, scale10_round_decimal_long_double,
18899         floorlog10l): New functions.
18900         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
18901         for the %f, %F, %e, %E, %g, %G directives.
18902         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
18903         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18904         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
18905         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
18906         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18907         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18908         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18909         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18910         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18911         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18912         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18913         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
18914         * modules/snprintf-posix (Depends-on): Likewise.
18915         * modules/sprintf-posix (Depends-on): Likewise.
18916         * modules/vasnprintf-posix (Depends-on): Likewise.
18917         * modules/vasprintf-posix (Depends-on): Likewise.
18918         * modules/vfprintf-posix (Depends-on): Likewise.
18919         * modules/vsnprintf-posix (Depends-on): Likewise.
18920         * modules/vsprintf-posix (Depends-on): Likewise.
18921         * modules/vasnprintf (Files): Add lib/float+.h.
18922         * doc/functions/fprintf.texi: Update.
18923         * doc/functions/printf.texi: Update.
18924         * doc/functions/snprintf.texi: Update.
18925         * doc/functions/sprintf.texi: Update.
18926         * doc/functions/vfprintf.texi: Update.
18927         * doc/functions/vprintf.texi: Update.
18928         * doc/functions/vsnprintf.texi: Update.
18929         * doc/functions/vsprintf.texi: Update.
18930
18931 2007-05-18  Bruno Haible  <bruno@clisp.org>
18932
18933         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
18934
18935 2007-05-18  Bruno Haible  <bruno@clisp.org>
18936
18937         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
18938         for printing 64-bit integers. Needed for mingw.
18939
18940 2007-05-18  Bruno Haible  <bruno@clisp.org>
18941
18942         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
18943         gl_FUNC_FREXPL_WORKS.
18944         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
18945
18946 2007-05-18  Bruno Haible  <bruno@clisp.org>
18947
18948         * modules/frexpl-nolibm-tests: New file.
18949
18950         * modules/frexpl-nolibm: New file.
18951         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
18952
18953 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
18954
18955         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
18956         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
18957         GCC 4.2, which otherwise issues a lot of warnings.
18958         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
18959         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
18960         Likewise.
18961         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
18962         * modules/iconv_open (iconv.h): Likewise.
18963         * modules/locale (locale.h): Likewise.
18964         * modules/netinet_in (netinet/in.h): Likewise.
18965         * modules/sys_select (sys_select.h): Likewise.
18966         * modules/sys_socket (sys/socket.h): Likewise.
18967         * modules/sys_stat (sys/stat.h): Likewise.
18968         * modules/sysexits (sysexits.h): Likewise.
18969         * modules/unistd (unistd.h): Likewise.
18970
18971 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18972
18973         * modules/closein-tests (Makefile.am): Distribute
18974         `test-closein.sh'.
18975
18976 2007-05-17  Bruno Haible  <bruno@clisp.org>
18977
18978         * tests/test-printf-posix.output: Renamed from
18979         tests/test-fprintf-posix.out.
18980         * modules/fprintf-posix-tests: Update.
18981         * modules/printf-posix-tests: Update.
18982         * modules/vfprintf-posix-tests: Update.
18983         * modules/vprintf-posix-tests: Update.
18984         * tests/test-fprintf-posix.sh: Update.
18985         * tests/test-printf-posix.sh: Update.
18986         * tests/test-vfprintf-posix.sh: Update.
18987         * tests/test-vprintf-posix.sh: Update.
18988         Reported by Ralf Wildenhues.
18989
18990 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
18991
18992         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
18993         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
18994         GCC 4.2, which otherwise issues a lot of warnings.
18995         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
18996         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
18997         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
18998         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
18999         it should no longer be needed.
19000         * lib/string_.h: Likewise.
19001         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
19002         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
19003         * modules/inttypes (inttypes.h): Likewise.
19004         * modules/math (math.h): Likewise.
19005         * modules/search (search.h): Likewise.
19006         * modules/signal (signal.h): Likewise.
19007         * modules/stdint (stdint.h): Likewise.
19008         * modules/stdio (stdio.h): Likewise.
19009         * modules/stdlib (stdlib.h): Likewise.
19010         * modules/string (string.h): Likewise.
19011         * modules/sys_time (sys/time.h): Likewise.
19012         * modules/time (time.h): Likewise.
19013         * modules/wchar (wchar.h): Likewise.
19014         * modules/wctype (wtype.h): Likewise.
19015
19016 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
19017
19018         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
19019
19020 2007-05-13  Bruno Haible  <bruno@clisp.org>
19021
19022         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
19023         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
19024         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
19025         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
19026         (gl_PREREQ_STRTOK_R): Don't require it here.
19027
19028 2007-05-13  Bruno Haible  <bruno@clisp.org>
19029
19030         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
19031         when used in C++ mode.
19032
19033 2007-05-12  Bruno Haible  <bruno@clisp.org>
19034
19035         * lib/linebuffer.h: Tweak doc.
19036         * lib/linebuffer.c: Likewise.
19037
19038 2007-05-12  James Youngman  <jay@gnu.org>
19039
19040         * lib/linebuffer.c (readlinebuffer_delim): New function,
19041         like readlinebuffer, but use a caller-specified delimiter.
19042         (readlinebuffer): Just call readlinebuffer_delim with '\n'
19043         as the delimiter.
19044         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
19045
19046 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
19047
19048         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
19049         * modules/openat (Files): Remove openat-die.c.
19050         (Depends-on): Add openat-die.
19051         * modules/openat-die: New module.
19052
19053 2007-05-06  Bruno Haible  <bruno@clisp.org>
19054
19055         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
19056         Update with info about Cygwin.
19057         * doc/functions/fprintf.texi: Update.
19058         * doc/functions/printf.texi: Update.
19059         * doc/functions/snprintf.texi: Update.
19060         * doc/functions/sprintf.texi: Update.
19061         * doc/functions/vfprintf.texi: Update.
19062         * doc/functions/vprintf.texi: Update.
19063         * doc/functions/vsnprintf.texi: Update.
19064         * doc/functions/vsprintf.texi: Update.
19065         Reported by Eric Blake.
19066
19067 2007-05-06  Bruno Haible  <bruno@clisp.org>
19068
19069         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
19070         padding ourselves for the floating-point directives.
19071         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
19072         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
19073         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
19074         gl_PRINTF_FLAG_ZERO and test its result. Invoke
19075         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
19076         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
19077         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
19078         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
19079         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
19080         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
19081         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
19082         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
19083         * tests/test-snprintf-posix.h (test_function): Also check the width
19084         and some flags in the %f directive.
19085         * tests/test-sprintf-posix.h (test_function): Likewise.
19086         * tests/test-vasnprintf-posix.c (test_function): Likewise.
19087         * tests/test-vasprintf-posix.c (test_function): Likewise.
19088         * doc/functions/fprintf.texi: Update.
19089         * doc/functions/printf.texi: Update.
19090         * doc/functions/snprintf.texi: Update.
19091         * doc/functions/sprintf.texi: Update.
19092         * doc/functions/vfprintf.texi: Update.
19093         * doc/functions/vprintf.texi: Update.
19094         * doc/functions/vsnprintf.texi: Update.
19095         * doc/functions/vsprintf.texi: Update.
19096
19097 2007-05-06  Bruno Haible  <bruno@clisp.org>
19098
19099         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
19100         pass the ' flag character to sprintf or snprintf.
19101         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
19102         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
19103         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
19104         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
19105         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
19106         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
19107         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
19108         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
19109         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
19110         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
19111         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
19112         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
19113         * tests/test-snprintf-posix.h (test_function): Also check the grouping
19114         flag.
19115         * tests/test-sprintf-posix.h (test_function): Likewise.
19116         * tests/test-vasnprintf-posix.c (test_function): Likewise.
19117         * tests/test-vasprintf-posix.c (test_function): Likewise.
19118         * doc/functions/fprintf.texi: Update.
19119         * doc/functions/printf.texi: Update.
19120         * doc/functions/snprintf.texi: Update.
19121         * doc/functions/sprintf.texi: Update.
19122         * doc/functions/vfprintf.texi: Update.
19123         * doc/functions/vprintf.texi: Update.
19124         * doc/functions/vsnprintf.texi: Update.
19125         * doc/functions/vsprintf.texi: Update.
19126
19127 2007-05-01  Bruno Haible  <bruno@clisp.org>
19128
19129         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
19130
19131 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
19132
19133         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
19134         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
19135
19136 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
19137
19138         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
19139         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
19140         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
19141
19142 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
19143
19144         * lib/argp-help.c (struct hol_entry): New member `ord'.
19145         (HOL_ENTRY_PTRCMP): Use ord for comparison
19146         (hol_sort): Initialize ord.
19147
19148 2007-05-01  Bruno Haible  <bruno@clisp.org>
19149
19150         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
19151         Reported by Eric Blake.
19152         * doc/gnulib.texi (Function Substitutes): Update.
19153
19154 2007-05-01  Bruno Haible  <bruno@clisp.org>
19155
19156         * doc/functions.texi: Remove file, now redundant through
19157         doc/functions/*.texi.
19158
19159 2007-05-01  Bruno Haible  <bruno@clisp.org>
19160
19161         * modules/argp (Depends-on): Add sleep.
19162
19163 2007-05-01  Bruno Haible  <bruno@clisp.org>
19164
19165         * modules/sleep-tests: New file.
19166         * tests/test-sleep.c: New file.
19167
19168         * modules/sleep: New file.
19169         * lib/sleep.c: New file.
19170         * m4/sleep.m4: New file.
19171         * lib/unistd_.h (sleep): New declaration.
19172         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
19173         HAVE_SLEEP.
19174         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
19175         * doc/functions/sleep.texi: Document the sleep module.
19176
19177 2007-05-01  Bruno Haible  <bruno@clisp.org>
19178
19179         * lib/sigprocmask.h: Remove file.
19180         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
19181         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
19182         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
19183         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
19184         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
19185         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
19186         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
19187         HAVE_SIGSET_T as a shell variable.
19188         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
19189         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
19190         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
19191         (Depends-on): Add signal. Remove verify.
19192         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
19193         (Include): Mention <signal.h> instead of sigprocmask.h.
19194         * NEWS: Mention the change.
19195         * lib/fatal-signal.c: Don't include sigprocmask.h.
19196
19197 2007-05-01  Bruno Haible  <bruno@clisp.org>
19198
19199         * modules/signal: New file.
19200         * lib/signal_.h: New file.
19201         * m4/signal_h.m4: New file.
19202
19203 2007-05-01  Bruno Haible  <bruno@clisp.org>
19204
19205         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
19206         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
19207         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
19208         HAVE_WCTYPE_CTMP_BUG into wctype.h.
19209
19210 2007-05-01  Bruno Haible  <bruno@clisp.org>
19211
19212         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
19213         configure time.
19214         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
19215         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
19216         * modules/sys_stat (Makefile.am): Substitute their values into
19217         sys/stat.h.
19218
19219 2007-05-01  Bruno Haible  <bruno@clisp.org>
19220
19221         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
19222         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
19223         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
19224
19225 2007-05-01  Bruno Haible  <bruno@clisp.org>
19226
19227         * doc/header/assert.texi: Undo last change: don't mention the gnulib
19228         'assert' module here.
19229
19230 2007-05-01  Bruno Haible  <bruno@clisp.org>
19231
19232         * doc/functions/*.texi: New files.
19233         * doc/functions/google-ranking.txt: New file.
19234         * doc/gnulib.texi (Function Substitutes): New chapter.
19235         (ctime, inet_ntoa): Remove sections.
19236         * doc/ctime.texi: Remove file.
19237         * doc/inet_ntoa.texi: Remove file.
19238         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
19239         dependencies.
19240         (%.info): New rule, specifying a --reference-limit.
19241
19242 2007-05-01  Bruno Haible  <bruno@clisp.org>
19243
19244         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
19245
19246 2007-05-01  Bruno Haible  <bruno@clisp.org>
19247
19248         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
19249         the portability of 'mkdir' to mingw systems.
19250
19251 2007-05-01  Bruno Haible  <bruno@clisp.org>
19252
19253         * doc/headers/google-ranking.txt: New file.
19254
19255 2007-04-30  Eric Blake  <ebb9@byu.net>
19256
19257         Prefer fseeko to fseek.
19258         * modules/getpass (Depends-on): Add fseeko.
19259         * lib/getpass.c (getpass): Use fseeko, not fseek.
19260
19261 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
19262
19263         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
19264         assumes the sorting is stable, while most qsort implementations
19265         are not.  Use argument addresses to ensure they never compare as
19266         equal.
19267
19268         * tests/test-argp-2.sh (usage-indent test): Fix output
19269         (func_compare): Restore diff options
19270         * tests/test-argp.c: Restore #include "progname.h"
19271
19272 2007-04-29  Bruno Haible  <bruno@clisp.org>
19273
19274         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
19275         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
19276         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
19277         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
19278         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
19279         (configure.ac): Define CHECK_SNPRINTF_POSIX.
19280         (TESTS, check_PROGRAMS): Add test-snprintf.
19281         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
19282         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
19283         (TESTS, check_PROGRAMS): Add test-vsnprintf.
19284         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
19285         assertions that fail on HP-UX, OSF/1, or IRIX.
19286         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
19287
19288 2007-04-29  Bruno Haible  <bruno@clisp.org>
19289
19290         * MODULES.html.sh (posix_functions): Remove 'contents'.
19291
19292 2007-04-29  Karl Berry  <karl@gnu.org>
19293
19294         * config/srclist.txt (gendocs_template_min): new entry.
19295
19296 2007-04-29  Bruno Haible  <bruno@clisp.org>
19297
19298         Work around fpurge bug on BSD systems.
19299         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
19300         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
19301         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
19302         fpurge to rpl_fpurge if the system already has this function.
19303         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
19304         the case where the system already has this function. Correct invariants
19305         on BSD systems.
19306         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
19307         BSD systems.
19308
19309 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
19310
19311         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
19312         proposed by Sven Verdoolaege.
19313
19314         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
19315         options.
19316         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
19317         (usage and help tests): Update
19318
19319 2007-04-29  Bruno Haible  <bruno@clisp.org>
19320
19321         * tests/test-fflush.c (main): Use a file of size 17, not 10.
19322         Print more information in case of failure. Disable a test on BeOS.
19323
19324 2007-04-29  Bruno Haible  <bruno@clisp.org>
19325
19326         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
19327         This helps debugging on systems on which no gdb is available.
19328
19329 2007-04-29  Bruno Haible  <bruno@clisp.org>
19330
19331         * lib/freading.h: Improve comments.
19332         * lib/fwriting.h: Likewise.
19333         * tests/test-freading.c (main): Don't check freading immediately after
19334         repositioning. Needed for glibc.
19335
19336 2007-04-29  Bruno Haible  <bruno@clisp.org>
19337
19338         * lib/freading.c (freading): Trivial simplification.
19339
19340 2007-04-28  Bruno Haible  <bruno@clisp.org>
19341
19342         * tests/test-fwriting.c (main): Also test the interaction between
19343         fflush and fwriting.
19344         * modules/fwriting-tests (Depends-on): Add fflush.
19345
19346         * tests/test-freading.c (main): Also test the interaction between
19347         fflush and freading.
19348         * modules/freading-tests (Depends-on): Add fflush.
19349
19350 2007-04-28  Bruno Haible  <bruno@clisp.org>
19351
19352         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
19353         fseeko and ftello.
19354         Suggested by Eric Blake.
19355
19356 2007-04-28  Jim Meyering  <jim@meyering.net>
19357
19358         Avoid false-negative in gl_STDINT_H's C99 conformance test.
19359         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
19360         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
19361
19362 2007-04-27  Eric Blake  <ebb9@byu.net>
19363
19364         * doc/headers/assert.texi (assert.h): Document assert module use.
19365
19366 2007-04-27  Bruno Haible  <bruno@clisp.org>
19367
19368         * doc/headers/*.texi: New files.
19369         * doc/gnulib.texi (Header File Substitutes): New chapter.
19370         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
19371         dependencies.
19372         (standards.info ,standards.html, standards.dvi): Update dependencies.
19373         (mostlyclean, clean): New targets.
19374
19375 2007-04-27  Bruno Haible  <bruno@clisp.org>
19376
19377         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
19378         * modules/sysexits (Files, Makefile.am): Update.
19379
19380         * lib/sys_socket_.h: Renamed from lib/socket_.h.
19381         * modules/sys_socket (Files, Makefile.am): Update.
19382
19383         * lib/sys_stat_.h: Renamed from lib/stat_.h.
19384         * modules/sys_stat (Files, Makefile.am): Update.
19385
19386 2007-04-27  Eric Blake  <ebb9@byu.net>
19387
19388         * lib/freading.h: Improve comments.
19389         * lib/fwriting.h: Likewise.
19390         * lib/fflush.c: Likewise.
19391
19392         Fix closein for mingw.
19393         * modules/closein-tests: Add tests for closein.
19394         * tests/test-closein.c: New file.
19395         * tests/test-closein.sh: Likewise.
19396         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
19397         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
19398
19399 2007-04-27  Bruno Haible  <bruno@clisp.org>
19400
19401         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
19402         version is < 6.
19403         * lib/math_.h [__DECC]: Likewise.
19404         * lib/stdio_.h [__DECC]: Likewise.
19405         * lib/stdlib_.h [__DECC]: Likewise.
19406         * lib/string_.h [__DECC]: Likewise.
19407         * lib/time_.h [__DECC]: Likewise.
19408         * lib/wchar_.h [__DECC]: Likewise.
19409         * lib/wctype_.h [__DECC]: Likewise.
19410
19411 2007-04-27  Bruno Haible  <bruno@clisp.org>
19412
19413         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
19414
19415 2007-04-27  Bruno Haible  <bruno@clisp.org>
19416
19417         * lib/fflush.c: Add comments.
19418         * modules/fpurge-tests (Depends-on): Add fflush.
19419         * modules/freadable-tests (Depends-on): Likewise.
19420         * modules/fwritable-tests (Depends-on): Likewise.
19421
19422 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
19423
19424         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
19425         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
19426         Report by Bruno Haible <bruno@clisp.org>.
19427
19428 2007-04-26  Eric Blake  <ebb9@byu.net>
19429
19430         Fix fflush on mingw.
19431         * modules/fflush (Depends-on): Add freading.
19432         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
19433         but unread data.
19434
19435 2007-04-26  Eric Blake  <ebb9@byu.net>
19436         and Bruno Haible  <bruno@clisp.org>
19437
19438         Implement freading and fwriting.
19439         * lib/freading.c: New file.
19440         * lib/freading.h: Likewise.
19441         * m4/freading.m4: Likewise.
19442         * modules/freading: Likewise.
19443         * modules/freading-tests: Likewise.
19444         * tests/test-freading.c: Likewise.
19445         * lib/fwriting.c: New file.
19446         * lib/fwriting.h: Likewise.
19447         * m4/fwriting.m4: Likewise.
19448         * modules/fwriting: Likewise.
19449         * modules/fwriting-tests: Likewise.
19450         * tests/test-fwriting.c: Likewise.
19451         * MODULES.html.sh (File stream based Input/Output): Mention them.
19452
19453 2007-04-26  Bruno Haible  <bruno@clisp.org>
19454
19455         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
19456         'long' when we assume it.
19457         Suggested by Eric Blake.
19458
19459 2007-04-26  Bruno Haible  <bruno@clisp.org>
19460
19461         Ensure fseeko, ftello are declared on glibc systems.
19462         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
19463         * modules/fseeko (configure.ac-early): Likewise.
19464         * modules/ftello (configure.ac-early): Likewise.
19465         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
19466         AC_FUNC_FSEEKO for this.
19467         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
19468         (gl_CHECK_FSEEKO): Remove macro.
19469
19470 2007-04-26  Bruno Haible  <bruno@clisp.org>
19471
19472         * tests/test-fflush.c (main): Also check the ftell result after
19473         fflush and fseek/fseeko.
19474         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
19475         file descriptor position cache in the stream.
19476         * lib/fseeko.c (rpl_fseeko): Likewise.
19477
19478 2007-04-26  Bruno Haible  <bruno@clisp.org>
19479
19480         * modules/fflush-tests (Depends-on): Add fseeko.
19481
19482 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
19483             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19484
19485         * lib/argz_.h: ensure error_t definition is obtained in same
19486         mechanism system argz.h would have.
19487         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
19488         argz facilities are known bad.  Err on the side of caution if
19489         cross-compiling.
19490
19491 2007-04-25  Eric Blake  <ebb9@byu.net>
19492
19493         * lib/fpurge.c (includes): Use stdlib.h for free.
19494         * tests/test-fflush.c (main): Also test fflush-fseeko.
19495
19496 2007-04-25  Bruno Haible  <bruno@clisp.org>
19497
19498         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
19499         * lib/fseeko.c: New file.
19500         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
19501         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
19502         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
19503         gl_FUNC_FSEEKO.
19504         (gl_FUNC_FSEEKO): Invoke it.
19505         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
19506         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
19507         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
19508
19509 2007-04-25  Bruno Haible  <bruno@clisp.org>
19510
19511         * modules/fflush (Depends-on): Add ftello.
19512
19513 2007-04-25  Bruno Haible  <bruno@clisp.org>
19514
19515         * modules/ftello-tests: New file.
19516         * tests/test-ftello.c: New file.
19517
19518         * modules/ftello: New file.
19519         * m4/ftello.m4: New file.
19520         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
19521         HAVE_FTELLO.
19522         * lib/stdio_.h (ftello): New declaration.
19523         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
19524         HAVE_FTELLO.
19525
19526 2007-04-25  Bruno Haible  <bruno@clisp.org>
19527
19528         * modules/fseeko-tests: New file.
19529         * tests/test-fseeko.c: New file.
19530
19531         * modules/fseeko: New file.
19532         * m4/fseeko.m4: New file.
19533         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
19534         HAVE_FSEEKO.
19535         * lib/stdio_.h (fseeko): New declaration.
19536         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
19537         HAVE_FSEEKO.
19538
19539 2007-04-25  Bruno Haible  <bruno@clisp.org>
19540
19541         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
19542
19543 2007-04-25  Bruno Haible  <bruno@clisp.org>
19544
19545         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
19546         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
19547         * tests/test-unistd.c: Likewise.
19548         * tests/test-fcntl.c: Likewise.
19549
19550 2007-04-23  Eric Blake  <ebb9@byu.net>
19551
19552         * lib/fflush.c: Fix missing include.
19553         Reported by Bruno Haible.
19554
19555 2007-04-23  Bruno Haible  <bruno@clisp.org>
19556
19557         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
19558         Reported by Eric Blake.
19559
19560 2007-04-23  Bruno Haible  <bruno@clisp.org>
19561
19562         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
19563
19564 2007-04-23  Bruno Haible  <bruno@clisp.org>
19565
19566         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
19567
19568 2007-04-23  Bruno Haible  <bruno@clisp.org>
19569
19570         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
19571         Needed on HP-UX 11.
19572
19573 2007-04-16  Eric Blake  <ebb9@byu.net>
19574
19575         Make fflush rely on fpurge.
19576         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
19577         open coding all variants.
19578         * modules/fflush (Depends-on): Add fpurge and unistd.
19579         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
19580         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
19581
19582         Fix --with-tests compilation on cygwin.
19583         * modules/argmatch-tests (Makefile.am): List gnulib library first
19584         in LDADD.
19585         * modules/argp-tests (Makefile.am): Likewise.
19586         * modules/array-list-tests (Makefile.am): Likewise.
19587         * modules/array-oset-tests (Makefile.am): Likewise.
19588         * modules/avltree-list-tests (Makefile.am): Likewise.
19589         * modules/avltree-oset-tests (Makefile.am): Likewise.
19590         * modules/avltreehash-list-tests (Makefile.am): Likewise.
19591         * modules/carray-list-tests (Makefile.am): Likewise.
19592         * modules/dirname-tests (Makefile.am): Likewise.
19593         * modules/frexp-tests (Makefile.am): Likewise.
19594         * modules/isnanl-tests (Makefile.am): Likewise.
19595         * modules/linked-list-tests (Makefile.am): Likewise.
19596         * modules/linkedhash-list-tests (Makefile.am): Likewise.
19597         * modules/lock-tests (Makefile.am): Likewise.
19598         * modules/rbtree-list-tests (Makefile.am): Likewise.
19599         * modules/rbtree-oset-tests (Makefile.am): Likewise.
19600         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
19601         * modules/tls-tests (Makefile.am): Likewise.
19602         * modules/tsearch-tests (Makefile.am): Likewise.
19603         * modules/xvasprintf-tests (Makefile.am): Likewise.
19604
19605         Fix fpurge for cygwin.
19606         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
19607         value.
19608         * modules/fpurge-tests (Depends-on): Clean up trash.
19609
19610 2007-04-16  Simon Josefsson  <simon@josefsson.org>
19611
19612         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
19613
19614         * m4/autobuild.m4: Re-indent.
19615
19616 2007-04-13  Bruno Haible  <bruno@clisp.org>
19617
19618         * modules/fpurge-tests: New file.
19619         * tests/test-fpurge.c: New file.
19620
19621         * modules/fpurge: New file.
19622         * lib/fpurge.h: New file.
19623         * lib/fpurge.c: New file.
19624         * m4/fpurge.m4: New file.
19625
19626 2007-04-13  Bruno Haible  <bruno@clisp.org>
19627
19628         * modules/fbufmode-tests: New file.
19629         * tests/test-fbufmode.c: New file.
19630
19631         * modules/fbufmode: New file.
19632         * lib/fbufmode.h: New file.
19633         * lib/fbufmode.c: New file.
19634         * m4/fbufmode.m4: New file.
19635
19636 2007-04-13  Bruno Haible  <bruno@clisp.org>
19637
19638         * modules/fwritable-tests: New file.
19639         * tests/test-fwritable.c: New file.
19640
19641         * modules/fwritable: New file.
19642         * lib/fwritable.h: New file.
19643         * lib/fwritable.c: New file.
19644         * m4/fwritable.m4: New file.
19645
19646 2007-04-13  Bruno Haible  <bruno@clisp.org>
19647
19648         * modules/freadable-tests: New file.
19649         * tests/test-freadable.c: New file.
19650
19651         * modules/freadable: New file.
19652         * lib/freadable.h: New file.
19653         * lib/freadable.c: New file.
19654         * m4/freadable.m4: New file.
19655
19656 2007-04-13  Bruno Haible  <bruno@clisp.org>
19657
19658         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
19659         MOSTLYCLEANFILES.
19660
19661 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19662
19663         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
19664         gzip bootstrap.conf to avoid dragging in i18n machinery.
19665         (gnulib_tool_option): Use it.
19666
19667 2007-04-13  Bruno Haible  <bruno@clisp.org>
19668
19669         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
19670         %F directives.
19671         * tests/test-vasprintf-posix.c (test_function): Likewise.
19672         * tests/test-snprintf-posix.h (test_function): Likewise.
19673         * tests/test-sprintf-posix.h (test_function): Likewise.
19674         * tests/test-fprintf-posix.h (test_function): Likewise.
19675         * tests/test-printf-posix.h (test_function): Likewise.
19676         * tests/test-fprintf-posix.out: Likewise.
19677
19678 2007-04-13  Bruno Haible  <bruno@clisp.org>
19679
19680         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
19681         * modules/tls-tests (configure.ac): Likewise.
19682         Reported by Arto C. Nirkko <anirkko@insel.ch>.
19683
19684 2007-04-13  Bruno Haible  <bruno@clisp.org>
19685
19686         * lib/tls.c (glthread_tls_get): Fix return type.
19687         Patch by Arto C. Nirkko <anirkko@insel.ch>.
19688
19689 2007-04-12  Eric Blake  <ebb9@byu.net>
19690
19691         * modules/gettime (Depends-on): Remove gettime.
19692         Reported by Dmitry V. Levin.
19693
19694 2007-04-12  Bruno Haible  <bruno@clisp.org>
19695
19696         * modules/fflush (Include): Mention <stdio.h>.
19697         * modules/strtoimax (Include): Mention <inttypes.h>.
19698         * modules/strtoumax (Include): Likewise.
19699
19700 2007-04-12  Eric Blake  <ebb9@byu.net>
19701
19702         * .cvsignore: New file.
19703         * .gitignore: Likewise.
19704
19705 2007-04-12  Bruno Haible  <bruno@clisp.org>
19706
19707         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
19708         not before, since $(LDADD) often contains libgnu.a.
19709         * modules/striconv-tests (test_striconv_LDADD): Likewise.
19710         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
19711         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
19712         Needed on Cygwin.
19713
19714 2007-04-12  Eric Blake  <ebb9@byu.net>
19715
19716         Work around glibc's failure to flush stdin on fclose.
19717         * lib/closein.c (close_stdin): Flush stdin before closing.
19718
19719         Work around glibc's failure to reset seekable stdin on exit.
19720         * modules/closein: New module.
19721         * lib/closein.c: New file.
19722         * lib/closein.h: Likewise.
19723         * m4/closein.m4: Likewise.
19724         * MODULES.html.sh (File stream based Input/Output): Document it.
19725
19726 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19727
19728         * gnulib-tool: Rename generated 'autobuild' script to
19729         'do-autobuild' in --create-megatestdir output.
19730
19731         * doc/gnulib.texi (Build robot for gnulib): Fix.
19732
19733 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19734
19735         * modules/sysexits (Depends-on): Add absolute-header.
19736
19737 2007-04-12  Eric Blake  <ebb9@byu.net>
19738
19739         No need to preserve errno on success.
19740         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
19741         Reported by Bruno Haible.
19742
19743 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19744
19745         * MODULES.html.sh (Support for maintaining and releasing
19746         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
19747
19748 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19749
19750         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
19751
19752 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19753
19754         * modules/autobuild: New module.
19755
19756         * m4/autobuild.m4: New file.
19757
19758 2007-04-11  Bruno Haible  <bruno@clisp.org>
19759
19760         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
19761         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
19762         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
19763         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
19764         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
19765         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19766         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19767         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
19768         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19769         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19770         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
19771         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19772         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19773         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
19774         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19775         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19776         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
19777         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19778         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19779         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
19780         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19781         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19782         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
19783         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19784         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19785         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
19786         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19787         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19788         Reported by Eric Blake.
19789
19790 2007-04-11  Bruno Haible  <bruno@clisp.org>
19791
19792         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
19793
19794 2007-04-10  Bruno Haible  <bruno@clisp.org>
19795
19796         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
19797         for NaN and Infinity. Needed on FreeBSD 6.1.
19798         * tests/test-vasnprintf-posix.c (test_function): Undo last change
19799         regarding results for "%010a" of Infinity and NaN.
19800         * tests/test-vasprintf-posix.c (test_function): Likewise.
19801         * tests/test-snprintf-posix.h (test_function): Likewise.
19802         * tests/test-sprintf-posix.h (test_function): Likewise.
19803         * tests/test-fprintf-posix.h (test_function): Likewise.
19804         * tests/test-printf-posix.h (test_function): Likewise.
19805         * tests/test-fprintf-posix.out: Likewise.
19806
19807 2007-04-10  Bruno Haible  <bruno@clisp.org>
19808
19809         * modules/locale-tests: New file.
19810         * tests/test-locale.c: New file.
19811
19812         * modules/locale: New file.
19813         * lib/locale_.h: New file.
19814         * m4/locale_h.m4: New file.
19815
19816 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
19817             Bruno Haible  <bruno@clisp.org>
19818
19819         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
19820         be determined, test for availability of the copysignf, copysign,
19821         copysignl functions.
19822         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
19823         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
19824         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
19825
19826 2007-04-09  Eric Blake  <ebb9@byu.net>
19827
19828         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
19829         * modules/stdio (Makefile.am): Support fflush.
19830         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
19831         * modules/fflush: New file.
19832         * lib/fflush.c: Likewise.
19833         * m4/fflush.m4: Likewise.
19834         * modules/fflush-tests: New test.
19835         * tests/test-fflush.c: Likewise.
19836         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
19837
19838 2007-04-06  Bruno Haible  <bruno@clisp.org>
19839
19840         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
19841         (VASNPRINTF): Use signbit for faster determination whether to print a
19842         minus sign.
19843         * modules/vasnprintf (Files): Remove lib/float+.h.
19844         * modules/fprintf-posix (Depends-on): Add signbit.
19845         * modules/snprintf-posix (Depends-on): Likewise.
19846         * modules/sprintf-posix (Depends-on): Likewise.
19847         * modules/vasnprintf-posix (Depends-on): Likewise.
19848         * modules/vasprintf-posix (Depends-on): Likewise.
19849         * modules/vfprintf-posix (Depends-on): Likewise.
19850         * modules/vsnprintf-posix (Depends-on): Likewise.
19851         * modules/vsprintf-posix (Depends-on): Likewise.
19852
19853 2007-04-06  Bruno Haible  <bruno@clisp.org>
19854
19855         * tests/test-frexp.c (main): Test also the sign bit of zero results.
19856         * tests/test-frexpl.c (main): Likewise.
19857         * tests/test-ldexpl.c (main): Likewise.
19858         * modules/frexp-tests (Depends-on): Add signbit.
19859         * modules/frexpl-tests (Depdends-on): Likewise.
19860         * modules/ldexpl-tests (Depdends-on): Likewise.
19861
19862 2007-04-06  Bruno Haible  <bruno@clisp.org>
19863
19864         * modules/signbit-tests: New file.
19865         * tests/test-signbit.c: New file.
19866
19867         * modules/signbit: New file.
19868         * lib/signbitf.c: New file.
19869         * lib/signbitd.c: New file.
19870         * lib/signbitl.c: New file.
19871         * m4/signbit.m4: New file.
19872         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
19873         (signbit): New macro.
19874         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
19875         REPLACE_SIGNBIT.
19876         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
19877         REPLACE_FREXPL into math.h.
19878
19879 2007-04-06  Bruno Haible  <bruno@clisp.org>
19880
19881         * modules/isnanf-nolibm-tests: New file.
19882         * tests/test-isnanf.c: New file.
19883
19884         * modules/isnanf-nolibm: New file.
19885         * lib/isnanf.h: New file.
19886         * lib/isnanf.c: New file.
19887         * lib/isnan.c: Consider the USE_FLOAT macro.
19888         * m4/isnanf.m4: New file.
19889
19890 2007-04-06  Bruno Haible  <bruno@clisp.org>
19891
19892         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
19893         (Link): New section.
19894
19895         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
19896
19897 2007-04-06  Bruno Haible  <bruno@clisp.org>
19898
19899         Assume the 'long double' type.
19900         * m4/longdouble.m4: Remove file.
19901         * config/srclist.txt: Don't mention longdouble.m4.
19902         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
19903         * lib/float+.h: Likewise.
19904         * lib/frexp.c: Likewise.
19905         * lib/printf-args.h: Likewise.
19906         * lib/printf-args.c: Likewise.
19907         * lib/printf-frexp.c: Likewise.
19908         * lib/printf-parse.c: Likewise.
19909         * lib/vasnprintf.c: Likewise.
19910         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
19911         * m4/intl.m4: Likewise.
19912         * m4/isnanl.m4: Likewise.
19913         * m4/printf.m4: Likewise.
19914         * m4/printf-frexpl.m4: Likewise.
19915         * m4/vasnprintf.m4: Likewise.
19916         * modules/allocsa (Files): Remove m4/longdouble.m4.
19917         * modules/gettext (Files): Likewise.
19918         * modules/relocatable-prog-wrapper (Files): Likewise.
19919         * modules/vasnprintf (Files): Likewise.
19920         * modules/isnanl (Files): Likewise.
19921         (Include): Simplify.
19922         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
19923         (Include): Simplify.
19924         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
19925         (Include): Simplify.
19926         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
19927         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19928         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
19929         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19930         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
19931         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19932         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
19933         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19934         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
19935         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19936         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
19937         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19938         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
19939         * tests/test-isnanl.c: Likewise.
19940         * tests/test-snprintf-posix.h: Likewise.
19941         * tests/test-sprintf-posix.h: Likewise.
19942         * tests/test-vasnprintf-posix.c: Likewise.
19943         * tests/test-vasnprintf-posix2.c: Likewise.
19944         * tests/test-vasprintf-posix.c: Likewise.
19945
19946 2007-04-06  Bruno Haible  <bruno@clisp.org>
19947
19948         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
19949         * lib/math_.h [__DECC]: Include the overridden include file through
19950         #include_next, outside the double-inclusion guard.
19951         * lib/stdio_.h [__DECC]: Likewise.
19952         * lib/stdlib_.h [__DECC]: Likewise.
19953         * lib/string_.h [__DECC]: Likewise.
19954         * lib/time_.h [__DECC]: Likewise.
19955         * lib/wchar_.h [__DECC]: Likewise.
19956         * lib/wctype_.h [__DECC]: Likewise.
19957         * lib/inttypes_.h [__DECC]: Likewise.
19958         Reported by Albert Chin <china@thewrittenword.com> in
19959         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
19960
19961 2007-04-04  Eric Blake  <ebb9@byu.net>
19962
19963         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
19964         1.5.x.
19965
19966 2007-04-04  Bruno Haible  <bruno@clisp.org>
19967
19968         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
19969         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
19970
19971 2007-04-04  Bruno Haible  <bruno@clisp.org>
19972
19973         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
19974         results for "%010a" of Infinity and NaN.
19975         * tests/test-vasprintf-posix.c (test_function): Likewise.
19976         * tests/test-snprintf-posix.h (test_function): Likewise.
19977         * tests/test-sprintf-posix.h (test_function): Likewise.
19978         * tests/test-fprintf-posix.h (test_function): Remove these tests.
19979         * tests/test-printf-posix.h (test_function): Likewise.
19980         * tests/test-fprintf-posix.out: Update.
19981         Needed for FreeBSD 6.1.
19982
19983 2007-04-04  Bruno Haible  <bruno@clisp.org>
19984
19985         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
19986         directly used by the gnulib modules nor by gnulib-tool.
19987
19988 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
19989
19990         * DEPENDENCIES: Give overall description of version dependency
19991         desirability.  Use more-typical names for apps.
19992         Add shell, coreutils, diffutils, grep, tar, gzip.
19993
19994 2007-04-04  Simon Josefsson  <simon@josefsson.org>
19995
19996         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
19997
19998 2007-04-04  Karl Berry  <karl@gnu.org>
19999
20000         * MODULES.html.sh (func_module): missing '.
20001
20002 2007-04-03  Bruno Haible  <bruno@clisp.org>
20003
20004         * modules/argmatch-tests (Makefile.am): New variable
20005         test_argmatch_LDADD.
20006         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
20007         * modules/array-list-tests (Makefile.am): New variable
20008         test_array_list_LDADD.
20009         * modules/array-oset-tests (Makefile.am): New variable
20010         test_array_oset_LDADD.
20011         * modules/avltree-list-tests (Makefile.am): New variable
20012         test_avltree_list_LDADD.
20013         * modules/avltree-oset-tests (Makefile.am): New variable
20014         test_avltree_oset_LDADD.
20015         * modules/avltreehash-list-tests (Makefile.am): New variable
20016         test_avltreehash_list_LDADD.
20017         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
20018         test_canonicalize_lgpl_LDADD.
20019         * modules/carray-list-tests (Makefile.am): New variable
20020         test_carray_list_LDADD.
20021         * modules/dirname-tests (Makefile.am): New variable
20022         test_dirname_LDADD.
20023         * modules/linked-list-tests (Makefile.am): New variable
20024         test_linked_list_LDADD.
20025         * modules/linkedhash-list-tests (Makefile.am): New variable
20026         test_linkedhash_list_LDADD.
20027         * modules/rbtree-list-tests (Makefile.am): New variable
20028         test_rbtree_list_LDADD.
20029         * modules/rbtree-oset-tests (Makefile.am): New variable
20030         test_rbtree_oset_LDADD.
20031         * modules/rbtreehash-list-tests (Makefile.am): New variable
20032         test_rbtreehash_list_LDADD.
20033         * modules/xvasprintf-tests (Makefile.am): New variable
20034         test_xvasprintf_LDADD.
20035         Reported by Eric Blake.
20036
20037 2007-04-03  Eric Blake  <ebb9@byu.net>
20038
20039         * DEPENDENCIES: Weaken m4 requirements.
20040
20041 2007-04-03  Bruno Haible  <bruno@clisp.org>
20042
20043         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
20044         * modules/isnanl-tests (configure.ac): Likewise.
20045
20046 2007-04-03  Ben Pfaff  <blp@gnu.org>
20047
20048         * modules/iconv_open: Add $(srcdir)/ to source directory
20049         references in Makefile fragments that call gperf, to fix VPATH
20050         builds.
20051
20052 2007-04-03  Bruno Haible  <bruno@clisp.org>
20053
20054         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
20055         * lib/ldexpl.c: Undo last change.
20056
20057 2007-04-03  Bruno Haible  <bruno@clisp.org>
20058
20059         * modules/printf-frexpl (Depends-on): Undo last change.
20060         (Files): Add m4/ldexpl.m4.
20061
20062 2007-04-03  Bruno Haible  <bruno@clisp.org>
20063
20064         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
20065         * modules/isnanl (Link): New section.
20066
20067         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
20068         * modules/frexp (Link): New section.
20069
20070         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
20071         * modules/frexpl (Link): New section.
20072
20073         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
20074         * modules/ldexpl (Link): New section.
20075
20076 2007-04-03  Bruno Haible  <bruno@clisp.org>
20077
20078         * modules/TEMPLATE-EXTENDED: New file.
20079         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
20080
20081 2007-04-03  Bruno Haible  <bruno@clisp.org>
20082
20083         * DEPENDENCIES: New file.
20084         Suggested by Simon Josefsson.
20085
20086 2007-04-03  Bruno Haible  <bruno@clisp.org>
20087
20088         * doc/gnulib.texi: Escape @.
20089
20090 2007-04-03  James Youngman  <jay@gnu.org>
20091         and Paul Eggert  <eggert@cs.ucla.edu>
20092
20093         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
20094         birthtime on all systems that have birthtime, not just those which
20095         use st_birthtimensec rather than st_birthtim.  Putting zero in
20096         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
20097         that the birth time is not available for files on an NFS mount.
20098
20099 2007-04-03  Simon Josefsson  <simon@josefsson.org>
20100
20101         * modules/memxor: Move back from crypto/, suggested by Bruno.
20102         * modules/crypto/hmac-sha1: Fix memxor dependency.
20103
20104         * modules/crypto/gc: Moved from ../.
20105
20106 2007-04-02  Eric Blake  <ebb9@byu.net>
20107
20108         * lib/ldexpl.c (includes): Avoid libm.
20109
20110         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
20111
20112 2007-04-02  Bruno Haible  <bruno@clisp.org>
20113
20114         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
20115         on IRIX.
20116
20117 2007-04-02  Bruno Haible  <bruno@clisp.org>
20118
20119         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
20120         x86 or x86_64 platforms running MacOS X.
20121         Reported by Ryan Schmidt <@ryandesign.com>.
20122
20123 2007-04-02  Bruno Haible  <bruno@clisp.org>
20124
20125         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
20126         i386.
20127
20128 2007-04-01  Simon Josefsson  <simon@josefsson.org>
20129
20130         * modules/crypto/arcfour: Moved from ../.
20131         * modules/crypto/arcfour-tests: Moved from ../.
20132         * modules/crypto/arctwo: Moved from ../.
20133         * modules/crypto/arctwo-tests: Moved from ../.
20134         * modules/crypto/des: Moved from ../.
20135         * modules/crypto/des-tests: Moved from ../.
20136         * modules/crypto/gc-arcfour: Moved from ../.
20137         * modules/crypto/gc-arcfour-tests: Moved from ../.
20138         * modules/crypto/gc-arctwo: Moved from ../.
20139         * modules/crypto/gc-arctwo-tests: Moved from ../.
20140         * modules/crypto/gc-des: Moved from ../.
20141         * modules/crypto/gc-des-tests: Moved from ../.
20142         * modules/crypto/gc-hmac-md5: Moved from ../.
20143         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
20144         * modules/crypto/gc-hmac-sha1: Moved from ../.
20145         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
20146         * modules/crypto/gc-md2: Moved from ../.
20147         * modules/crypto/gc-md2-tests: Moved from ../.
20148         * modules/crypto/gc-md4: Moved from ../.
20149         * modules/crypto/gc-md4-tests: Moved from ../.
20150         * modules/crypto/gc-md5: Moved from ../.
20151         * modules/crypto/gc-md5-tests: Moved from ../.
20152         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
20153         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
20154         * modules/crypto/gc-random: Moved from ../.
20155         * modules/crypto/gc-rijndael: Moved from ../.
20156         * modules/crypto/gc-rijndael-tests: Moved from ../.
20157         * modules/crypto/gc-sha1: Moved from ../.
20158         * modules/crypto/gc-sha1-tests: Moved from ../.
20159         * modules/crypto/gc-tests: Moved from ../.
20160         * modules/crypto/hmac-md5: Moved from ../.
20161         * modules/crypto/hmac-md5-tests: Moved from ../.
20162         * modules/crypto/hmac-sha1: Moved from ../.
20163         * modules/crypto/hmac-sha1-tests: Moved from ../.
20164         * modules/crypto/md2: Moved from ../.
20165         * modules/crypto/md2-tests: Moved from ../.
20166         * modules/crypto/md4: Moved from ../.
20167         * modules/crypto/md4-tests: Moved from ../.
20168         * modules/crypto/md5: Moved from ../.
20169         * modules/crypto/md5-tests: Moved from ../.
20170         * modules/crypto/memxor: Moved from ../.
20171         * modules/crypto/rijndael: Moved from ../.
20172         * modules/crypto/rijndael-tests: Moved from ../.
20173         * modules/crypto/sha1: Moved from ../.
20174
20175 2007-03-30  James Youngman  <jay@gnu.org>
20176
20177         * tests/test-stat-time.c (prepare_test): use chmod() rather than
20178         rename() to change the ctime of a file (because ctime is unaffected
20179         by rename on jfs2 on AIX 5.1).
20180         (main): Start by doing cleanup, in case a previous run failed leaving
20181         test files behind.
20182
20183 2007-03-31  Bruno Haible  <bruno@clisp.org>
20184
20185         Support old proprietary implementations of iconv.
20186         * modules/iconv_open: New file.
20187         * lib/iconv_.h: New file.
20188         * m4/iconv_h.m4: New file.
20189         * lib/iconv_open.c: New file.
20190         * lib/iconv_open-aix.gperf: New file.
20191         * lib/iconv_open-hpux.gperf: New file.
20192         * lib/iconv_open-irix.gperf: New file.
20193         * lib/iconv_open-osf.gperf: New file.
20194         * m4/iconv_open.m4: New file.
20195         * modules/linebreak (Depends-on): Add iconv_open.
20196         * modules/striconv (Depends-on): Likewise.
20197         * modules/striconveh (Depends-on): Likewise.
20198         * modules/unicodeio (Depends-on): Likewise.
20199         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
20200         (iconv_t)(-1).
20201         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
20202         conversion if cd is (iconv_t)(-1).
20203         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
20204         is not possible.
20205
20206 2007-03-31  Bruno Haible  <bruno@clisp.org>
20207
20208         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
20209         work on Solaris either. Protect also second use of "autodetect_jp".
20210
20211 2007-03-31  Bruno Haible  <bruno@clisp.org>
20212
20213         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
20214         the function is not present.
20215
20216 2007-03-31  Bruno Haible  <bruno@clisp.org>
20217
20218         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
20219         the function is not present.
20220
20221 2007-03-31  Bruno Haible  <bruno@clisp.org>
20222
20223         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
20224         a bug in HP-UX iconv_open().
20225
20226 2007-03-31  Bruno Haible  <bruno@clisp.org>
20227
20228         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
20229         (Mathematics <math.h>): New section, add fpieee.
20230         (Input/output <stdio.h>): Add fseterr.
20231         (Mathematics <math.h>): New section, add printf-frexp.
20232         (Container data structures): Add sublist.
20233         (Core language properties): Add fpucw, inline.
20234         (Functions for greatest-width integer types <inttypes.h>): Add
20235         imaxabs, imaxdiv, inttypes.
20236         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
20237         isnanl-nolibm, ldexp.
20238         (Mathematics <math.h>): New section, add printf-frexpl.
20239         (Support for systems lacking POSIX:2001): Add fprintf-posix,
20240         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
20241         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
20242         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
20243         (Unicode string functions): Add unistr/u*-mbtoucr.
20244         (Java): Add javacomp-script, javaexec-script.
20245         (C#): Add csharpcomp-script, csharpexec-script.
20246         (Support for building libraries and executables): Add havelib,
20247         relocatable-*.
20248         (Support for maintaining and releasing projects): Renamed from
20249         'Support for maintaining and release projects'. Add announce-gen.
20250
20251 2007-03-31  Bruno Haible  <bruno@clisp.org>
20252
20253         * README: Talk primarily about git.
20254         (git and CVS): Renamed from CVS.
20255         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
20256         gnulib is available through git.
20257         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
20258
20259 2007-03-30  Bruno Haible  <bruno@clisp.org>
20260
20261         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
20262         * lib/poll_.h: Likewise.
20263         * lib/stat_.h: Likewise.
20264         * lib/sys_time_.h: Likewise.
20265         * lib/sysexit_.h: Likewise.
20266         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
20267         * lib/stdbool_.h: Likewise.
20268         * lib/byteswap_.h: Add double-inclusion guard.
20269
20270 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
20271
20272         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
20273
20274 2007-03-30  Karl Berry  <karl@gnu.org>
20275
20276         * config/srclist-update: double space after USA in the license
20277         substitution, since that's how it's usually (?) written.
20278
20279 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
20280
20281         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
20282         reported by Bruno Haible.
20283
20284 2007-03-29  Bruno Haible  <bruno@clisp.org>
20285
20286         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
20287         a bug in AIX iconv().
20288
20289 2007-03-29  Bruno Haible  <bruno@clisp.org>
20290
20291         * modules/ldexpl-tests: New file.
20292         * tests/test-ldexpl.c: New file.
20293
20294 2007-03-29  Bruno Haible  <bruno@clisp.org>
20295
20296         * lib/ldexpl.c: Include fpucw.h.
20297         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
20298         multiplication.
20299         * modules/ldexpl (Depends-on): Add fpucw.
20300
20301 2007-03-29  Bruno Haible  <bruno@clisp.org>
20302
20303         * modules/ldexpl: New file.
20304         * m4/ldexpl.m4: New file.
20305         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
20306         set.
20307         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
20308         REPLACE_LDEXPL.
20309         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
20310         REPLACE_LDEXPL.
20311         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
20312         gl_FUNC_LDEXPL_WORKS.
20313         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
20314         * modules/mathl (Files): Remove lib/ldexpl.c.
20315         (Depends-on): Add ldexpl.
20316
20317 2007-03-29  Bruno Haible  <bruno@clisp.org>
20318
20319         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
20320
20321 2007-03-29  Bruno Haible  <bruno@clisp.org>
20322
20323         * tests/test-striconveh.c (main): Don't assume that a direct conversion
20324         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
20325         and possibly also HP-UX.
20326         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
20327         work on AIX, IRIX, HP-UX, OSF/1.
20328         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
20329         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
20330         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
20331         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
20332         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
20333         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
20334
20335 2007-03-29  Bruno Haible  <bruno@clisp.org>
20336
20337         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
20338
20339 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
20340
20341         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
20342         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
20343
20344 2007-03-29  Eric Blake  <ebb9@byu.net>
20345
20346         * lib/acl-internal.h: Remove redundant include.
20347         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
20348         Cygwin when a file is locked.
20349
20350 2007-03-29  Bruno Haible  <bruno@clisp.org>
20351
20352         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
20353         file.
20354         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
20355
20356 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
20357
20358         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
20359         try to remove a parent directory if the child couldn't be removed
20360         (except for the first rmdir, which could fail because the child
20361         doesn't exist).  Problem reported by Jeff Blaine in
20362         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
20363
20364 2007-03-28  Bruno Haible  <bruno@clisp.org>
20365
20366         * lib/striconveh.c (utf8conv_carefully): New function.
20367         (mem_cd_iconveh_internal): Invoke it.
20368
20369 2007-03-28  Bruno Haible  <bruno@clisp.org>
20370
20371         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
20372         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
20373         input.
20374         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
20375         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
20376         unistr/u8-uctomb.
20377
20378 2007-03-28  Bruno Haible  <bruno@clisp.org>
20379
20380         * modules/unistr/u8-mbtoucr: New file.
20381         * lib/unistr/u8-mbtoucr.c: New file.
20382         * modules/unistr/u16-mbtoucr: New file.
20383         * lib/unistr/u16-mbtoucr.c: New file.
20384         * modules/unistr/u16-mbtoucr: New file.
20385         * lib/unistr/u16-mbtoucr.c: New file.
20386         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
20387
20388 2007-03-27  Simon Josefsson  <simon@josefsson.org>
20389             Bruno Haible  <bruno@clisp.org>
20390
20391         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
20392         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
20393         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
20394
20395         * m4/stdio_h.m4: Add stubs for vasprintf too.
20396
20397         * modules/stdio: Support vasprintf in sed command.
20398
20399         * modules/vasprintf: Depend on stdio for prototypes.  Remove
20400         vasprintf.h.  Add stdio module indicator.
20401
20402         * lib/stdio_.h: Declare asprintf and vasprintf, based on
20403         vasprintf.h.
20404
20405         * lib/vasprintf.h: File removed.
20406
20407         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
20408         * lib/vasprintf.c: Ditto.
20409         * lib/xvasprintf.c: Ditto.
20410         * tests/test-vasprintf-posix.c: Ditto.
20411         * tests/test-vasprintf.c: Ditto.
20412
20413 2007-03-27  Bruno Haible  <bruno@clisp.org>
20414
20415         Make vasnprintf multithread-safe.
20416         * lib/vasnprintf.c (decimal_point_char): New function.
20417         (VASNPRINTF): Use it.
20418         Suggested by Simon Josefsson.
20419
20420 2007-03-27  Eric Blake  <ebb9@byu.net>
20421
20422         Support sub-second birthtime on cygwin.
20423         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
20424         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
20425         (get_stat_birthtime): Also work with st_birthtim.
20426
20427 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
20428
20429         * lib/stat-time.h (USE_BIRTHTIME): Remove.
20430         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
20431         (get_stat_birthtime_ns): Do not try to use "spare" fields.
20432         (get_stat_birthtime_ns): Simplify compile-time tests.
20433         (get_stat_birthtime): Change the API to look like
20434         get_stat_mtime etc., except return a negative tv_nsec on error.
20435         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
20436         Don't check for "spare" fields.
20437         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
20438         or for struct stat.st_birthtime, as these tests aren't used.
20439         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
20440
20441 2007-03-27  Bruno Haible  <bruno@clisp.org>
20442
20443         * lib/stat-time.h: Include <sys/stat.h>.
20444
20445 2007-03-27  James Youngman  <jay@gnu.org>
20446
20447         * lib/stat-time.h (get_stat_birthtime): New function for
20448           retrieving st_birthtime as provided by UFS2 (hence *BSD).
20449         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
20450           and its variants.
20451         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
20452         * modules/stat-time-test: New file.
20453         * tests/test-stat-time.c: New test, devised by Bruno Haible.
20454
20455 2007-03-26  Bruno Haible  <bruno@clisp.org>
20456
20457         Better support of signalling NaNs.
20458         * lib/atanl.c: Include isnanl.h.
20459         (atanl): Perform test for NaN at the beginning of the function and
20460         through a call to isnanl.
20461         * lib/cosl.c: Include isnanl.h.
20462         (cosl): Perform test for NaN at the beginning of the function and
20463         through a call to isnanl.
20464         * lib/ldexpl.c: Include isnanl.h.
20465         (ldexpl): Perform test for NaN through a call to isnanl.
20466         * lib/logl.c: Include isnanl.h.
20467         (logl): Perform test for NaN at the beginning of the function and
20468         through a call to isnanl.
20469         * lib/sinl.c: Include isnanl.h.
20470         (sinl): Perform test for NaN at the beginning of the function and
20471         through a call to isnanl.
20472         * lib/sqrtl.c: Include isnanl.h.
20473         (sqrtl): Perform test for NaN at the beginning of the function and
20474         through a call to isnanl.
20475         * lib/tanl.c: Include isnanl.h.
20476         (tanl): Perform test for NaN at the beginning of the function and
20477         through a call to isnanl.
20478         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
20479         * modules/mathl (Depends-on): Add isnanl.
20480
20481 2007-03-26  Eric Blake  <ebb9@byu.net>
20482
20483         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
20484         regression in logic sense of previous patch.
20485
20486 2007-03-26  Bruno Haible  <bruno@clisp.org>
20487
20488         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
20489         unportable shell command "if ! ...".
20490         Reported by Ralf Wildenhues.
20491
20492 2007-03-25  Bruno Haible  <bruno@clisp.org>
20493
20494         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
20495         <sysexits.h> file, and only add EX_CONFIG.
20496         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
20497         absolute file name and whether it is sufficient. Substitute also
20498         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
20499         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
20500         ABSOLUTE_SYSEXITS_H into sysexits.h.
20501
20502 2007-03-25  Bruno Haible  <bruno@clisp.org>
20503
20504         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
20505         hints is NULL.
20506
20507 2007-03-25  Bruno Haible  <bruno@clisp.org>
20508
20509         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
20510         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
20511
20512 2007-03-25  Bruno Haible  <bruno@clisp.org>
20513
20514         * lib/vasnprintf.c: Include langinfo.h.
20515         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
20516         multithread-safe.
20517         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
20518         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
20519         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
20520         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
20521         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
20522         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
20523         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
20524         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
20525         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
20526         Reported by Simon Josefsson.
20527
20528 2007-03-25  Bruno Haible  <bruno@clisp.org>
20529
20530         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
20531         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
20532         * modules/vasnprintf (Depends-on): Add stdint.
20533
20534 2007-03-25  Bruno Haible  <bruno@clisp.org>
20535
20536         * modules/fpieee: New file.
20537         * m4/fpieee.m4: New file.
20538         * modules/isnan-nolibm (Depends-on): Add fpieee.
20539         * modules/isnanl-nolibm (Depends-on): Add fpieee.
20540         * modules/isnanl (Depends-on): Add fpieee.
20541
20542 2007-03-25  Bruno Haible  <bruno@clisp.org>
20543
20544         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
20545
20546 2007-03-25  Bruno Haible  <bruno@clisp.org>
20547
20548         Avoid test failures on IRIX 6.5.
20549         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
20550         (main): Use it.
20551         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
20552         macros.
20553         (main): Use them.
20554
20555 2007-03-25  Bruno Haible  <bruno@clisp.org>
20556
20557         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
20558         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
20559         exists but doesn't work.
20560         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
20561         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
20562         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
20563         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
20564
20565 2007-03-25  Bruno Haible  <bruno@clisp.org>
20566
20567         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
20568         returns inf. Needed on IRIX 6.5.
20569
20570 2007-03-25  Bruno Haible  <bruno@clisp.org>
20571
20572         * tests/test-frexpl.c: Include isnanl-nolibm.h.
20573         (main): Use isnanl instead of x != x idiom.
20574         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
20575
20576         * tests/test-frexp.c: Include isnan.h.
20577         (main): Use isnan instead of x != x idiom.
20578         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
20579
20580 2007-03-25  Bruno Haible  <bruno@clisp.org>
20581
20582         * tests/test-frexp.c (NaN): New function/macro.
20583         (main): Use it instead of 0.0 / 0.0.
20584         * tests/test-isnan.c (NaN): New function/macro.
20585         (main): Use it instead of 0.0 / 0.0.
20586         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
20587         (test_function): Use it instead of 0.0 / 0.0.
20588         * tests/test-vasprintf-posix.c (NaN): New function/macro.
20589         (test_function): Use it instead of 0.0 / 0.0.
20590         * tests/test-snprintf-posix.h (NaN): New function/macro.
20591         (test_function): Use it instead of 0.0 / 0.0.
20592         * tests/test-sprintf-posix.h (NaN): New function/macro.
20593         (test_function): Use it instead of 0.0 / 0.0.
20594         * tests/test-fprintf-posix.h (NaN): New function/macro.
20595         (test_function): Use it instead of 0.0 / 0.0.
20596         * tests/test-printf-posix.h (NaN): New function/macro.
20597         (test_function): Use it instead of 0.0 / 0.0.
20598
20599         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
20600
20601 2007-03-25  Bruno Haible  <bruno@clisp.org>
20602
20603         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
20604
20605 2007-03-25  Bruno Haible  <bruno@clisp.org>
20606
20607         * lib/regexec.c (merge_state_with_log): Make static.
20608
20609 2007-03-25  Bruno Haible  <bruno@clisp.org>
20610
20611         * lib/trigl.c (kernel_rem_pio2): Make static.
20612
20613 2007-03-25  Bruno Haible  <bruno@clisp.org>
20614
20615         * lib/sincosl.c (sincosl_table): Make static.
20616
20617 2007-03-25  Bruno Haible  <bruno@clisp.org>
20618
20619         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
20620         if the compiler does not support C99.
20621
20622 2007-03-25  Bruno Haible  <bruno@clisp.org>
20623
20624         * modules/time (Makefile.am): Ensure all rule action lines start with a
20625         tab.
20626
20627 2007-03-24  Bruno Haible  <bruno@clisp.org>
20628
20629         * modules/tsearch-tests: New file.
20630         * tests/test-tsearch.sh: New file.
20631         * tests/test-tsearch.c: New file, mostly copied from glibc.
20632
20633         * modules/search-tests: New file.
20634         * tests/test-search.c: New file.
20635
20636         * modules/search: New file.
20637         * lib/search_.h: New file, incorporating lib/tsearch.h.
20638         * m4/search_h.m4: New file.
20639         * lib/tsearch.h: Remove file.
20640         * lib/tsearch.c: Include search.h instead of tsearch.h.
20641         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
20642         HAVE_TSEARCH.
20643         * modules/tsearch (Files): Remove lib/tsearch.h.
20644         (Depends-on): Add search.
20645         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
20646         (Include): Change tsearch.h into search.h.
20647
20648 2007-03-24  Bruno Haible  <bruno@clisp.org>
20649
20650         * modules/fpucw: New file.
20651         * lib/fpucw.h: New file.
20652         * lib/frexp.c: Include fpucw.h.
20653         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
20654         (FUNC): Use them.
20655         * lib/printf-frexp.c: Include fpucw.h.
20656         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
20657         (FUNC): Use them.
20658         * lib/vasnprintf.c: Include fpucw.h.
20659         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
20660         'long double' calculations.
20661         * tests/test-frexpl.c: Include fpucw.h.
20662         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
20663         * tests/test-printf-frexpl.c: Include fpucw.h.
20664         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
20665         * modules/frexpl (Depends-on): Add fpucw.
20666         * modules/printf-frexpl (Depends-on): Likewise.
20667         * modules/fprintf-posix (Depends-on): Likewise.
20668         * modules/snprintf-posix (Depends-on): Likewise.
20669         * modules/sprintf-posix (Depends-on): Likewise.
20670         * modules/vasnprintf-posix (Depends-on): Likewise.
20671         * modules/vasprintf-posix (Depends-on): Likewise.
20672         * modules/vfprintf-posix (Depends-on): Likewise.
20673         * modules/vsnprintf-posix (Depends-on): Likewise.
20674         * modules/vsprintf-posix (Depends-on): Likewise.
20675         * modules/frexpl-tests (Depends-on): Likewise.
20676         * modules/printf-frexpl-tests (Depends-on): Likewise.
20677
20678 2007-03-24  Bruno Haible  <bruno@clisp.org>
20679
20680         * lib/float+.h: New file.
20681         * lib/isnan.c: Include float+.h.
20682         (SIZE): New macro.
20683         (FUNC): Compare only SIZE bytes of the value.
20684         * lib/vasnprintf.c: Include float+.h.
20685         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
20686         SIZEOF_LDBL or SIZEOF_DBL bytes.
20687         * modules/isnan-nolibm (Files): Add lib/float+.h.
20688         * modules/isnanl-nolibm (Files): Add lib/float+.h.
20689         * modules/isnanl (Files): Add lib/float+.h.
20690         * modules/vasnprintf (Files): Add lib/float+.h.
20691
20692 2007-03-24  Bruno Haible  <bruno@clisp.org>
20693
20694         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
20695         include isnanl-nolibm.h.
20696
20697 2007-03-24  Bruno Haible  <bruno@clisp.org>
20698
20699         * tests/test-read-file.c (main): Don't produce spurious output for
20700         expected situations. Make the test fail if it encountered unexpected
20701         results.
20702
20703 2007-03-24  Bruno Haible  <bruno@clisp.org>
20704
20705         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
20706         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
20707
20708 2007-03-24  Bruno Haible  <bruno@clisp.org>
20709
20710         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
20711
20712 2007-03-24  Bruno Haible  <bruno@clisp.org>
20713
20714         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
20715         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
20716
20717         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
20718         * modules/utf8-ucs4: Turn into a symbolic link to module
20719         unistr/u8-mbtouc.
20720
20721         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
20722         utf8-ucs4-unsafe.
20723         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
20724         unistr/u8-mbtouc-unsafe.
20725
20726         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
20727         * modules/utf16-ucs4: Turn into a symbolic link to module
20728         unistr/u16-mbtouc.
20729
20730         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
20731         utf16-ucs4-unsafe.
20732         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
20733         unistr/u16-mbtouc-unsafe.
20734
20735         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
20736         * modules/ucs4-utf8: Turn into a symbolic link to module
20737         unistr/u8-ubtomb.
20738
20739         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
20740         * modules/ucs4-utf16: Turn into a symbolic link to module
20741         unistr/u16-ubtomb.
20742
20743 2007-03-24  Bruno Haible  <bruno@clisp.org>
20744
20745         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
20746         Enable the function only if HAVE_INLINE.
20747         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
20748         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
20749         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
20750         Enable the function only if HAVE_INLINE.
20751         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
20752         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
20753         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
20754         Enable the function only if HAVE_INLINE.
20755         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
20756         Enable the function only if HAVE_INLINE.
20757         * modules/utf8-ucs4: Update.
20758         * modules/utf8-ucs4-unsafe: Update.
20759         * modules/utf16-ucs4: Update.
20760         * modules/utf16-ucs4-unsafe: Update.
20761         * modules/ucs4-utf8: Update.
20762         * modules/ucs4-utf16: Update.
20763
20764 2007-03-24  Bruno Haible  <bruno@clisp.org>
20765
20766         * lib/utf8-ucs4.h: Remove file.
20767         * lib/utf8-ucs4-unsafe.h: Remove file.
20768         * lib/utf16-ucs4.h: Remove file.
20769         * lib/utf16-ucs4-unsafe.h: Remove file.
20770         * lib/ucs4-utf8.h: Remove file.
20771         * lib/ucs4-utf16.h: Remove file.
20772         * lib/unistr.h: Include their previous contents.
20773         * m4/utf-ucs4.m4: Remove file.
20774         * m4/ucs4-utf.m4: Remove file.
20775         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
20776         (Depends-on): Add unistr/base.
20777         (configure.ac): Remove gl_UTF_UCS4.
20778         (Makefile.am): Update.
20779         (Include): Change to unistr.h.
20780         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
20781         (Depends-on): Add unistr/base.
20782         (configure.ac): Remove gl_UTF_UCS4.
20783         (Makefile.am): Update.
20784         (Include): Change to unistr.h.
20785         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
20786         (Depends-on): Add unistr/base.
20787         (configure.ac): Remove gl_UTF_UCS4.
20788         (Makefile.am): Update.
20789         (Include): Change to unistr.h.
20790         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
20791         (Depends-on): Add unistr/base.
20792         (configure.ac): Remove gl_UTF_UCS4.
20793         (Makefile.am): Update.
20794         (Include): Change to unistr.h.
20795         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
20796         (Depends-on): Add unistr/base.
20797         (configure.ac): Remove gl_UCS4_UTF.
20798         (Makefile.am): Update.
20799         (Include): Change to unistr.h.
20800         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
20801         (Depends-on): Add unistr/base.
20802         (configure.ac): Remove gl_UCS4_UTF.
20803         (Makefile.am): Update.
20804         (Include): Change to unistr.h.
20805         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
20806         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
20807         utf8-ucs4-unsafe.h.
20808         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
20809         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
20810         utf16-ucs4-unsafe.h.
20811         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
20812         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
20813         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
20814         * lib/unistr/u8-strchr.c: Likewise.
20815         * lib/unistr/u8-strrchr.c: Likewise.
20816         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
20817         * lib/unistr/u16-strchr.c: Likewise.
20818         * lib/unistr/u16-strrchr.c: Likewise.
20819         * lib/striconveh.c: Update.
20820         * lib/linebreak.c: Update.
20821
20822 2007-03-24  Bruno Haible  <bruno@clisp.org>
20823
20824         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
20825         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
20826
20827 2007-03-22  Bruno Haible  <bruno@clisp.org>
20828
20829         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
20830
20831 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
20832
20833         * MODULES.html.sh (File system functions): New module write-any-file.
20834         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
20835         * m4/write-any-file.m4: New files.
20836
20837 2007-03-23  Eric Blake  <ebb9@byu.net>
20838
20839         * gnulib-tool: Rearrange space-tab sequences, since some editors
20840         like to eat them.
20841
20842 2007-03-23  Eric Blake  <ebb9@byu.net>
20843
20844         * lib/version-etc.c (version_etc_va): Update license wording to
20845         be more concise.  Recommended by Richard Stallman.
20846
20847 2007-03-22  Bruno Haible  <bruno@clisp.org>
20848
20849         * lib/poll.c (MSG_PEEK): New fallback definition.
20850
20851 2007-03-22  Bruno Haible  <bruno@clisp.org>
20852
20853         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
20854         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
20855         (main): Update.
20856         Fixes a compilation error on BeOS.
20857
20858 2007-03-22  Bruno Haible  <bruno@clisp.org>
20859
20860         * modules/frexpl-tests: New file.
20861         * tests/test-frexpl.c: New file.
20862
20863         * modules/frexpl: New file.
20864         * m4/frexpl.m4: New file.
20865         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
20866         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
20867         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
20868         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
20869         (Depends-on): Add frexpl. Remove isnanl-nolibm.
20870         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
20871
20872 2007-03-22  Bruno Haible  <bruno@clisp.org>
20873
20874         * lib/frexpl.c: Share code with lib/frexp.c.
20875         * modules/mathl (Files): Add lib/frexp.c.
20876         (Depends-on): Add isnanl-nolibm.
20877
20878 2007-03-22  Bruno Haible  <bruno@clisp.org>
20879
20880         * modules/printf-frexp (Files): Add m4/frexp.m4.
20881         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
20882         only if the found frexp function actually works.
20883
20884 2007-03-22  Bruno Haible  <bruno@clisp.org>
20885
20886         * lib/frexp.c: Remove older implementation that uses divisions.
20887
20888 2007-03-21  Bruno Haible  <bruno@clisp.org>
20889
20890         * modules/frexp-tests: New file.
20891         * tests/test-frexp.c: New file.
20892
20893         * modules/frexp: New file.
20894         * lib/frexp.c: New file.
20895         * m4/frexp.m4: New file.
20896         * lib/math_.h (frexp): New declaration.
20897         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
20898         REPLACE_FREXP.
20899         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
20900
20901 2007-03-21  Bruno Haible  <bruno@clisp.org>
20902
20903         * modules/isnanl-tests: New file.
20904         * tests/test-isnanl.c: New file.
20905
20906         * modules/isnanl: New file.
20907         * lib/isnanl.h: New file.
20908         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
20909         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
20910         gl_FUNC_ISNANL_WORKS.
20911         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
20912         New macros.
20913
20914 2007-03-21  Bruno Haible  <bruno@clisp.org>
20915
20916         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
20917         lib/isnanl.h.
20918         (Include): Update.
20919         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
20920         * lib/vasnprintf.c: Update.
20921         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
20922         tests/test-isnanl.h, remove tests/test-isnanl.c.
20923         (Makefile.am): Update.
20924         * tests/test-isnanl-nolibm.c: New file.
20925         * tests/test-isnanl.h: New file.
20926         * tests/test-isnanl.c: Remove file.
20927
20928 2007-03-21  Jim Meyering  <jim@meyering.net>
20929
20930         When trying to open ".", treat ESTALE like EACCES.
20931         * lib/savewd.c (savewd_save): Resort to forking not just upon
20932         failure with EACCES, but also when errno is ESTALE.
20933
20934 2007-03-20  Bruno Haible  <bruno@clisp.org>
20935
20936         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
20937         Needed on AIX 5.1. Reported by Matthew Woehlke.
20938
20939 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
20940
20941         Suggestions by Bruno Haible:
20942         * lib/acl-internal.h: Include "gettext.h" rather than rolling
20943         our own.
20944         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
20945         * modules/acl (Depends-on): Add gettext.
20946
20947 2007-03-19  Bruno Haible  <bruno@clisp.org>
20948
20949         * modules/iconvme: Remove file.
20950         * lib/iconvme.h: Remove file.
20951         * lib/iconvme.c: Remove file.
20952         * m4/iconvme.m4: Remove file.
20953
20954 2007-03-19  Bruno Haible  <bruno@clisp.org>
20955
20956         * doc/relocatable-maint.texi: Break long shell script line.
20957         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
20958
20959 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
20960
20961         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
20962         handle file_has_acl.
20963         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
20964         * lib/acl.c: Move header inclusions and related macro defns into
20965         lib/acl-internal.h.
20966         (S_ISLNK): Remove defn, since that's now done for us.
20967         (file_has_acl): Move to lib/file-has-acl.c.
20968         Call acl_trivial if available.  This is the crucial part of the fix.
20969         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
20970         shared within the library.  Rewrite a bit, partly to make it compatible
20971         with the GNU coding style.
20972         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
20973         Remove unnecessary double-quotes.
20974         Don't test for acl_to_text; the build will catch that.
20975         Replace acl_entries if it doesn't exist and it is needed.
20976         Check for -lsec and acl_trivial (as used on Solaris 10).
20977         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
20978         lib/file-has-acl.c.
20979         (Depends-on): Add sys_stat, for S_ISLNK.
20980
20981 2007-03-19  Ben Pfaff  <blp@gnu.org>
20982
20983         * doc/gnulib.texi: Fix typos.
20984         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
20985
20986 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
20987
20988         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
20989         If size is zero here, buf must be zero.
20990
20991 2007-03-19  Simon Josefsson  <simon@josefsson.org>
20992
20993         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
20994         <bruno@clisp.org>.
20995
20996 2007-03-18  Bruno Haible  <bruno@clisp.org>
20997
20998         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
20999         Suggested by Eric Blake.
21000
21001 2007-03-18  Ben Pfaff  <blp@gnu.org>
21002
21003         * doc/relocatable.texi: Recommend using as prefix a directory
21004         that does not exist and will never be created.  Based on
21005         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
21006         and others.
21007
21008 2007-03-17  Bruno Haible  <bruno@clisp.org>
21009
21010         * lib/fchownat.c: Include lchown.h.
21011
21012 2007-03-17  Bruno Haible  <bruno@clisp.org>
21013
21014         Fix endless loop when the given allocated size was > INT_MAX.
21015         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
21016         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
21017         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
21018         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
21019         * lib/sprintf.c (sprintf): Likewise.
21020
21021 2007-03-17  Bruno Haible  <bruno@clisp.org>
21022
21023         * tests/test-argp-2.sh (func_compare): Output a context diff.
21024
21025 2007-03-17  Bruno Haible  <bruno@clisp.org>
21026
21027         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
21028         locale's decimal-point character.
21029
21030 2007-03-17  Bruno Haible  <bruno@clisp.org>
21031
21032         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
21033         before comparing it. Needed because on some platforms (e.g. x86) a
21034         'long double' occupies less bytes than sizeof (long double).
21035
21036 2007-03-17  Bruno Haible  <bruno@clisp.org>
21037
21038         * tests/test-crc.c (main): Make printf statements 64-bit clean.
21039         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
21040         * tests/test-getaddrinfo.c (simple): Likewise.
21041         * tests/test-read-file.c (main): Likewise.
21042
21043 2007-03-17  Bruno Haible  <bruno@clisp.org>
21044
21045         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
21046
21047 2007-03-17  Bruno Haible  <bruno@clisp.org>
21048
21049         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
21050         unused variable.
21051
21052 2007-03-17  Bruno Haible  <bruno@clisp.org>
21053
21054         * tests/test-c-strcasecmp.c: Include c-strcase.h.
21055         * tests/test-c-strncasecmp.c: Likewise.
21056
21057 2007-03-17  Bruno Haible  <bruno@clisp.org>
21058
21059         * modules/stdlib (Depends-on): Add unistd.
21060         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
21061         Needed for MacOS X 10.3.
21062
21063 2007-03-17  Bruno Haible  <bruno@clisp.org>
21064
21065         * lib/unistr/u-strdup.h: Include <stdlib.h>.
21066
21067 2007-03-17  Bruno Haible  <bruno@clisp.org>
21068
21069         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
21070
21071 2007-03-17  Bruno Haible  <bruno@clisp.org>
21072
21073         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
21074         to reflect files copied from gnulib (with or without modifications).
21075         Suggested by Jim Meyering.
21076
21077 2007-03-17  Eric Blake  <ebb9@byu.net>
21078
21079         * NEWS: Document stdlib change from 2007-02-18.
21080
21081 2007-03-17  Jim Meyering  <jim@meyering.net>
21082
21083         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
21084         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
21085         someone uses a name containing shell meta-characters.
21086         Reported by Alfred M. Szmidt.
21087
21088         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
21089
21090 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
21091
21092         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
21093         and copy gettext configuration files only if configure.ac contains
21094         a use of AM_GNU_GETTEXT_VERSION.
21095
21096 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
21097
21098         * build-aux/bootstrap (gnulib_name): New variable.
21099         (gnulib_tool_options): Use it.
21100
21101 2007-03-13  Simon Josefsson  <simon@josefsson.org>
21102
21103         * tests/test-des.c: Use new namespace.
21104
21105 2007-03-15  Bruno Haible  <bruno@clisp.org>
21106
21107         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
21108         Reported by James Youngman <jay@gnu.org>.
21109
21110 2007-03-15  Bruno Haible  <bruno@clisp.org>
21111
21112         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
21113         declared prototype. Needed with cc on OSF/1 5.1.
21114
21115 2007-03-15  Bruno Haible  <bruno@clisp.org>
21116
21117         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
21118         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
21119         (struct gl_list_implementation): Add dispose_fn argument to the
21120         'create_empty', 'create' methods.
21121         (struct gl_list_impl_base): Add field 'dispose_fn'.
21122         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
21123         argument.
21124         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
21125         dispose_fn argument.
21126         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
21127         dispose_fn on the dropped values.
21128         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
21129         dispose_fn argument.
21130         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
21131         dropped values.
21132         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
21133         (gl_tree_remove_node): Call dispose_fn on the dropped value.
21134         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
21135         (gl_tree_remove_node): Call dispose_fn on the dropped value.
21136         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
21137         argument.
21138         (gl_tree_list_free): Call dispose_fn on the dropped values.
21139         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
21140         the dropped values.
21141         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
21142         Add dispose_fn argument.
21143         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
21144         Call dispose_fn on the dropped values.
21145         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
21146         Add dispose_fn argument.
21147         (gl_sublist_create): Initialize the 'dispose_fn' field.
21148         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
21149         * tests/test-array_list.c (main): Update.
21150         * tests/test-carray_list.c (main): Update.
21151         * tests/test-avltree_list.c (main): Update.
21152         * tests/test-rbtree_list.c (main): Update.
21153         * tests/test-avltreehash_list.c (main): Update.
21154         * tests/test-rbtreehash_list.c (main): Update.
21155         * tests/test-linked_list.c (main): Update.
21156         * tests/test-linkedhash_list.c (main): Update.
21157         * tests/test-array_oset.c (main): Update.
21158
21159 2007-03-15  Bruno Haible  <bruno@clisp.org>
21160
21161         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
21162         (gl_oset_create_empty): Add dispose_fn argument.
21163         (struct gl_oset_implementation): Add dispose_fn argument to
21164         'create_empty' method.
21165         (struct gl_oset_impl_base): Add dispose_fn field.
21166         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
21167         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
21168         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
21169         values.
21170         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
21171         (gl_tree_oset_free): Call dispose_fn on the dropped values.
21172         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
21173         dropped value.
21174         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
21175         dropped value.
21176         * tests/test-array_oset.c (main): Update.
21177         * tests/test-avltree_oset.c (main): Update.
21178         * tests/test-rbtree_oset.c (main): Update.
21179         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
21180
21181 2007-03-13  Bruno Haible  <bruno@clisp.org>
21182
21183         * tests/test-stdbool.c (i): Update after last patch.
21184
21185 2007-03-12  Bruno Haible  <bruno@clisp.org>
21186
21187         * lib/quotearg.c: Include <wctype.h> early, before the definition of
21188         the iswprint macro. Needed on Solaris 2.5.1.
21189
21190 2007-03-12  Bruno Haible  <bruno@clisp.org>
21191
21192         * tests/test-printf-frexp.c (main): Declare x as volatile.
21193
21194 2007-03-12  Simon Josefsson  <simon@josefsson.org>
21195
21196         * doc/gnulib.texi (Build robot for gnulib): New section.
21197
21198 2007-03-12  Jim Meyering  <jim@meyering.net>
21199
21200         * build-aux/bootstrap: New file.
21201         * build-aux/bootstrap.conf: New file, from coreutils.
21202
21203 2007-03-11  Bruno Haible  <bruno@clisp.org>
21204
21205         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
21206
21207 2007-03-12  Simon Josefsson  <simon@josefsson.org>
21208
21209         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
21210         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
21211         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
21212
21213 2007-03-11  Bruno Haible  <bruno@clisp.org>
21214
21215         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
21216         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
21217
21218 2007-03-11  Bruno Haible  <bruno@clisp.org>
21219
21220         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
21221         formula. Needed for SunPRO C 5.0.
21222
21223 2007-03-11  Bruno Haible  <bruno@clisp.org>
21224
21225         * modules/long-options (Depends-on): Add getopt.
21226
21227 2007-03-11  Bruno Haible  <bruno@clisp.org>
21228
21229         * modules/modechange (Depends-on): Add stdbool.
21230
21231 2007-03-11  Bruno Haible  <bruno@clisp.org>
21232
21233         * modules/i-ring (Depends-on): Add stdbool.
21234
21235 2007-03-11  Bruno Haible  <bruno@clisp.org>
21236
21237         * modules/gc-des (Depends-on): Add stdbool.
21238
21239 2007-03-11  Bruno Haible  <bruno@clisp.org>
21240
21241         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
21242
21243 2007-03-11  Bruno Haible  <bruno@clisp.org>
21244
21245         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
21246
21247 2007-03-11  Bruno Haible  <bruno@clisp.org>
21248
21249         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
21250
21251 2007-03-11  Bruno Haible  <bruno@clisp.org>
21252
21253         * lib/vasnprintf.c (sprintf): Undefine.
21254
21255 2007-03-11  Bruno Haible  <bruno@clisp.org>
21256
21257         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
21258         initializers in SunPRO C and Compaq C compilers.
21259
21260 2007-03-11  Bruno Haible  <bruno@clisp.org>
21261
21262         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
21263         decrementing code ANSI C compliant.
21264
21265 2007-03-11  Bruno Haible  <bruno@clisp.org>
21266
21267         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
21268         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
21269
21270 2007-03-11  Bruno Haible  <bruno@clisp.org>
21271
21272         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
21273         <stdbool.h> substitute doesn't pass.
21274
21275 2007-03-11  Bruno Haible  <bruno@clisp.org>
21276
21277         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
21278
21279 2007-03-11  Bruno Haible  <bruno@clisp.org>
21280
21281         * gnulib-tool (func_create_megatestdir): Create also an autobuild
21282         script, for submission to autobuild.josefsson.org.
21283
21284 2007-03-10  Bruno Haible  <bruno@clisp.org>
21285
21286         * modules/canonicalize-lgpl-tests: New file.
21287         * tests/test-canonicalize-lgpl.sh: New file.
21288         * tests/test-canonicalize-lgpl.c: New file.
21289
21290         * modules/c-strcase-tests: New file.
21291         * tests/test-c-strcase.sh: New file.
21292         * tests/test-c-strcasecmp.c: New file.
21293         * tests/test-c-strncasecmp.c: New file.
21294
21295         * modules/atexit-tests: New file.
21296         * tests/test-atexit.sh: New file.
21297         * tests/test-atexit.c: New file.
21298
21299 2007-03-10  Bruno Haible  <bruno@clisp.org>
21300
21301         * tests/test-binary-io.sh: Use temporary filenames that are not so
21302         likely to clash with those of other tests (in a parallel make).
21303         * tests/test-binary-io.c: Likewise.
21304
21305 2007-03-10  Bruno Haible  <bruno@clisp.org>
21306
21307         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
21308         fallback; use #error instead.
21309         Suggested by Simon Josefsson.
21310
21311 2007-03-10  Bruno Haible  <bruno@clisp.org>
21312
21313         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
21314         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
21315         first and the last.
21316
21317 2007-03-10  Bruno Haible  <bruno@clisp.org>
21318
21319         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
21320
21321 2007-03-10  Bruno Haible  <bruno@clisp.org>
21322
21323         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
21324         "make distcheck".
21325         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
21326         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
21327         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
21328
21329 2007-03-10  Bruno Haible  <bruno@clisp.org>
21330
21331         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
21332         variable.
21333         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
21334         variable.
21335
21336 2007-03-09  Eric Blake  <ebb9@byu.net>
21337         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
21338
21339         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
21340         types are not being provided by gnulib.
21341         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
21342         types are supported.
21343
21344 2007-03-10  Bruno Haible  <bruno@clisp.org>
21345
21346         * lib/stdio_.h (__attribute__): New macro.
21347         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
21348         vsprintf): Specify __attribute__ __format__ for GCC.
21349         Suggested by Eric Blake.
21350
21351 2007-03-09  Bruno Haible  <bruno@clisp.org>
21352
21353         * modules/printf-posix-tests: New file.
21354         * tests/test-printf-posix.sh: New file.
21355         * tests/test-printf-posix.c: New file.
21356
21357         * modules/printf-posix: New file.
21358         * lib/printf.c: New file.
21359         * m4/printf-posix-rpl.m4: New file.
21360         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
21361         REPLACE_PRINTF.
21362         * lib/stdio_.h (printf): New declaration.
21363         (format, __format__, ____printf____, ____scanf____, ____strftime____,
21364         ____strfmon____): New macros.
21365         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
21366         REPLACE_PRINTF.
21367
21368 2007-03-09  Bruno Haible  <bruno@clisp.org>
21369
21370         * tests/test-vasnprintf-posix2.sh: New file.
21371         * tests/test-vasnprintf-posix2.c: New file.
21372         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
21373         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
21374         (Makefile.am): Activate test-vasnprintf-posix2.sh.
21375
21376         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
21377         a locale dependent decimal point, rather than always '.'.
21378
21379 2007-03-09  Eric Blake  <ebb9@byu.net>
21380
21381         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
21382         spite of platforms like Tandem/NSK that define it to -1.
21383
21384 2007-03-08  Bruno Haible  <bruno@clisp.org>
21385
21386         * modules/vprintf-posix-tests: New file.
21387         * tests/test-vprintf-posix.sh: New file.
21388         * tests/test-vprintf-posix.c: New file.
21389         * tests/test-printf-posix.h: New file.
21390
21391         * modules/vprintf-posix: New file.
21392         * lib/vprintf.c: New file.
21393         * m4/vprintf-posix.m4: New file.
21394         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
21395         REPLACE_VPRINTF.
21396         * lib/stdio_.h (vprintf): New declaration.
21397         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
21398         REPLACE_VPRINTF.
21399
21400 2007-03-08  Bruno Haible  <bruno@clisp.org>
21401
21402         * modules/fprintf-posix-tests: New file.
21403         * tests/test-fprintf-posix.sh: New file.
21404         * tests/test-fprintf-posix.c: New file.
21405
21406         * modules/fprintf-posix: New file.
21407         * lib/fprintf.c: New file.
21408         * m4/fprintf-posix.m4: New file.
21409         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
21410         REPLACE_FPRINTF.
21411         * lib/stdio_.h (fprintf): New declaration.
21412         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
21413         REPLACE_FPRINTF.
21414
21415 2007-03-08  Bruno Haible  <bruno@clisp.org>
21416
21417         * modules/vfprintf-posix-tests: New file.
21418         * tests/test-vfprintf-posix.sh: New file.
21419         * tests/test-vfprintf-posix.c: New file.
21420         * tests/test-fprintf-posix.h: New file.
21421         * tests/test-fprintf-posix.out: New file.
21422
21423         * modules/vfprintf-posix: New file.
21424         * lib/vfprintf.c: New file.
21425         * m4/vfprintf-posix.m4: New file.
21426         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
21427         REPLACE_VFPRINTF.
21428         * lib/stdio_.h (vfprintf): New declaration.
21429         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
21430         REPLACE_VFPRINTF.
21431
21432 2007-03-08  Bruno Haible  <bruno@clisp.org>
21433
21434         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
21435
21436 2007-03-08  Bruno Haible  <bruno@clisp.org>
21437
21438         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
21439         instead of 'expr' invocations.
21440         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
21441         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
21442         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
21443         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
21444         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
21445         Suggested by Paul Eggert.
21446
21447 2007-03-08  Bruno Haible  <bruno@clisp.org>
21448
21449         * modules/fseterr-tests: New file.
21450         * tests/test-fseterr.c: New file.
21451
21452         * modules/fseterr: New file.
21453         * lib/fseterr.h: New file.
21454         * lib/fseterr.c: New file.
21455
21456 2007-03-08  Bruno Haible  <bruno@clisp.org>
21457
21458         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
21459         * lib/getopt_.h: Likewise.
21460         * lib/mbswidth.h: Likewise.
21461         * lib/setenv.h: Likewise.
21462         * lib/vasnprintf.h: Likewise.
21463         * lib/vasprintf.h: Likewise.
21464         * lib/verror.h: Likewise.
21465         * lib/xsetenv.h: Likewise.
21466         * lib/xvasprintf.h: Likewise.
21467
21468 2007-03-08  Jim Meyering  <jim@meyering.net>
21469
21470         * users.txt: Add parted.
21471
21472         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
21473
21474 2007-03-07  Bruno Haible  <bruno@clisp.org>
21475
21476         * m4/printf.m4: Make the shell script snippets copy&pastable.
21477
21478 2007-03-02  Bruno Haible  <bruno@clisp.org>
21479
21480         * lib/netinet_in_.h: New file.
21481         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
21482         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
21483         * modules/netinet_in (Files): Add lib/netinet_in_.h.
21484         (Depends-on): Add absolute-header.
21485         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
21486         into netinet/in.h.
21487
21488 2007-03-03  Bruno Haible  <bruno@clisp.org>
21489
21490         * lib/sys_select_.h: New file.
21491         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
21492         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
21493         * modules/sys_select (Files): Add lib/sys_select_.h.
21494         (Depends-on): Add absolute-header.
21495         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
21496         into sys/select.h.
21497
21498 2007-03-02  Bruno Haible  <bruno@clisp.org>
21499
21500         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
21501         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
21502         values.
21503         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
21504         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
21505         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
21506         * modules/sys_socket (Depends-on): Add absolute-header.
21507         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
21508         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
21509         (Include): Remove requirement of inclusion of <sys/types.h>.
21510
21511 2007-03-02  Bruno Haible  <bruno@clisp.org>
21512
21513         * lib/byteswap_.h (bswap_32): Fix formula.
21514
21515 2007-03-06  Bruno Haible  <bruno@clisp.org>
21516
21517         * modules/sprintf-posix-tests: New file.
21518         * tests/test-sprintf-posix.c: New file.
21519
21520         * modules/sprintf-posix: New file.
21521         * lib/sprintf.c: New file.
21522         * m4/sprintf-posix.m4: New file.
21523         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
21524         REPLACE_SPRINTF.
21525         * lib/stdio_.h (sprintf): New declaration.
21526         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
21527         REPLACE_SPRINTF.
21528
21529 2007-03-06  Bruno Haible  <bruno@clisp.org>
21530
21531         * modules/vsprintf-posix-tests: New file.
21532         * tests/test-vsprintf-posix.c: New file.
21533         * tests/test-sprintf-posix.h: New file.
21534
21535         * modules/vsprintf-posix: New file.
21536         * lib/vsprintf.c: New file.
21537         * m4/vsprintf-posix.m4: New file.
21538         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
21539         REPLACE_VSPRINTF.
21540         * lib/stdio_.h (vsprintf): New declaration.
21541         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
21542         REPLACE_VSPRINTF.
21543
21544 2007-03-06  Bruno Haible  <bruno@clisp.org>
21545
21546         * modules/vsnprintf (Depend-on): Remove minmax.
21547
21548 2007-03-06  Bruno Haible  <bruno@clisp.org>
21549
21550         * modules/snprintf-posix-tests: New file.
21551         * tests/test-snprintf-posix.c: New file.
21552
21553         * modules/snprintf-posix: New file.
21554         * m4/snprintf-posix.m4: New file.
21555         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
21556         gl_FUNC_SNPRINTF.
21557         (gl_FUNC_SNPRINTF): Invoke it.
21558         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
21559         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
21560         is set.
21561         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
21562
21563 2007-03-06  Bruno Haible  <bruno@clisp.org>
21564
21565         * modules/vsnprintf-posix-tests: New file.
21566         * tests/test-vsnprintf-posix.c: New file.
21567         * tests/test-snprintf-posix.h: New file.
21568
21569         * modules/vsnprintf-posix: New file.
21570         * m4/vsnprintf-posix.m4: New file.
21571         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
21572         gl_FUNC_VSNPRINTF.
21573         (gl_FUNC_VSNPRINTF): Invoke it.
21574         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
21575         * lib/stdio_.h (vsnprintf): Define as a replacement if
21576         REPLACE_VSNPRINTF is set.
21577         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
21578
21579 2007-03-06  Bruno Haible  <bruno@clisp.org>
21580
21581         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
21582         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
21583
21584 2007-03-06  Bruno Haible  <bruno@clisp.org>
21585
21586         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
21587         (asinl): Declare also if HAVE_DECL_ASINL is set.
21588         (atanl): Declare also if HAVE_DECL_ATANL is set.
21589         (ceill): Declare also if HAVE_DECL_CEILL is set.
21590         (cosl): Declare also if HAVE_DECL_COSL is set.
21591         (expl): Declare also if HAVE_DECL_EXPL is set.
21592         (floorl): Declare also if HAVE_DECL_FLOORL is set.
21593         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
21594         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
21595         (logl): Declare also if HAVE_DECL_LOGL is set.
21596         (sinl): Declare also if HAVE_DECL_SINL is set.
21597         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
21598         (tanl): Declare also if HAVE_DECL_TANL is set.
21599         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
21600         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
21601         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
21602         declaration of frexpl, ldexpl.
21603         * modules/printf-frexpl (Depends-on): Add math.
21604         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
21605
21606 2007-03-05  Bruno Haible  <bruno@clisp.org>
21607
21608         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
21609         frexpl and ldexpl are declared.
21610         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
21611
21612 2007-03-05  Bruno Haible  <bruno@clisp.org>
21613
21614         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
21615         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
21616
21617 2007-03-05  Bruno Haible  <bruno@clisp.org>
21618
21619         * lib/stdio_.h: Include <stddef.h>.
21620
21621 2007-03-05  Bruno Haible  <bruno@clisp.org>
21622
21623         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
21624
21625 2007-03-05  Bruno Haible  <bruno@clisp.org>
21626
21627         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
21628         NetBSD 4, from Ralf Wildenhues.
21629
21630 2007-03-04  Bruno Haible  <bruno@clisp.org>
21631
21632         * lib/vasprintf.h: Update #if logic for the case when the functions
21633         exist but are overridden.
21634
21635 2007-03-04  Bruno Haible  <bruno@clisp.org>
21636
21637         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
21638         implementations: glibc-2.4 and MacOS X 10.3.
21639         * tests/test-vasnprintf-posix.c (test_function): Test also the case
21640         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
21641         * tests/test-vasprintf-posix.c (test_function): Likewise.
21642
21643 2007-03-04  Bruno Haible  <bruno@clisp.org>
21644
21645         * modules/vasprintf-posix-tests: New file.
21646         * tests/test-vasprintf-posix.c: New file.
21647
21648         * modules/vasprintf-posix: New file.
21649         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
21650         defined.
21651         * m4/vasprintf-posix.m4: New file.
21652         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
21653         gl_FUNC_VASPRINTF.
21654         (gl_FUNC_VASPRINTF): Invoke it.
21655         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
21656         here.
21657         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
21658
21659 2007-03-04  Bruno Haible  <bruno@clisp.org>
21660
21661         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
21662         REPLACE_GETTIMEOFDAY.
21663         * modules/sys_time (Makefile.am): Likewise.
21664         * m4/sys_time_h.m4: Likewise.
21665         * m4/gettimeofday.m4: Likewise.
21666
21667 2007-03-04  Bruno Haible  <bruno@clisp.org>
21668
21669         * modules/vasnprintf-posix-tests: New file.
21670         * tests/test-vasnprintf-posix.c: New file.
21671
21672         * modules/vasnprintf-posix: New file.
21673         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
21674         printf-frexpl.h.
21675         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
21676         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
21677         REPLACE_VASNPRINTF is defined.
21678         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
21679         gl_FUNC_VASNPRINTF.
21680         (gl_FUNC_VASNPRINTF): Invoke it.
21681         * m4/vasnprintf-posix.m4: New file.
21682         * m4/printf.m4: New file.
21683
21684 2007-03-04  Bruno Haible  <bruno@clisp.org>
21685
21686         Compile progreloc.c only if --enable-relocatable is specified.
21687         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
21688         if --enable-relocatable was specified.
21689         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
21690         lib_SOURCES.
21691
21692 2007-03-04  Jim Meyering  <jim@meyering.net>
21693
21694         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
21695         Use it consistently, rather than enumerating errno constants.
21696
21697 2007-03-04  Bruno Haible  <bruno@clisp.org>
21698
21699         * modules/xvasprintf-tests: New file.
21700         * tests/test-xvasprintf.c: New file.
21701
21702         * modules/vasprintf-tests: New file.
21703         * tests/test-vasprintf.c: New file.
21704
21705         * modules/vasnprintf-tests: New file.
21706         * tests/test-vasnprintf.c: New file.
21707
21708         * modules/vsnprintf-tests: New file.
21709         * tests/test-vsnprintf.c: New file.
21710
21711         * modules/snprintf-tests: New file.
21712         * tests/test-snprintf.c: New file.
21713
21714 2007-03-04  Bruno Haible  <bruno@clisp.org>
21715
21716         Compile relocatable.c only if --enable-relocatable is specified.
21717         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
21718         gl_RELOCATABLE_LIBRARY.
21719         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
21720         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
21721         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
21722         gl_RELOCATABLE_LIBRARY.
21723         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
21724         (Makefile.am): Remove lib_SOURCES.
21725         * modules/relocatable-lib-lgpl (configure.ac): Invoke
21726         gl_RELOCATABLE_LIBRARY.
21727         (Makefile.am): Remove lib_SOURCES.
21728         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
21729         always.
21730         * modules/relocatable-prog-wrapper (configure.ac): Invoke
21731         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
21732
21733 2007-03-04  Bruno Haible  <bruno@clisp.org>
21734
21735         * modules/argmatch-tests: New file.
21736         * tests/test-argmatch.c: New file.
21737
21738         * tests/test-allocsa.c (main): Halve the number of loop runs.
21739
21740         * modules/alloca-opt-tests: New file.
21741         * tests/test-alloca-opt.c: New file.
21742
21743 2007-03-04  Jim Meyering  <jim@meyering.net>
21744
21745         Work around difference between Linux ACLs and Solaris 10 ZFS.
21746         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
21747         for EINVAL.
21748
21749 2007-03-03  Bruno Haible  <bruno@clisp.org>
21750
21751         * modules/relocatable-prog (Depends-on): Add back progreloc's
21752         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
21753
21754 2007-03-03  Bruno Haible  <bruno@clisp.org>
21755
21756         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
21757         * modules/relocatable-lib: New file.
21758
21759 2007-03-03  Bruno Haible  <bruno@clisp.org>
21760
21761         * modules/relocatable-prog: Renamed from modules/relocatable.
21762         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
21763
21764 2007-03-03  Bruno Haible  <bruno@clisp.org>
21765
21766         * modules/relocatable-script (Files): Add doc/relocatable.texi,
21767         m4/relocatable-lib.m4.
21768         (Depends-on): Remove 'relocatable'.
21769         (configure.ac): Add gl_RELOCATABLE_NOP.
21770
21771 2007-03-03  Bruno Haible  <bruno@clisp.org>
21772
21773         * modules/relocatable-prog-wrapper: New file.
21774         * modules/relocatable (Depends-on): Add it. Remove all other
21775         dependencies except progname.
21776         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
21777
21778         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
21779         (gl_FUNC_STRERROR): Nop.
21780         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
21781
21782         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
21783         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
21784
21785         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
21786         (gl_FUNC_READLINK): Update.
21787
21788         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
21789
21790 2007-03-03  Bruno Haible  <bruno@clisp.org>
21791
21792         * lib/xreadlink.c: Include <unistd.h> unconditionally.
21793         * modules/xreadlink (Depends-on): Add unistd.
21794         * modules/xreadlink-with-size (Depends-on): Likewise.
21795
21796 2007-03-03  Bruno Haible  <bruno@clisp.org>
21797
21798         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
21799         extracted from gt_FUNC_SETENV.
21800         (gt_FUNC_SETENV): Remove macro.
21801         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
21802         remove gt_FUNC_SETENV.
21803
21804 2007-03-03  Bruno Haible  <bruno@clisp.org>
21805
21806         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
21807         ENABLE_RELOCATABLE here.
21808         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
21809
21810 2007-03-03  Bruno Haible  <bruno@clisp.org>
21811
21812         * modules/rbtreehash-list-tests (Depends-on): Add progname.
21813         * tests/test-rbtreehash_list.c: Include progname.h.
21814         (main): Call set_program_name.
21815
21816         * modules/rbtree-oset-tests (Depends-on): Add progname.
21817         * tests/test-rbtree_oset.c: Include progname.h.
21818         (main): Call set_program_name.
21819
21820         * modules/rbtree-list-tests (Depends-on): Add progname.
21821         * tests/test-rbtree_list.c: Include progname.h.
21822         (main): Call set_program_name.
21823
21824         * modules/linked-list-tests (Depends-on): Add progname.
21825         * tests/test-linked_list.c: Include progname.h.
21826         (main): Call set_program_name.
21827
21828 2007-03-03  Bruno Haible  <bruno@clisp.org>
21829
21830         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
21831         All uses of __restrict changed to _Restrict_.
21832         * lib/glob_.h (__restrict): Remove macro.
21833
21834 2007-03-02  Bruno Haible  <bruno@clisp.org>
21835
21836         * modules/gettext (configure.ac): Require gettext infrastructure
21837         from version 0.16.1.
21838
21839 2007-03-02  Bruno Haible  <bruno@clisp.org>
21840
21841         * modules/linkedhash-list-tests (Depends-on): Add progname.
21842         * tests/test-linkedhash_list.c: Include progname.h.
21843         (main): Call set_program_name.
21844
21845         * modules/carray-list-tests (Depends-on): Add progname.
21846         * tests/test-carray_list.c: Include progname.h.
21847         (main): Call set_program_name.
21848
21849         * modules/avltreehash-list-tests (Depends-on): Add progname.
21850         * tests/test-avltreehash_list.c: Include progname.h.
21851         (main): Call set_program_name.
21852
21853         * modules/avltree-oset-tests (Depends-on): Add progname.
21854         * tests/test-avltree_oset.c: Include progname.h.
21855         (main): Call set_program_name.
21856
21857         * modules/avltree-list-tests (Depends-on): Add progname.
21858         * tests/test-avltree_list.c: Include progname.h.
21859         (main): Call set_program_name.
21860
21861         * modules/array-oset-tests (Depends-on): Add progname.
21862         * tests/test-array_oset.c: Include progname.h.
21863         (main): Call set_program_name.
21864
21865         * modules/array-list-tests (Depends-on): Add progname.
21866         * tests/test-array_list.c: Include progname.h.
21867         (main): Call set_program_name.
21868
21869         * modules/argp-tests (Depends-on): Add progname.
21870         * tests/test-argp.c: Include argp.h first. Include progname.h.
21871         (main): Call set_program_name.
21872
21873 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
21874
21875         * doc/gnulib-tool.texi (Initial import): Reword description of
21876         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
21877         limited effect even if defined after the first system include.
21878
21879 2007-03-01  Bruno Haible  <bruno@clisp.org>
21880
21881         * build-aux/config.libpath: Update to libtool-1.5.22.
21882         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
21883
21884 2007-03-01  Bruno Haible  <bruno@clisp.org>
21885
21886         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
21887         foo_CFLAGS.
21888         Reported by Ralf Wildenhues.
21889
21890 2007-03-01  Bruno Haible  <bruno@clisp.org>
21891
21892         * build-aux/install-reloc: Remove object files left over by some
21893         compilers.
21894         Reported by Ralf Wildenhues.
21895
21896 2007-03-01  Bruno Haible  <bruno@clisp.org>
21897
21898         * build-aux/install-reloc: Break long lines.
21899
21900 2007-03-01  Bruno Haible  <bruno@clisp.org>
21901
21902         * doc/relocatable.texi: Document that it may not work on OpenBSD.
21903         Reported by Ralf Wildenhues.
21904
21905 2007-03-01  Bruno Haible  <bruno@clisp.org>
21906
21907         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
21908         include ordering constraints.
21909
21910 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
21911
21912         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
21913         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
21914         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
21915         as another example.
21916         * lib/time_.h: Fix misspelling.
21917         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
21918         Require gl_HEADER_TIME_H_DEFAULTS.
21919         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
21920         * m4/time_r.m4 (gl_TIME_R): Likewise.
21921         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
21922
21923 2007-03-01  Bruno Haible  <bruno@clisp.org>
21924
21925         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
21926         * m4/utimens.m4 (gl_UTIMENS): Likewise.
21927
21928 2007-03-01  Jim Meyering  <jim@meyering.net>
21929
21930         * modules/xreadlink (Maintainer): Add my name.
21931         * modules/xreadlink-with-size (Depends-on): Alphabetize.
21932
21933 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
21934             Bruno Haible  <bruno@clisp.org>
21935
21936         * build-aux/install-reloc: Compile also c-ctype.c.
21937         * build-aux/relocatable.sh.in: New file.
21938         * doc/relocatable.texi: New file.
21939         * doc/relocatable-maint.texi: New file.
21940         * doc/gnulib.texi: Include relocatable-maint.texi.
21941         * lib/progreloc.c: Include unistd.h unconditionally.
21942         * lib/relocwrapper.c: Include unistd.h unconditionally.
21943         Include c-ctype.h.
21944         (add_dotbin): Use c_tolower.
21945         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
21946         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
21947         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
21948         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
21949         to m4/relocatable-lib.m4.
21950         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
21951         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
21952         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
21953         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
21954         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
21955         * modules/relocatable: New file.
21956         * modules/relocatable-lib: New file.
21957         * modules/relocatable-script: New file.
21958
21959 2007-02-28  Bruno Haible  <bruno@clisp.org>
21960
21961         Import --enable-relocatable infrastructure.
21962         * build-aux/config.libpath: New file, from GNU gettext.
21963         * build-aux/install-reloc: New file, from GNU gettext.
21964         * build-aux/reloc-ldflags: New file, from GNU gettext.
21965         * lib/relocatable.h: New file, from GNU gettext.
21966         * lib/relocatable.c: New file, from GNU gettext.
21967         * lib/relocwrapper.c: New file, from GNU gettext.
21968         * m4/relocatable.m4: New file, from GNU gettext.
21969
21970 2007-02-28  Bruno Haible  <bruno@clisp.org>
21971
21972         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
21973
21974         * modules/xreadlink: New file, from GNU gettext with modifications.
21975         * lib/xreadlink.c: New file, from GNU gettext.
21976         * lib/xreadlink.h: Add comments.
21977         (xreadlink): New declaration.
21978
21979         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
21980         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
21981         lib/xreadlink-with-size.c.
21982         (configure.ac): Remove gl_XREADLINK invocation.
21983         (Makefile.am): Augment lib_SOURCES.
21984         * m4/xreadlink.m4: Remove file.
21985         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
21986         (xreadlink_with_size): Renamed from xreadink.
21987         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
21988         * modules/canonicalize (Depends-on): Replace xreadlink with
21989         xreadlink-with-size.
21990         * lib/canonicalize.c (canonicalize_filename_mode): Update.
21991
21992 2007-02-25  Jim Meyering  <jim@meyering.net>
21993
21994         * build-aux/announce-gen: When complaining about excess arguments,
21995         list them.
21996
21997 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
21998
21999         * README: Document signed integer overflow situation more
22000         accurately.
22001
22002 2007-02-25  Bruno Haible  <bruno@clisp.org>
22003
22004         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
22005         'a' or 'A' conversion.
22006
22007 2007-02-25  Bruno Haible  <bruno@clisp.org>
22008
22009         * modules/filename: Renamed from modules/pathname.
22010         (Files): Replace lib/pathname.h with lib/filename.h. Replace
22011         lib/concatpath.c with lib/concat-filename.c.
22012         (Makefile.am): Update.
22013         (Include): Replace pathname.h with filename.h.
22014         * lib/filename.h: Renamed from lib/pathname.h.
22015         (concatenated_filename): Renamed from concatenated_pathname.
22016         * lib/concat-filename.c: Renamed from lib/concatpath.c.
22017         (concatenated_filename): Renamed from concatenated_pathname.
22018         * lib/findprog.c: Include filename.h instead of pathname.h.
22019         (find_in_path): Update.
22020         * lib/javacomp.c: Include filename.h instead of pathname.h.
22021         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
22022         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
22023         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
22024         is_oldgcj_14_13_usable, is_javac_usable): Update.
22025         * lib/javaexec.c: Include filename.h instead of pathname.h.
22026         (execute_java_class): Update.
22027         * modules/findprog: Update.
22028         * modules/javacomp: Update.
22029         * modules/javaexec: Update.
22030         * MODULES.html.sh (File system functions): Add 'filename', remove
22031         'pathname'.
22032
22033 2007-02-25  Bruno Haible  <bruno@clisp.org>
22034
22035         * modules/printf-frexpl-tests: New file.
22036         * tests/test-printf-frexpl.c: New file.
22037
22038         * modules/printf-frexpl: New file.
22039         * lib/printf-frexpl.h: New file.
22040         * lib/printf-frexpl.c: New file.
22041         * m4/printf-frexpl.m4: New file.
22042
22043 2007-02-25  Bruno Haible  <bruno@clisp.org>
22044
22045         * modules/printf-frexp-tests: New file.
22046         * tests/test-printf-frexp.c: New file.
22047
22048         * modules/printf-frexp: New file.
22049         * lib/printf-frexp.h: New file.
22050         * lib/printf-frexp.c: New file.
22051         * m4/printf-frexp.m4: New file.
22052
22053 2007-02-25  Bruno Haible  <bruno@clisp.org>
22054
22055         Assume automake >= 1.10 for the tests.
22056         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
22057         * modules/arctwo-tests: Likewise.
22058         * modules/argp-tests: Likewise.
22059         * modules/avltree-list-tests: Likewise.
22060         * modules/avltree-oset-tests: Likewise.
22061         * modules/avltreehash-list-tests: Likewise.
22062         * modules/carray-list-tests: Likewise.
22063         * modules/crc-tests: Likewise.
22064         * modules/des-tests: Likewise.
22065         * modules/gc-arcfour-tests: Likewise.
22066         * modules/gc-arctwo-tests: Likewise.
22067         * modules/gc-des-tests: Likewise.
22068         * modules/gc-hmac-md5-tests: Likewise.
22069         * modules/gc-hmac-sha1-tests: Likewise.
22070         * modules/gc-md2-tests: Likewise.
22071         * modules/gc-md4-tests: Likewise.
22072         * modules/gc-md5-tests: Likewise.
22073         * modules/gc-pbkdf2-sha1-tests: Likewise.
22074         * modules/gc-rijndael-tests: Likewise.
22075         * modules/gc-sha1-tests: Likewise.
22076         * modules/gc-tests: Likewise.
22077         * modules/getaddrinfo-tests: Likewise.
22078         * modules/hmac-md5-tests: Likewise.
22079         * modules/hmac-sha1-tests: Likewise.
22080         * modules/linked-list-tests: Likewise.
22081         * modules/linkedhash-list-tests: Likewise.
22082         * modules/lock-tests: Likewise.
22083         * modules/md2-tests: Likewise.
22084         * modules/md4-tests: Likewise.
22085         * modules/md5-tests: Likewise.
22086         * modules/rbtree-list-tests: Likewise.
22087         * modules/rbtree-oset-tests: Likewise.
22088         * modules/rbtreehash-list-tests: Likewise.
22089         * modules/read-file-tests: Likewise.
22090         * modules/rijndael-tests: Likewise.
22091         * modules/stdint-tests: Likewise.
22092         * modules/tls-tests: Likewise.
22093
22094 2007-02-24  Bruno Haible  <bruno@clisp.org>
22095
22096         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
22097         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
22098         function; instead check whether isnan with a double argument links.
22099         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
22100         function; instead check whether isnan with a 'long double' argument
22101         links.
22102         Reported by Eric Blake <ebb9@byu.net>.
22103
22104 2007-02-24  Bruno Haible  <bruno@clisp.org>
22105
22106         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
22107         defined.
22108         * lib/isnanl.c: Remove all code. Just include isnan.c.
22109         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
22110
22111 2007-02-25  Jim Meyering  <jim@meyering.net>
22112
22113         Avoid conflicting types for 'unsetenv' on FreeBSD.
22114         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
22115         conflicting with FreeBSD's (5.0 and 6.1) function declaration
22116         in stdlib.h.
22117
22118 2007-02-24  Bruno Haible  <bruno@clisp.org>
22119
22120         * modules/isnanl-nolibm-tests: New file.
22121         * tests/test-isnanl.c: New file.
22122
22123         * modules/isnanl-nolibm: New file.
22124         * lib/isnanl.h: New file.
22125         * lib/isnanl.c: New file.
22126         * m4/isnanl.m4: New file.
22127
22128 2007-02-24  Bruno Haible  <bruno@clisp.org>
22129
22130         * modules/isnan-nolibm-tests: New file.
22131         * tests/test-isnan.c: New file.
22132
22133         * modules/isnan-nolibm: New file.
22134         * lib/isnan.h: New file.
22135         * lib/isnan.c: New file.
22136         * m4/isnan.m4: New file.
22137
22138 2007-02-24  Bruno Haible  <bruno@clisp.org>
22139
22140         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
22141         assume that an exponent fits in 20 bits.
22142
22143 2007-02-24  Jim Meyering  <jim@meyering.net>
22144
22145         * m4/regex.m4: Update the description of the configure-time option,
22146         --without-included-regex, to state accurately what the defaults are,
22147         and perhaps to give people an idea why using this option is risky.
22148
22149 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
22150
22151         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
22152         loops on small arguments.  This attempts to avoid the problem
22153         Bruno Haible reported for AIX 4.3.2 in
22154         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
22155
22156 2007-02-23  Bruno Haible  <bruno@clisp.org>
22157
22158         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
22159         Needed for help2man.
22160
22161 2007-02-23  Karl Berry  <karl@gnu.org>
22162
22163         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
22164         exists, foo.h should be cvs-ignored, not committed.
22165
22166 2007-02-23  Eric Blake  <ebb9@byu.net>
22167
22168         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
22169         * lib/stat-time.h (includes): Likewise.
22170         * lib/utimecmp.c (includes): Likewise.
22171         * lib/utimens.h (includes): Likewise.
22172         * lib/getdate.y (includes): Also include "timespec.h" for use
22173         internal to the module.
22174         * modules/utimens (Depends-on): Revert yesterday's patch.
22175         * modules/nanosleep (Depends-on): Add missing dependency.
22176
22177 2007-02-22  Bruno Haible  <bruno@clisp.org>
22178
22179         * lib/glob.c: Don't include getlogin_r.h.
22180
22181 2007-02-22  Jim Meyering  <jim@meyering.net>
22182
22183         * modules/utimens (Depends-on): Add timespec, required for
22184         utimens.h's inclusion of timespec.h.
22185
22186 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
22187
22188         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
22189         long unreadable paths in GNU/Linux.  Problem reported by Andreas
22190         Schwab in
22191         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
22192         I'll try to think of a better way to fix the Solaris problem.
22193
22194         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
22195         like glibc; on Solaris 10, it fails with errno == EINVAL.
22196         POSIX says the behavior is unspecified if the first argument is NULL,
22197         so play it safe and never pass NULL to the system getcwd.
22198
22199 2007-02-21  Jim Meyering  <jim@meyering.net>
22200
22201         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
22202         of gettimeofday.  It would conflict with the one now always
22203         provided via sys_time_.h.  Reported by Matthew Woehlke, as
22204         an IRIX 6.5 build failure.
22205
22206 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
22207
22208         Minor fixups to port to Solaris 10 with Sun C 5.8.
22209         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
22210         * modules/getcwd (Depends-on): Add dirfd.
22211         * lib/putenv.c (putenv): #undef it.
22212         (rpl_putenv): New decl.
22213         (malloc, free): Include <stdlib.h> rather than prototyping separately.
22214
22215 2007-02-20  Bruno Haible  <bruno@clisp.org>
22216
22217         * modules/stdio-tests: New file.
22218         * tests/test-stdio.c: New file.
22219
22220         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
22221         (Depends-on): Add stdio.
22222         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
22223         (Include): Use <stdio.h> instead of vsnprintf.h.
22224         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
22225         HAVE_DECL_VSNPRINTF.
22226         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
22227
22228         * modules/snprintf (Files): Remove lib/snprintf.h.
22229         (Depends-on): Add stdio.
22230         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
22231         (Include): Use <stdio.h> instead of snprintf.h.
22232         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
22233         HAVE_DECL_SNPRINTF.
22234         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
22235         * lib/getaddrinfo.c: Likewise.
22236
22237         * modules/stdio: New file.
22238         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
22239         * lib/snprintf.h: Remove file.
22240         * lib/vsnprintf.h: Remove file.
22241         * lib/.cppi-disable: Remove snprintf.h.
22242         * m4/stdio_h.m4: New file.
22243         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
22244
22245 2007-02-20  Jim Meyering  <jim@meyering.net>
22246
22247         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
22248         used by e.g., mingw.  From Bruno Haible.
22249
22250 2007-02-19  Bruno Haible  <bruno@clisp.org>
22251
22252         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
22253         warnings.
22254         Reported by Ben Pfaff <blp@cs.stanford.edu>.
22255
22256 2007-02-19  Bruno Haible  <bruno@clisp.org>
22257
22258         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
22259         from mingw users.
22260
22261 2007-02-19  Bruno Haible  <bruno@clisp.org>
22262
22263         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
22264         warnings.
22265         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
22266
22267 2007-02-19  Jim Meyering  <jim@meyering.net>
22268
22269         Don't use FD after a successful "fdopendir (fd)".
22270         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
22271         Reset it by calling dirfd on the just-obtained DIR*.
22272
22273         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
22274         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
22275
22276 2007-02-18  Bruno Haible  <bruno@clisp.org>
22277
22278         * lib/readlink.c: Include <unistd.h>.
22279         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
22280         HAVE_READLINK.
22281         * modules/readlink (Depends-on): Add unistd.
22282         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22283         (Include): Add <unistd.h>.
22284
22285         * lib/getlogin_r.h: Remove file.
22286         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
22287         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
22288         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
22289         HAVE_DECL_GETLOGIN_R.
22290         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
22291         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22292         (Include): Use <unistd.h> instead of getlogin_r.h.
22293
22294         * lib/getcwd.h: Remove file.
22295         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
22296         * lib/xgetcwd.c: Likewise.
22297         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
22298         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
22299         * modules/getcwd (Files): Remove lib/getcwd.h.
22300         (Depends-on): Add unistd.
22301         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22302         (Include): Use <unistd.h> instad of getcwd.h.
22303
22304         * lib/ftruncate.c: Include <unistd.h> first.
22305         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
22306         Set HAVE_FTRUNCATE.
22307         * modules/ftruncate (Depends-on): Add unistd.
22308         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22309
22310         * lib/fchdir.c: Include <unistd.h> first.
22311         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
22312         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
22313         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
22314         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22315         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
22316
22317         * lib/dup2.c: Include <unistd.h> first.
22318         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
22319         HAVE_DUP2.
22320         * modules/dup2 (Depends-on): Add unistd.
22321         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22322
22323         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
22324         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
22325         REPLACE_CHOWN. Don't define chown as a macro here.
22326         * modules/chown (Depends-on): Add unistd.
22327         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22328
22329         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
22330         Add definition for GL_LINK_WARNING.
22331         (chown, dup2): New declarations.
22332         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
22333         link warning.
22334         (ftruncate): New declaration.
22335         (getcwd): New declaration, taken from old getcwd.h.
22336         (getlogin_r): New declaration, taken from old getlogin_r.h.
22337         (readlink): New declaration.
22338         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
22339         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
22340         (gl_PREREQ_UNISTD): Remove macro.
22341         (gl_UNISTD_MODULE_INDICATOR): New macro.
22342         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
22343         many new variables. Don't set UNISTD_H.
22344         * modules/unistd (Description): Change.
22345         (Depends-on): Add link-warning.
22346         (configure.ac): Update.
22347         (Makefile.am): Create unistd.h always. Substitute many new variables
22348         into it.
22349
22350 2007-02-18  Bruno Haible  <bruno@clisp.org>
22351
22352         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
22353         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
22354         HAVE_GETSUBOPT.
22355         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
22356         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
22357         * lib/getsubopt.h: Remove file.
22358         * modules/getsubopt (Files): Remove lib/getsubopt.h.
22359         (Depends-on): Add stdlib.
22360         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
22361         (Includes): Use <stdlib.h> instead of getsubopt.h.
22362         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
22363         Set HAVE_GETSUBOPT.
22364         * lib/getsubopt.c: Don't include getsubopt.h.
22365
22366 2007-02-18  Bruno Haible  <bruno@clisp.org>
22367
22368         * modules/fchdir (Depends-on): Add dup2.
22369
22370 2007-02-18  Bruno Haible  <bruno@clisp.org>
22371
22372         * lib/stdlib_.h: Handle glibc's special invocation convention
22373         specially.
22374
22375 2007-02-18  Bruno Haible  <bruno@clisp.org>
22376
22377         * modules/stdlib-tests: New file.
22378         * tests/test-stdlib.c: New file.
22379
22380         * modules/mkstemp (Files): Remove lib/mkstemp.h.
22381         (Depends-on): Add stdlib.
22382         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
22383         (Includes): Use <stdlib.h> instead of mkstemp.h.
22384         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
22385         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
22386         * lib/mkstemp.c: Don't include mkstemp.h.
22387         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
22388         * lib/stdlib--.h: Don't include mkstemp.h.
22389
22390         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
22391         (Depends-on): Add stdlib.
22392         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
22393         (Includes): Use <stdlib.h> instead of mkdtemp.h.
22394         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
22395         HAVE_MKDTEMP.
22396         * lib/mkdtemp.c: Don't include mkdtemp.h.
22397         * lib/clean-temp.c: Don't include mkdtemp.h.
22398
22399         * modules/exit (Files): Remove lib/exit.h.
22400         (Depends-on): Add stdlib.
22401         (Makefile.am): Remove lib_SOURCES.
22402         (Include): Use <stdlib.h> instead of exit.h.
22403         * lib/argmatch.c: Don't include exit.h.
22404         * lib/execute.c: Likewise.
22405         * lib/pagealign_alloc.c: Likewise.
22406         * lib/pipe.c: Likewise.
22407         * lib/wait-process.c: Likewise.
22408         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
22409         * lib/exitfail.c: Likewise.
22410         * lib/savewd.c: Likewise.
22411         * lib/xsetenv.c: Likewise.
22412
22413         * modules/stdlib: New file.
22414         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
22415         and extra comments about mkstemp().
22416         * lib/exit.h: Remove file.
22417         * lib/mkdtemp.h: Remove file.
22418         * lib/mkstemp.h: Remove file.
22419         * m4/stdlib_h.m4: New file.
22420         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
22421
22422 2007-02-18  Bruno Haible  <bruno@clisp.org>
22423
22424         * modules/math-tests: New file.
22425         * tests/test-math.c: New file.
22426
22427         * modules/math: New file.
22428         * modules/mathl (Files): Remove lib/mathl.h.
22429         (Depends-on): Add math.
22430         (Makefile.am): Don't mention mathl.h.
22431         (Include): Use <math.h> instead of mathl.h.
22432         * lib/math_.h: New file.
22433         * lib/mathl.h: Remove file.
22434         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
22435         mathl.h.
22436         * lib/asinl.c: Likewise.
22437         * lib/atanl.c: Likewise.
22438         * lib/ceill.c: Likewise.
22439         * lib/cosl.c: Likewise.
22440         * lib/expl.c: Likewise.
22441         * lib/floorl.c: Likewise.
22442         * lib/frexpl.c: Likewise.
22443         * lib/ldexpl.c: Likewise.
22444         * lib/logl.c: Likewise.
22445         * lib/sincosl.c: Likewise.
22446         * lib/sinl.c: Likewise.
22447         * lib/sqrtl.c: Likewise.
22448         * lib/tanl.c: Likewise.
22449         * lib/trigl.c: Likewise.
22450         * m4/math_h.m4: New file.
22451         * MODULES.html.sh (Mathematics): Add math.
22452
22453 2007-02-17  Bruno Haible  <bruno@clisp.org>
22454
22455         * modules/wctype-tests: New file.
22456         * tests/test-wctype.c: New file.
22457
22458         * modules/wchar-tests: New file.
22459         * tests/test-wchar.c: New file.
22460
22461         * modules/unistd-tests: New file.
22462         * tests/test-unistd.c: New file.
22463
22464         * modules/time-tests: New file.
22465         * tests/test-time.c: New file.
22466
22467         * modules/sysexits-tests: New file.
22468         * tests/test-sysexits.c: New file.
22469
22470         * modules/sys_time-tests: New file.
22471         * tests/test-sys_time.c: New file.
22472
22473         * modules/sys_stat-tests: New file.
22474         * tests/test-sys_stat.c: New file.
22475
22476         * modules/sys_socket-tests: New file.
22477         * tests/test-sys_socket.c: New file.
22478
22479         * modules/sys_select-tests: New file.
22480         * tests/test-sys_select.c: New file.
22481
22482         * modules/string-tests: New file.
22483         * tests/test-string.c: New file.
22484
22485         * modules/stdbool-tests: New file.
22486         * tests/test-stdbool.c: New file.
22487
22488         * modules/netinet_in-tests: New file.
22489         * tests/test-netinet_in.c: New file.
22490
22491         * modules/inttypes-tests: New file.
22492         * tests/test-inttypes.c: New file.
22493
22494         * modules/fcntl-tests: New file.
22495         * tests/test-fcntl.c: New file.
22496
22497         * modules/byteswap-tests: New file.
22498         * tests/test-byteswap.c: New file.
22499
22500         * modules/arpa_inet-tests: New file.
22501         * tests/test-arpa_inet.c: New file.
22502
22503 2007-02-17  Bruno Haible  <bruno@clisp.org>
22504
22505         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
22506         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
22507         if the corresponding module is not enabled. Emit link warnings if
22508         the function is used nevertheless.
22509         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
22510         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
22511         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
22512         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
22513         * modules/inttypes (Depends-on): Add link-warning.
22514         (Makefile.am): Copy the contents of build-aux/link-warning.h into
22515         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
22516         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
22517         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
22518         * modules/imaxdiv (configure.ac): Likewise.
22519         * modules/strtoimax (configure.ac): Likewise.
22520         * modules/strtoumax (configure.ac): Likewise.
22521
22522 2007-02-17  Bruno Haible  <bruno@clisp.org>
22523
22524         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
22525         gl_STRING_MODULE_INDICATOR_DEFAULTS.
22526         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
22527         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
22528
22529 2007-02-17  Bruno Haible  <bruno@clisp.org>
22530
22531         * modules/link-warning: New file.
22532         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
22533         * lib/string_.h (GL_LINK_WARNING): Remove definition.
22534         * modules/string (Depends-on): Add link-warning.
22535         (Makefile.am): Copy the contents of build-aux/link-warning.h into
22536         string.h.
22537         * MODULES.html.sh (Support for building libraries and executables): Add
22538         link-warning.
22539
22540 2007-02-17  Bruno Haible  <bruno@clisp.org>
22541
22542         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
22543         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
22544         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
22545         long lines.
22546
22547 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
22548             Bruno Haible  <bruno@clisp.org>
22549
22550         * modules/tmpfile: New file.
22551         * lib/tmpfile.c: New file.
22552         * m4/tmpfile.m4: New file.
22553         * MODULES.html.sh (func_all_modules): New section "Input/output".
22554
22555 2007-02-15  Bruno Haible  <bruno@clisp.org>
22556
22557         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
22558         (supports_delete_on_close): New function.
22559         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
22560
22561 2007-02-14  Bruno Haible  <bruno@clisp.org>
22562
22563         * modules/mbspcasecmp-tests: New file.
22564         * tests/test-mbspcasecmp.sh: New file.
22565         * tests/test-mbspcasecmp.c: New file.
22566
22567         New module mbspcasecmp.
22568         * modules/mbspcasecmp: New file.
22569         * lib/mbspcasecmp.c: New file.
22570         * lib/string_.h (strncasecmp): Change warning message.
22571         (mbspcasecmp): New declaration.
22572         * m4/mbspcasecmp.m4: New file.
22573         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22574         GNULIB_MBSPCASECMP.
22575         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
22576         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
22577
22578 2007-02-14  Bruno Haible  <bruno@clisp.org>
22579
22580         * modules/mbsncasecmp-tests: New file.
22581         * tests/test-mbsncasecmp.sh: New file.
22582         * tests/test-mbsncasecmp.c: New file.
22583
22584         New module mbsncasecmp.
22585         * modules/mbsncasecmp: New file.
22586         * lib/mbsncasecmp.c: New file.
22587         * lib/string_.h (mbsncasecmp): New declaration.
22588         * m4/mbsncasecmp.m4: New file.
22589         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22590         GNULIB_MBSNCASECMP.
22591         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
22592         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
22593
22594 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
22595
22596         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
22597         Verify that it doesn't overlap with our flags.
22598         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
22599         do not have the desired effect in multibyte locales; instead, use
22600         mbscasecmp.
22601         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
22602         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
22603         we don't require GNU fnmatch ourselves (if our users require it, they
22604         should do so explicitly).
22605
22606         Fix regex code so it doesn't rely on strcasecmp.
22607         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
22608         Otherwise, include gnulib's langinfo.h.
22609         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
22610         undesirable behavior in non-C locales.  Instead, rely on localecharset.
22611         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
22612         * modules/regex (FILES): Remove m4/codeset.m4.
22613         (Depends-on): Add localcharset.  Remove strcase.
22614
22615 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22616
22617         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
22618         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
22619
22620 2007-02-13  Bruno Haible  <bruno@clisp.org>
22621
22622         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
22623         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
22624
22625 2007-02-12  Bruno Haible  <bruno@clisp.org>
22626
22627         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
22628         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
22629         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
22630         time warning rather than a link error.
22631
22632 2007-02-12  Bruno Haible  <bruno@clisp.org>
22633
22634         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
22635         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
22636         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
22637
22638 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
22639
22640         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
22641         args, not 2.
22642
22643 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
22644
22645         New module 'time', so that apps can include <time.h> as per
22646         POSIX and GNU instead of separate include files like time_r.h
22647         and timegm.h.  This implementation tries out a simpler approach
22648         for replacing decls in standard include files (as compared to
22649         the string module), somewhat as an experiment.
22650
22651         * config/srclist.txt: Comment out mktime.c for now.
22652         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
22653         since it doesn't apply any more.  Use generic wording instead.
22654         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
22655         'time'.
22656         * lib/time_.h, m4/time_h.m4, modules/time: New files.
22657         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
22658         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
22659         Don't include <sys/types.h>; no longer needed since we assume C89.
22660         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
22661         * lib/strftime.c: Likewise.
22662         * lib/time_r.c: Likewise.
22663         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
22664         * lib/nanosleep.c: Include <time.h> first, to check interface.
22665         * lib/strptime.c: Likewise.
22666         * lib/time_r.c: Likewise.
22667         * lib/timegm.c: Likewise.
22668         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
22669         needed.
22670         * lib/timegm.c: Don't include timegm.h; no longer needed.
22671         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
22672         time.h now handles any problems in that area.
22673         (struct timespec, nanosleep): Remove; time.h now arranges for these.
22674         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
22675         that time.h defines struct timespec.
22676         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
22677         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
22678         handles that.
22679         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
22680         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
22681         needed.  Set REPLACE_LOCALTIME.
22682         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
22683         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
22684         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
22685         nanosleep; time_h.m4 now does that.  Don't require
22686         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
22687         module handles this now.
22688         * modules/getdate (Depends-on): Remove timespec.  Add time.
22689         * modules/nanosleep (Depends-on): Likewise.
22690         * modules/stat-time (Depends-on): Likewise.
22691         * modules/nanosleep (Include): Include time.h, not timespec.h.
22692         * modules/strptime (Files): Remove lib/strptime.h.
22693         (Depends-on): Add extensions, time.
22694         (Include): Include time.h, not strptime.h.
22695         * modules/time_r (Files): Remove lib/time_r.h.
22696         (Depends-on): Add time.
22697         (Include): Include time.h, not time_r.h.
22698         * modules/timegm: Likewise.
22699         * modules/timespec (Description): Now does timespec-related decls
22700         of our own, instead of struct timespec itself.
22701         (Depends-on): Add time; remove extensions.
22702         (Maintainer): Add self.
22703         * modules/utimecmp (Depends-on): Add time; remove timespec.
22704         * modules/utimens (Depends-on): Likewise.
22705         * modules/xnanosleep (Depends-on): Likewise.
22706
22707 2007-02-11  Bruno Haible  <bruno@clisp.org>
22708
22709         * lib/c-strstr.c: Include allocsa.h.
22710         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
22711         * lib/c-strcasestr.c: Include allocsa.h.
22712         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
22713         * lib/strcasestr.c: Include allocsa.h.
22714         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
22715         * lib/mbsstr.c: Include allocsa.h.
22716         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
22717         allocsa/freesa instead of malloc/free.
22718         * lib/mbscasestr.c: Include allocsa.h.
22719         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
22720         allocsa/freesa instead of malloc/free.
22721         * modules/c-strstr (Depends-on): Add allocsa.
22722         * modules/c-strcasestr (Depends-on): Likewise.
22723         * modules/strcasestr (Depends-on): Likewise.
22724         * modules/mbsstr (Depends-on): Likewise.
22725         * modules/mbscasestr (Depends-on): Likewise.
22726
22727 2007-02-11  Bruno Haible  <bruno@clisp.org>
22728
22729         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
22730
22731         * modules/mbsspn-tests: New file.
22732         * tests/test-mbsspn.sh: New file.
22733         * tests/test-mbsspn.c: New file.
22734
22735 2007-02-11  Bruno Haible  <bruno@clisp.org>
22736
22737         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
22738
22739         * modules/mbspbrk-tests: New file.
22740         * tests/test-mbspbrk.sh: New file.
22741         * tests/test-mbspbrk.c: New file.
22742
22743 2007-02-11  Bruno Haible  <bruno@clisp.org>
22744
22745         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
22746         unneeded cast.
22747
22748         * modules/mbscspn-tests: New file.
22749         * tests/test-mbscspn.sh: New file.
22750         * tests/test-mbscspn.c: New file.
22751
22752 2007-02-11  Bruno Haible  <bruno@clisp.org>
22753
22754         * modules/mbscasecmp-tests: New file.
22755         * tests/test-mbscasecmp.sh: New file.
22756         * tests/test-mbscasecmp.c: New file.
22757
22758 2007-02-11  Bruno Haible  <bruno@clisp.org>
22759
22760         Ensure O(n) worst-case complexity of mbscasestr.
22761         * lib/mbscasestr.c: Include stdbool.h.
22762         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
22763         functions.
22764         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
22765         the bookkeeping indicates that it's worth it.
22766         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
22767
22768         * modules/mbscasestr-tests: New file.
22769         * tests/test-mbscasestr1.c: New file.
22770         * tests/test-mbscasestr2.sh: New file.
22771         * tests/test-mbscasestr2.c: New file.
22772         * tests/test-mbscasestr3.sh: New file.
22773         * tests/test-mbscasestr3.c: New file.
22774         * tests/test-mbscasestr4.sh: New file.
22775         * tests/test-mbscasestr4.c: New file.
22776         * m4/locale-tr.m4: New file.
22777
22778 2007-02-11  Bruno Haible  <bruno@clisp.org>
22779
22780         Ensure O(n) worst-case complexity of mbsstr.
22781         * lib/mbsstr.c: Include stdbool.h.
22782         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
22783         functions.
22784         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
22785         bookkeeping indicates that it's worth it.
22786         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
22787
22788         * modules/mbsstr-tests: New file.
22789         * tests/test-mbsstr1.c: New file.
22790         * tests/test-mbsstr2.sh: New file.
22791         * tests/test-mbsstr2.c: New file.
22792         * tests/test-mbsstr3.sh: New file.
22793         * tests/test-mbsstr3.c: New file.
22794         * m4/locale-fr.m4: New file.
22795
22796 2007-02-11  Bruno Haible  <bruno@clisp.org>
22797
22798         * lib/mbsrchr.c (mbsrchr): Fix bug.
22799
22800         * modules/mbsrchr-tests: New file.
22801         * tests/test-mbsrchr.sh: New file.
22802         * tests/test-mbsrchr.c: New file.
22803
22804 2007-02-11  Bruno Haible  <bruno@clisp.org>
22805
22806         * lib/mbschr.c (mbschr): Fix bug.
22807
22808         * modules/mbschr-tests: New file.
22809         * tests/test-mbschr.sh: New file.
22810         * tests/test-mbschr.c: New file.
22811         * m4/locale-zh.m4: New file.
22812
22813 2007-02-11  Bruno Haible  <bruno@clisp.org>
22814
22815         Support for copying multibyte string iterators.
22816         * lib/mbiter.h: Include <string.h>.
22817         (mbiter_multi_copy): New function.
22818         (mbi_copy): New macro.
22819         * lib/mbuiter.h: Include <string.h>.
22820         (mbuiter_multi_copy): New function.
22821         (mbui_copy): New macro.
22822
22823 2007-02-11  Bruno Haible  <bruno@clisp.org>
22824
22825         New module mbslen.
22826         * modules/mbslen: New file.
22827         * lib/mbslen.c: New file.
22828         * lib/string_.h (mbslen): New declaration.
22829         * m4/mbslen.m4: New file.
22830         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22831         GNULIB_MBSLEN.
22832         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
22833         * MODULES.html.sh (Internationalization functions): Add mbslen.
22834
22835 2007-02-11  Bruno Haible  <bruno@clisp.org>
22836
22837         Ensure O(n) worst-case complexity of strcasestr substitute.
22838         * lib/strcasestr.c: Include stdbool.h.
22839         (knuth_morris_pratt): New function.
22840         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
22841         bookkeeping indicates that it's worth it.
22842         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
22843
22844         * modules/strcasestr-tests: New file.
22845         * tests/test-strcasestr.c: New file.
22846
22847 2007-02-11  Bruno Haible  <bruno@clisp.org>
22848
22849         Ensure O(n) worst-case complexity of c_strcasestr.
22850         * lib/c-strcasestr.c: Include stdbool.h, string.h.
22851         (knuth_morris_pratt): New function.
22852         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
22853         the bookkeeping indicates that it's worth it.
22854         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
22855
22856         * modules/c-strcasestr-tests: New file.
22857         * tests/test-c-strcasestr.c: New file.
22858
22859 2007-02-11  Bruno Haible  <bruno@clisp.org>
22860
22861         Ensure O(n) worst-case complexity of c_strstr.
22862         * lib/c-strstr.c: Include stdbool.h, string.h.
22863         (knuth_morris_pratt): New function.
22864         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
22865         bookkeeping indicates that it's worth it.
22866         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
22867
22868         * lib/c-strstr.c: Complete rewrite for maintainability.
22869
22870         * modules/c-strstr-tests: New file.
22871         * tests/test-c-strstr.c: New file.
22872
22873 2007-02-11  Bruno Haible  <bruno@clisp.org>
22874
22875         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
22876         5.2.1 and earlier, whereby \055 was treated just like the range
22877         delimiter '-'.
22878         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
22879
22880 2007-02-08  Bruno Haible  <bruno@clisp.org>
22881
22882         * modules/regex (Depends-on): Add stdbool.
22883         Reported by Dalibor Topic <robilad@kaffe.org>.
22884
22885 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
22886
22887         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
22888         Prefer returning from main to exiting from it.
22889         Remove unnecessary parens after sizeof.
22890
22891 2007-02-05  Bruno Haible  <bruno@clisp.org>
22892
22893         New module mbssep.
22894         * modules/mbssep: New file.
22895         * lib/mbssep.c: New file.
22896         * lib/string_.h (strsep): Add a conditional link warning.
22897         (mbssep): New declaration.
22898         * m4/mbssep.m4: New file.
22899         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22900         GNULIB_MBSSEP.
22901         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
22902         * MODULES.html.sh (Internationalization functions): Add mbssep.
22903
22904 2007-02-05  Bruno Haible  <bruno@clisp.org>
22905
22906         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
22907         Optimize search in case of 1 delimiter.
22908
22909 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
22910
22911         * lib/acl.h: Include sys/types.h before sys/acl.h.
22912
22913 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
22914
22915         Merge upstream fix for glibc bugzilla #3957:
22916
22917         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
22918
22919         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
22920         bit for RE_HAT_LISTS_NOT_NEWLINE.
22921         (build_charclass_op): Remove bogus comment.
22922
22923 2007-02-05  Simon Josefsson  <simon@josefsson.org>
22924
22925         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
22926
22927 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
22928
22929         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
22930         * lib/memmem.c [!defined _LIBC]: Include config.h.
22931
22932 2007-02-04  Bruno Haible  <bruno@clisp.org>
22933
22934         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
22935         warning message.
22936
22937 2007-02-04  Bruno Haible  <bruno@clisp.org>
22938
22939         New module mbstok_r.
22940         * modules/mbstok_r: New file.
22941         * lib/mbstok_r.c: New file.
22942         * lib/string_.h (strtok_r): Change argument names to match the
22943         comments. Add a conditional link warning.
22944         (mbstok_r): New declaration.
22945         * m4/mbstok_r.m4: New file.
22946         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22947         GNULIB_MBSTOK_R.
22948         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
22949         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
22950
22951 2007-02-04  Bruno Haible  <bruno@clisp.org>
22952
22953         New module mbsspn.
22954         * modules/mbsspn: New file.
22955         * lib/mbsspn.c: New file.
22956         * lib/string_.h (strspn): Add a conditional link warning.
22957         (mbsspn): New declaration.
22958         * m4/mbsspn.m4: New file.
22959         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22960         GNULIB_MBSSPN.
22961         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
22962         * MODULES.html.sh (Internationalization functions): Add mbsspn.
22963
22964 2007-02-04  Bruno Haible  <bruno@clisp.org>
22965
22966         New module mbspbrk.
22967         * modules/mbspbrk: New file.
22968         * lib/mbspbrk.c: New file.
22969         * lib/string_.h (strpbrk): Add a conditional link warning.
22970         (mbspbrk): New declaration.
22971         * m4/mbspbrk.m4: New file.
22972         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22973         GNULIB_MBSPBRK.
22974         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
22975         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
22976
22977 2007-02-04  Bruno Haible  <bruno@clisp.org>
22978
22979         New module mbscspn.
22980         * modules/mbscspn: New file.
22981         * lib/mbscspn.c: New file.
22982         * lib/string_.h (strcspn): Add a conditional link warning.
22983         (mbscspn): New declaration.
22984         * m4/mbscspn.m4: New file.
22985         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22986         GNULIB_MBSCSPN.
22987         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
22988         * MODULES.html.sh (Internationalization functions): Add mbscspn.
22989
22990 2007-02-04  Bruno Haible  <bruno@clisp.org>
22991
22992         New module mbscasestr, reduced goal of strcasestr.
22993         * modules/mbscasestr: New file.
22994         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
22995         (mbscasestr): Renamed from strcasestr.
22996         * lib/strcasestr.c: Don't include mbuiter.h.
22997         (strcasestr): Remove support for multibyte locales.
22998         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
22999         Change the conditional link warning.
23000         (mbscasestr): New declaration.
23001         * m4/mbscasestr.m4: New file.
23002         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
23003         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
23004         REPLACE_STRCASESTR.
23005         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
23006         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
23007         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
23008         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
23009         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
23010         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
23011         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
23012         (Depends-on): Remove mbuiter.
23013         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
23014
23015 2007-02-04  Bruno Haible  <bruno@clisp.org>
23016
23017         Simplify handling of strncasecmp.
23018         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
23019         the conditional link warning.
23020         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
23021         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
23022         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
23023         * modules/strcase (configure.ac): Don't invoke
23024         gl_STRING_MODULE_INDICATOR.
23025         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
23026
23027 2007-02-04  Bruno Haible  <bruno@clisp.org>
23028
23029         New module mbscasecmp, reduced goal of strcasecmp.
23030         * modules/mbscasecmp: New file.
23031         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
23032         (mbscasecmp): Renamed from strcasecmp.
23033         * lib/strcasecmp.c: Don't include mbuiter.h.
23034         (strcasecmp): Remove support for multibyte locales.
23035         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
23036         Change the conditional link warning.
23037         (mbscasecmp): New declaration.
23038         * m4/mbscasecmp.m4: New file.
23039         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
23040         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
23041         REPLACE_STRCASECMP.
23042         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
23043         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23044         GNULIB_MBSCASECMP.
23045         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
23046         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
23047         * modules/strcase (Files): Remove m4/mbrtowc.m4.
23048         (Depends-on): Remove mbuiter.
23049         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
23050
23051 2007-02-04  Bruno Haible  <bruno@clisp.org>
23052
23053         New module mbsstr. Remove module strstr.
23054         * modules/mbsstr: New file.
23055         * modules/strstr: Remove file.
23056         * lib/mbsstr.c: Renamed from lib/strstr.c.
23057         (mbsstr): Renamed from strstr.
23058         * lib/string_.h (strstr): Remove declaration. Change the conditional
23059         link warning.
23060         (mbsstr): New declaration.
23061         * m4/mbsstr.m4: New file.
23062         * m4/strstr.m4: Remove file.
23063         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
23064         REPLACE_STRSTR.
23065         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
23066         Don't initialize GNULIB_STRSTR.
23067         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
23068         substitute GNULIB_STRSTR and REPLACE_STRSTR.
23069         * MODULES.html.sh (Internationalization functions): Add mbsstr.
23070         (Support for systems lacking ANSI C 89): Remove strstr.
23071
23072 2007-02-04  Bruno Haible  <bruno@clisp.org>
23073
23074         New module mbsrchr.
23075         * modules/mbsrchr: New file.
23076         * lib/mbsrchr.c: New file.
23077         * lib/string_.h (strrchr): Add a conditional link warning.
23078         (mbsrchr): New declaration.
23079         * m4/mbsrchr.m4: New file.
23080         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23081         GNULIB_MBSRCHR.
23082         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
23083         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
23084
23085 2007-02-04  Bruno Haible  <bruno@clisp.org>
23086
23087         New module mbschr.
23088         * modules/mbschr: New file.
23089         * lib/mbschr.c: New file.
23090         * lib/string_.h (strchr): Add a conditional link warning.
23091         (mbschr): New declaration.
23092         * m4/mbschr.m4: New file.
23093         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
23094         GNULIB_MBSCHR.
23095         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
23096         * MODULES.html.sh (Internationalization functions): Add mbschr.
23097
23098 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
23099
23100         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
23101
23102         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
23103
23104 2007-02-04  Bruno Haible  <bruno@clisp.org>
23105
23106         New module description section 'configure.ac-early'.
23107         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
23108         (func_get_autoconf_early_snippet): New function.
23109         (func_import, func_create_testdir): Use it. Remove special cases for
23110         modules 'extensions' and 'lock'.
23111         * modules/extensions (configure.ac-early): Require
23112         gl_USE_SYSTEM_EXTENSIONS.
23113         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
23114
23115 2007-02-04  Bruno Haible  <bruno@clisp.org>
23116
23117         Make use of gcj-4.3's -fsource and -ftarget option.
23118         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
23119         and if so try the options -fsource and -ftarget.
23120         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
23121         source_version, ftarget_option, target_version arguments.
23122         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
23123         (is_envjavac_oldgcj_14_14_usable): Renamed from
23124         is_envjavac_gcj_14_14_usable.
23125         (is_envjavac_oldgcj_14_13_usable): Renamed from
23126         is_envjavac_gcj_14_13_usable.
23127         (is_gcj_present): Update.
23128         (is_gcj_43, is_gcj43_usable): New functions.
23129         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
23130         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
23131         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
23132         try the options -fsource and -ftarget.
23133
23134 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23135
23136         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
23137         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
23138         larger value.
23139
23140 2007-02-03  Jim Meyering  <jim@meyering.net>
23141
23142         Give tools a better chance to allocate space for very large buffers.
23143         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
23144
23145         Make pwd and readlink work also when run with an unreadable parent dir
23146         on systems with openat support.
23147         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
23148         provided getcwd function, even when we have openat support.
23149         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
23150
23151 2007-02-02  Bruno Haible  <bruno@clisp.org>
23152
23153         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
23154         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
23155         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
23156         portability problems if one of these functions is only used on specific
23157         platforms.
23158         Reported by Paul Eggert.
23159
23160 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
23161
23162         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
23163         is causing more trouble than it's curing.
23164         * lib/regex_internal.h (__mempcpy): Remove.
23165         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
23166         (and make the code a tad smaller to boot).
23167         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
23168
23169 2007-02-02  Jim Meyering  <jim@meyering.net>
23170
23171         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
23172         section, not in the Makefile.am: one.
23173
23174 2007-02-02  Eric Blake  <ebb9@byu.net>
23175
23176         * lib/strchrnul.c: Always include config.h first.
23177
23178         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
23179         gnulib strstr is not necessary here.
23180
23181 2007-02-02  Simon Josefsson  <simon@josefsson.org>
23182
23183         * m4/socklen.m4: Fix typo.
23184
23185 2007-02-02  Eric Blake  <ebb9@byu.net>
23186
23187         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
23188         * modules/netinet_in (Makefile.am): Likewise.
23189
23190 2007-02-01  Bruno Haible  <bruno@clisp.org>
23191
23192         * lib/string_.h (GL_LINK_WARNING): New macro.
23193         (strcasecmp, strstr, strcasestr): If provided by the system,
23194         conditionally define as a macro that leads to a warning instead of to
23195         an error.
23196         (strncasecmp): Conditionally define as a macro that leads to a warning.
23197
23198 2007-02-01  Karl Berry  <karl@gnu.org>
23199
23200         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
23201
23202 2007-02-01  Bruno Haible  <bruno@clisp.org>
23203
23204         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
23205         renamings.
23206
23207 2007-02-01  Eric Blake  <ebb9@byu.net>
23208
23209         * modules/regex (Depends-on): Revert dependence on mempcpy.
23210         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
23211         module's definition of mempcpy.
23212         Reported by Paul Eggert.
23213
23214 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
23215
23216         * lib/string_.h: If the gnulib module XYZ is not present, undefine
23217         the symbol XYZ before redefining it.  This fixes a problem with
23218         programs that don't use XYZ, when compiled on systems that define
23219         XYZ to something else.
23220
23221 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
23222
23223         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
23224         occurs when "mkdir -m foo" creates a setgid directory that is (1)
23225         writeable to group or other and (2) is intended to have a special
23226         mode bit that is set or cleared.  In such a case, the directory
23227         should be neither group- nor other-writeable until the special
23228         mode bits are right.
23229
23230 2007-01-31  Eric Blake  <ebb9@byu.net>
23231
23232         * modules/mountlist (Depends-on): Add strstr.
23233
23234         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
23235         bug.
23236         * modules/string (Makefile.am): Remove redundant replacement.
23237         * modules/regex (Depends-on): Add mempcpy.
23238
23239 2007-01-31  Bruno Haible  <bruno@clisp.org>
23240
23241         New module description field 'Link'.
23242         * gnulib-tool (func_usage): Document --extract-link-directive.
23243         (sed_extract_prog): Recognize 'Link' directive.
23244         (func_get_link_directive): New function.
23245         (func_import): Show summary of link directives.
23246         Handle --extract-link-directive option.
23247         * modules/acl (Link): New section.
23248         * modules/clock-time (Link): New section.
23249         * modules/euidaccess (Link): New section.
23250         * modules/gettext (Link): New section.
23251         * modules/iconv (Link): New section.
23252         * modules/lock (Link): New section.
23253         * modules/nanosleep (Link): New section.
23254         * modules/readline (Link): New section.
23255
23256 2007-01-27  Bruno Haible  <bruno@clisp.org>
23257
23258         Enforce the use of gnulib modules for unportable <string.h> functions.
23259         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
23260         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
23261         (gl_HEADER_STRING_H_BODY): Require it.
23262         * lib/string_.h: If the gnulib module XYZ is not present, redefine
23263         the symbol XYZ to one that gives a link error.
23264         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
23265         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
23266         * modules/mempcpy (configure.ac): Likewise.
23267         * modules/memrchr (configure.ac): Likewise.
23268         * modules/stpcpy (configure.ac): Likewise.
23269         * modules/stpncpy (configure.ac): Likewise.
23270         * modules/strcase (configure.ac): Likewise.
23271         * modules/strcasestr (configure.ac): Likewise.
23272         * modules/strchrnul (configure.ac): Likewise.
23273         * modules/strdup (configure.ac): Likewise.
23274         * modules/strndup (configure.ac): Likewise.
23275         * modules/strnlen (configure.ac): Likewise.
23276         * modules/strpbrk (configure.ac): Likewise.
23277         * modules/strsep (configure.ac): Likewise.
23278         * modules/strstr (configure.ac): Likewise.
23279         * modules/strtok_r (configure.ac): Likewise.
23280
23281 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
23282
23283         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
23284
23285 2007-01-30  Jim Meyering  <jim@meyering.net>
23286
23287         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
23288
23289 2007-01-29  Bruno Haible  <bruno@clisp.org>
23290
23291         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
23292         * lib/execute.c: Likewise.
23293         * lib/pipe.c: Likewise.
23294         * lib/printf-args.h: Likewise.
23295         * lib/printf-args.c: Likewise.
23296         * lib/printf-parse.c: Likewise.
23297         * lib/vasnprintf.c: Likewise.
23298
23299 2007-01-29  Eric Blake  <ebb9@byu.net>
23300
23301         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
23302         declaration.
23303
23304 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
23305
23306         * lib/strptime.h (strptime): Use 'restrict' for args where
23307         POSIX requires this.
23308         * lib/strptime.c (strptime): Likewise.
23309         Change license notice from LGPL to GPL, since gnulib-tool will
23310         change this as needed.
23311         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
23312         defined.
23313         Include "strptime.h" first, to check interface.
23314         Do not #undef _LIBC and _NL_CURRENT.
23315         Do not include <stdlib.h>; no longer needed.
23316         Include "time_r.h" and declare ptime_locale_status
23317         only if _LIBC is not defined.
23318         (__P): Remove unused macro.
23319         (match_string): Bring back glibc version, but use it only if _LIBC
23320         is defined.
23321         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
23322         Remove unnecessary assertion and abort() call.
23323         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
23324         * m4/strptime.m4: Fix serial number comment.
23325         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
23326         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
23327         (Depends-on): Add time_r.
23328
23329 2007-01-29  Bruno Haible  <bruno@clisp.org>
23330
23331         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23332         strptime.
23333         * modules/strptime (Depends-on): Add stdbool.
23334         * lib/strptime.h: Include <time.h> always. Add comments.
23335
23336 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23337
23338         * modules/strptime: New file.
23339         * lib/strptime.h: New file.
23340         * lib/strptime.c: New file.
23341         * m4/strptime.m4: New file.
23342
23343 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
23344
23345         * MODULES.html.sh: New module mpsort.
23346         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
23347
23348         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
23349         a circularity problem with HP-UX ia64 reported by Bob Proulx in
23350         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
23351         All uses changed.
23352         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
23353         All uses changed.
23354         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
23355         to _Restrict_.
23356         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
23357         the parameter matches the prototype.
23358
23359 2007-01-28  Jim Meyering  <jim@meyering.net>
23360
23361         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
23362         sys/time.h here, reverting that part of the previous patch:
23363         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
23364
23365 2007-01-28  Bruno Haible  <bruno@clisp.org>
23366
23367         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
23368         value of $(SYS_TIME_H).
23369         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
23370         remove it conditionally, too. [added by Jim Meyering]
23371         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
23372         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
23373         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
23374         GETTIMEOFDAY_REPLACEMENT to 1.
23375
23376 2007-01-28  Bruno Haible  <bruno@clisp.org>
23377
23378         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
23379         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
23380         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
23381         Set UNISTD_H instead of UNISTD_H2.
23382         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
23383
23384 2007-01-28  Bruno Haible  <bruno@clisp.org>
23385
23386         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
23387         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
23388
23389 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23390
23391         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
23392         (func_create_testdir): Ensure C locale for `grep' and `tr'
23393         character ranges.
23394         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
23395         ACLOCAL_AMFLAGS parsing state machine.
23396
23397 2007-01-27  Bruno Haible  <bruno@clisp.org>
23398
23399         * modules/unistr/base: Update.
23400
23401 2007-01-27  Bruno Haible  <bruno@clisp.org>
23402
23403         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
23404         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
23405         * modules/unistr/u32-mbtouc-unsafe: Renamed from
23406         modules/unistr/u32-mbtouc.
23407         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
23408         * lib/unistr.h: Update.
23409         * lib/linebreak.c: Update.
23410         * modules/unistr/u32-mbtouc: Renamed from
23411         modules/unistr/u32-mbtouc-safe.
23412         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
23413         * lib/unistr.h: Update.
23414         * lib/unistr/u32-to-u8.c: Update.
23415         * lib/unistr/u32-to-u16.c: Update.
23416
23417 2007-01-27  Bruno Haible  <bruno@clisp.org>
23418
23419         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
23420         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
23421         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
23422         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
23423         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
23424         * modules/unistr/u16-mbtouc-unsafe: Renamed from
23425         modules/unistr/u16-mbtouc.
23426         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
23427         * lib/unistr.h: Update.
23428         * lib/linebreak.c: Update.
23429         * modules/linebreak: Update.
23430         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
23431         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
23432         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
23433         * modules/unistr/u16-mbtouc: Renamed from
23434         modules/unistr/u16-mbtouc-safe.
23435         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
23436         * lib/unistr.h: Update.
23437         * lib/unistr/u16-to-u8.c: Update.
23438         * modules/unistr/u16-to-u8: Update.
23439         * lib/unistr/u16-to-u32.c: Update.
23440         * modules/unistr/u16-to-u32: Update.
23441
23442 2007-01-27  Bruno Haible  <bruno@clisp.org>
23443
23444         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
23445         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
23446         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
23447         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
23448         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
23449         * modules/unistr/u8-mbtouc-unsafe: Renamed from
23450         modules/unistr/u8-mbtouc.
23451         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
23452         * lib/unistr.h: Update.
23453         * lib/striconveh.c: Update.
23454         * modules/striconveh: Update.
23455         * lib/linebreak.c: Update.
23456         * modules/linebreak: Update.
23457         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
23458         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
23459         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
23460         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
23461         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
23462         * lib/unistr.h: Update.
23463         * lib/striconveh.c: Update.
23464         * modules/striconveh: Update.
23465         * lib/unistr/u8-to-u16.c: Update.
23466         * modules/unistr/u8-to-u16: Update.
23467         * lib/unistr/u8-to-u32.c: Update.
23468         * modules/unistr/u8-to-u32: Update.
23469
23470 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23471
23472         Sync from Libtool.
23473         * lib/argz.c: Do not include strings.h nor memory.h, include
23474         string.h unconditionally.  Patch by Simon Josefsson.
23475
23476 2007-01-27  Bruno Haible  <bruno@clisp.org>
23477
23478         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
23479         from gl_HEADER_STRING_H_BODY.
23480         (gl_HEADER_STRING_H_BODY): Require it.
23481         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
23482         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
23483         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
23484         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
23485         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
23486         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
23487         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
23488         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
23489         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
23490         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
23491         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
23492         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
23493         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
23494         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
23495         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
23496
23497 2007-01-27  Bruno Haible  <bruno@clisp.org>
23498
23499         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
23500         check_PROGRAMS into noinst_PROGRAMS.
23501         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
23502         check_PROGRAMS in this case.
23503         (func_import): Set for_test to false.
23504         (func_create_testdir): Set for_test to true.
23505
23506 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
23507             Bruno Haible  <bruno@clisp.org>
23508
23509         * modules/strcasestr (Files): Remove lib/strcasestr.h.
23510         (Depends-on): Add string.
23511         (Includes): Use <string.h> instead of strcasestr.h.
23512         * modules/string (Makefile.am): Also substitute the value of
23513         REPLACE_STRCASESTR.
23514         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
23515         assume strcasestr is declared in <string.h> not <strings.h>. Also
23516         set REPLACE_STRCASESTR.
23517         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
23518         REPLACE_STRCASESTR.
23519         * lib/strcasestr.h: Remove file.
23520         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
23521         * lib/string_.h (strcasestr): New declaration.
23522
23523 2007-01-27  Bruno Haible  <bruno@clisp.org>
23524
23525         * lib/string_.h: Use 'extern'.
23526
23527 2007-01-27  Jim Meyering  <jim@meyering.net>
23528
23529         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
23530         of set-but-not-used local, "q".
23531
23532         * lib/mempcpy.c: Include <config.h> before <string.h>.
23533         This fixes a compilation error on HP-UX, due to the system's
23534         "restrict"-using mempcpy prototype.
23535
23536 2007-01-26  Bruno Haible  <bruno@clisp.org>
23537
23538         Small optimization.
23539         * lib/javacomp.c: Include c-strstr.h.
23540          (is_envjavac_gcj): Use c_strstr instead of strstr.
23541         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
23542
23543 2007-01-26  Bruno Haible  <bruno@clisp.org>
23544
23545         * MODULES.html.sh (Unicode string functions): Add the new modules.
23546
23547         * modules/uniconv/u32-strconv-to-locale: New file.
23548         * lib/uniconv/u32-strconv-to-locale.c: New file.
23549
23550         * modules/uniconv/u16-strconv-to-locale: New file.
23551         * lib/uniconv/u16-strconv-to-locale.c: New file.
23552
23553         * modules/uniconv/u8-strconv-to-locale: New file.
23554         * lib/uniconv/u8-strconv-to-locale.c: New file.
23555
23556         * modules/uniconv/u32-strconv-from-locale: New file.
23557         * lib/uniconv/u32-strconv-from-locale.c: New file.
23558
23559         * modules/uniconv/u16-strconv-from-locale: New file.
23560         * lib/uniconv/u16-strconv-from-locale.c: New file.
23561
23562         * modules/uniconv/u8-strconv-from-locale: New file.
23563         * lib/uniconv/u8-strconv-from-locale.c: New file.
23564
23565         * modules/uniconv/u32-strconv-to-enc: New file.
23566         * lib/uniconv/u32-strconv-to-enc.c: New file.
23567         * modules/uniconv/u32-strconv-to-enc-tests: New file.
23568         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
23569
23570         * modules/uniconv/u16-strconv-to-enc: New file.
23571         * lib/uniconv/u16-strconv-to-enc.c: New file.
23572         * lib/uniconv/u-strconv-to-enc.h: New file.
23573         * modules/uniconv/u16-strconv-to-enc-tests: New file.
23574         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
23575
23576         * modules/uniconv/u8-strconv-to-enc: New file.
23577         * lib/uniconv/u8-strconv-to-enc.c: New file.
23578         * modules/uniconv/u8-strconv-to-enc-tests: New file.
23579         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
23580
23581         * modules/uniconv/u32-strconv-from-enc: New file.
23582         * lib/uniconv/u32-strconv-from-enc.c: New file.
23583         * modules/uniconv/u32-strconv-from-enc-tests: New file.
23584         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
23585
23586         * modules/uniconv/u16-strconv-from-enc: New file.
23587         * lib/uniconv/u16-strconv-from-enc.c: New file.
23588         * modules/uniconv/u16-strconv-from-enc-tests: New file.
23589         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
23590
23591         * modules/uniconv/u8-strconv-from-enc: New file.
23592         * lib/uniconv/u8-strconv-from-enc.c: New file.
23593         * lib/uniconv/u-strconv-from-enc.h: New file.
23594         * modules/uniconv/u8-strconv-from-enc-tests: New file.
23595         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
23596
23597         * modules/uniconv/u32-conv-from-enc: New file.
23598         * lib/uniconv/u32-conv-from-enc.c: New file.
23599         * modules/uniconv/u32-conv-from-enc-tests: New file.
23600         * tests/uniconv/test-u32-conv-from-enc.c: New file.
23601
23602         * modules/uniconv/u16-conv-from-enc: New file.
23603         * lib/uniconv/u16-conv-from-enc.c: New file.
23604         * lib/uniconv/u-conv-from-enc.h: New file.
23605         * modules/uniconv/u16-conv-from-enc-tests: New file.
23606         * tests/uniconv/test-u16-conv-from-enc.c: New file.
23607
23608         * modules/uniconv/u8-conv-from-enc: New file.
23609         * lib/uniconv/u8-conv-from-enc.c: New file.
23610         * modules/uniconv/u8-conv-from-enc-tests: New file.
23611         * tests/uniconv/test-u8-conv-from-enc.c: New file.
23612
23613         * modules/uniconv/base: New file.
23614         * lib/uniconv.h: New file.
23615
23616 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
23617
23618         * doc/gnulib-tool.texi (Initial import): Update to match current
23619         behavior with strdup module.
23620         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
23621         * lib/memmem.h: Remove; all uses removed.  This is now done
23622         by <string.h>.
23623         * lib/mempcpy.h: Likewise.
23624         * lib/memrchr.h: Likewise.
23625         * lib/stpcpy.h: Likewise.
23626         * lib/stpncpy.h: Likewise.
23627         * lib/strcase.h: Likewise.
23628         * lib/strchrnul.h: Likewise.
23629         * lib/strdup.h: Likewise.
23630         * lib/strndup.h: Likewise.
23631         * lib/strnlen.h: Likewise.
23632         * lib/strpbrk.h: Likewise.
23633         * lib/strsep.h: Likewise.
23634         * lib/strstr.h: Likewise.
23635         * lib/strtok_r.h: Likewise.
23636         * lib/string_.h: New file.
23637         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
23638         Rely on <string.h> instead.
23639         * lib/canon-host.c: Likewise.
23640         * lib/chdir-long.c: Likewise.
23641         * lib/concatpath.c: Likewise.
23642         * lib/exclude.c: Likewise.
23643         * lib/fchdir.c: Likewise.
23644         * lib/getaddrinfo.c: Likewise.
23645         * lib/getcwd.c: Likewise.
23646         * lib/getsubopt.c: Likewise.
23647         * lib/glob.c: Likewise.
23648         * lib/hard-locale.c: Likewise.
23649         * lib/iconvme.c: Likewise.
23650         * lib/javacomp.c: Likewise.
23651         * lib/mempcpy.c: Likewise.
23652         * lib/memrchr.c: Likewise.
23653         * lib/regex_internal.h: Likewise.
23654         * lib/stpncpy.c: Likewise.
23655         * lib/strcasecmp.c: Likewise.
23656         * lib/strchrnul.c: Likewise.
23657         * lib/strdup.c: Likewise.
23658         * lib/striconv.c: Likewise.
23659         * lib/striconveh.c: Likewise.
23660         * lib/striconveha.c: Likewise.
23661         * lib/strncasecmp.c: Likewise.
23662         * lib/strndup.c: Likewise.
23663         * lib/strnlen.c: Likewise.
23664         * lib/strsep.c: Likewise.
23665         * lib/strstr.c: Likewise.
23666         * lib/strtok_r.c: Likewise.
23667         * lib/userspec.c: Likewise.
23668         * lib/w32spawn.h: Likewise.
23669         * lib/xstrndup.c: Likewise.
23670         * lib/mountlist.c (strstr): Remove decl.
23671         * m4/string_h.m4: New file.
23672         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
23673         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
23674         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
23675         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
23676         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
23677         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
23678         Set REPLACE_STRCASECMP if necessary.
23679         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
23680         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
23681         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
23682         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
23683         HAVE_DECL_STRDUP if necessary.
23684         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
23685         since gl_FUNC_STRNDUP does that now.
23686         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
23687         Check for decl here...
23688         (gl_PREREQ_STRNLEN): ... not here.
23689         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
23690         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
23691         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
23692         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
23693         necessary.
23694         * modules/string: New file.
23695         * modules/memmem (Files): Remove special-purpose include file.
23696         (Depends-on): Add string.
23697         (Include): Include <string.h>, not the removed file.
23698         * modules/mempcpy: Likewise.
23699         * modules/memrchr: Likewise.
23700         * modules/stpcpy: Likewise.
23701         * modules/stpncpy: Likewise.
23702         * modules/strcase: Likewise.
23703         * modules/strchrnul: Likewise.
23704         * modules/strdup: Likewise.
23705         * modules/strndup: Likewise.
23706         * modules/strnlen: Likewise.
23707         * modules/strpbrk: Likewise.
23708         * modules/strsep: Likewise.
23709         * modules/strstr: Likewise.
23710         * modules/strtok_r: Likewise.
23711         * tests/test-dirname.c: Don't include "strdup.h", since
23712         <string.h> now suffices.
23713         * tests/test-memmem.c: Don't include "memmem.h", since
23714         <string.h> now suffices.
23715
23716 2007-01-25  Bruno Haible  <bruno@clisp.org>
23717
23718         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
23719         *resultp is 0.
23720
23721         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
23722         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
23723         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
23724         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
23725
23726         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
23727         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
23728         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
23729         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
23730         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
23731         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
23732
23733 2007-01-24  Bruno Haible  <bruno@clisp.org>
23734
23735         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
23736         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
23737         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
23738         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
23739         gl_FUNC_FTS_CORE.
23740         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
23741         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
23742         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
23743         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
23744         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
23745         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
23746         gl_FUNC_FCHOWNAT.
23747         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
23748         gl_FUNC_STRFTIME.
23749         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
23750         Reported by Ralf Wildenhues.
23751
23752 2007-01-24  Bruno Haible  <bruno@clisp.org>
23753
23754         Drop AC_REQUIRE calls that are redundant with the module dependencies.
23755         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
23756         gl_GETADDRINFO.
23757         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
23758         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
23759         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
23760
23761 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
23762
23763         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
23764         Don't use 'exit'; just return from 'main'.
23765         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
23766
23767         * lib/fnmatch_.h: Readjust white space and comments to match
23768         glibc, to avoid spurious diffs.
23769
23770 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23771
23772         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
23773         2004-12-01 change by Jakub Jelinek, since this code won't compile
23774         if !LIBC.  Problem reported by Bob Proulx.
23775
23776 2007-01-23  Bruno Haible  <bruno@clisp.org>
23777
23778         * lib/striconveh.c: Include c-strcaseeq.h.
23779         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
23780         * modules/striconveh (Depends-on): Add c-strcaseeq.
23781
23782 2007-01-23  Bruno Haible  <bruno@clisp.org>
23783
23784         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
23785
23786         * modules/c-strcaseeq: New file.
23787         * lib/c-strcaseeq.h: New file.
23788
23789         * modules/streq: New file.
23790         * lib/streq.h: New file.
23791
23792 2007-01-23  Bruno Haible  <bruno@clisp.org>
23793
23794         * modules/striconveha-tests: New file.
23795         * tests/test-striconveha.c: New file.
23796
23797         * lib/striconveha.h: Include <stdbool.h>.
23798         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
23799         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
23800         (mem_iconveha_notranslit): Renamed from mem_iconveha.
23801         (mem_iconveha): New function.
23802         (str_iconveha_notranslit): Renamed from str_iconveha.
23803         (str_iconveha): New function.
23804         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
23805         c-strcase.
23806
23807 2007-01-23  Bruno Haible  <bruno@clisp.org>
23808
23809         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
23810         encodings without forgiving before trying any encoding with handler.
23811         (str_iconveha): Try all encodings without forgiving before trying any
23812         encoding with handler.
23813
23814 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23815
23816         Import the following changes from libc.
23817
23818         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
23819
23820         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
23821
23822         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
23823
23824         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
23825         normal_bracket label.
23826
23827         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
23828
23829         [BZ #361]
23830         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
23831         to normal_bracket after fetching the next character.
23832
23833 2007-01-22  Bruno Haible  <bruno@clisp.org>
23834
23835         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
23836         argument.
23837         * lib/striconveh.c (iconv_carefully_1): New function.
23838         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
23839         argument.
23840         (str_cd_iconveh): Update.
23841         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
23842         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
23843         * tests/test-striconveh.c (MAGIC): New macro.
23844         (new_offsets): New function.
23845         (main): Test call with and without offsets.
23846
23847 2007-01-22  Bruno Haible  <bruno@clisp.org>
23848
23849         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
23850         * modules/sys_select (Makefile.am): Likewise.
23851         * modules/sys_socket (Makefile.am): Likewise.
23852         * modules/sys_time (Makefile.am): Likewise.
23853
23854 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
23855
23856         * modules/gettimeofday (License): Change from GPL to LGPL, since
23857         gettimeofday is a library function.
23858
23859 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23860
23861         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
23862
23863 2007-01-21  Bruno Haible  <bruno@clisp.org>
23864
23865         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
23866
23867 2007-01-21  Bruno Haible  <bruno@clisp.org>
23868
23869         * modules/striconveha: New file.
23870         * lib/striconveha.h: New file.
23871         * lib/striconveha.c: New file.
23872         * MODULES.html.sh (Internationalization functions): Add striconveha.
23873         * lib/striconv.c (str_iconv): Optimize the case of an empty input
23874         string.
23875         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
23876
23877 2007-01-21  Bruno Haible  <bruno@clisp.org>
23878
23879         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
23880         * lib/striconveh.c (str_iconveh): Likewise.
23881
23882 2007-01-21  Bruno Haible  <bruno@clisp.org>
23883
23884         * lib/striconveh.h (mem_iconveh): New declaration.
23885         * lib/striconveh.c (mem_iconveh): New function.
23886         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
23887
23888 2007-01-21  Bruno Haible  <bruno@clisp.org>
23889
23890         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
23891
23892         * lib/striconveh.h (mem_cd_iconveh): Change specification.
23893         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
23894         original result buffer.
23895         (str_cd_iconveh): Update.
23896         * tests/test-striconveh.c (main): Update.
23897
23898         * lib/striconv.h (mem_cd_iconv): Change specification.
23899         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
23900         result buffer.
23901         (str_cd_iconv): Update.
23902         * tests/test-striconv.c (main): Update.
23903
23904 2007-01-21  Bruno Haible  <bruno@clisp.org>
23905
23906         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
23907
23908 2007-01-20  Jim Meyering  <jim@meyering.net>
23909
23910         * lib/userspec.c (parse_with_separator): If a user or group string
23911         starts with "+", skip the corresponding name-to-ID look-up, since
23912         such a look-up must fail: user and group names may not include "+".
23913
23914 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
23915
23916         * lib/poll.c: Include sys/time.h and time.h unconditionally,
23917         since we now assume the sys_time module.
23918         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
23919         check for sys/time.h; no longer needed.
23920         * modules/poll (Depends-on): Depend on sys_time.
23921
23922 2007-01-18  Bruno Haible  <bruno@clisp.org>
23923
23924         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
23925         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
23926
23927         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
23928         gettimeofday.
23929
23930         * tests/test-gettimeofday.c: Include <time.h>.
23931         (dummy): Remove variable.
23932
23933         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
23934         gl_HEADER_SYS_TIME_H.
23935         (gl_HEADER_SYS_TIME_H): New macro.
23936
23937         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
23938         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
23939         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
23940         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
23941         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
23942         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
23943         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
23944         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
23945         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
23946         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
23947         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
23948
23949         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
23950         last change; it caused a compilation error when cross-compiling to
23951         Cygwin.
23952
23953 2007-01-18  Jim Meyering  <jim@meyering.net>
23954
23955         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
23956         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
23957         than the race-prone "test -d sys || mkdir sys".
23958         (configure.ac): Use AC_PROG_MKDIR_P.
23959         * modules/sys_select: Likewise.
23960         * modules/sys_socket: Likewise.
23961         * modules/sys_time: Likewise.
23962
23963 2007-01-18  Eric Blake  <ebb9@byu.net>
23964
23965         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
23966         replace gettimeofday.
23967         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
23968         name, to avoid infinite recursion.
23969
23970 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
23971
23972         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
23973         module sys_time.
23974         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
23975         assume timespec.h defines struct timeval.
23976         * lib/settime.c: Likewise.
23977         * lib/utimens.c: Likewise.
23978         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
23979         since we now assume the gettimeofday module.
23980         * lib/tempname.c (__gen_tempname): Likewise.
23981         * lib/gettimeofday.h: Remove.
23982         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
23983         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
23984         Include <time.h>, for 'time()'.
23985         (localtime_buffer_addr): Also use this workaround if
23986         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
23987         to simplify the uses.  All uses changed.
23988         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
23989         that #undef is inside {}, and 'const' follows type name consistently.
23990         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
23991         (gettimeofday): Do not use the maximum possible value for
23992         tv->tv_usec, since that might break usages other than ls.c.
23993         Instead, we'll leave ls.c alone.  This undoes today's patch
23994         by Bruno.  Add a compile-time warning for 1s-clock resolution;
23995         we've never observed the problem but might as well keep the
23996         canary.
23997         * lib/nanosleep.c: Include timespec.h first, for interface check.
23998         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
23999         now assume the sys_time module.
24000         * lib/tempname.c: Likewise.
24001         * lib/timespec.h: Likewise.
24002         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
24003         needed.
24004         * lib/strftime.c: Likewise.
24005         * lib/timespec.h: Likewise.
24006         * lib/posixtm.c: Include posixtm.h first, for interface check.
24007         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
24008         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
24009         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
24010         * lib/sys_time_.h: New file.
24011         * lib/timespec.h (struct timespec): Use long int, not long.
24012         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
24013         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
24014         Remove obsolescent call to AC_HEADER_TIME.
24015         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
24016         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
24017         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
24018         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
24019         Likewise.
24020         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
24021         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
24022         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
24023         into the sys_time module.  Check for gettimeofday just once.
24024         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
24025         for gettimeofday signature to just check the signature.  Merely
24026         compile it, since linking doesn't test signature.  Improve test for
24027         whether gettimeofday.o is actually needed.
24028         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
24029         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
24030         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
24031         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
24032         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
24033         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
24034         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
24035         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
24036         than worrying about sys/time.h.
24037         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
24038         Don't bother worrying about TIME_WITH_SYS_TIME.
24039         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
24040         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
24041         * m4/sys_time_h.m4: New file.
24042         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
24043         Don't include sys/time.h.  Return from main rather than exiting.
24044         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
24045         all uses changed.
24046         * modules/gethrxtime (Depends-on): Add sys_time.
24047         * modules/gettime (Depends-on): Likewise.
24048         * modules/gettimeofday (Depends-on): Likewise.
24049         * modules/nanosleep (Depends-on): Likewise.
24050         * modules/settime (Depends-on): Likewise.
24051         * modules/tempname (Depends-on): Likewise.
24052         * modules/utimens (Depends-on): Likewise.
24053         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
24054         (Include:) Change back to <sys/time.h>.
24055         (Maintainer:) Add self.
24056         * modules/sys_time: New file.
24057         * modules/tempname (Depends-on): Add gettimeofday.
24058         * tests/test-gettimeofday.c: Include <sys/time.h>
24059         rather than gettimeofday.h.
24060
24061 2007-01-17  Bruno Haible  <bruno@clisp.org>
24062
24063         * gnulib-tool (func_get_license): Revert last patch. Instead, let
24064         the license default to GPL.
24065         (func_create_testdir): Don't complain if a module is LGPL and its
24066         tests module depends on GPLed modules.
24067
24068 2007-01-17  Bruno Haible  <bruno@clisp.org>
24069
24070         * lib/gettimeofday.c (gettimeofday): Add code for the case
24071         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
24072         maximum possible value for tv->tv_usec, rather than the minimum one.
24073
24074 2005-10-08  Martin Lambers  <marlam@marlam.de>
24075 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
24076 2007-01-16  Bruno Haible  <bruno@clisp.org>
24077
24078         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
24079         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
24080         gl_FUNC_GETTIMEOFDAY.
24081         (Include): Add gettimeofday.h.
24082         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
24083         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
24084         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
24085         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
24086         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
24087         * lib/gettimeofday.h: New file.
24088         * lib/gettimeofday.c: Include <sys/timeb.h>.
24089         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
24090         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
24091         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
24092         fall back on time().
24093
24094         * tests/test-gettimeofday.c: New file.
24095         * modules/gettimeofday-tests: New file.
24096
24097 2007-01-16  Eric Blake  <ebb9@byu.net>
24098
24099         * modules/fnmatch (Depends-on): Depend on wchar.
24100         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
24101         * m4/fnmatch.m4: Likewise.
24102         * modules/mbchar (Makefile.am): Assume <wchar.h>.
24103         * m4/mbchar.m4: Likewise.
24104         * modules/mbswidth (Depends-on): Depend on wchar.
24105         * lib/mbswidth.c: Assume <wchar.h>.
24106         * m4/mbswidth.m4: Likewise.
24107         * modules/quotearg (Depends-on): Depend on wchar.
24108         * lib/quotearg.c: Assume <wchar.h>.
24109         * m4/quotearg.m4: Likewise.
24110         * modules/regex (Depends-on): Depend on wchar.
24111         * lib/regex_internal.h: Assume <wchar.h>.
24112         * m4/regex.m4: Likewise.
24113         * modules/stdint (Depends-on): Depend on wchar.
24114         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
24115         * m4/stdint.m4: Likewise.
24116         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
24117         * modules/strftime (Depends-on): Depend on wchar.
24118         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
24119         * modules/strtol (Depends-on): Depend on wchar.
24120         * lib/strtol.c: Assume <wchar.h>.
24121         * modules/wcwidth (Depends-on): Depend on wchar.
24122         * lib/wcwidth.h: Assume <wchar.h>.
24123         * m4/wcwidth.m4: Likewise.
24124
24125 2007-01-16  Bruno Haible  <bruno@clisp.org>
24126
24127         * modules/csharpexec-script: New, created from...
24128         * modules/csharpexec: ... this.
24129
24130 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
24131
24132         * modules/javaexec-script: New, created from...
24133         * modules/javaexec: ... this.
24134
24135 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24136
24137         * modules/poll (Dependencies): Add sys_select.
24138
24139 2007-01-15  Jim Meyering  <jim@meyering.net>
24140
24141         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
24142         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
24143         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
24144         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
24145
24146 2007-01-15  Bruno Haible  <bruno@clisp.org>
24147
24148         * modules/striconveh: New file.
24149         * lib/striconveh.h: New file.
24150         * lib/striconveh.c: New file.
24151         * MODULES.html.sh (Internationalization functions): Add striconveh.
24152
24153         * modules/striconveh-tests: New file.
24154         * tests/test-striconveh.c: New file.
24155
24156 2007-01-15  Bruno Haible  <bruno@clisp.org>
24157
24158         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
24159         not from GNU libiconv or GNU libc.
24160
24161 2007-01-15  Bruno Haible  <bruno@clisp.org>
24162
24163         * doc/gnulib-intro.texi (Copyright): Explain the different license
24164         terms for module descriptions, autoconf macros, tests, documentation.
24165
24166 2007-01-14  Bruno Haible  <bruno@clisp.org>
24167
24168         * modules/striconv-tests: New file.
24169         * tests/test-striconv.c: New file.
24170
24171 2007-01-14  Bruno Haible  <bruno@clisp.org>
24172
24173         * modules/iconv-tests: New file.
24174         * tests/test-iconv.c: New file.
24175
24176 2007-01-14  Bruno Haible  <bruno@clisp.org>
24177
24178         * gnulib-tool (func_get_license): For test modules, use the license of
24179         the main module.
24180
24181 2007-01-14  Bruno Haible  <bruno@clisp.org>
24182
24183         * modules/iconv (Include): Clarify that <iconv.h> can only be included
24184         if iconv is found to exist.
24185
24186 2007-01-14  Bruno Haible  <bruno@clisp.org>
24187
24188         * modules/c-ctype-tests: New file.
24189         * tests/test-c-ctype.c: New file.
24190
24191 2007-01-14  Bruno Haible  <bruno@clisp.org>
24192
24193         * modules/binary-io-tests: New file.
24194         * tests/test-binary-io.sh: New file.
24195         * tests/test-binary-io.c: New file.
24196
24197 2007-01-14  Bruno Haible  <bruno@clisp.org>
24198
24199         * modules/array-oset-tests: New file.
24200         * tests/test-array_oset.c: New file.
24201
24202 2007-01-14  Bruno Haible  <bruno@clisp.org>
24203
24204         * modules/array-list-tests: New file.
24205         * tests/test-array_list.c: New file.
24206
24207 2007-01-14  Bruno Haible  <bruno@clisp.org>
24208
24209         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
24210         and make.
24211         Reported by Simon Josefsson in
24212         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
24213
24214 2007-01-14  Bruno Haible  <bruno@clisp.org>
24215
24216         * modules/allocsa-tests: New file.
24217         * tests/test-allocsa.c: New file.
24218
24219 2007-01-14  Bruno Haible  <bruno@clisp.org>
24220
24221         * modules/fchdir (Depends-on): Add absolute-header.
24222         * modules/unistd (Depends-on): Likewise.
24223
24224 2006-12-30  Bruno Haible  <bruno@clisp.org>
24225
24226         * modules/fchdir: New file.
24227         * modules/unistd (Files): Add lib/unistd_.h.
24228         (Makefile.am): Generate unistd.h from unistd_.h.
24229         * lib/fchdir.c: New file.
24230         * lib/dirent_.h: New file.
24231         * lib/unistd_.h: New file.
24232         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
24233         * m4/fchdir.m4: New file.
24234         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
24235         (gl_HEADER_UNISTD): Invoke it.
24236         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
24237         function.
24238         * lib/backupfile.c (opendir, closedir): Undefine.
24239         * lib/chown.c (open, close): Undefine.
24240         * lib/clean-temp.c (open, close): Undefine.
24241         * lib/copy-file.c (open, close): Undefine.
24242         * lib/execute.c (open, close): Undefine.
24243         * lib/fsusage.c (open, close): Undefine.
24244         * lib/gc-gnulib.c (open, close): Undefine.
24245         * lib/getcwd.c (opendir, closedir): Undefine.
24246         * lib/glob.c (opendir, closedir): Undefine.
24247         * lib/javacomp.c (open, close): Undefine.
24248         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
24249         * lib/openat-proc.c (open, close): Undefine.
24250         * lib/pagealign_alloc.c (open, close): Undefine.
24251         * lib/pipe.c (open, close): Undefine.
24252         * lib/progreloc.c (open, close): Undefine.
24253         * lib/savedir.c (opendir, closedir): Undefine.
24254         * lib/utime.c (open, close): Undefine.
24255         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
24256
24257 2007-01-10  Bruno Haible  <bruno@clisp.org>
24258
24259         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
24260
24261 2007-01-12  Eric Blake  <ebb9@byu.net>
24262
24263         Provide a robust <wchar.h>.  Further simplifications are now
24264         possible in other modules, but not included here.
24265         * modules/wchar: New module.
24266         * m4/wchar.m4: New file.
24267         * lib/wchar_.h: Likewise.
24268         * modules/mbchar (Depends-on): Depend on wchar, as the first use
24269         of the new module.
24270         * MODULES.html.sh (Extended multibyte and wide character utilities):
24271         New section.
24272
24273 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
24274
24275         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
24276         to a reasonable default for memory allocation.
24277         (xreadlink): Don't allocate a huge buffer, to work around a buggy
24278         file system that reports garbage st_size values for symlinks.
24279         Problem reported by Liyang Hu.
24280
24281 2007-01-11  Simon Josefsson  <simon@josefsson.org>
24282
24283         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
24284         Emacs .#* auto-save files).
24285
24286 2007-01-11  Bruno Haible  <bruno@clisp.org>
24287
24288         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
24289         directory.
24290
24291 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
24292
24293         Use @...@ consistently in lib/wctype_.h.
24294         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
24295         on it being set to 1 or 0.
24296         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
24297         go back to AC_SUBSTing it.
24298         * modules/wctype (Makefile.am): Undo previous change.
24299
24300 2007-01-10  Eric Blake  <ebb9@byu.net>
24301
24302         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
24303         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
24304         * modules/wctype (Makefile.am): Likewise.
24305         Reported by Chris McGuire.
24306
24307 2007-01-10  Jim Meyering  <jim@meyering.net>
24308
24309         fts.c: a small readability/maintainability improvement
24310         * lib/fts.c (fts_read): Make this code slightly more readable and
24311         maintainable by hoisting the "sp->fts_cur = p" assignments to
24312         immediately follow the statements that set P.  Derived from
24313         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
24314
24315 2007-01-10  Eric Blake  <ebb9@byu.net>
24316
24317         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
24318         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
24319         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
24320         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
24321         Reported by Chris McGuire.
24322
24323 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24324
24325         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
24326         in sed script.
24327
24328 2007-01-09  Bruno Haible  <bruno@clisp.org>
24329
24330         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
24331         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
24332         variables.
24333         (func_module): Use them.
24334
24335 2007-01-09  Bruno Haible  <bruno@clisp.org>
24336
24337         * modules/unistr/base: New file.
24338         * lib/unistr.h: New file.
24339
24340         * modules/unistr/u8-to-u16: New file.
24341         * lib/unistr/u8-to-u16.c: New file.
24342
24343         * modules/unistr/u8-to-u32: New file.
24344         * lib/unistr/u8-to-u32.c: New file.
24345
24346         * modules/unistr/u16-to-u8: New file.
24347         * lib/unistr/u16-to-u8.c: New file.
24348
24349         * modules/unistr/u16-to-u32: New file.
24350         * lib/unistr/u16-to-u32.c: New file.
24351
24352         * modules/unistr/u32-to-u8: New file.
24353         * lib/unistr/u32-to-u8.c: New file.
24354
24355         * modules/unistr/u32-to-u16: New file.
24356         * lib/unistr/u32-to-u16.c: New file.
24357
24358         * modules/unistr/u8-check: New file.
24359         * modules/unistr/u16-check: New file.
24360         * modules/unistr/u32-check: New file.
24361         * lib/unistr/u8-check.c: New file.
24362         * lib/unistr/u16-check.c: New file.
24363         * lib/unistr/u32-check.c: New file.
24364
24365         * modules/unistr/u8-chr: New file.
24366         * modules/unistr/u16-chr: New file.
24367         * modules/unistr/u32-chr: New file.
24368         * lib/unistr/u8-chr.c: New file.
24369         * lib/unistr/u16-chr.c: New file.
24370         * lib/unistr/u32-chr.c: New file.
24371
24372         * modules/unistr/u8-cmp: New file.
24373         * modules/unistr/u16-cmp: New file.
24374         * modules/unistr/u32-cmp: New file.
24375         * lib/unistr/u8-cmp.c: New file.
24376         * lib/unistr/u16-cmp.c: New file.
24377         * lib/unistr/u32-cmp.c: New file.
24378
24379         * modules/unistr/u8-cpy: New file.
24380         * modules/unistr/u16-cpy: New file.
24381         * modules/unistr/u32-cpy: New file.
24382         * lib/unistr/u8-cpy.c: New file.
24383         * lib/unistr/u16-cpy.c: New file.
24384         * lib/unistr/u32-cpy.c: New file.
24385         * lib/unistr/u-cpy.h: New file.
24386
24387         * modules/unistr/u8-cpy-alloc: New file.
24388         * modules/unistr/u16-cpy-alloc: New file.
24389         * modules/unistr/u32-cpy-alloc: New file.
24390         * lib/unistr/u8-cpy-alloc.c: New file.
24391         * lib/unistr/u16-cpy-alloc.c: New file.
24392         * lib/unistr/u32-cpy-alloc.c: New file.
24393         * lib/unistr/u-cpy-alloc.h: New file.
24394
24395         * modules/unistr/u8-endswith: New file.
24396         * modules/unistr/u16-endswith: New file.
24397         * modules/unistr/u32-endswith: New file.
24398         * lib/unistr/u8-endswith.c: New file.
24399         * lib/unistr/u16-endswith.c: New file.
24400         * lib/unistr/u32-endswith.c: New file.
24401         * lib/unistr/u-endswith.h: New file.
24402
24403         * modules/unistr/u8-mblen: New file.
24404         * modules/unistr/u16-mblen: New file.
24405         * modules/unistr/u32-mblen: New file.
24406         * lib/unistr/u8-mblen.c: New file.
24407         * lib/unistr/u16-mblen.c: New file.
24408         * lib/unistr/u32-mblen.c: New file.
24409
24410         * modules/unistr/u8-mbtouc: New file.
24411         * modules/unistr/u16-mbtouc: New file.
24412         * modules/unistr/u32-mbtouc: New file.
24413         * lib/unistr/u8-mbtouc.c: New file.
24414         * lib/unistr/u16-mbtouc.c: New file.
24415         * lib/unistr/u32-mbtouc.c: New file.
24416
24417         * modules/unistr/u8-mbtouc-safe: New file.
24418         * modules/unistr/u16-mbtouc-safe: New file.
24419         * modules/unistr/u32-mbtouc-safe: New file.
24420         * lib/unistr/u8-mbtouc-safe.c: New file.
24421         * lib/unistr/u16-mbtouc-safe.c: New file.
24422         * lib/unistr/u32-mbtouc-safe.c: New file.
24423
24424         * modules/unistr/u8-move: New file.
24425         * modules/unistr/u16-move: New file.
24426         * modules/unistr/u32-move: New file.
24427         * lib/unistr/u8-move.c: New file.
24428         * lib/unistr/u16-move.c: New file.
24429         * lib/unistr/u32-move.c: New file.
24430         * lib/unistr/u-move.h: New file.
24431
24432         * modules/unistr/u8-next: New file.
24433         * modules/unistr/u16-next: New file.
24434         * modules/unistr/u32-next: New file.
24435         * lib/unistr/u8-next.c: New file.
24436         * lib/unistr/u16-next.c: New file.
24437         * lib/unistr/u32-next.c: New file.
24438
24439         * modules/unistr/u8-prev: New file.
24440         * modules/unistr/u16-prev: New file.
24441         * modules/unistr/u32-prev: New file.
24442         * lib/unistr/u8-prev.c: New file.
24443         * lib/unistr/u16-prev.c: New file.
24444         * lib/unistr/u32-prev.c: New file.
24445
24446         * modules/unistr/u8-set: New file.
24447         * modules/unistr/u16-set: New file.
24448         * modules/unistr/u32-set: New file.
24449         * lib/unistr/u8-set.c: New file.
24450         * lib/unistr/u16-set.c: New file.
24451         * lib/unistr/u32-set.c: New file.
24452         * lib/unistr/u-set.h: New file.
24453
24454         * modules/unistr/u8-startswith: New file.
24455         * modules/unistr/u16-startswith: New file.
24456         * modules/unistr/u32-startswith: New file.
24457         * lib/unistr/u8-startswith.c: New file.
24458         * lib/unistr/u16-startswith.c: New file.
24459         * lib/unistr/u32-startswith.c: New file.
24460         * lib/unistr/u-startswith.h: New file.
24461
24462         * modules/unistr/u8-stpcpy: New file.
24463         * modules/unistr/u16-stpcpy: New file.
24464         * modules/unistr/u32-stpcpy: New file.
24465         * lib/unistr/u8-stpcpy.c: New file.
24466         * lib/unistr/u16-stpcpy.c: New file.
24467         * lib/unistr/u32-stpcpy.c: New file.
24468         * lib/unistr/u-stpcpy.h: New file.
24469
24470         * modules/unistr/u8-stpncpy: New file.
24471         * modules/unistr/u16-stpncpy: New file.
24472         * modules/unistr/u32-stpncpy: New file.
24473         * lib/unistr/u8-stpncpy.c: New file.
24474         * lib/unistr/u16-stpncpy.c: New file.
24475         * lib/unistr/u32-stpncpy.c: New file.
24476         * lib/unistr/u-stpncpy.h: New file.
24477
24478         * modules/unistr/u8-strcat: New file.
24479         * modules/unistr/u16-strcat: New file.
24480         * modules/unistr/u32-strcat: New file.
24481         * lib/unistr/u8-strcat.c: New file.
24482         * lib/unistr/u16-strcat.c: New file.
24483         * lib/unistr/u32-strcat.c: New file.
24484         * lib/unistr/u-strcat.h: New file.
24485
24486         * modules/unistr/u8-strchr: New file.
24487         * modules/unistr/u16-strchr: New file.
24488         * modules/unistr/u32-strchr: New file.
24489         * lib/unistr/u8-strchr.c: New file.
24490         * lib/unistr/u16-strchr.c: New file.
24491         * lib/unistr/u32-strchr.c: New file.
24492
24493         * modules/unistr/u8-strcmp: New file.
24494         * modules/unistr/u16-strcmp: New file.
24495         * modules/unistr/u32-strcmp: New file.
24496         * lib/unistr/u8-strcmp.c: New file.
24497         * lib/unistr/u16-strcmp.c: New file.
24498         * lib/unistr/u32-strcmp.c: New file.
24499
24500         * modules/unistr/u8-strcpy: New file.
24501         * modules/unistr/u16-strcpy: New file.
24502         * modules/unistr/u32-strcpy: New file.
24503         * lib/unistr/u8-strcpy.c: New file.
24504         * lib/unistr/u16-strcpy.c: New file.
24505         * lib/unistr/u32-strcpy.c: New file.
24506         * lib/unistr/u-strcpy.h: New file.
24507
24508         * modules/unistr/u8-strcspn: New file.
24509         * modules/unistr/u16-strcspn: New file.
24510         * modules/unistr/u32-strcspn: New file.
24511         * lib/unistr/u8-strcspn.c: New file.
24512         * lib/unistr/u16-strcspn.c: New file.
24513         * lib/unistr/u32-strcspn.c: New file.
24514         * lib/unistr/u-strcspn.h: New file.
24515
24516         * modules/unistr/u8-strdup: New file.
24517         * modules/unistr/u16-strdup: New file.
24518         * modules/unistr/u32-strdup: New file.
24519         * lib/unistr/u8-strdup.c: New file.
24520         * lib/unistr/u16-strdup.c: New file.
24521         * lib/unistr/u32-strdup.c: New file.
24522         * lib/unistr/u-strdup.h: New file.
24523
24524         * modules/unistr/u8-strlen: New file.
24525         * modules/unistr/u16-strlen: New file.
24526         * modules/unistr/u32-strlen: New file.
24527         * lib/unistr/u8-strlen.c: New file.
24528         * lib/unistr/u16-strlen.c: New file.
24529         * lib/unistr/u32-strlen.c: New file.
24530         * lib/unistr/u-strlen.h: New file.
24531
24532         * modules/unistr/u8-strmblen: New file.
24533         * modules/unistr/u16-strmblen: New file.
24534         * modules/unistr/u32-strmblen: New file.
24535         * lib/unistr/u8-strmblen.c: New file.
24536         * lib/unistr/u16-strmblen.c: New file.
24537         * lib/unistr/u32-strmblen.c: New file.
24538
24539         * modules/unistr/u8-strmbtouc: New file.
24540         * modules/unistr/u16-strmbtouc: New file.
24541         * modules/unistr/u32-strmbtouc: New file.
24542         * lib/unistr/u8-strmbtouc.c: New file.
24543         * lib/unistr/u16-strmbtouc.c: New file.
24544         * lib/unistr/u32-strmbtouc.c: New file.
24545
24546         * modules/unistr/u8-strncat: New file.
24547         * modules/unistr/u16-strncat: New file.
24548         * modules/unistr/u32-strncat: New file.
24549         * lib/unistr/u8-strncat.c: New file.
24550         * lib/unistr/u16-strncat.c: New file.
24551         * lib/unistr/u32-strncat.c: New file.
24552         * lib/unistr/u-strncat.h: New file.
24553
24554         * modules/unistr/u8-strncmp: New file.
24555         * modules/unistr/u16-strncmp: New file.
24556         * modules/unistr/u32-strncmp: New file.
24557         * lib/unistr/u8-strncmp.c: New file.
24558         * lib/unistr/u16-strncmp.c: New file.
24559         * lib/unistr/u32-strncmp.c: New file.
24560
24561         * modules/unistr/u8-strncpy: New file.
24562         * modules/unistr/u16-strncpy: New file.
24563         * modules/unistr/u32-strncpy: New file.
24564         * lib/unistr/u8-strncpy.c: New file.
24565         * lib/unistr/u16-strncpy.c: New file.
24566         * lib/unistr/u32-strncpy.c: New file.
24567         * lib/unistr/u-strncpy.h: New file.
24568
24569         * modules/unistr/u8-strnlen: New file.
24570         * modules/unistr/u16-strnlen: New file.
24571         * modules/unistr/u32-strnlen: New file.
24572         * lib/unistr/u8-strnlen.c: New file.
24573         * lib/unistr/u16-strnlen.c: New file.
24574         * lib/unistr/u32-strnlen.c: New file.
24575         * lib/unistr/u-strnlen.h: New file.
24576
24577         * modules/unistr/u8-strpbrk: New file.
24578         * modules/unistr/u16-strpbrk: New file.
24579         * modules/unistr/u32-strpbrk: New file.
24580         * lib/unistr/u8-strpbrk.c: New file.
24581         * lib/unistr/u16-strpbrk.c: New file.
24582         * lib/unistr/u32-strpbrk.c: New file.
24583         * lib/unistr/u-strpbrk.h: New file.
24584
24585         * modules/unistr/u8-strrchr: New file.
24586         * modules/unistr/u16-strrchr: New file.
24587         * modules/unistr/u32-strrchr: New file.
24588         * lib/unistr/u8-strrchr.c: New file.
24589         * lib/unistr/u16-strrchr.c: New file.
24590         * lib/unistr/u32-strrchr.c: New file.
24591
24592         * modules/unistr/u8-strspn: New file.
24593         * modules/unistr/u16-strspn: New file.
24594         * modules/unistr/u32-strspn: New file.
24595         * lib/unistr/u8-strspn.c: New file.
24596         * lib/unistr/u16-strspn.c: New file.
24597         * lib/unistr/u32-strspn.c: New file.
24598         * lib/unistr/u-strspn.h: New file.
24599
24600         * modules/unistr/u8-strstr: New file.
24601         * modules/unistr/u16-strstr: New file.
24602         * modules/unistr/u32-strstr: New file.
24603         * lib/unistr/u8-strstr.c: New file.
24604         * lib/unistr/u16-strstr.c: New file.
24605         * lib/unistr/u32-strstr.c: New file.
24606         * lib/unistr/u-strstr.h: New file.
24607
24608         * modules/unistr/u8-strtok: New file.
24609         * modules/unistr/u16-strtok: New file.
24610         * modules/unistr/u32-strtok: New file.
24611         * lib/unistr/u8-strtok.c: New file.
24612         * lib/unistr/u16-strtok.c: New file.
24613         * lib/unistr/u32-strtok.c: New file.
24614         * lib/unistr/u-strtok.h: New file.
24615
24616         * modules/unistr/u8-uctomb: New file.
24617         * modules/unistr/u16-uctomb: New file.
24618         * modules/unistr/u32-uctomb: New file.
24619         * lib/unistr/u8-uctomb.c: New file.
24620         * lib/unistr/u16-uctomb.c: New file.
24621         * lib/unistr/u32-uctomb.c: New file.
24622
24623         * MODULES.html.sh (Unicode string functions): Add the new modules.
24624
24625 2007-01-08  Bruno Haible  <bruno@clisp.org>
24626
24627         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
24628         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
24629         subdirectories.
24630
24631 2007-01-08  Karl Berry  <karl@gnu.org>
24632
24633         * doc/error.texi: mention that main() fns must set program_name
24634         when progname is used.
24635
24636 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
24637
24638         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
24639         WCTYPE_H is empty, for the benefit of builds from non-distclean
24640         directories.  Problem reported by Eric Blake in
24641         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
24642
24643 2007-01-08  Bruno Haible  <bruno@clisp.org>
24644
24645         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
24646         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
24647         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
24648         PROVIDE_CANONICALIZE_FILENAME_MODE.
24649         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
24650
24651 2007-01-08  Bruno Haible  <bruno@clisp.org>
24652
24653         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
24654         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
24655         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
24656         * lib/fts.c: Likewise.
24657         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
24658
24659 2006-12-25  Bruno Haible  <bruno@clisp.org>
24660
24661         * modules/utf8-ucs4-safe: New file.
24662         * lib/utf8-ucs4-safe.h: New file.
24663         * lib/unistr/utf8-ucs4-safe.c: New file.
24664
24665         * modules/utf16-ucs4-safe: New file.
24666         * lib/utf16-ucs4-safe.h: New file.
24667         * lib/unistr/utf16-ucs4-safe.c: New file.
24668
24669         * MODULES.html.sh (Unicode string functions): Add the new modules.
24670
24671 2007-01-08  Bruno Haible  <bruno@clisp.org>
24672
24673         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
24674         (Depends-on): Add unitypes.
24675         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
24676         (u8_mbtouc_aux): Move out to separate file.
24677         (u8_mbtouc): Use ucs4_t, uint8_t types.
24678         * lib/unistr/utf8-ucs4.c: New file.
24679
24680         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
24681         (Depends-on): Add unitypes.
24682         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
24683         (u16_mbtouc_aux): Move out to separate file.
24684         (u16_mbtouc): Use ucs4_t, uint16_t types.
24685         * lib/unistr/utf16-ucs4.c: New file.
24686
24687         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
24688         (Depends-on): Add unitypes.
24689         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
24690         (u8_uctomb_aux): Move out to separate file.
24691         (u8_uctomb): Use ucs4_t, uint8_t types.
24692         * lib/unistr/ucs4-utf8.c: New file.
24693
24694         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
24695         (Depends-on): Add unitypes.
24696         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
24697         (u16_uctomb_aux): Move out to separate file.
24698         (u16_uctomb): Use ucs4_t, uint16_t types.
24699         * lib/unistr/ucs4-utf16.c: New file.
24700
24701 2006-12-25  Bruno Haible  <bruno@clisp.org>
24702
24703         * modules/unitypes: New file.
24704         * lib/unitypes.h: New file.
24705         * MODULES.html.sh (func_all_modules): New section "Unicode string
24706         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
24707         this section. Add unitypes.
24708
24709 2007-01-08  Bruno Haible  <bruno@clisp.org>
24710
24711         Avoid variable names that conflict with those from libtool.
24712         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
24713         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
24714         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
24715         library_names_spec to acl_library_names_spec, hardcode_* to
24716         acl_hardcode_*.
24717         Reported by Ralf Wildenhues.
24718
24719 2007-01-08  Bruno Haible  <bruno@clisp.org>
24720
24721         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
24722         definition.
24723         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
24724         definition.
24725         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
24726         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
24727         definition.
24728         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
24729         definition.
24730         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
24731         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
24732         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
24733         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
24734         definition.
24735         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
24736         definition.
24737         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
24738         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
24739         GC_USE_<algorithm>.
24740         * lib/gc-libgcrypt.c: Likewise.
24741         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
24742         * modules/gc-arctwo (configure.ac): Likewise.
24743         * modules/gc-des (configure.ac): Likewise.
24744         * modules/gc-hmac-md5 (configure.ac): Likewise.
24745         * modules/gc-hmac-sha1 (configure.ac): Likewise.
24746         * modules/gc-md2 (configure.ac): Likewise.
24747         * modules/gc-md4 (configure.ac): Likewise.
24748         * modules/gc-md5 (configure.ac): Likewise.
24749         * modules/gc-random (configure.ac): Likewise.
24750         * modules/gc-rijndael (configure.ac): Likewise.
24751         * modules/gc-sha1 (configure.ac): Likewise.
24752
24753 2007-01-08  Bruno Haible  <bruno@clisp.org>
24754
24755         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
24756         macro definition.
24757         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
24758         definition.
24759         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
24760         definition.
24761         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
24762         * modules/fcntl-safer (configure.ac): Likewise.
24763         * modules/fopen-safer (configure.ac): Likewise.
24764         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
24765         GNULIB_FWRITEERROR macro definition.
24766
24767 2007-01-08  Bruno Haible  <bruno@clisp.org>
24768
24769         * m4/gnulib-common.m4: New file.
24770         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
24771         (func_get_filelist): Add m4/gnulib-common.m4.
24772
24773 2007-01-08  Bruno Haible  <bruno@clisp.org>
24774
24775         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
24776         command.
24777
24778 2007-01-08  Jim Meyering  <jim@meyering.net>
24779
24780         Use a more robust test for a "can't happen" condition.
24781         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
24782         narrowed the st_size value.  Presuming the "can't happen" condition
24783         is true, that narrowing could conceivably convert an invalid st_size
24784         value into a valid one.  Instead, use a change based on Matthew
24785         Woehlke's original patch.
24786
24787         Slight readability improvement: use an assert-like macro
24788         in place of literal "abort ()" uses.
24789         * lib/fts.c (fts_assert): Define.
24790         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
24791         Use this macro instead of a bare 'abort'.
24792
24793 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
24794
24795         Don't worry about using IRIX 5.3's wctype.h broken definitions;
24796         simply work around them.
24797         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
24798         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
24799         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
24800         declaring.
24801         Don't bother to define as macros, since the standard doesn't require it.
24802         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
24803         longer worry about IRIX 5.3.
24804         (HAVE_WCTYPE_CTMP_BUG): Remove.
24805
24806 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24807
24808         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
24809         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
24810         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
24811         Problems reported by Georg Schwarz for IRIX 5.3.
24812
24813         * gnulib-tool (autoconf_minversion): Take the maximum version number
24814         found, not the minimum.  Problem reported by James Youngman.
24815
24816 2007-01-03  Karl Berry  <karl@gnu.org>
24817
24818         * doc/error.texi: new file, explaining interaction with progname.
24819         * doc/gnulib.texi: include it.  Update copyright.
24820
24821 2007-01-03  Simon Josefsson  <simon@josefsson.org>
24822
24823         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
24824         AC_CANONICAL_HOST, to improve autobuild outputs.
24825
24826 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
24827             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
24828
24829         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
24830         sockets, server sockets, and other file descriptors.  Count errors
24831         to compute the return value.  Reorder the code a bit to be easier
24832         to follow.  Don't set event bits that were not requested (except
24833         POLLERR and POLLHUP).
24834
24835 2007-01-01  Bruno Haible  <bruno@clisp.org>
24836
24837         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
24838
24839 2007-01-03  Jim Meyering  <jim@meyering.net>
24840
24841         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
24842
24843 2007-01-02  Bruno Haible  <bruno@clisp.org>
24844
24845         * modules/settime (Include): Require timespec.h.
24846         * modules/nanosleep (Include): Likewise.
24847
24848 2007-01-01  Bruno Haible  <bruno@clisp.org>
24849
24850         * gnulib-tool (func_emit_copyright_notice): Bump year.
24851         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
24852
24853 2007-01-01  Bruno Haible  <bruno@clisp.org>
24854
24855         Improve support for OpenBSD.
24856         * build-aux/config.rpath (libname_spec): Export.
24857         (library_names_spec): New variable. Export.
24858         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
24859         library_names_spec from the config.rpath output. Locate shared library
24860         through the name pattern in library_names_spec.
24861
24862 2007-01-01  Eric Blake  <ebb9@byu.net>
24863
24864         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
24865
24866 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
24867
24868         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
24869         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
24870         assume the C locale, and avoid an "eval" that could cause trouble.
24871         Problem with SORT reported by Bob Proulx.
24872
24873         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
24874         Define.  Trivial patch from Henning Nielsen Lund, originally
24875         sent to bug-grep@gnu.org today.
24876
24877 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
24878
24879         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
24880         struct stat.  Problem reported by Henning Nielsen Lund.
24881         * lib/acl.c: Include acl.h first, to check interface.  Don't
24882         bother to include sys/types.h and sys/stat.h again.
24883
24884 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
24885
24886         Import the following change from libc; problem reported by
24887         Sven Verdoolaege.
24888
24889         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
24890
24891         [BZ #1373]
24892         * lib/argp.h: Remove __NTH for __argp_usage inline function.
24893
24894 2006-12-28  Jim Meyering  <jim@meyering.net>
24895
24896         * build-aux/announce-gen: Do not assume that the package
24897         builds any of tar.gz, tar.bz2, and .xdelta files.
24898         Suggestion from Simon Josefsson.
24899
24900 2006-12-28  Simon Josefsson  <simon@josefsson.org>
24901
24902         * modules/announce-gen: New file.
24903
24904 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
24905
24906         * lib/mbchar.h: Just include <wctype.h>; the wctype module
24907         handles its gotchas now.
24908         * lib/mbswidth.c: Likewise.
24909         * lib/wcwidth.h: Likewise.
24910         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
24911         and iswcntrl; the wctype module does this stuff now.
24912         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
24913         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
24914         * modules/mbchar (Depends-on): Add wctype.
24915         * modules/mbswidth (Depends-on): Likewise.
24916         * modules/wcwidth (Depends-on): Likewise.
24917
24918 2006-12-27  Eric Blake  <ebb9@byu.net>
24919
24920         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
24921         module uses more than what <wctype.h> is required to provide.
24922
24923 2006-12-26  Eric Blake  <ebb9@byu.net>
24924
24925         * gnulib-tool (sed_extract_prog): Avoid space-tab.
24926
24927 2006-12-26  Eric Blake  <ebb9@byu.net>
24928
24929         * modules/absolute-header: New module.
24930         * modules/fcntl (Depends-on): Depend on it.
24931         * modules/inttypes (Depends-on): Likewise.
24932         * modules/stdint (Depends-on): Likewise.
24933         * modules/sys_stat (Depends-on): Likewise.
24934         * modules/wctype (Depends-on): Likewise.
24935         * MODULES.html.sh (Support for building libraries and
24936         executables): Document it.
24937
24938 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
24939
24940         * gnulib-tool (SED): Remove, undoing previous change.
24941         The problem was that it broke coreutils on Solaris, because
24942         "sed --posix" leaked into a makefile.
24943         (sed): New alias, if 'alias' and GNU sed.
24944
24945 2006-12-24  Jim Meyering  <jim@meyering.net>
24946
24947         Work around an fchownat bug in glibc-2.4:
24948         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
24949         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
24950         in spite of the -P option.
24951         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
24952         New macros.
24953         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
24954         * modules/openat (Files): Add lib/fchownat.c.
24955         * lib/openat.c (fchownat): Don't define here.  Move to...
24956         * lib/fchownat.c: ...this new file.
24957
24958 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
24959
24960         Fix bug reported by Bruno Haible in
24961         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
24962         where quotearg.c didn't compile on Mac OS X 10.2 because it
24963         lacks <wchar.h> and wint_t.
24964         * lib/wctype_.h (__wctype_wint_t): New type.
24965         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
24966         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
24967         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
24968         Arg is now of type __wctype_wint_t, not wint_t.
24969         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
24970         substitute HAVE_WINT_T.
24971         * modules/wctype (Files): Add m4/wint_t.m4.
24972         (wctype.h): Substitute HAVE_WINT_T.
24973
24974 2006-12-23  Bruno Haible  <bruno@clisp.org>
24975
24976         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
24977
24978 2006-12-23  Bruno Haible  <bruno@clisp.org>
24979
24980         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
24981         S_ISLNK.
24982         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
24983         mingw.
24984
24985 2006-12-22  Bruno Haible  <bruno@clisp.org>
24986
24987         * lib/copy-file.c: Include acl.h.
24988         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
24989         Close the file descriptors only after being done with copy_acl.
24990         * modules/copy-file (Depends-on): Add acl.
24991
24992 2006-12-22  Bruno Haible  <bruno@clisp.org>
24993
24994         * gnulib-tool (SED): New variable.
24995         Use $SED instead of sed everywhere.
24996
24997 2006-12-22  Bruno Haible  <bruno@clisp.org>
24998
24999         * modules/no-c++: New file.
25000         * m4/no-c++.m4: New file.
25001         * MODULES.html.sh (Support for building libraries and executables):
25002         Add no-c++.
25003
25004 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
25005
25006         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
25007         Include <limits.h>, and use its INT_MAX to rewrite the
25008         j loop so that it does not overflow 'int'.  Problem reported by
25009         Ralf Wildenhues in
25010         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
25011         Play it safe by shifting left by 1 rather than multiplying by 2,
25012         as GCC is less likely to optimize this away when the value
25013         is signed (when it assumes overflow leads to undefined behavior).
25014         Also, don't assume time_t uses two's complement.
25015
25016 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
25017
25018         * MODULES.html.sh: New module wctype.
25019         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
25020         * lib/fnmatch.c: Don't bother to include <wchar.h> before
25021         <wctype.h>, since the new wctype module should fix this.
25022         * lib/quotearg.c: Include <wctype.h> unconditionally, since
25023         the wctype module should arrange for it.
25024         * lib/regex_internal.h: Likewise.
25025         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
25026         since the wctype module should handle this now.
25027         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
25028         * modules/fnmatch (Depends-on): Add wctype.
25029         * modules/quotearg (Depends-on): Likewise.
25030         * modules/regex (Depends-on): Likewise.
25031
25032 2006-12-19  Bruno Haible  <bruno@clisp.org>
25033
25034         * lib/strdup.h [C++]: Wrap definitions in extern "C".
25035         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
25036
25037 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25038
25039         * modules/savewd (Depends-on): Fix dependency on fcntl.
25040
25041 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
25042
25043         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
25044         conforms to C99, rather than relying on the user's environment
25045         setting of STDINT_H.
25046
25047 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
25048         and Eric Blake  <ebb9@byu.net>
25049
25050         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
25051         This is more consistent with the other defines here.
25052         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
25053         Port to z/OS.  Problem reported by Paul Gilmartin.
25054         Change local vars to use gl_ prefix rather than ac_.
25055         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
25056         with other defines.
25057         * modules/double-slash-root: New module.
25058         * modules/dirname (Files): Remove m4/double-slash-root.m4.
25059         (Depends-on): Add double-slash-root.
25060         * MODULES.html.sh (File system functions): Mention new module.
25061
25062 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
25063
25064         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
25065         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
25066         This is for the benefit of gzip, which doesn't do i18n.
25067
25068 2006-12-12  Jim Meyering  <jim@meyering.net>
25069
25070         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
25071         Reported by Andreas Schwab <schwab@suse.de>.
25072
25073 2006-12-12  Bruno Haible  <bruno@clisp.org>
25074
25075         Merge these changes.
25076         2006-09-05  Bruno Haible  <bruno@clisp.org>
25077         * lib/iconvme.c (iconv_string): No need to save and restore errno when
25078         iconv_alloc succeeded.
25079         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
25080         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
25081         test for " && dest " at the end - dest is always != NULL there. Call
25082         iconv with 4xNULL arguments initially, to reset the state. Call iconv
25083         with 2xNULL arguments, also to flush the state storage. Handle the
25084         IRIX iconv behaviour. Realloc the final result, to throw away unused
25085         memory.
25086
25087 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
25088
25089         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
25090         and fchmodat unconditionally, since glibc 2.4 has them.
25091         Problem reported by Arkadiusz Miskiewicz.
25092
25093 2006-12-10  Bruno Haible  <bruno@clisp.org>
25094
25095         * gnulib-tool (func_import): Show the include files only for those
25096         modules that are copied and specified.
25097         Reported by Karl Berry.
25098
25099 2006-12-08  Jim Meyering  <jim@meyering.net>
25100
25101         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
25102         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
25103
25104         * build-aux/announce-gen: Add two new options, both optional:
25105         --bootstrap-tools=TOOL_LIST
25106               a comma-separated list of tools, e.g.,
25107               autoconf,automake,bison,gnulib
25108         --gnulib-snapshot-date=DATE
25109               if gnulib is in the bootstrap tool list,
25110               then report this as the snapshot date.
25111               If not specified, use the current date/time.
25112               If you specify a date here, be sure it's UTC.
25113
25114 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25115
25116         * tests/test-argp-2.sh: Fix test to match actual output.
25117         (func_compare): Fix sed script to be portable.
25118
25119 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
25120
25121         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
25122         workaround for this case.  It is not autoconfigured now; offhand
25123         it's hard to see how to autoconfigure it.
25124
25125 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
25126
25127         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
25128         a directory that is about to be chowned.  Such a directory's
25129         initial file permissions should permit the owner only and this
25130         should not be changed until after the chown, since the group and
25131         other bits would be incorrect if they granted permission before
25132         the chown.
25133
25134         Fix porting problem for iswctype reported by Georg Schwarz in:
25135         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
25136         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
25137         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
25138         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
25139         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
25140
25141 2006-12-03  Jim Meyering  <jim@meyering.net>
25142
25143         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
25144         p->fts_statp may not yet be defined.
25145         (fts_read): Instead, set it in the caller, once p->fts_statp is
25146         sure to be defined, and corresponds to a top-level directory.
25147         This bug made du -x fail.  Here's the coreutils test case:
25148         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
25149         Reported by Mike Frysinger.
25150
25151 2006-12-01  Jim Meyering  <jim@meyering.net>
25152
25153         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
25154         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
25155         Reported by Simon Josefsson.
25156
25157 2006-11-30  Jim Meyering  <jim@meyering.net>
25158
25159         * m4/warning.m4: Use the all-permissive copyright notice
25160         recommended by RMS (rather than LGPL).
25161         * m4/vararrays.m4: Likewise.
25162         * m4/flexmember.m4: Likewise.
25163
25164 2006-11-29  Bruno Haible  <bruno@clisp.org>
25165
25166         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
25167         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
25168         using +=.
25169         Reported by Simon Josefsson <simon@josefsson.org>.
25170
25171 2006-11-28  James Youngman <jay@gnu.org>
25172
25173         * README: Advise users that they might find the bug-gnulib@gnu.org
25174         and autotools-announce@gnu.org mailing lists useful.
25175
25176 2006-11-28  Bruno Haible  <bruno@clisp.org>
25177
25178         * m4/ptrdiff_max.m4: Remove file.
25179
25180 2006-11-21  Bruno Haible  <bruno@clisp.org>
25181
25182         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
25183         _AC_COMPUTE_INT.
25184         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
25185         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
25186         _AC_COMPUTE_INT.
25187         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
25188         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
25189         _AC_COMPUTE_INT.
25190         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
25191
25192 2006-11-28  Jim Meyering  <jim@meyering.net>
25193
25194         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
25195         warning from "gcc -Wshadow" about shadowing the builtin.
25196
25197 2006-11-27  Bruno Haible  <bruno@clisp.org>
25198
25199         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
25200         _AC_COMPUTE_INT.
25201         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
25202
25203 2006-11-27  Bruno Haible  <bruno@clisp.org>
25204             Paul Eggert  <eggert@cs.ucla.edu>
25205
25206         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
25207
25208 2006-11-26  Bruno Haible  <bruno@clisp.org>
25209
25210         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
25211         noinst_LTLIBRARIES.
25212
25213 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
25214             Bruno Haible  <bruno@clisp.org>
25215
25216         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
25217         if compiling with "gcc -ansi".
25218
25219 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
25220
25221         Fix some incompatibilities with gcc -ansi -pedantic.
25222         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
25223         if compiling pedantically with GCC, unless it's C99 or later.
25224         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
25225         it mishandles gcc -ansi -pedantic as well.
25226         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
25227         if gcc -pedantic.
25228         * lib/regexec.c (check_node_accept_bytes): Don't use auto
25229         initializers for struct if -pedantic, unless it's C99 or later.
25230
25231 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
25232
25233         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
25234         Don't close an fd more than once. Identical atimes indicate
25235         success, not failure.
25236
25237 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
25238
25239         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
25240
25241 2006-11-23  Jim Meyering  <jim@meyering.net>
25242
25243         * build-aux/announce-gen: New file.  From coreutils.
25244
25245 2006-11-22  Jim Meyering  <jim@meyering.net>
25246
25247         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
25248         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
25249         (fts_read): Use a temporary to narrow the overused st_size member
25250         before using it in a switch statement.  Reported by Matthew Woehlke.
25251
25252         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
25253         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
25254
25255 2006-11-20  Bruno Haible  <bruno@clisp.org>
25256
25257         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
25258         changequote instead of pairs of brackets.
25259         Reported by Andreas Schwab <schwab@suse.de>.
25260
25261 2006-11-21  Jim Meyering  <jim@meyering.net>
25262
25263         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
25264         so as to remain compatible with older compilers.
25265         Patch from Michael Deutschmann.
25266
25267 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
25268
25269         * MODULES.html.sh (File system functions): Add openat.
25270
25271         * lib/openat.h (rpl_fstatat): New macro, if
25272         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
25273         (fstatat): Define to rpl_fstatat under the same conditions,
25274         unless COMPILING_FSTATAT.
25275         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
25276         seems to have the bug.
25277         * lib/fstatat.c: New file.
25278         * modules/openat (Files): Add it.
25279
25280 2006-11-20  Bruno Haible  <bruno@clisp.org>
25281
25282         * Makefile: New file.
25283
25284 2006-11-20  Jim Meyering  <jim@meyering.net>
25285
25286         The beginnings of syntax-related checks for gnulib.
25287         * lib/Makefile: New file.
25288         * lib/t-idcache: New script.  Ensure that the two halves of
25289         idcache.c stay in sync.
25290
25291         * lib/idcache.c: Adjust comments in user- and group- portions to
25292         be more accurate, and to be consistent with one another.
25293
25294 2006-11-20  Jim Meyering  <jim@meyering.net>
25295
25296         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
25297         continue using the flexible array member (thus, this module performs
25298         half as many malloc calls), with the addition that...
25299         (getgroup, getuser): Consistently record a non-match via an empty
25300         "name" string, and map an empty string match to a NULL return value.
25301         * modules/idcache (Depends-on): Re-add flexmember.
25302
25303         * lib/idcache.c (getuser): Remove all uses of the register keyword.
25304         (getuidbyname, getgroup, getgidbyname): Likewise.
25305
25306         Use cleaner syntax: NULL rather than 0.
25307         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
25308
25309 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
25310
25311         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
25312         It mishandled the case where the group was missing.
25313         Problem reported by Greg Schafer.
25314         * modules/idcache: Likewise.
25315
25316 2006-11-18  Jim Meyering  <jim@meyering.net>
25317
25318         * check-module (%exempt_header): Add exception for some
25319         conditionally-included headers.
25320
25321         * modules/i-ring (Depends-on): Add verify.
25322         (License): Change to LGPL.
25323
25324 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
25325
25326         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
25327         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
25328         and inttostr.h.  Use snprintf rather than uinttostr, so that
25329         LGPLed code doesn't depend on GPLed.
25330
25331 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
25332
25333         * modules/inline (License): Change from GPL to LGPL.
25334
25335 2006-11-17  Jim Meyering  <jim@meyering.net>
25336
25337         * modules/d-type (License): Switch to LGPL.
25338
25339 2006-11-15  Bruno Haible  <bruno@clisp.org>
25340
25341         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
25342
25343 2006-11-15  Eric Blake  <ebb9@byu.net>
25344
25345         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
25346         the module dependency.
25347
25348 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
25349             Bruno Haible  <bruno@clisp.org>
25350
25351         * gnulib-tool (func_create_testdir): Add license consistency check.
25352
25353 2006-11-15  Eric Blake  <ebb9@byu.net>
25354
25355         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
25356         random "(cached)" in configure output.
25357
25358 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25359
25360         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
25361         test for conforming inttypes.h is both announced and cached.
25362
25363         * MODULES.html.sh (seen_modules, seen_files): New variables.
25364         (func_module): Rewrite to use a few less gnulib-tool and sed
25365         invocations.  Avoid a couple of quadratic algorithms for ...
25366         (missed_modules, missed_files): ... these, with ...
25367         (func_append, func_tmpdir): ... these new functions, from
25368         gnulib-tool.  Analogously, install traps for cleanup.
25369
25370         * tests/test-gc.c (main): Remove unused variables.
25371         * tests/test-read-file.c: Include stdlib.h, for 'free'.
25372
25373 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
25374
25375         * modules/inttostr (License): Change to LGPL.
25376
25377 2006-11-14  Eric Blake  <ebb9@byu.net>
25378
25379         * modules/tempname (License): Change to LGPL.
25380
25381 2006-11-14  Eric Blake  <ebb9@byu.net>
25382
25383         * doc/functions.texi (Function Portability): *printf functions on
25384         Cygwin now understand all POSIX size specifiers.
25385
25386 2006-11-14  Bruno Haible  <bruno@clisp.org>
25387
25388         * modules/c-ctype (License): Change to LGPL.
25389
25390 2006-11-12  Bruno Haible  <bruno@clisp.org>
25391
25392         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
25393         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
25394         for GNOME libraries, for which the include files are installed in
25395         subdirectories of $prefix/include.
25396
25397 2006-11-12  Bruno Haible  <bruno@clisp.org>
25398
25399         * m4/lib-link.m4: Require at least autoconf-2.54.
25400         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
25401         name to underscores for the --with option.
25402
25403 2006-11-13  Bruno Haible  <bruno@clisp.org>
25404
25405         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
25406         the tests directory.
25407         Reported by Ralf Wildenhues.
25408
25409 2006-11-13  Bruno Haible  <bruno@clisp.org>
25410
25411         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
25412         (func_emit_initmacro_end): Undo the override here.
25413         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
25414         Works around the famous automake error in coreutils.
25415
25416 2006-11-13  Eric Blake  <ebb9@byu.net>
25417
25418         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
25419         element, not its node.
25420
25421 2006-11-12  Bruno Haible  <bruno@clisp.org>
25422
25423         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
25424         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
25425
25426 2006-11-12  Bruno Haible  <bruno@clisp.org>
25427
25428         * gnulib-tool: New option --local-symlink.
25429         (func_usage): Document it.
25430         (lsymbolic): New variable.
25431         (func_import, func_create_testdir): If --symlink was not specified,
25432         test whether --local-symlink was specified and the file comes from
25433         the local_gnulib_dir.
25434
25435 2006-11-12  Bruno Haible  <bruno@clisp.org>
25436
25437         * gnulib-tool (func_ln): New function.
25438         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
25439
25440 2006-11-12  Bruno Haible  <bruno@clisp.org>
25441
25442         Finish support for source files in subdirectories.
25443         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
25444         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
25445         AUTOMAKE_OPTIONS.
25446         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
25447
25448 2006-11-12  Bruno Haible  <bruno@clisp.org>
25449
25450         * gnulib-tool (func_get_automake_snippet): Synthesize also an
25451         EXTRA_lib_SOURCES augmentation.
25452         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
25453
25454 2006-11-12  Jim Meyering  <jim@meyering.net>
25455
25456         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
25457         file descriptors.  This also averts a failure on systems with
25458         native openat support when a traversed directory lacks "x" access.
25459         * lib/fts_.h: Include "i-ring.h"
25460         (struct FTS) [fts_fd_ring]: New member.
25461         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
25462         (FCHDIR): Add parentheses.
25463         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
25464         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
25465         When descending, rather than simply closing the previous
25466         fts_cwd_fd value, push that file descriptor onto the ring.
25467         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
25468         (fts_open): Initialize the new fd_ring member.
25469         (fts_close): Clear the ring.
25470         (fts_safe_changedir): When possible, use our new fd_ring to skip
25471         the diropen and fstat and dev/ino comparison that would normally
25472         accompany a virtual `chdir ("..")'.
25473
25474         * modules/fts (Depends-on): Add i-ring.
25475         * modules/i-ring: New module.
25476         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
25477         * m4/i-ring.m4: New file.
25478
25479 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25480
25481         * gnulib-tool (func_create_testdir): Fix replacement of
25482         `build-aux' in configure.ac.  Run autotools in gltests
25483         subdirectory.
25484         (func_create_testdir, func_create_megatestdir, test): There is
25485         no need for '--force' in most autotool invocations in a new
25486         tree.  Actually fail the whole test if any of the tools, or the
25487         configure or make stages fail.
25488
25489         Sync from Automake.
25490         * build-aux/gnupload: Revert last change.  Add pointer to upload
25491         instructions of the GNU Maintenance Instructions.
25492         Suggestion by Karl Berry.
25493
25494 2006-11-10  Jim Meyering  <jim@meyering.net>
25495
25496         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
25497
25498 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
25499
25500         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
25501         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
25502         (bind_textdomain_codeset) [! ENABLE_NLS]:
25503         Evaluate all the arguments.  That way, callers get compatible behavior
25504         if the arguments have side effects.  Also, it avoids some GCC
25505         diagnostics in some cases; Joel E. Denny reported problems when Bison
25506         was configured with --enable-gcc-warnigs.
25507
25508 2006-11-10  Jim Meyering  <jim@meyering.net>
25509
25510         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
25511         relevant options in CFLAGS (like -O, -fno-inline) are taken into
25512         account.
25513
25514 2006-11-10  Jim Meyering  <jim@meyering.net>
25515
25516         * modules/inline: New file/module.
25517         * modules/xalloc (Files): Remove m4/inline.m4.
25518         (Depends-on): Add inline, instead.
25519         * modules/oset: Likewise.
25520         * modules/list: Likewise.
25521
25522 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
25523
25524         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
25525         Problem reported by Matthew Woehlke.
25526
25527 2006-11-09  Bruno Haible  <bruno@clisp.org>
25528
25529         * lib/tempname.c (gen_tempname): Remove variant that invokes
25530         __gen_tempname.
25531         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
25532         __gen_tempname.
25533
25534 2006-11-08  Bruno Haible  <bruno@clisp.org>
25535
25536         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
25537         to 'yes' instead of 'cross-compiling'.
25538
25539 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
25540
25541         * lib/quotearg.h (quotearg_free): New decl.
25542         * lib/quotearg.c (quotearg_free): New function.
25543         (slot0, nslots, slotvec0, slotvec):
25544         Now file-scope so that quotearg_free can get at them.
25545
25546 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25547
25548         Sync from Automake.
25549         * build-aux/gnupload: Add missing 'gnu' to example URL.
25550         Report by Karl Berry.
25551
25552 2006-11-08  Bruno Haible  <bruno@clisp.org>
25553
25554         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
25555         Suggested by Paul Eggert.
25556
25557 2006-11-08  Jim Meyering  <jim@meyering.net>
25558
25559         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
25560         It's already included if !_LIBC.
25561         (fts_safe_changedir): Add a comment.
25562
25563 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
25564
25565         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
25566         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
25567         Matthew Woehlke.
25568
25569         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
25570         definitions up, to avoid colliding with change below.
25571         (static_inline) [HAVE_INLINE]: New macro.
25572         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
25573         Provide extern decls when !HAVE_INLINE.  Do not define unless
25574         static_inline is defined, either by us or by xmalloc.c.  Use
25575         static_inline rather than static inline.
25576         (XCALLOC): Optimize sizeof(T) = 1 case.
25577         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
25578
25579 2006-11-07  Bruno Haible  <bruno@clisp.org>
25580
25581         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
25582         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
25583         AC_C_INLINE.
25584         * modules/xalloc (Files): Add m4/inline.m4.
25585
25586 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25587
25588         * README: Fix typo.
25589         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
25590         (Miscellanous Notes): ...from this.
25591
25592 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
25593
25594         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
25595         Mention that offsetof should be used instead of sizeof.
25596         From Bruno Haible.
25597
25598 2006-11-07  Bruno Haible  <bruno@clisp.org>
25599
25600         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
25601
25602 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
25603
25604         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
25605         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
25606         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
25607         (gl_tree_add_before, gl_tree_add_after):
25608         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
25609         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
25610         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
25611         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
25612         (gl_linked_add_after, gl_linked_add_at): Likewise.
25613         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
25614         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
25615         (gl_tree_add_before, gl_tree_add_after): Likewise.
25616         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
25617         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
25618         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
25619
25620 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25621
25622         * lib/gl_oset.h: Use C comment style, not C++ comment style.
25623
25624 2006-11-06  Bruno Haible  <bruno@clisp.org>
25625
25626         * m4/inline.m4: New file.
25627         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
25628         * modules/list (Files): Add m4/inline.m4.
25629         * modules/oset (Files): Likewise.
25630
25631 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
25632
25633         * lib/idcache.c: Include <stddef.h>, for offsetof.
25634         (struct userid.name): Change from char * to a flexible array member.
25635         All uses changed.
25636         * modules/idcache (Depends-on): Add flexmember.
25637
25638         * MODULES.html.sh (Core language properties): New module flexmember.
25639         * modules/flexmember, m4/flexmember.m4: New files.
25640
25641         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
25642         inline functions that are identical with the old xnmalloc_inline,
25643         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
25644         that we can avoid some unnecessary integer multiplications and
25645         divisions in the common case where the element size is known at
25646         compile time.
25647         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
25648         needed.
25649         (xnboundedmalloc): Remove.
25650         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
25651         arguments, for consistency with rest of this header.
25652         (xcharalloc): Rewrite using XNMALLOC.
25653         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
25654         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
25655         versions have been moved to lib/xalloc.h and renamed to be the
25656         non-*_inline versions.
25657         (xmalloc, xrealloc): Implement without reference to the xnmalloc
25658         and xnrealloc functions, since those functions are now inline and
25659         now call us.
25660         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
25661         renaming described above.
25662         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
25663         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
25664         captures the dependency in AC_C_INLINE.
25665
25666         New module canonicalize-lgpl, proposed by Charles Wilson in
25667         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
25668         with a few small changes afterwards.
25669         * MODULES.html.sh (File system functions): New module
25670         canonicalize-lgpl.
25671         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
25672         and canonicalize_file_name.
25673         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
25674         * modules/canonicalize-lgpl: New files.
25675
25676 2006-11-05  Bruno Haible  <bruno@clisp.org>
25677
25678         * gnulib-tool (func_import, func_create_testdir): Create directories
25679         also for files in subdirectories of lib/.
25680
25681 2006-11-05  Bruno Haible  <bruno@clisp.org>
25682
25683         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
25684         ANSI C compliant.
25685
25686 2006-11-03  Bruno Haible  <bruno@clisp.org>
25687
25688         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
25689         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
25690         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
25691         (xnboundedmalloc): New inline function.
25692         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
25693         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
25694         xmalloc.
25695         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
25696         xmalloc.
25697         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
25698         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
25699         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
25700         xmalloc.
25701         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
25702         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
25703         xmalloc.
25704         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
25705         gl_tree_add_after): Use XMALLOC instead of xmalloc.
25706         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
25707         xmalloc.
25708         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
25709         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
25710         gl_tree_add_after): Use XMALLOC instead of xmalloc.
25711         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
25712         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
25713         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
25714         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
25715
25716 2006-11-03  Bruno Haible  <bruno@clisp.org>
25717
25718         * lib/c-ctype.h [C++]: Define functions without name mangling.
25719         * lib/fwriteerror.h [C++]: Likewise.
25720         * lib/gcd.h [C++]: Likewise.
25721         * lib/linebreak.h [C++]: Likewise.
25722
25723 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
25724
25725         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
25726         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
25727         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
25728         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
25729         Check for functions and headers just once.
25730         Check for declaration of canonicalize_file_name.
25731         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
25732
25733 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
25734
25735         * gnulib-tool (func_import): Fix typo in actioncmd.
25736
25737 2006-11-02  Bruno Haible  <bruno@clisp.org>
25738
25739         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
25740         newline sequence in the Makefile.am snippet as a space, like "make"
25741         does.
25742         Reported by Roger Persson <perrog@gmail.com>.
25743
25744 2006-11-01  Bruno Haible  <bruno@clisp.org>
25745
25746         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
25747         already declared in <string.h>.
25748         * lib/strcase.h (strncasecmp): Don't declare it if yes.
25749
25750 2006-11-01  Bruno Haible  <bruno@clisp.org>
25751
25752         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
25753         * lib/strcase.h: Include <string.h>.
25754         (strcasecmp): Define to rpl_strcasecmp here.
25755
25756 2006-11-01  Bruno Haible  <bruno@clisp.org>
25757
25758         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
25759
25760 2006-11-01  Eric Blake  <ebb9@byu.net>
25761
25762         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
25763
25764         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
25765
25766 2006-10-29  Bruno Haible  <bruno@clisp.org>
25767
25768         Make it compile in C++ mode.
25769         * lib/full-write.c (full_rw): Add a cast.
25770
25771 2006-11-01  Bruno Haible  <bruno@clisp.org>
25772
25773         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
25774         be POSIX compliant.
25775         Reported by Roger Persson <perrog@gmail.com>.
25776
25777 2006-11-01  Eric Blake  <ebb9@byu.net>
25778
25779         * lib/getopt_.h: Fix comments.
25780
25781 2006-10-31  Eric Blake  <ebb9@byu.net>
25782
25783         * modules/tmpdir (Depends-on): Add sys_stat.
25784         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
25785         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
25786         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
25787         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
25788         tempname.
25789
25790 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
25791
25792         Avoid some C++ diagnostics reported by Bruno Haible.
25793         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
25794         xmalloc.
25795         (quotearg_alloc): Use xcharalloc rather than xmalloc.
25796         (struct slotvec): Move to top level.
25797         (quotearg_n_options): Rewrite to avoid xmalloc.
25798         * lib/xalloc.h (xcharalloc): New function.
25799         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
25800         [defined __cplusplus]: Add function template that provides result
25801         type propagation.  This part of the change is from Bruno Haible.
25802
25803 2006-10-29  Bruno Haible  <bruno@clisp.org>
25804
25805         Make it compile in C++ mode.
25806         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
25807         * lib/strnlen1.c (strnlen1): Cast memchr result.
25808         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
25809         * lib/clean-temp.c (string_equals, string_hash): Add casts.
25810         (create_temp_dir): Rename local variable 'template'.
25811         (compile_csharp_using_sscli): Add cast.
25812         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
25813         * lib/findprog.c (find_in_path): Likewise.
25814         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
25815         * lib/wait-process.c (register_slave_subprocess): Likewise.
25816
25817 2006-10-22  Bruno Haible  <bruno@clisp.org>
25818
25819         * modules/tsearch: New file.
25820         * lib/tsearch.h: New file.
25821         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
25822         * m4/tsearch.m4: New file.
25823         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
25824
25825 2006-10-29  Eric Blake  <ebb9@byu.net>
25826
25827         * lib/arcfour.c: Assume config.h.
25828         * lib/arctwo.c: Likewise.
25829         * lib/base64.c: Likewise.
25830         * lib/check-version.c: Likewise.
25831         * lib/crc.c: Likewise.
25832         * lib/des.c: Likewise.
25833         * lib/gc-gnulib.c: Likewise.
25834         * lib/gc-libgcrypt.c: Likewise.
25835         * lib/gc-pbkdf2-sha1.c: Likewise.
25836         * lib/getaddrinfo.c: Likewise.
25837         * lib/getdelim.c: Likewise.
25838         * lib/getline.c: Likewise.
25839         * lib/hmac-md5.c: Likewise.
25840         * lib/hmac-sha1.c: Likewise.
25841         * lib/iconvme.c: Likewise.
25842         * lib/md2.c: Likewise.
25843         * lib/md4.c: Likewise.
25844         * lib/memxor.c: Likewise.
25845         * lib/read-file.c: Likewise.
25846         * lib/readline.c: Likewise.
25847         * lib/rijndael-alg-fst.c: Likewise.
25848         * lib/rijndael-api-fst.c: Likewise.
25849         * lib/xgetdomainname.c: Likewise.
25850
25851 2006-10-28  Eric Blake  <ebb9@byu.net>
25852
25853         * lib/xstrndup.c: Assume config.h.
25854
25855 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
25856
25857         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
25858         stat-macros.h is now for our own macros, whereas stat_h is for
25859         macros in the <sys/stat.h> name space.
25860         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
25861         (STAT_MACROS_H): Remove.
25862         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
25863         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
25864         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
25865         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
25866         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
25867         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
25868         Move these macros to ...
25869         * lib/stat_.h: here.  Don't include stat-macros.h.
25870         * lib/canonicalize.c: Don't include stat-macros.h.
25871         * lib/chown.c: Likewise.
25872         * lib/euidaccess.c: Likewise.
25873         * lib/file-type.c: Likewise.
25874         * lib/filemode.c: Likewise.
25875         * lib/glob.c: Likewise.
25876         * lib/isapipe.c: Likewise.
25877         * lib/lchown.c: Likewise.
25878         * lib/lstat.c: Likewise.
25879         * lib/mkdir-p.c: Likewise.
25880         * lib/rmdir.c: Likewise.
25881         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
25882         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
25883         unless mkdir isn't declared, to speed up 'configure'.
25884         Always create sys/stat.h, since it's unlikely any real sys/stat.h
25885         would define all the S_* symbols.
25886         * modules/canonicalize (Depends-on):
25887         Depend on sys_stat, not stat-macros.
25888         * modules/chown: Likewise.
25889         * modules/euidaccess: Likewise.
25890         * modules/filemode: Likewise.
25891         * modules/file-type: Likewise.
25892         * modules/glob: Likewise.
25893         * modules/isapipe: Likewise.
25894         * modules/lchown: Likewise.
25895         * modules/lstat: Likewise.
25896         * modules/mkancesdirs: Likewise.
25897         * modules/rmdir: Likewise.
25898         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
25899         * modules/modechange: Likewise.
25900         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
25901         (configure.ac): Remove gl_STAT_MACROS.
25902         * modules/sys_stat (Depends-on): Remove stat-macros.
25903
25904 2006-10-27  Bruno Haible  <bruno@clisp.org>
25905
25906         * m4/signed.m4: Remove file.
25907         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
25908         invocation.
25909         * modules/vasnprintf (Files): Remove m4/signed.m4.
25910
25911 2006-10-27  Bruno Haible  <bruno@clisp.org>
25912
25913         Update to GNU gettext 0.16.
25914         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
25915         m4/inttypes-h.m4, m4/signed.m4.
25916         * m4/gettext.m4: Update to GNU gettext 0.16.
25917         * m4/intl.m4: New file, from GNU gettext.
25918         * m4/intldir.m4: New file, from GNU gettext.
25919         * config/srclist.txt: Update
25920
25921 2006-10-27  Eric Blake  <ebb9@byu.net>
25922
25923         * MODULES.html.sh: Document tempname.
25924         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
25925         dependencies.
25926         (Files): Move lib/tempname.c...
25927         * modules/tempname: ...to this new module.
25928         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
25929         (gl_PREREQ_TEMPNAME): Move...
25930         * m4/tempname.m4: ...to this new file.
25931         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
25932         * modules/sys_stat (Depends-on): Add stat-macros.
25933         * lib/stat_.h (includes): Pick up stat macros.
25934         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
25935         if stat macros are broken.
25936         * lib/tempname.c (includes): No need to include "stat-macros.h".
25937         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
25938         (direxists, __path_search) [!_LIBC]: Don't compile these in
25939         gnulib; the tmpdir module covers that.
25940         * lib/tempname.h: New file.
25941
25942 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
25943
25944         * COPYING: Explain how gnulib-tool converts licence headers.
25945         Almost all wording by Eric Blake.
25946
25947 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
25948
25949         * lib/mbchar.h (is_basic_table): Make read-only.
25950         * lib/mbchar.c (is_basic_table): Likewise.
25951         Reported by John Darrington.
25952
25953 2006-10-25  Bruno Haible  <bruno@clisp.org>
25954
25955         * lib/progname.h (set_program_name): Undefine before defining.
25956
25957 2006-10-25  Bruno Haible  <bruno@clisp.org>
25958
25959         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
25960         false for non-gcc C++ compilers.
25961         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
25962
25963 2006-10-24  Bruno Haible  <bruno@clisp.org>
25964
25965         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
25966         iconv implementations like Irix iconv.
25967
25968 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
25969
25970         * modules/vararrays: New file.
25971         * m4/vararrays.m4: New file, taken from diffutils.
25972         * MODULES.html.sh: New module vararrays.
25973
25974 2006-10-24  Karl Berry  <karl@gnu.org>
25975
25976         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
25977         Don't call GNU Unix.
25978
25979 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25980
25981         * users.txt: Add Libtool.
25982
25983         Sync from Libtool:
25984
25985         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
25986
25987         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
25988         to gnulib's policy of including config.h unconditionally.
25989
25990 2006-10-24  Bruno Haible  <bruno@clisp.org>
25991
25992         * modules/wcwidth (Files): Add m4/wint_t.m4.
25993         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
25994         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
25995
25996 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
25997
25998         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
25999         to pacify GCC with some -W flags enabled.  Problem reported by
26000         Bruno Haible.
26001
26002 2006-10-24  Jim Meyering  <jim@meyering.net>
26003
26004         * MODULES.html.sh: Remove uinttostr.  It's not a module.
26005         Reported by Karl Berry.
26006
26007 2006-10-23  Bruno Haible  <bruno@clisp.org>
26008
26009         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
26010
26011 2006-10-24  Bruno Haible  <bruno@clisp.org>
26012
26013         * lib/gl_list.h: Use C comment style, not C++ comment style.
26014
26015 2006-10-23  Eric Blake  <ebb9@byu.net>
26016
26017         * lib/getaddrinfo.c (includes): Add missing include.
26018
26019 2006-10-23  Bruno Haible  <bruno@clisp.org>
26020             Paul Eggert  <eggert@cs.ucla.edu>
26021
26022         Ability to rename obstack_free.
26023         * lib/obstack.h (__obstack_free): New macro. Declare instead of
26024         obstack_free.
26025         (obstack_free): Invoke the __obstack_free macro.
26026         * lib/obstack.c (obstack_free): Use __obstack_free macro.
26027
26028 2006-10-23  Bruno Haible  <bruno@clisp.org>
26029             Paul Eggert  <eggert@cs.ucla.edu>
26030
26031         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
26032         __argc, __argv from the declaration. (They are defined as macros on
26033         mingw.)
26034
26035 2006-10-22  Bruno Haible  <bruno@clisp.org>
26036
26037         * doc/gnulib-intro.texi: New file.
26038         * doc/gnulib.texi: Include it.
26039
26040 2006-10-21  Bruno Haible  <bruno@clisp.org>
26041
26042         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
26043         "Introduction", "Miscellanous Notes", "Particular Modules".
26044
26045 2006-10-21  Bruno Haible  <bruno@clisp.org>
26046
26047         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
26048         Change mostlyclean-local rule to avoid sh syntax error from bash
26049         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
26050
26051 2006-10-23  Jim Meyering  <jim@meyering.net>
26052
26053         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
26054         in place of snprintf.
26055
26056         * modules/inttostr (Files): Add lib/uinttostr.c.
26057         * lib/uinttostr.c (inttostr): New file/function.
26058         * lib/inttostr.h (uinttostr): Declare.
26059         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
26060         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
26061         Add uinttostr.
26062         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
26063
26064 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
26065
26066         * lib/canonicalize.c (ELOOP): Define if not already defined.
26067         Problem reported by Bruno Haible in
26068         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
26069
26070 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
26071
26072         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
26073         Problem reported by Perry Smith and Ville Laurikari.
26074
26075         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
26076         uses.
26077
26078 2006-10-19  Bruno Haible  <bruno@clisp.org>
26079
26080         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
26081         for mingw.
26082
26083 2006-10-19  Bruno Haible  <bruno@clisp.org>
26084
26085         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
26086         Needed for mingw.
26087
26088 2006-10-19  Bruno Haible  <bruno@clisp.org>
26089
26090         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
26091
26092 2006-10-19  Bruno Haible  <bruno@clisp.org>
26093
26094         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
26095         it.
26096
26097 2006-10-19  Bruno Haible  <bruno@clisp.org>
26098
26099         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
26100         invocation.
26101
26102 2006-10-19  Bruno Haible  <bruno@clisp.org>
26103
26104         * gnulib-tool (func_create_testdir): Don't include ftruncate and
26105         mountlist by default.
26106
26107 2006-10-16  Bruno Haible  <bruno@clisp.org>
26108
26109         * lib/c-strstr.c: Include c-strstr.h.
26110
26111 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
26112
26113         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
26114         in a slash.
26115
26116 2006-10-18  Bruno Haible  <bruno@clisp.org>
26117
26118         * lib/lock.h [C++]: Wrap definitions in extern "C".
26119
26120 2006-10-18  Bruno Haible  <bruno@clisp.org>
26121
26122         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
26123         gl_LIBOBJS list.
26124
26125 2006-10-18  Bruno Haible  <bruno@clisp.org>
26126
26127         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
26128
26129 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
26130
26131         * lib/xstrtol.h: Include gettext.h.
26132         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
26133         Problem reported by Eric Blake.
26134         * modules/xstrtol (Depends-on): Add gettext-h.
26135
26136 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
26137
26138         * lib/strftime.c (advance): New macro.
26139         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
26140         incomplete type, so you can't add 0 to it.  Problem and patch
26141         reported by Eelco Dolstra for dietlibc.
26142
26143 2006-10-18  Jim Meyering  <jim@meyering.net>
26144
26145         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
26146         type for a local, and rename it: s/up/user_proc/.
26147
26148 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
26149
26150         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
26151         READ_UTMP_USER_PROCESS.
26152         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
26153
26154 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
26155
26156         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
26157         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
26158
26159 2006-10-17  Eric Blake  <ebb9@byu.net>
26160
26161         * lib/sigprocmask.c (sigprocmask): Fix typo.
26162
26163         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
26164
26165         * modules/clean-temp (Makefile.am): Don't add to make output...
26166         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
26167         config.h.
26168
26169 2006-10-17  Bruno Haible  <bruno@clisp.org>
26170
26171         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
26172         differently if DEFAULT_TEXT_DOMAIN is set.
26173
26174 2006-10-16  Bruno Haible  <bruno@clisp.org>
26175
26176         * lib/clean-temp.c: Include fwriteerror.h.
26177
26178 2006-10-16  Bruno Haible  <bruno@clisp.org>
26179
26180         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
26181
26182 2006-10-16  Bruno Haible  <bruno@clisp.org>
26183
26184         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
26185         * lib/sigprocmask.h: Include <sys/types.h>.
26186         (sigset_t): Use the system's definition if present.
26187
26188 2006-10-17  Eric Blake  <ebb9@byu.net>
26189
26190         * lib/xvasprintf.c (includes): Assume config.h.
26191         * lib/xasprintf.c (includes): Likewise.
26192
26193 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
26194
26195         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
26196         at least as wide as intmax_t.
26197
26198 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
26199
26200         (Imported from Automake.)
26201         * build-aux/gnupload: Update to version 1.1 of directive file.
26202
26203 2006-10-16  Eric Blake  <ebb9@byu.net>
26204
26205         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
26206         match Automake 1.10a.
26207
26208 2006-10-14  Bruno Haible  <bruno@clisp.org>
26209
26210         * modules/sigprocmask: New file.
26211         * lib/sigprocmask.h: New file.
26212         * lib/sigprocmask.c: New file.
26213         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
26214         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
26215         request sigprocmask.o.
26216         (gl_PREREQ_SIGPROCMASK): New macro.
26217         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
26218         (Depends-on): Add sigprocmask.
26219         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
26220         gt_SIGNALBLOCKING. Test for 'raise' only once.
26221         * lib/fatal-signal.c: Include sigprocmask.h.
26222         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
26223         unblock_fatal_signals): Define always.
26224         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
26225         sigprocmask.
26226
26227 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
26228
26229         Sync from Automake.
26230         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
26231         which incorrectly sets the mode of an existing destination
26232         directory.  In some cases the unpatched install-sh could do the
26233         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
26234         system.  We hope this is rare in practice, but it's clearly worth
26235         fixing.  Problem reported by Alex Unleashed in
26236         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
26237         Also, don't bother to check for -m bugs unless we're using -m;
26238         suggested by Stepan Kasal.
26239
26240 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26241
26242         Sync from Automake.
26243         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
26244         `-c' flag, so they appear at the same position as in %FASTDEP%
26245         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
26246         which ignores unknown options only after the first non-option.
26247         Bug report against M4 by Nelson H. F. Beebe.
26248
26249 2006-10-13  Jim Meyering  <jim@meyering.net>
26250
26251         Fix a bug in yesterday's change.
26252         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
26253         p->fts_statp->st_dev would be used uninitialized.
26254         Ensures that we always call fts_stat on the very first entry.
26255         Miklos Szeredi reported that find -xdev stopped working.
26256
26257 2006-10-12  Bruno Haible  <bruno@clisp.org>
26258
26259         * gnulib-tool (func_get_automake_snippet): Append an automatically
26260         computed EXTRA_DIST augmentation.
26261         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
26262         * modules/alloca-opt (Makefile.am): Likewise.
26263         * modules/allocsa (Makefile.am): Likewise.
26264         * modules/arcfour (Makefile.am): Likewise.
26265         * modules/arctwo (Makefile.am): Likewise.
26266         * modules/argmatch (Makefile.am): Likewise.
26267         * modules/argz (Makefile.am): Likewise.
26268         * modules/atexit (Makefile.am): Likewise.
26269         * modules/backupfile (Makefile.am): Likewise.
26270         * modules/byteswap (Makefile.am): Likewise.
26271         * modules/c-strtod (Makefile.am): Likewise.
26272         * modules/c-strtold (Makefile.am): Likewise.
26273         * modules/calloc (Makefile.am): Likewise.
26274         * modules/canon-host (Makefile.am): Likewise.
26275         * modules/canonicalize (Makefile.am): Likewise.
26276         * modules/chdir-long (Makefile.am): Likewise.
26277         * modules/chdir-safer (Makefile.am): Likewise.
26278         * modules/check-version (Makefile.am): Likewise.
26279         * modules/chown (Makefile.am): Likewise.
26280         * modules/cloexec (Makefile.am): Likewise.
26281         * modules/close-stream (Makefile.am): Likewise.
26282         * modules/closeout (Makefile.am): Likewise.
26283         * modules/crc (Makefile.am): Likewise.
26284         * modules/csharpexec (Makefile.am): Likewise.
26285         * modules/cycle-check (Makefile.am): Likewise.
26286         * modules/des (Makefile.am): Likewise.
26287         * modules/dev-ino (Makefile.am): Likewise.
26288         * modules/dirfd (Makefile.am): Likewise.
26289         * modules/dirname (Makefile.am): Likewise.
26290         * modules/dup2 (Makefile.am): Likewise.
26291         * modules/eealloc (Makefile.am): Likewise.
26292         * modules/error (Makefile.am): Likewise.
26293         * modules/euidaccess (Makefile.am): Likewise.
26294         * modules/exclude (Makefile.am): Likewise.
26295         * modules/exitfail (Makefile.am): Likewise.
26296         * modules/fcntl-safer (Makefile.am): Likewise.
26297         * modules/fcntl (Makefile.am): Likewise.
26298         * modules/file-type (Makefile.am): Likewise.
26299         * modules/fileblocks (Makefile.am): Likewise.
26300         * modules/filemode (Makefile.am): Likewise.
26301         * modules/filenamecat (Makefile.am): Likewise.
26302         * modules/fnmatch (Makefile.am): Likewise.
26303         * modules/fopen-safer (Makefile.am): Likewise.
26304         * modules/fpending (Makefile.am): Likewise.
26305         * modules/fprintftime (Makefile.am): Likewise.
26306         * modules/free (Makefile.am): Likewise.
26307         * modules/fsusage (Makefile.am): Likewise.
26308         * modules/ftruncate (Makefile.am): Likewise.
26309         * modules/fts (Makefile.am): Likewise.
26310         * modules/gc-arcfour (Makefile.am): Likewise.
26311         * modules/gc-des (Makefile.am): Likewise.
26312         * modules/gc-hmac-md5 (Makefile.am): Likewise.
26313         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
26314         * modules/gc-md4 (Makefile.am): Likewise.
26315         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
26316         * modules/gc-sha1 (Makefile.am): Likewise.
26317         * modules/gc (Makefile.am): Likewise.
26318         * modules/getaddrinfo (Makefile.am): Likewise.
26319         * modules/getcwd (Makefile.am): Likewise.
26320         * modules/getdelim (Makefile.am): Likewise.
26321         * modules/getdomainname (Makefile.am): Likewise.
26322         * modules/getgroups (Makefile.am): Likewise.
26323         * modules/gethostname (Makefile.am): Likewise.
26324         * modules/gethrxtime (Makefile.am): Likewise.
26325         * modules/getline (Makefile.am): Likewise.
26326         * modules/getloadavg (Makefile.am): Likewise.
26327         * modules/getlogin_r (Makefile.am): Likewise.
26328         * modules/getndelim2 (Makefile.am): Likewise.
26329         * modules/getopt (Makefile.am): Likewise.
26330         * modules/getpagesize (Makefile.am): Likewise.
26331         * modules/getpass-gnu (Makefile.am): Likewise.
26332         * modules/getpass (Makefile.am): Likewise.
26333         * modules/getsubopt (Makefile.am): Likewise.
26334         * modules/gettime (Makefile.am): Likewise.
26335         * modules/gettimeofday (Makefile.am): Likewise.
26336         * modules/getugroups (Makefile.am): Likewise.
26337         * modules/getusershell (Makefile.am): Likewise.
26338         * modules/glob (Makefile.am): Likewise.
26339         * modules/group-member (Makefile.am): Likewise.
26340         * modules/hard-locale (Makefile.am): Likewise.
26341         * modules/hash (Makefile.am): Likewise.
26342         * modules/hmac-md5 (Makefile.am): Likewise.
26343         * modules/hmac-sha1 (Makefile.am): Likewise.
26344         * modules/human (Makefile.am): Likewise.
26345         * modules/idcache (Makefile.am): Likewise.
26346         * modules/imaxabs (Makefile.am): Likewise.
26347         * modules/imaxdiv (Makefile.am): Likewise.
26348         * modules/inet_ntop (Makefile.am): Likewise.
26349         * modules/inet_pton (Makefile.am): Likewise.
26350         * modules/intprops (Makefile.am): Likewise.
26351         * modules/inttostr (Makefile.am): Likewise.
26352         * modules/inttypes (Makefile.am): Likewise.
26353         * modules/isapipe (Makefile.am): Likewise.
26354         * modules/javaversion (Makefile.am): Likewise.
26355         * modules/lchmod (Makefile.am): Likewise.
26356         * modules/lchown (Makefile.am): Likewise.
26357         * modules/localcharset (Makefile.am): Likewise.
26358         * modules/long-options (Makefile.am): Likewise.
26359         * modules/lstat (Makefile.am): Likewise.
26360         * modules/malloc (Makefile.am): Likewise.
26361         * modules/mathl (Makefile.am): Likewise.
26362         * modules/mbchar (Makefile.am): Likewise.
26363         * modules/md2 (Makefile.am): Likewise.
26364         * modules/md4 (Makefile.am): Likewise.
26365         * modules/md5 (Makefile.am): Likewise.
26366         * modules/memcasecmp (Makefile.am): Likewise.
26367         * modules/memchr (Makefile.am): Likewise.
26368         * modules/memcmp (Makefile.am): Likewise.
26369         * modules/memcoll (Makefile.am): Likewise.
26370         * modules/memcpy (Makefile.am): Likewise.
26371         * modules/memmem (Makefile.am): Likewise.
26372         * modules/memmove (Makefile.am): Likewise.
26373         * modules/mempcpy (Makefile.am): Likewise.
26374         * modules/memrchr (Makefile.am): Likewise.
26375         * modules/memset (Makefile.am): Likewise.
26376         * modules/memxor (Makefile.am): Likewise.
26377         * modules/mkancesdirs (Makefile.am): Likewise.
26378         * modules/mkdir-p (Makefile.am): Likewise.
26379         * modules/mkdir (Makefile.am): Likewise.
26380         * modules/mkdtemp (Makefile.am): Likewise.
26381         * modules/mkstemp (Makefile.am): Likewise.
26382         * modules/mktime (Makefile.am): Likewise.
26383         * modules/modechange (Makefile.am): Likewise.
26384         * modules/mountlist (Makefile.am): Likewise.
26385         * modules/nanosleep (Makefile.am): Likewise.
26386         * modules/obstack (Makefile.am): Likewise.
26387         * modules/openat (Makefile.am): Likewise.
26388         * modules/pagealign_alloc (Makefile.am): Likewise.
26389         * modules/pathmax (Makefile.am): Likewise.
26390         * modules/physmem (Makefile.am): Likewise.
26391         * modules/poll (Makefile.am): Likewise.
26392         * modules/posixtm (Makefile.am): Likewise.
26393         * modules/posixver (Makefile.am): Likewise.
26394         * modules/putenv (Makefile.am): Likewise.
26395         * modules/quote (Makefile.am): Likewise.
26396         * modules/quotearg (Makefile.am): Likewise.
26397         * modules/raise (Makefile.am): Likewise.
26398         * modules/read-file (Makefile.am): Likewise.
26399         * modules/readline (Makefile.am): Likewise.
26400         * modules/readlink (Makefile.am): Likewise.
26401         * modules/readtokens (Makefile.am): Likewise.
26402         * modules/readutmp (Makefile.am): Likewise.
26403         * modules/realloc (Makefile.am): Likewise.
26404         * modules/regex (Makefile.am): Likewise.
26405         * modules/rename-dest-slash (Makefile.am): Likewise.
26406         * modules/rename (Makefile.am): Likewise.
26407         * modules/rijndael (Makefile.am): Likewise.
26408         * modules/rmdir (Makefile.am): Likewise.
26409         * modules/rpmatch (Makefile.am): Likewise.
26410         * modules/safe-read (Makefile.am): Likewise.
26411         * modules/safe-write (Makefile.am): Likewise.
26412         * modules/same-inode (Makefile.am): Likewise.
26413         * modules/same (Makefile.am): Likewise.
26414         * modules/save-cwd (Makefile.am): Likewise.
26415         * modules/savedir (Makefile.am): Likewise.
26416         * modules/setenv (Makefile.am): Likewise.
26417         * modules/settime (Makefile.am): Likewise.
26418         * modules/sha1 (Makefile.am): Likewise.
26419         * modules/sig2str (Makefile.am): Likewise.
26420         * modules/snprintf (Makefile.am): Likewise.
26421         * modules/stat-macros (Makefile.am): Likewise.
26422         * modules/stat-time (Makefile.am): Likewise.
26423         * modules/stdbool (Makefile.am): Likewise.
26424         * modules/stdint (Makefile.am): Likewise.
26425         * modules/stdlib-safer (Makefile.am): Likewise.
26426         * modules/stpcpy (Makefile.am): Likewise.
26427         * modules/stpncpy (Makefile.am): Likewise.
26428         * modules/strcase (Makefile.am): Likewise.
26429         * modules/strcasestr (Makefile.am): Likewise.
26430         * modules/strchrnul (Makefile.am): Likewise.
26431         * modules/strcspn (Makefile.am): Likewise.
26432         * modules/strdup (Makefile.am): Likewise.
26433         * modules/strerror (Makefile.am): Likewise.
26434         * modules/strftime (Makefile.am): Likewise.
26435         * modules/strndup (Makefile.am): Likewise.
26436         * modules/strnlen (Makefile.am): Likewise.
26437         * modules/strpbrk (Makefile.am): Likewise.
26438         * modules/strsep (Makefile.am): Likewise.
26439         * modules/strstr (Makefile.am): Likewise.
26440         * modules/strtod (Makefile.am): Likewise.
26441         * modules/strtoimax (Makefile.am): Likewise.
26442         * modules/strtok_r (Makefile.am): Likewise.
26443         * modules/strtol (Makefile.am): Likewise.
26444         * modules/strtoll (Makefile.am): Likewise.
26445         * modules/strtoul (Makefile.am): Likewise.
26446         * modules/strtoull (Makefile.am): Likewise.
26447         * modules/strtoumax (Makefile.am): Likewise.
26448         * modules/strverscmp (Makefile.am): Likewise.
26449         * modules/sys_socket (Makefile.am): Likewise.
26450         * modules/sys_stat (Makefile.am): Likewise.
26451         * modules/sysexits (Makefile.am): Likewise.
26452         * modules/time_r (Makefile.am): Likewise.
26453         * modules/timegm (Makefile.am): Likewise.
26454         * modules/timespec (Makefile.am): Likewise.
26455         * modules/tmpfile-safer (Makefile.am): Likewise.
26456         * modules/trim (Makefile.am): Likewise.
26457         * modules/unistd-safer (Makefile.am): Likewise.
26458         * modules/unlinkdir (Makefile.am): Likewise.
26459         * modules/unlocked-io (Makefile.am): Likewise.
26460         * modules/userspec (Makefile.am): Likewise.
26461         * modules/utime (Makefile.am): Likewise.
26462         * modules/utimecmp (Makefile.am): Likewise.
26463         * modules/utimens (Makefile.am): Likewise.
26464         * modules/vasnprintf (Makefile.am): Likewise.
26465         * modules/vasprintf (Makefile.am): Likewise.
26466         * modules/vsnprintf (Makefile.am): Likewise.
26467         * modules/xalloc (Makefile.am): Likewise.
26468         * modules/xgetcwd (Makefile.am): Likewise.
26469         * modules/xnanosleep (Makefile.am): Likewise.
26470         * modules/xreadlink (Makefile.am): Likewise.
26471         * modules/xstrtod (Makefile.am): Likewise.
26472         * modules/xstrtol (Makefile.am): Likewise.
26473         * modules/xstrtold (Makefile.am): Likewise.
26474         * modules/yesno (Makefile.am): Likewise.
26475         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
26476
26477 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
26478
26479         * modules/error (Makefile.am): Distribute files through
26480         EXTRA_DIST, not lib_SOURCES.
26481
26482 2006-10-12  Eric Blake  <ebb9@byu.net>
26483
26484         * modules/error (Makefile.am): Distribute files in /lib.
26485         * modules/obstack (Makefile.am): Likewise.
26486
26487 2006-10-12  Bruno Haible  <bruno@clisp.org>
26488
26489         * modules/acl (Makefile.am): Distribute all files in lib/ through
26490         EXTRA_DIST.
26491         * modules/arcfour (Makefile.am): Likewise.
26492         * modules/arctwo (Makefile.am): Likewise.
26493         * modules/argmatch (Makefile.am): Likewise.
26494         * modules/argz (Makefile.am): Likewise.
26495         * modules/atexit (Makefile.am): Likewise.
26496         * modules/backupfile (Makefile.am): Likewise.
26497         * modules/c-strtod (Makefile.am): Likewise.
26498         * modules/c-strtold (Makefile.am): Likewise.
26499         * modules/calloc (Makefile.am): Likewise.
26500         * modules/canon-host (Makefile.am): Likewise.
26501         * modules/canonicalize (Makefile.am): Likewise.
26502         * modules/chdir-long (Makefile.am): Likewise.
26503         * modules/chdir-safer (Makefile.am): Likewise.
26504         * modules/check-version (Makefile.am): Likewise.
26505         * modules/chown (Makefile.am): Likewise.
26506         * modules/cloexec (Makefile.am): Likewise.
26507         * modules/close-stream (Makefile.am): Likewise.
26508         * modules/closeout (Makefile.am): Likewise.
26509         * modules/crc (Makefile.am): Likewise.
26510         * modules/cycle-check (Makefile.am): Likewise.
26511         * modules/des (Makefile.am): Likewise.
26512         * modules/dirfd (Makefile.am): Likewise.
26513         * modules/dirname (Makefile.am): Likewise.
26514         * modules/dup2 (Makefile.am): Likewise.
26515         * modules/euidaccess (Makefile.am): Likewise.
26516         * modules/exclude (Makefile.am): Likewise.
26517         * modules/exitfail (Makefile.am): Likewise.
26518         * modules/fcntl-safer (Makefile.am): Likewise.
26519         * modules/file-type (Makefile.am): Likewise.
26520         * modules/fileblocks (Makefile.am): Likewise.
26521         * modules/filemode (Makefile.am): Likewise.
26522         * modules/filenamecat (Makefile.am): Likewise.
26523         * modules/fnmatch (Makefile.am): Likewise.
26524         * modules/fopen-safer (Makefile.am): Likewise.
26525         * modules/fpending (Makefile.am): Likewise.
26526         * modules/fprintftime (Makefile.am): Likewise.
26527         * modules/free (Makefile.am): Likewise.
26528         * modules/fsusage (Makefile.am): Likewise.
26529         * modules/ftruncate (Makefile.am): Likewise.
26530         * modules/fts (Makefile.am): Likewise.
26531         * modules/gc (Makefile.am): Likewise.
26532         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
26533         * modules/getaddrinfo (Makefile.am): Likewise.
26534         * modules/getcwd (Makefile.am): Likewise.
26535         * modules/getdelim (Makefile.am): Likewise.
26536         * modules/getdomainname (Makefile.am): Likewise.
26537         * modules/getgroups (Makefile.am): Likewise.
26538         * modules/gethostname (Makefile.am): Likewise.
26539         * modules/gethrxtime (Makefile.am): Likewise.
26540         * modules/getline (Makefile.am): Likewise.
26541         * modules/getloadavg (Makefile.am): Likewise.
26542         * modules/getlogin_r (Makefile.am): Likewise.
26543         * modules/getopt (Makefile.am): Likewise.
26544         * modules/getpass (Makefile.am): Likewise.
26545         * modules/getpass-gnu (Makefile.am): Likewise.
26546         * modules/getsubopt (Makefile.am): Likewise.
26547         * modules/gettime (Makefile.am): Likewise.
26548         * modules/gettimeofday (Makefile.am): Likewise.
26549         * modules/getugroups (Makefile.am): Likewise.
26550         * modules/getusershell (Makefile.am): Likewise.
26551         * modules/glob (Makefile.am): Likewise.
26552         * modules/group-member (Makefile.am): Likewise.
26553         * modules/hard-locale (Makefile.am): Likewise.
26554         * modules/hash (Makefile.am): Likewise.
26555         * modules/hmac-md5 (Makefile.am): Likewise.
26556         * modules/hmac-sha1 (Makefile.am): Likewise.
26557         * modules/human (Makefile.am): Likewise.
26558         * modules/idcache (Makefile.am): Likewise.
26559         * modules/imaxabs (Makefile.am): Likewise.
26560         * modules/imaxdiv (Makefile.am): Likewise.
26561         * modules/inet_ntop (Makefile.am): Likewise.
26562         * modules/inet_pton (Makefile.am): Likewise.
26563         * modules/inttostr (Makefile.am): Likewise.
26564         * modules/isapipe (Makefile.am): Likewise.
26565         * modules/lchown (Makefile.am): Likewise.
26566         * modules/long-options (Makefile.am): Likewise.
26567         * modules/lstat (Makefile.am): Likewise.
26568         * modules/malloc (Makefile.am): Likewise.
26569         * modules/mathl (Makefile.am): Likewise.
26570         * modules/mbchar (Makefile.am): Likewise.
26571         * modules/md2 (Makefile.am): Likewise.
26572         * modules/md4 (Makefile.am): Likewise.
26573         * modules/md5 (Makefile.am): Likewise.
26574         * modules/memcasecmp (Makefile.am): Likewise.
26575         * modules/memchr (Makefile.am): Likewise.
26576         * modules/memcmp (Makefile.am): Likewise.
26577         * modules/memcoll (Makefile.am): Likewise.
26578         * modules/memcpy (Makefile.am): Likewise.
26579         * modules/memmem (Makefile.am): Likewise.
26580         * modules/memmove (Makefile.am): Likewise.
26581         * modules/mempcpy (Makefile.am): Likewise.
26582         * modules/memrchr (Makefile.am): Likewise.
26583         * modules/memset (Makefile.am): Likewise.
26584         * modules/memxor (Makefile.am): Likewise.
26585         * modules/mkancesdirs (Makefile.am): Likewise.
26586         * modules/mkdir (Makefile.am): Likewise.
26587         * modules/mkdir-p (Makefile.am): Likewise.
26588         * modules/mkdtemp (Makefile.am): Likewise.
26589         * modules/mkstemp (Makefile.am): Likewise.
26590         * modules/mktime (Makefile.am): Likewise.
26591         * modules/modechange (Makefile.am): Likewise.
26592         * modules/mountlist (Makefile.am): Likewise.
26593         * modules/nanosleep (Makefile.am): Likewise.
26594         * modules/openat (Makefile.am): Likewise.
26595         * modules/pagealign_alloc (Makefile.am): Likewise.
26596         * modules/physmem (Makefile.am): Likewise.
26597         * modules/poll (Makefile.am): Likewise.
26598         * modules/posixtm (Makefile.am): Likewise.
26599         * modules/posixver (Makefile.am): Likewise.
26600         * modules/putenv (Makefile.am): Likewise.
26601         * modules/quote (Makefile.am): Likewise.
26602         * modules/quotearg (Makefile.am): Likewise.
26603         * modules/raise (Makefile.am): Likewise.
26604         * modules/read-file (Makefile.am): Likewise.
26605         * modules/readline (Makefile.am): Likewise.
26606         * modules/readlink (Makefile.am): Likewise.
26607         * modules/readtokens (Makefile.am): Likewise.
26608         * modules/readutmp (Makefile.am): Likewise.
26609         * modules/realloc (Makefile.am): Likewise.
26610         * modules/regex (Makefile.am): Likewise.
26611         * modules/rename (Makefile.am): Likewise.
26612         * modules/rename-dest-slash (Makefile.am): Likewise.
26613         * modules/rijndael (Makefile.am): Likewise.
26614         * modules/rmdir (Makefile.am): Likewise.
26615         * modules/rpmatch (Makefile.am): Likewise.
26616         * modules/safe-read (Makefile.am): Likewise.
26617         * modules/safe-write (Makefile.am): Likewise.
26618         * modules/same (Makefile.am): Likewise.
26619         * modules/save-cwd (Makefile.am): Likewise.
26620         * modules/savedir (Makefile.am): Likewise.
26621         * modules/setenv (Makefile.am): Likewise.
26622         * modules/settime (Makefile.am): Likewise.
26623         * modules/sha1 (Makefile.am): Likewise.
26624         * modules/sig2str (Makefile.am): Likewise.
26625         * modules/snprintf (Makefile.am): Likewise.
26626         * modules/stdlib-safer (Makefile.am): Likewise.
26627         * modules/stpcpy (Makefile.am): Likewise.
26628         * modules/stpncpy (Makefile.am): Likewise.
26629         * modules/strcase (Makefile.am): Likewise.
26630         * modules/strcasestr (Makefile.am): Likewise.
26631         * modules/strchrnul (Makefile.am): Likewise.
26632         * modules/strcspn (Makefile.am): Likewise.
26633         * modules/strdup (Makefile.am): Likewise.
26634         * modules/strerror (Makefile.am): Likewise.
26635         * modules/strftime (Makefile.am): Likewise.
26636         * modules/strndup (Makefile.am): Likewise.
26637         * modules/strnlen (Makefile.am): Likewise.
26638         * modules/strpbrk (Makefile.am): Likewise.
26639         * modules/strsep (Makefile.am): Likewise.
26640         * modules/strstr (Makefile.am): Likewise.
26641         * modules/strtod (Makefile.am): Likewise.
26642         * modules/strtoimax (Makefile.am): Likewise.
26643         * modules/strtok_r (Makefile.am): Likewise.
26644         * modules/strtol (Makefile.am): Likewise.
26645         * modules/strtoll (Makefile.am): Likewise.
26646         * modules/strtoul (Makefile.am): Likewise.
26647         * modules/strtoull (Makefile.am): Likewise.
26648         * modules/strtoumax (Makefile.am): Likewise.
26649         * modules/strverscmp (Makefile.am): Likewise.
26650         * modules/time_r (Makefile.am): Likewise.
26651         * modules/timegm (Makefile.am): Likewise.
26652         * modules/tmpfile-safer (Makefile.am): Likewise.
26653         * modules/unistd-safer (Makefile.am): Likewise.
26654         * modules/unlinkdir (Makefile.am): Likewise.
26655         * modules/userspec (Makefile.am): Likewise.
26656         * modules/utime (Makefile.am): Likewise.
26657         * modules/utimecmp (Makefile.am): Likewise.
26658         * modules/utimens (Makefile.am): Likewise.
26659         * modules/vasnprintf (Makefile.am): Likewise.
26660         * modules/vasprintf (Makefile.am): Likewise.
26661         * modules/vsnprintf (Makefile.am): Likewise.
26662         * modules/xalloc (Makefile.am): Likewise.
26663         * modules/xgetcwd (Makefile.am): Likewise.
26664         * modules/xnanosleep (Makefile.am): Likewise.
26665         * modules/xreadlink (Makefile.am): Likewise.
26666         * modules/xstrtod (Makefile.am): Likewise.
26667         * modules/xstrtol (Makefile.am): Likewise.
26668         * modules/xstrtold (Makefile.am): Likewise.
26669         * modules/yesno (Makefile.am): Likewise.
26670
26671 2006-10-12  Jim Meyering  <jim@meyering.net>
26672
26673         * m4/getloadavg.m4: Revert the change below.
26674
26675         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
26676         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
26677         fail with a symlink, which is what coreutils' ./bootstrap now
26678         creates by default.
26679
26680 2006-10-12  Bruno Haible  <bruno@clisp.org>
26681
26682         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
26683         mingw.
26684         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
26685         MSVC and mingw explicitly.
26686
26687 2006-10-11  Simon Josefsson  <jas@extundo.com>
26688             Bruno Haible  <bruno@clisp.org>
26689
26690         Add support for multiple gnulib-tool invocations in the scope of a
26691         single configure.ac file.
26692         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
26693         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
26694         with the same contents as the _LIBADD variable.
26695         (func_emit_initmacro_start, func_emit_initmacro_end,
26696         func_emit_initmacro_done): New functions.
26697         (func_import, func_create_testdir): Invoke them. Allow the identifiers
26698         gl_LIBOBJS and gl_LTLIBOBJS.
26699
26700 2006-10-11  Bruno Haible  <bruno@clisp.org>
26701
26702         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
26703         (func_create_testdir): Don't create po/Makefile.am, don't invoke
26704         autoreconf. Instead, invoke autopoint explicitly but move back the
26705         *.m4 files from gnulib.
26706
26707 2006-10-11  Bruno Haible  <bruno@clisp.org>
26708
26709         * gnulib-tool (func_usage): Make module names after --create-testdir
26710         optional.
26711         (func_create_testdir): If no module was specified, use nearly all
26712         modules.
26713
26714 2006-10-12  Jim Meyering  <jim@meyering.net>
26715
26716         Big performance improvement for fts-based tools that use FTS_NOSTAT.
26717         Avoid spurious inode-mismatch problems on non-POSIX file systems.
26718         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
26719         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
26720         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
26721         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
26722         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
26723         (fts_set_stat_required): New function.
26724         (fts_open): Defer the calls to fts_stat, if possible or requested.
26725         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
26726         into fts_stat itself.
26727         (fts_read): Perform any required (deferred) fts_stat call.
26728         (fts_build): Likewise, for the directory we're about to open and read.
26729         In the readdir loop, carefully decide whether each entry will require
26730         an eventual call to fts_stat, using dirent.d_type info if available.
26731         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
26732         a command line argument into this function.  Update all callers.
26733         Map a return value of FTS_DOT to FTS_D for a command line argument.
26734         * modules/fts (Depends-on): Add d-type.  Alphabetize.
26735         Thanks to Miklos Szeredi for his tenacity and for the initial
26736         bug report about "find" failing on a FUSE-based file system.
26737
26738         * lib/fts.c (fts_open): Use consistent indentation.
26739
26740 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
26741
26742         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
26743         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
26744         reported by Jim Meyering.  All uses of cache variables renamed
26745         to match Autoconf's.
26746         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
26747         the other one.
26748
26749         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
26750         Fix misspelling in diagnostic.
26751
26752 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
26753
26754         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
26755         defined.  Problem reported by Matthew Woehlke.
26756
26757         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
26758         Add support for Tandem NonStop R series.
26759         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
26760         Use new macro.
26761
26762         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
26763         (has_trailing_slash): Omit size arg; all callers changed.
26764         Omit 'inline', since it doesn't help performance and we'd
26765         need to configure it.
26766         Don't count //, ///, etc. as having a trailing slash.
26767         As a side effect, this removes a C99ism reported by Matthew Woehlke.
26768         (rpl_rename_dest_slash): On failure, use rename's errno rather
26769         than (in some cases) an incorrect or junk errno.
26770         Simplify code by removing need to compute length; this does
26771         cause it to make two passes instead of one over the file name,
26772         but it's worth it.
26773
26774         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
26775         change, since Autoconf's version may no longer be appropriate now
26776         that we are using CVS Autoconf's version.  Add support for Tandem.
26777
26778 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
26779             Bruno Haible  <bruno@clisp.org>
26780
26781         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
26782         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
26783         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
26784         gl_AC_TYPE_LONG_LONG.
26785
26786         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
26787         instead of HAVE_LONG_LONG.
26788         * lib/printf-args.c (printf_fetchargs): Likewise.
26789         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
26790         * lib/vasnprintf.c (VASNPRINTF): Likewise.
26791         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
26792         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
26793         gl_AC_TYPE_LONG_LONG.
26794
26795 2006-10-11  Bruno Haible  <bruno@clisp.org>
26796
26797         * m4/longlong.m4: Add comments.
26798         * m4/ulonglong.m4: Likewise.
26799
26800 2006-10-10  Bruno Haible  <bruno@clisp.org>
26801
26802         Make it possible to #define stpcpy, strdup to aliases.
26803         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
26804         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
26805
26806 2006-10-10  Bruno Haible  <bruno@clisp.org>
26807
26808         Make it possible to #define gcd to an alias.
26809         * lib/gcd.c: Include config.h.
26810
26811 2006-10-10  Bruno Haible  <bruno@clisp.org>
26812
26813         Make it possible to #define c_isascii to an alias.
26814         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
26815         defined. Undefine the macros before defining them, to avoid gcc
26816         warnings.
26817         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
26818         define NO_C_CTYPE_MACROS early.
26819
26820 2006-10-10  Bruno Haible  <bruno@clisp.org>
26821
26822         Make it possible to #define set_program_name to an alias.
26823         * lib/progname.c: Don't undefine set_program_name; instead, undefine
26824         ENABLE_RELOCATABLE early.
26825
26826 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
26827
26828         Port to Tandem NSK OSS, which has 64-bit signed int but at most
26829         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
26830         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
26831         More generally, don't assume that 64-bit signed int is available
26832         if unsigned int is, and vice versa.
26833         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
26834         unsigned symbols, not on their signed counterparts.
26835         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
26836         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
26837         (UINT64_C, UINTMAX_C):
26838         Likewise.
26839         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
26840         unsigned counterparts.
26841         (Have_long_long, Unsigned): New macros.
26842         (Int): Renamed from INT.
26843         (strtoimax): Use the new macros.
26844         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
26845         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
26846         * modules/inttypes (inttypes.h): Substitute
26847         HAVE_UNSIGNED_LONG_LONG_INT.
26848         * modules/stdint (stdint.h): Likewise.
26849         (Files): Add m4/ulonglong.m4.
26850
26851 2006-10-10  Bruno Haible  <bruno@clisp.org>
26852
26853         Fix a gcc -Wshadow warning.
26854         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
26855         to 'bucket'.
26856         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
26857         gl_linked_indexof_from_to): Likewise.
26858         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
26859         Likewise.
26860         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
26861         Likewise.
26862         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
26863         Reported by Eric Blake.
26864
26865 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
26866
26867         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
26868         for NetBSD.  Problem reported by Bruno Haible.
26869
26870 2006-10-09  Jim Meyering  <jim@meyering.net>
26871
26872         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
26873         Patch from Bruno Haible.
26874
26875 2006-10-09  Jim Meyering  <jim@meyering.net>
26876
26877         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
26878         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
26879         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
26880
26881 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
26882
26883         Don't include <config.h> twice; this doesn't work in some cases,
26884         e.g., when config.h has "#define intmax_t long long int" and
26885         we include <config.h>, <inttypes.h>, <config.h> in that order.
26886         Problem reported by Matthew Woehlke in:
26887         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
26888         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
26889         * lib/fts-cycle.c: Don't include config.h.
26890         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
26891         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
26892         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
26893         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
26894         inttypes.h.
26895         * lib/xstrtoumax.c: Likewise.
26896         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
26897         __strtol and the like, so that this module is more like its siblings.
26898         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
26899         Remove; no longer needed now that we assume gnulib inttypes.h.
26900
26901 2006-10-08  Bruno Haible  <bruno@clisp.org>
26902
26903         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
26904         option.
26905
26906 2006-10-07  Jim Meyering  <jim@meyering.net>
26907
26908         * modules/inttypes (inttypes.h): Revert what seems to have been
26909         an inadvertent part of today's change: use "|", not "/" in the
26910         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
26911
26912 2006-10-07  Bruno Haible  <bruno@clisp.org>
26913
26914         * modules/sublist: New file.
26915
26916 2006-10-07  Bruno Haible  <bruno@clisp.org>
26917
26918         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
26919         * modules/argz (argz.h): Likewise.
26920         * modules/arpa_inet (arpa/inet.h): Likewise.
26921         * modules/byteswap (byteswap.h): Likewise.
26922         * modules/configmake (configmake.h): Likewise.
26923         * modules/fcntl (fcntl.h): Likewise.
26924         * modules/fnmatch (fnmatch.h): Likewise.
26925         * modules/getopt (getopt.h): Likewise.
26926         * modules/glob (glob.h): Likewise.
26927         * modules/inttypes (inttypes.h): Likewise.
26928         * modules/netinet_in (netinet/in.h): Likewise.
26929         * modules/poll (poll.h): Likewise.
26930         * modules/stdbool (stdbool.h): Likewise.
26931         * modules/stdint (stdint.h): Likewise.
26932         * modules/sys_select (sys/select.h): Likewise.
26933         * modules/sys_socket (sys/socket.h): Likewise.
26934         * modules/sys_stat (sys/stat.h): Likewise.
26935         * modules/sysexits (sysexits.h): Likewise.
26936         * modules/unistd (unistd.h): Likewise.
26937         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
26938         Add a "DO NOT EDIT" comment to the generated file.
26939         (func_import): Likewise for gnulib-comp.m4.
26940
26941 2006-10-07  Bruno Haible  <bruno@clisp.org>
26942
26943         * lib/gl_sublist.h: New file.
26944         * lib/gl_sublist.c: New file.
26945
26946 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
26947
26948         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
26949         name (relative to the original working directory) and the file
26950         name component (relative to the temporary working directory).  All
26951         callers changed.
26952         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
26953         * lib/mkdir-p.c (make_dir_parents): Likewise.
26954         * lib/mkdir-p.h (make_dir_parents): Likewise.
26955
26956 2006-10-06  Eric Blake  <ebb9@byu.net>
26957
26958         Define several macros for use by the clean-temp module.
26959         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
26960         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
26961         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
26962
26963         * lib/clean-temp.h (close_stream_temp): New declaration.
26964         * lib/clean-temp.c (includes): Pull in headers according to what
26965         other modules are in use.
26966         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
26967
26968 2006-10-06  Bruno Haible  <bruno@clisp.org>
26969
26970         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
26971         instead of fopen, fwriteerror.
26972
26973 2006-10-06  Bruno Haible  <bruno@clisp.org>
26974
26975         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
26976         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
26977         int.
26978         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
26979         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
26980         Return an error indicator.
26981         Suggested by Eric Blake.
26982
26983 2006-10-06  Bruno Haible  <bruno@clisp.org>
26984
26985         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
26986         Reported by Eric Blake.
26987
26988 2006-10-06  Bruno Haible  <bruno@clisp.org>
26989
26990         * modules/closeout (Description): Mention stderr too.
26991
26992 2006-10-06  Bruno Haible  <bruno@clisp.org>
26993         and Paul Eggert  <eggert@cs.ucla.edu>
26994
26995         * lib/closeout.c (close_stdout): Also close stderr.
26996         * lib/closeout.h: Update comment.
26997
26998 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
26999
27000         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
27001         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
27002         * lib/dirchownmod.c: Include lchown.h.
27003         * lib/lchown.c: Don't include files that lchown.h now includes.
27004         Don't declare chown, since lchown.h now does that.
27005         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
27006         (lchown): Define to rpl_chown if lchown is declared but
27007         does not exist.  Declare using a prototype if lchown is not
27008         declared.  Add a copyright notice.
27009         * lib/mkstemp.h: Include <unistd.h>.
27010         * lib/openat.c: Include lchown.h.
27011
27012         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
27013         we now test for that separately.
27014         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
27015         rather than O_NOFOLLOW, when testing whether it's possible to
27016         avoid a race condition reliably.
27017         * lib/savewd.c (savewd_chdir): Likewise.
27018
27019         Remove macros that are no longer needed now that stdint.h is
27020         reliable.
27021         * lib/fsusage.c (UINTMAX_MAX): Remove.
27022         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
27023         * lib/utimecmp.c (SIZE_MAX): Remove.
27024
27025         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
27026
27027         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
27028         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
27029         O_NOATIME works.
27030
27031 2006-10-05  Bruno Haible  <bruno@clisp.org>
27032
27033         * lib/gl_list.h (gl_sortedlist_search_from_to,
27034         gl_sortedlist_indexof_from_to): New declarations.
27035         (gl_list_implementation): New fields sortedlist_search_from_to,
27036         sortedlist_indexof_from_to.
27037         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
27038         inline functions.
27039         * lib/gl_list.c (gl_sortedlist_search_from_to,
27040         gl_sortedlist_indexof_from_to): New functions.
27041         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
27042         function.
27043         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
27044         (gl_array_sortedlist_search_from_to): New function.
27045         (gl_array_list_implementation): Update.
27046         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
27047         function.
27048         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
27049         (gl_carray_sortedlist_search_from_to): New function.
27050         (gl_carray_list_implementation): Update.
27051         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
27052         gl_linked_sortedlist_indexof_from_to): New functions.
27053         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
27054         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
27055         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
27056         gl_tree_sortedlist_indexof_from_to): New functions.
27057         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
27058         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
27059         Update.
27060         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
27061         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
27062         Update.
27063
27064 2006-10-05  Bruno Haible  <bruno@clisp.org>
27065
27066         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
27067         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
27068         (struct gl_list_implementation): Add fields search_from_to,
27069         indexof_from_to. Remove fields search, indexof.
27070         (gl_list_search): Use the search_from_to method.
27071         (gl_list_search_from, gl_list_search_from_to): New functions.
27072         (gl_list_indexof): Use the indexof_from_to method.
27073         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
27074         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
27075         (gl_list_search_from, gl_list_search_from_to): New functions.
27076         (gl_list_indexof): Use the indexof_from_to method.
27077         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
27078         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
27079         gl_array_indexof. Add start_index, end_index arguments.
27080         (gl_array_search_from_to): Renamed from gl_array_search. Add
27081         start_index, end_index arguments.
27082         (gl_array_remove, gl_array_list_implementation): Update.
27083         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
27084         gl_carray_indexof. Add start_index, end_index arguments.
27085         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
27086         start_index, end_index arguments.
27087         (gl_carray_remove, gl_carray_list_implementation): Update.
27088         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
27089         gl_linked_search. Add start_index, end_index arguments.
27090         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
27091         start_index, end_index arguments.
27092         (gl_linked_remove): Update.
27093         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
27094         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
27095         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
27096         field to 'size_t'.
27097         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
27098         gl_tree_search. Add start_index, end_index arguments.
27099         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
27100         start_index, end_index arguments.
27101         (gl_tree_remove): Update.
27102         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
27103         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
27104         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
27105         function.
27106         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
27107         gl_tree_search. Add start_index, end_index arguments.
27108         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
27109         start_index, end_index arguments.
27110         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
27111         Update.
27112         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
27113
27114 2006-10-05  Bruno Haible  <bruno@clisp.org>
27115
27116         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
27117
27118         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
27119         fwriteerror_temp): New declarations.
27120         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
27121         (descriptors): New variable.
27122         (cleanup): First, close the descriptors.
27123         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
27124         fclose_temp, fwriteerror_temp): New functions.
27125
27126 2006-10-04  Jim Meyering  <jim@meyering.net>
27127
27128         * lib/fts.c (fts_open): Tiny comment change.
27129
27130 2006-10-04  Bruno Haible  <bruno@clisp.org>
27131
27132         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
27133         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
27134         gl_LOCK_BODY.
27135         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
27136         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
27137         gl_LOCK_EARLY_BODY.
27138         (gl_LOCK): Require gl_LOCK_BODY.
27139
27140 2006-10-04  Bruno Haible  <bruno@clisp.org>
27141
27142         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
27143         (gl_oset_search_atleast): New declaration.
27144         (struct gl_oset_implementation): Add field 'search_atleast'.
27145         (gl_oset_search_atleast): New inline function.
27146         * lib/gl_oset.c (gl_oset_search_atleast): New function.
27147         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
27148         (gl_array_oset_implementation): Update.
27149         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
27150         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
27151         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
27152
27153 2006-10-04  Bruno Haible  <bruno@clisp.org>
27154
27155         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
27156
27157 2006-10-03  Bruno Haible  <bruno@clisp.org>
27158
27159         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
27160         from gl_avltreehash_list_implementation.
27161
27162 2006-10-03  Bruno Haible  <bruno@clisp.org>
27163
27164         * lib/gl_oset.c (gl_oset_add): Fix return type.
27165
27166 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
27167
27168         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
27169
27170 2006-10-02  Eric Blake  <ebb9@byu.net>
27171
27172         * modules/strnlen (Depends-on): Add extensions.
27173
27174 2006-10-02  Eric Blake  <ebb9@byu.net>
27175
27176         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
27177         definition in 2.60+.
27178
27179 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
27180
27181         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
27182         checks.
27183
27184 2006-10-02  Bruno Haible  <bruno@clisp.org>
27185
27186         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
27187         to the AUTOMAKE_OPTIONS.
27188         Reported by Jim Meyering.
27189
27190 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
27191
27192         Work around bug in Solaris 10 /proc file system:
27193         /proc/self/fd/NNN/.. isn't the parent directory of
27194         the directory whose file descriptor is NNN.  This needs to
27195         be worked around at run time, not compile time, since a
27196         program might be built on Solaris 8, where things work, and
27197         run on Solaris 10.
27198         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
27199         to use the following interface instead:
27200         (OPENAT_BUFFER_SIZE): New macro.
27201         (openat_proc_name): New function.
27202         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
27203         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
27204         Likewise.
27205         * lib/openat-proc.c: New file.
27206         * modules/openat (Files): Add lib/openat-proc.c.
27207         (Depends-on): Add same-inode, stdbool.
27208         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
27209
27210 2006-09-29  Bruno Haible  <bruno@clisp.org>
27211
27212         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
27213         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
27214         argument. Set stdout_closed before testing for ferror, not after.
27215         (fwriteerror, fwriteerror_no_ebadf): New functions.
27216
27217 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27218
27219         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
27220
27221 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
27222
27223         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
27224         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
27225
27226 2006-09-28  Jim Meyering  <jim@meyering.net>
27227
27228         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
27229         Include <unistd.h>.
27230
27231 2006-09-28  Bruno Haible  <bruno@clisp.org>
27232
27233         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
27234         * modules/linkedhash-list (Depends-on): Likewise.
27235         * modules/rbtreehash-list (Depends-on): Likewise.
27236
27237 2006-09-28  Bruno Haible  <bruno@clisp.org>
27238
27239         * lib/strndup.h: Simplify the redefinition of strndup.
27240         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
27241         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
27242
27243 2006-09-28  Bruno Haible  <bruno@clisp.org>
27244
27245         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
27246         * lib/gl_linkedhash_list.c: Likewise.
27247         * lib/gl_rbtreehash_list.c: Likewise.
27248
27249 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
27250
27251         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
27252         getaddrinfo.
27253
27254         * lib/__fpending.h: Don't include <stdio_ext.h> unless
27255         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
27256         it causes <stdio_ext.h> to cause a compile-time error.
27257         Problem reported by Nelson H. F. Beebe.
27258         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
27259         of HAVE_DECL___PENDING.
27260
27261         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
27262         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
27263         declaration.
27264
27265 2006-09-27  Jim Meyering  <jim@meyering.net>
27266
27267         This file could end up with a definition for a function
27268         named __strndup, rather than rpl_strndup on a system with
27269         incomplete weak_alias support.
27270         * lib/strndup.c (strndup): Rename from __strndup.
27271         Remove #defines that used to map __strndup to strndup.
27272         Don't use K&R prototypes.
27273         Remove LIBC-related code, since this file is not sync'd with glibc.
27274         * lib/strndup.h: Revamp, accordingly.
27275         * m4/strndup.m4: Modernize.
27276
27277 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
27278
27279         * modules/savewd (Depends-on): Add 'raise'.
27280         * lib/savewd.c: Include <signal.h>, for 'raise'.
27281
27282 2006-09-26  Jim Meyering  <jim@meyering.net>
27283
27284         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
27285         when we detect Darwin 8.7.0's acl_get_file bug.
27286         Rearrange to perform the new (below) run-test while $LIBS
27287         contains any acl-related library.  Set USE_ACL at the end.
27288         (gl_ACL_GET_FILE): New function.
27289
27290 2006-09-26  Eric Blake  <ebb9@byu.net>
27291
27292         * lib/verror.c: Include <config.h> unconditionally.
27293
27294 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
27295
27296         * modules/clock-time (Maintainer): Add self.
27297         * modules/getlogin_r (Depends-on): Add extensions.
27298
27299 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27300
27301         * modules/clock-time: New module.
27302         * modules/nanosleep (Depends-on): Add clock-time.
27303         * modules/gethrxtime (Depends-on): Likewise.
27304         * modules/gettime (Depends-on): Likewise.
27305         * modules/settime (Depends-on): Likewise.
27306
27307         * modules/fts-lgpl: Depend on openat.
27308         * modules/mkancesdirs: Depend on savewd.
27309         * modules/mkdir-p: Likewise.
27310
27311 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27312
27313         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
27314
27315         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
27316         `gl_have_arbitrary_file_name_length_limit' to
27317         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
27318         actually works between configure runs.
27319
27320 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27321             Bruno Haible  <bruno@clisp.org>
27322
27323         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
27324
27325 2006-09-25  Jim Meyering  <jim@meyering.net>
27326
27327         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
27328         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
27329
27330 2006-09-25  Eric Blake  <ebb9@byu.net>
27331
27332         * gnulib-tool (func_import, func_create_testdir): Fix typos in
27333         exec's in 2006-09-18 patch when shuffling fds.
27334
27335 2006-09-25  Bruno Haible  <bruno@clisp.org>
27336
27337         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
27338         Reported by Jim Meyering.
27339
27340 2006-09-24  Jim Meyering  <jim@meyering.net>
27341
27342         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
27343         compare a pointer against a literal "0".  That caused failures with
27344         at least HP-UX's hpcc.
27345
27346 2006-09-22  Simon Josefsson  <jas@extundo.com>
27347
27348         * modules/gc-sha1:
27349         * modules/gc-md4:
27350         * modules/gc-hmac-sha1:
27351         * modules/gc-hmac-md5:
27352         * modules/gc-des:
27353         * modules/gc-arcfour: Distribute more files.
27354
27355 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27356
27357         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
27358         (gl_linked_iterator_from_to): Initialize struct completely.
27359         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
27360         (gl_tree_iterator_from_to): Likewise
27361         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
27362         * lib/gl_array_list.c [lint] (gl_array_iterator)
27363         (gl_array_iterator_from_to): Likewise.
27364         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
27365         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
27366         (gl_carray_iterator_from_to): Likewise.
27367
27368         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
27369         * lib/md4.c (md4_process_block): Remove unused variable.
27370         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
27371         parentheses for clarity.
27372
27373 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27374
27375         * modules/bison-i18n (Depends-on): Add gettext.
27376
27377 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27378
27379         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
27380         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
27381         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
27382         also add missing comma that caused broken test.
27383         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
27384         stdlib.h, for `abort'.
27385         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
27386         variables.
27387         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
27388         include unistd.h if present, for `rmdir'.
27389         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
27390         variables.
27391         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
27392         in the process include standard headers for prototypes.
27393         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
27394         gets declared on GNU/Linux.
27395         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
27396         unistd.h, for `rmdir'.
27397         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
27398
27399         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
27400         always true.
27401         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
27402
27403         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
27404
27405 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27406
27407         * gnulib-tool (func_version): Create output all at once.  This
27408         may help avoid triggering unnecessary SIGPIPEs, and at any
27409         rate it doesn't hurt.
27410
27411 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27412             Bruno Haible  <bruno@clisp.org>
27413
27414         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
27415         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
27416         * m4/signed.m4 (bh_C_SIGNED): Likewise.
27417
27418         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
27419         (gl_FUNC_VASPRINTF): Invoke it.
27420
27421 2006-09-22  Bruno Haible  <bruno@clisp.org>
27422
27423         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
27424         getloadavg.c as first argument.
27425
27426 2006-09-22  Bruno Haible  <bruno@clisp.org>
27427
27428         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
27429         at the beginning of the gl_INIT macro.
27430         * modules/getloadavg (configure.ac): Pass $gl_source_base to
27431         gl_GETLOADAVG.
27432
27433 2006-09-22  Bruno Haible  <bruno@clisp.org>
27434
27435         * gnulib-tool (func_create_megatestdir): Don't include the config-h
27436         module.
27437         Suggested by Ralf Wildenhues.
27438
27439 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
27440
27441         Import this patch from libc:
27442
27443         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
27444
27445         * lib/regex_internal.c (re_string_reconstruct): Handle
27446         offset < pstr->valid_raw_len && pstr->offsets_needed case.
27447         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
27448         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
27449         re_string_context_at.
27450
27451         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
27452         now requires it.
27453         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
27454         gl_REGEX now does it for us.
27455         (gl_REGEX): Add test taken from
27456         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
27457
27458         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
27459         Check that large offsets work.  Modernize Autoconf usages.
27460         Prefer "yes" to mean a good thing rather than a bad.
27461         Don't put "#define mkstemp" in config.h, as this might interfere
27462         with standard system headers that "#define mkstemp mkstemp64".
27463
27464         * modules/mkstemp (Depends-on): Add extensions, so that
27465         mkstemp is visible on some platforms.
27466         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
27467         (Include): Change to "mkstemp.h" from <stdlib.h>.
27468         (Files): Add mkstemp.h.
27469
27470         * lib/mkstemp.h: New file, since some standard headers
27471         #define mkstemp.
27472         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
27473         Include "mkstemp.h".
27474         Make the _LIBC code resemble glibc original more,
27475         e.g., use K&R style.
27476         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
27477         (mkstemp): Remove, since mkstemp.h does this for us.
27478         * lib/stdlib--.h: Include mkstemp.h.
27479
27480         Import this patch from libc:
27481
27482         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
27483
27484         * lib/tempname.c (__gen_tempname): Change attempts_min
27485         into a macro.  Use preprocessor to decide how to initialize
27486         attempts [Coverity CID 67].
27487
27488 2006-09-20  Bruno Haible  <bruno@clisp.org>
27489
27490         * lib/mkdtemp.c: Import from libc.
27491         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
27492                 * sysdeps/posix/tempname.c (__gen_tempname): Change
27493                 attempts_min into a macro.  Use preprocessor to decide how to
27494                 initialize attempts [Coverity CID 67].
27495         2001-11-27  Paul Eggert  <eggert@twinsun.com>
27496                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
27497                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
27498
27499 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27500
27501         * gnulib-tool (func_exit): New function, to allow to pass the
27502         exit status portably through the trap.  Use everywhere.
27503         (--help, --version): Signal a write error.
27504         (trap): catch SIGPIPE, for write errors.
27505         Exit at the end of the trap, with the correct exit status.
27506
27507 2006-09-19  Karl Berry  <karl@gnu.org>
27508
27509         * doc/gnulib.texi: note about the license texinfo files.
27510
27511 2006-09-19  Eric Blake  <ebb9@byu.net>
27512
27513         * gnulib-tool: Avoid space-tab.
27514
27515 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
27516
27517         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
27518         that prevented coreutils 6.1 from building.  Problem reported
27519         by Petter Reinholdtsen.
27520
27521 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
27522
27523         * gnulib-tool (avoidlist): Fix typo that broke options like
27524         --avoid=lock that are used by coreutils bootstrap.
27525
27526 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
27527
27528         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
27529         more systematically.
27530
27531 2006-09-18  Jim Meyering  <jim@meyering.net>
27532
27533         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
27534
27535 2006-09-18  Bruno Haible  <bruno@clisp.org>
27536
27537         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
27538
27539 2006-09-18  Bruno Haible  <bruno@clisp.org>
27540
27541         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
27542         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
27543         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
27544         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
27545         * m4/gettext.m4: Require autoconf >= 2.52.
27546         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
27547         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
27548         of gl_cv_header_inttypes_h.
27549
27550 2006-09-18  Bruno Haible  <bruno@clisp.org>
27551
27552         * lib/javaversion.c: Include configmake.h.
27553
27554 2006-09-18  Bruno Haible  <bruno@clisp.org>
27555
27556         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
27557         avoid that the while loops be executed in a subshell.
27558
27559 2006-09-18  Bruno Haible  <bruno@clisp.org>
27560
27561         * MODULES.html.sh (func_module): Break long lines.
27562         Suggested by Bruce Korb <bkorb@gnu.org>.
27563
27564 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27565
27566         Speed up by a factor of 1.12.
27567         * gnulib-tool (nl): New variable.
27568         (func_import): Rewrite include directive extraction to only read each
27569         directive once.
27570
27571 2006-09-17  Bruno Haible  <bruno@clisp.org>
27572
27573         * modules/javaversion (Makefile.am): Remove DEFS setting.
27574         (Depends-on): Add configmake, for PKGDATADIR definition.
27575
27576 2006-09-17  Bruno Haible  <bruno@clisp.org>
27577
27578         * gnulib-tool (func_create_testdir): Rewrite all files at once.
27579
27580 2006-09-17  Bruno Haible  <bruno@clisp.org>
27581
27582         * gnulib-tool (func_append): New function, stolen from libtool.m4.
27583         (func_modules_transitive_closure, func_modules_add_dummy,
27584         func_modules_to_filelist, func_import, func_create_testdir,
27585         func_create_megatestdir, ...): Use it wherever possible.
27586         Suggested by Ralf Wildenhues.
27587
27588 2006-09-16  Karl Berry  <karl@gnu.org>
27589
27590         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
27591         to avoid sectioning errors.
27592         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
27593         [ifinfo]: blank line after @center-ed titles.
27594         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
27595         Spell FSF address consistently with others.
27596         (These changes approved by rms.)
27597
27598 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27599
27600         Speed up by a factor of 1.61.
27601         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
27602         already checked module names again.
27603
27604 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27605
27606         Speed up by a factor of 1.13.
27607         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
27608         for new_files, and the input to func_add_or_update.
27609
27610 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27611
27612         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
27613         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
27614
27615 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
27616
27617         * modules/mkancesdirs (Depends-on): Add fcntl.
27618         * modules/savewd: New file.
27619         * MODULES.html.sh (File system functions): Add savewd.
27620
27621         * modules/configmake (Makefile.am): Add support for the
27622         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
27623
27624 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
27625
27626         * m4/savewd.m4: New file.
27627
27628 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
27629
27630         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
27631         (dirchownmod): New arg FD.  All callers changed.
27632         Use FD rather than opening the directory ourself, as opening is
27633         now the caller's responsibility.
27634         * lib/dirchownmod.h: Likewise.
27635         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
27636         hosts that require <sys/types.h> before <sys/stat.h>.  Include
27637         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
27638         (test_dir): Remove.
27639         (mkancesdirs): Return length of prefix of FILE that has already
27640         been made, or -2 if there is a child doing the work.  Redo
27641         algorithm so that it is O(N) rather than O(N**2).  Optimize away
27642         ".", and treat ".." specially since it might stray back into
27643         already-created areas.  Use a subprocess if necessary.  New arg
27644         WD; all users changed.  MAKE_DIR function should now return 1
27645         if it creates a directory that is not readable.  Return -2 if
27646         a child process is spun off.
27647         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
27648         Adjust signature to match code.
27649         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
27650         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
27651         all users changed.
27652         * lib/savewd.c, lib/savewd.h: New files.
27653
27654 2006-09-15  Jim Meyering  <jim@meyering.net>
27655
27656         * modules/rename-dest-slash: New module.
27657         * MODULES.html.sh (posix_compat): Add it here.
27658
27659         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
27660
27661 2006-09-15  Jim Meyering  <jim@meyering.net>
27662
27663         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
27664         file.
27665
27666         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
27667
27668 2006-09-15  Jim Meyering  <jim@meyering.net>
27669
27670         * lib/rename-dest-slash.c (has_trailing_slash): Use
27671         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
27672         (rpl_rename_dest_slash): Perform the cheaper trailing slash
27673         test before testing whether SRC is a directory.
27674         Suggestions from Bruno Haible.
27675
27676         Avoid a warning about an unused variable.
27677         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
27678         into the #ifdef block where it's used.
27679
27680         * lib/rename-dest-slash.c: New file.
27681
27682 2006-09-14  Bruno Haible  <bruno@clisp.org>
27683
27684         * lib/allocsa.c: Include <config.h> unconditionally.
27685         * lib/asnprintf.c: Likewise.
27686         * lib/asprintf.c: Likewise.
27687         * lib/c-strcasecmp.c: Likewise.
27688         * lib/c-strcasestr.c: Likewise.
27689         * lib/c-strncasecmp.c: Likewise.
27690         * lib/c-strstr.c: Likewise.
27691         * lib/classpath.c: Likewise.
27692         * lib/clean-temp.c: Likewise.
27693         * lib/concatpath.c: Likewise.
27694         * lib/copy-file.c: Likewise.
27695         * lib/csharpcomp.c: Likewise.
27696         * lib/csharpexec.c: Likewise.
27697         * lib/execute.c: Likewise.
27698         * lib/fatal-signal.c: Likewise.
27699         * lib/findprog.c: Likewise.
27700         * lib/fwriteerror.c: Likewise.
27701         * lib/gl_array_list.c: Likewise.
27702         * lib/gl_array_oset.c: Likewise.
27703         * lib/gl_avltree_list.c: Likewise.
27704         * lib/gl_avltree_oset.c: Likewise.
27705         * lib/gl_avltreehash_list.c: Likewise.
27706         * lib/gl_carray_list.c: Likewise.
27707         * lib/gl_linked_list.c: Likewise.
27708         * lib/gl_linkedhash_list.c: Likewise.
27709         * lib/gl_list.c: Likewise.
27710         * lib/gl_oset.c: Likewise.
27711         * lib/gl_rbtree_list.c: Likewise.
27712         * lib/gl_rbtree_oset.c: Likewise.
27713         * lib/gl_rbtreehash_list.c: Likewise.
27714         * lib/imaxabs.c: Likewise.
27715         * lib/imaxdiv.c: Likewise.
27716         * lib/javacomp.c: Likewise.
27717         * lib/javaexec.c: Likewise.
27718         * lib/javaversion.c: Likewise.
27719         * lib/linebreak.c: Likewise.
27720         * lib/localcharset.c: Likewise.
27721         * lib/lock.c: Likewise.
27722         * lib/mbchar.c: Likewise.
27723         * lib/mbswidth.c: Likewise.
27724         * lib/mkdtemp.c: Likewise.
27725         * lib/pipe.c: Likewise.
27726         * lib/printf-args.c: Likewise.
27727         * lib/printf-parse.c: Likewise.
27728         * lib/progname.c: Likewise.
27729         * lib/progreloc.c: Likewise.
27730         * lib/readlink.c: Likewise.
27731         * lib/sh-quote.c: Likewise.
27732         * lib/stpcpy.c: Likewise.
27733         * lib/stpncpy.c: Likewise.
27734         * lib/strcasecmp.c: Likewise.
27735         * lib/strcasestr.c: Likewise.
27736         * lib/strcspn.c: Likewise.
27737         * lib/striconv.c: Likewise.
27738         * lib/strncasecmp.c: Likewise.
27739         * lib/strnlen1.c: Likewise.
27740         * lib/strstr.c: Likewise.
27741         * lib/strtok_r.c: Likewise.
27742         * lib/tls.c: Likewise.
27743         * lib/tmpdir.c: Likewise.
27744         * lib/unicodeio.c: Likewise.
27745         * lib/unsetenv.c: Likewise.
27746         * lib/vasnprintf.c: Likewise.
27747         * lib/vasprintf.c: Likewise.
27748         * lib/wait-process.c: Likewise.
27749         * lib/xallocsa.c: Likewise.
27750         * lib/xsetenv.c: Likewise.
27751         * lib/xstriconv.c: Likewise.
27752
27753 2006-09-13  Simon Josefsson  <jas@extundo.com>
27754
27755         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
27756         that internally, suggested by Ralf Wildenhues
27757         <Ralf.Wildenhues@gmx.de>.
27758
27759 2006-09-13  Simon Josefsson  <jas@extundo.com>
27760
27761         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
27762         @LIBOBJS@.
27763         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27764
27765 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
27766
27767         * lib/_fpending.c: Include <config.h> unconditionally, since we no
27768         longer worry about uses that don't define HAVE_CONFIG_H.
27769         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
27770         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
27771         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
27772         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
27773         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
27774         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
27775         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
27776         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
27777         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
27778         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
27779         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
27780         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
27781         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
27782         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
27783         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
27784         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
27785         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
27786         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
27787         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
27788         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
27789         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
27790         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
27791         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
27792         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
27793         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
27794         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
27795         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
27796         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
27797         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
27798         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
27799         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
27800         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
27801         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
27802         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
27803         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
27804         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
27805         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
27806         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
27807         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
27808         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
27809         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
27810         Likewise.
27811
27812 2006-09-13  Eric Blake  <ebb9@byu.net>
27813
27814         * lib/getopt.c: Fix typo in last commit.
27815
27816 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
27817
27818         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
27819         dgettext.
27820
27821 2006-09-12  Jim Meyering  <jim@meyering.net>
27822
27823         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
27824         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
27825         Reported by Nelson H. F. Beebe.
27826
27827 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
27828
27829         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
27830         program_invocation_name and program_invocation_short_name are
27831         initialized.
27832         * lib/argp-namefrob.h: Move declarations of program_invocation_name
27833         and program_invocation_short_name to argp.h, so they are visible
27834         to user programs.
27835         * lib/argp.h: Likewise
27836
27837 2006-09-10  Bruno Haible  <bruno@clisp.org>
27838
27839         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
27840         m4/inttypes_h.m4, m4/uintmax_t.m4.
27841
27842 2006-09-10  Bruno Haible  <bruno@clisp.org>
27843
27844         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
27845         gl_AC_TYPE_UINTMAX_T.
27846
27847 2006-09-10  Bruno Haible  <bruno@clisp.org>
27848
27849         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
27850
27851 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
27852
27853         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
27854         convention.  Text proposed by Bruno Haible.
27855         (struct argp_option): Document the use of N_() wrappers.
27856
27857         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
27858         '\v', and translate the two parts separately, instead of feeding
27859         the whole string to gettext.  This allows to exclude
27860         '\v' from the strings visible to the translator by writing doc
27861         strings as N_("..") "\v" N_("..").
27862
27863 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
27864
27865         * config/srclist.txt: Undo latest change; the bug was fixed.
27866
27867 2006-09-09  Bruno Haible  <bruno@clisp.org>
27868
27869         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
27870         assignments if building a library without libtool.
27871         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
27872         in func_emit_lib_Makefile_am.
27873         (func_import): When building a static library libfoo.a, arrange to
27874         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
27875         (func_create_testdir): Likewise.
27876         * modules/gc (configure.ac, Makefile.am): If building statically,
27877         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
27878         * modules/iconvme (configure.ac, Makefile.am): Likewise.
27879         * modules/striconv (configure.ac, Makefile.am): Likewise.
27880         Based on a suggestion by Ralf Wildenhues.
27881
27882 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27883
27884         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
27885         Check for unistd.h too, since Autoconf doesn't assume POSIX.
27886         Also:
27887
27888         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27889         Add year_2050_test to catch glibc bug 2821
27890         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
27891
27892         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27893         Prefer #ifdef to #if.
27894
27895         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
27896         Return from 'main' instead of calling 'exit'.
27897
27898 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27899
27900         * lib/mktime.c (guess_time_tm): Fix bug where mktime
27901         returned the maximum time_t value rather than (time_t) -1.
27902         Problem originally reported by William Bardwell
27903         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
27904
27905         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
27906         Moved to here ...
27907         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
27908         ... from here.
27909
27910 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27911
27912         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
27913         2821 is fixed.
27914
27915 2006-09-08  Jim Meyering  <jim@meyering.net>
27916
27917         Don't make generated files read-only.  That would bother too many
27918         people.  However, do retain the ability to work when targets are
27919         read-only: remove the destination and temporary files before writing
27920         them (when generated via sed or echo), or by using the -f option for
27921         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
27922         * modules/alloca-opt, modules/argz, modules/arpa_inet:
27923         * modules/byteswap, modules/configmake, modules/fcntl:
27924         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
27925         * modules/localcharset, modules/netinet_in, modules/poll:
27926         * modules/stdbool, modules/stdint, modules/sys_select:
27927         * modules/sys_socket, modules/sys_stat, modules/sysexits:
27928
27929 2006-09-08  Jim Meyering  <jim@meyering.net>
27930
27931         Avoid new build failure on FreeBSD 6.0.
27932         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
27933         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
27934         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
27935
27936 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27937
27938         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
27939
27940 2006-09-07  Jim Meyering  <jim@meyering.net>
27941
27942         Fix global typo in last change: use chmod u-w, not chmod u-x.
27943         Spotted by Paul Eggert and Bruce Korb.
27944         * modules/alloca-opt, modules/argz, modules/arpa_inet:
27945         * modules/byteswap, modules/configmake, modules/fcntl:
27946         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
27947         * modules/localcharset, modules/netinet_in, modules/poll:
27948         * modules/stdbool, modules/stdint, modules/sys_select:
27949         * modules/sys_socket, modules/sys_stat, modules/sysexits:
27950
27951 2006-09-06  Jim Meyering  <jim@meyering.net>
27952
27953         Make generated files be read-only.
27954         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
27955         Ensure that each generated file is now read-only.
27956         * modules/argz: Likewise.
27957         * modules/arpa_inet: Likewise.
27958         * modules/byteswap: Likewise.
27959         * modules/configmake: Likewise.
27960         * modules/fcntl: Likewise.
27961         * modules/fnmatch: Likewise.
27962         * modules/getopt: Likewise.
27963         * modules/glob: Likewise.
27964         * modules/inttypes: Likewise.
27965         * modules/netinet_in: Likewise.
27966         * modules/poll: Likewise.
27967         * modules/stdbool: Likewise.
27968         * modules/stdint: Likewise.
27969         * modules/sys_select: Likewise.
27970         * modules/sys_socket: Likewise.
27971         * modules/sys_stat: Likewise.
27972         * modules/sysexits: Likewise.
27973         * modules/localcharset: Same as above, but continue using temporary
27974         file named "t-$@" (why different?) rather than the "$@-t" used
27975         everywhere else.
27976
27977         * modules/sysexits (Makefile.am): Replace literal occurrences
27978         of "sysexit.h" more readable, and more consistent, "$@".
27979
27980 2006-09-06  Bruno Haible  <bruno@clisp.org>
27981
27982         * modules/striconv: New file.
27983         * modules/xstriconv: New file.
27984         * MODULES.html.sh (Internationalization functions): Add striconv,
27985         xstriconv.
27986
27987 2006-09-06  Bruno Haible  <bruno@clisp.org>
27988
27989         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
27990         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
27991         not using libtool correctly.
27992
27993 2006-09-06  Bruno Haible  <bruno@clisp.org>
27994
27995         * lib/striconv.h: New file.
27996         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
27997         iconvstring.c.
27998         * lib/xstriconv.h: New file.
27999         * lib/xstriconv.c: New file.
28000
28001 2006-09-06  Bruno Haible  <bruno@clisp.org>
28002
28003         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
28004         lib_..._LDFLAGS.
28005
28006 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28007
28008         * lib/argz_.h: Sync from Libtool.
28009
28010         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
28011                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
28012
28013         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
28014
28015 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
28016
28017         * modules/trim: New file.
28018
28019 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
28020
28021         * lib/trim.h: New file.
28022         * lib/trim.c: New file.
28023
28024 2006-09-05  Bruno Haible  <bruno@clisp.org>
28025
28026         * MODULES.html.sh (String handling): Add trim.
28027
28028 2006-09-04  Karl Berry  <karl@gnu.org>
28029
28030         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
28031         until next release.
28032
28033 2006-09-03  Bruno Haible  <bruno@clisp.org>
28034
28035         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
28036         correctly.
28037
28038 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
28039
28040         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
28041         not gl_GETLOADAVG.  Omit unneeded semicolons.
28042         Problems reported by Ralf Wildenhues in
28043         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
28044         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
28045         at the end, which is the usual gnulib style.
28046
28047         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
28048         of doing all the work ourselves.
28049         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
28050         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
28051
28052 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
28053
28054         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
28055         Problem reported by Ralf Wildenhues in
28056         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
28057
28058         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
28059         HAVE_STRUCT_STATFS_F_FSTYPENAME.
28060
28061 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
28062
28063         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
28064         yesterday's patch by changing test -n to test -z.
28065
28066 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28067
28068         * modules/getloadavg (Files): Add m4/getloadavg.m4.
28069         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
28070         the former is now obsolescent.
28071
28072         * modules/chdir-long (Depends-on): Add fcntl.
28073
28074 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28075
28076         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
28077         obsolescent, and programs should use gnulib instead.
28078         * m4/getloadavg.m4: New file, with contents taken from Autoconf
28079         but with prefixes changed.
28080
28081 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
28082
28083         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
28084         or stdbool.h, because they might not exist while configuring.
28085
28086         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
28087         Don't include unistd.h or limits.h; not needed, since chdir-long.h
28088         does that for us.
28089         (O_DIRECTORY): Remove.
28090
28091 2006-08-31  Eric Blake  <ebb9@byu.net>
28092
28093         * gnulib-tool: Don't let emacs change spaces to TAB.
28094
28095 2006-08-31  Bruno Haible  <bruno@clisp.org>
28096
28097         * gnulib-tool: When calling func_import more than once, do it in a
28098         subshell.
28099         Reported by Eric Blake <ebb9@byu.net>.
28100
28101 2006-08-31  Bruno Haible  <bruno@clisp.org>
28102
28103         * gnulib-tool (nl): Remove variable.
28104         (sed_transform_lib_file): Use more robust test for config-h module.
28105         (func_import): Fix typo in 2006-08-25 patch.
28106
28107 2006-08-31  Bruno Haible  <bruno@clisp.org>
28108
28109         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
28110         specified, augment Makefile.am variables instead of assigning them.
28111
28112 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
28113
28114         Work around a bug in both the Linux and SunOS 64-bit kernels:
28115         nanosleep mishandles sleeps for longer than 2**31 seconds.
28116         Problem reported by Frank v Waveren in
28117         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
28118         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
28119         Check for nanosleep bug.
28120         (LIB_NANOSLEEP): Append clock_gettime library if needed.
28121
28122 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
28123
28124         Work around a bug in both the Linux and SunOS 64-bit kernels:
28125         nanosleep mishandles sleeps for longer than 2**31 seconds.
28126         Problem reported by Frank v Waveren in
28127         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
28128         * lib/nanosleep.c (BILLION): New constant.
28129         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
28130         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
28131         implementation.
28132
28133 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
28134
28135         * modules/nanosleep (Depends-on): Add gettime.
28136
28137 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
28138         and Simon Josefsson  <jas@extundo.com>
28139         and Oskar Liljeblad  <oskar@osk.mine.nu>
28140
28141         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
28142         * gnulib-tool (func_import): New license type 'unmodifiable license
28143         text'.
28144         * modules/fdl: Use it.  Longer description.
28145         * module/gpl, module/lgpl: New files.
28146
28147 2006-08-30  Jim Meyering  <jim@meyering.net>
28148
28149         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
28150         shadowing the parameter.
28151
28152 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28153
28154         Sync from Libtool:
28155
28156         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28157
28158         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
28159         sharing with gnulib.  Report by Eric Blake.
28160
28161 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
28162
28163         * modules/isapipe: New file.
28164         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
28165
28166 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
28167
28168         * modules/configmake (Makefile.am): Add a comment, and omit
28169         the CONFIGMAKE_ prefix from generated macro names.  Suggested
28170         by Bruno Haible.
28171
28172 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
28173
28174         * m4/isapipe.m4: New file.
28175
28176 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
28177
28178         * lib/isapipe.c, lib/isapipe.h: New files.
28179
28180 2006-08-29  Jim Meyering  <jim@meyering.net>
28181
28182         * modules/configmake (Makefile.am): Make configmake.h depend on
28183         Makefile.  Otherwise, a stale configmake.h could hang around.
28184
28185 2006-08-29  Eric Blake  <ebb9@byu.net>
28186
28187         * lib/error.c (error_at_line, print_errno_message): Match libc, after
28188         resolution of upstream bug 3044.
28189
28190 2006-08-29  Bruno Haible  <bruno@clisp.org>
28191
28192         * modules/localcharset (Depends-on): Add configmake.
28193         (Makefile.am): Remove setting of LIBDIR through DEFS.
28194
28195 2006-08-29  Bruno Haible  <bruno@clisp.org>
28196
28197         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
28198         defined.
28199
28200 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
28201
28202         * modules/fcntl: New file.
28203         * modules/chdir-safer (Depends-on): Add fcntl.
28204         * modules/fts: Likewise.
28205         * modules/mkdir-p: Likewise.
28206
28207         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
28208         This undoes the most recent change, since we're now addressing the
28209         problem in a different way.
28210
28211         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
28212         into output, since the output might be called Makefile.am even
28213         if $makefile_name is something different.
28214         (func_import): Use $makefile_am rather than
28215         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
28216         empty.
28217
28218         * modules/inttypes (Files): Add m4/inttypes-h.m4.
28219
28220 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
28221
28222         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
28223         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
28224         recent change to stdint.m4, since we're now addressing the problem in a
28225         different way.
28226
28227 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
28228
28229         * m4/fcntl_h.m4: New file.
28230
28231 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
28232
28233         * lib/fcntl_.h: New file.
28234         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
28235         the fcntl module.
28236         * lib/dirchownmod.c: Likewise.
28237         * lib/fts.c: Likewise.
28238
28239         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
28240         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
28241         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
28242         just before including <inttypes.h>, to avoid circular inclusion.
28243
28244 2006-08-28  Jim Meyering  <jim@meyering.net>
28245
28246         * doc/visibility.texi: Actually read and correct the grammar of the
28247         sentence affected by yesterday's change.
28248
28249 2006-08-28  Eric Blake  <ebb9@byu.net>
28250
28251         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
28252         needs wrapper.
28253
28254 2006-08-28  Eric Blake  <ebb9@byu.net>
28255
28256         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
28257
28258 2006-08-28  Eric Blake  <ebb9@byu.net>
28259
28260         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
28261
28262 2006-08-28  Bruno Haible  <bruno@clisp.org>
28263
28264         * modules/c-strstr: New file, from GNU gettext.
28265         * MODULES.html.sh (String handling): Add c-strstr.
28266
28267 2006-08-28  Bruno Haible  <bruno@clisp.org>
28268
28269         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
28270         macros.
28271         Reported by Eric Blake.
28272
28273 2006-08-28  Bruno Haible  <bruno@clisp.org>
28274
28275         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
28276         (VASNPRINTF): Return a string of length > INT_MAX without failing.
28277         * lib/vasprintf.c: Include errno.h, limits.h.
28278         (EOVERFLOW): New fallback definition.
28279         (vasprintf): Test here whether the string length is > INT_MAX.
28280         * lib/vsnprintf.c: Include errno.h, limits.h.
28281         (EOVERFLOW): New fallback definition.
28282         (vsnprintf): Fix bug when generated string was too long for the buffer.
28283         Test here whether the string length is > INT_MAX.
28284
28285 2006-08-28  Bruno Haible  <bruno@clisp.org>
28286
28287         * lib/inttypes_.h (SCNX*): Remove definitions.
28288         Reported by Eric Blake.
28289
28290 2006-08-28  Bruno Haible  <bruno@clisp.org>
28291
28292         * lib/c-strstr.h: New file, from GNU gettext.
28293         * lib/c-strstr.c: New file, from GNU gettext.
28294
28295 2006-08-28  Bruno Haible  <bruno@clisp.org>
28296
28297         * gnulib-tool: Reorder some statements.
28298
28299 2006-08-28  Bruno Haible  <bruno@clisp.org>
28300
28301         * gnulib-tool: New option --makefile-name.
28302         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
28303         $makefile_name.
28304         (func_import): Write $makefile_name to the cache file, and read it from
28305         there unless explicitly specified. Use $makefile_name as file name
28306         instead of Makefile.am. Adjust the recommendations accordingly.
28307
28308 2006-08-28  Bruno Haible  <bruno@clisp.org>
28309
28310         * gnulib-tool (func_verify_module): Check against misapplying patch.
28311
28312 2006-08-28  Bruno Haible  <bruno@clisp.org>
28313
28314         * gnulib-tool (func_relativize, func_relconcat): New functions.
28315         Give an error if --local-dir is given with --update.
28316         Remove trailing slashes from $local_gnulib_dir.
28317         (func_import): Store the relativized $local_gnulib_dir in
28318         gnulib-cache.m4, and read it from there if not specified explicitly.
28319
28320 2006-08-28  Bruno Haible  <bruno@clisp.org>
28321
28322         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
28323         is the current directory. Respect also $local_gnulib_dir.
28324
28325 2006-08-28  Bruno Haible  <bruno@clisp.org>
28326             Simon Josefsson  <jas@extundo.com>
28327
28328         BeOS portability.
28329         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
28330
28331 2006-08-27  Jim Meyering  <jim@meyering.net>
28332
28333         * doc/visibility.texi: Remove duplicate word: "pointer".
28334
28335 2006-08-26  Bruno Haible  <bruno@clisp.org>
28336
28337         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
28338         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
28339         (Makefile.am): Create inttypes.h from inttypes_.h.
28340         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
28341
28342         * modules/imaxabs: New file.
28343
28344         * modules/imaxdiv: New file.
28345
28346 2006-08-26  Bruno Haible  <bruno@clisp.org>
28347
28348         * m4/inttypes.m4: New file.
28349         * m4/_inttypes_h.m4: Remove file.
28350         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
28351         PRI_MACROS_BROKEN.
28352         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
28353
28354         * m4/imaxabs.m4: New file.
28355
28356         * m4/imaxdiv.m4: New file.
28357
28358 2006-08-26  Bruno Haible  <bruno@clisp.org>
28359
28360         * lib/inttypes_.h: New file.
28361         * lib/inttypes.h: Remove file.
28362         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
28363
28364         * lib/imaxabs.c: New file.
28365
28366         * lib/imaxdiv.c: New file.
28367
28368 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28369
28370         New config-h module, so that "make" output needn't be cluttered
28371         by -DHAVE_CONFIG_H.
28372         * MODULES.html.sh (Support for building libraries and executables):
28373         Add config-h.
28374         * modules/config-h: New file.
28375         * gnulib-tool (nl, sed_transform_lib_file): New vars.
28376         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
28377         the config-h module is used.
28378
28379         New configmake module, so that "make" output needn't be cluttered
28380         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
28381         * MODULES.html.sh (Support for building libraries and executables):
28382         Add configmake.
28383         * modules/configmake: New file.
28384
28385 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28386
28387         * m4/config-h.m4: New file.
28388
28389 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28390
28391         * config/srclist.txt: Add elisp-comp.
28392
28393 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28394
28395         * MODULES.html.sh (Support for building libraries and executables):
28396         Add elisp-comp.
28397         * build-aux/elisp-comp: New file.
28398         * modules/elisp-comp: New file.
28399
28400 2006-08-24  Bruno Haible  <bruno@clisp.org>
28401
28402         * gnulib-tool (func_create_testdir): Use non-default values of
28403         sourcebase and m4base.
28404
28405 2006-08-24  Bruno Haible  <bruno@clisp.org>
28406
28407         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
28408         HTML structure.
28409
28410 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
28411
28412         * modules/openat (Depends-on): Add lchown.
28413
28414 2006-08-23  Bruno Haible  <bruno@clisp.org>
28415
28416         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
28417         of gl_LOCK_EARLY instead of gl_LOCK.
28418
28419 2006-08-23  Bruno Haible  <bruno@clisp.org>
28420
28421         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
28422         on OSF/1 to no.
28423         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
28424
28425 2006-08-23  Bruno Haible  <bruno@clisp.org>
28426
28427         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
28428         as unusable.
28429
28430         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
28431         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
28432         (gl_LOCK): New macro.
28433
28434 2006-08-22  Simon Josefsson  <jas@extundo.com>
28435
28436         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
28437         to md5 module.
28438
28439 2006-08-22  Simon Josefsson  <jas@extundo.com>
28440
28441         * MODULES.html.sh: Add "Support for maintaining and release
28442         projects".
28443
28444         * build-aux/gnupload: New file, from coreutils.
28445
28446 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
28447
28448         Avoid the need for AC_LIBSOURCES in m4 macros.
28449         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
28450         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
28451         * modules/check-version (EXTRA_DIST): Add check-version.h.
28452         * modules/crc (EXTRA_DIST): Add crc.h.
28453         * modules/des (EXTRA_DIST): Add des.h.
28454         * modules/gc (EXTRA_DIST): Add gc.h.
28455         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
28456         * modules/getline (EXTRA_DIST): Add getline.h.
28457         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
28458         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
28459         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
28460         * modules/md2 (EXTRA_DIST): Add md2.h.
28461         * modules/md4 (EXTRA_DIST): Add md4.h.
28462         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
28463         * modules/read-file (EXTRA_DIST): Add read-file.h.
28464         * modules/readline (EXTRA_DIST): Add readline.h.
28465         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
28466         rijndael-api-fst.h.
28467
28468 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
28469
28470         * m4/rijndael.m4 (gl_ARCFOUR):
28471         * m4/arctwo.m4 (gl_ARCTWO):
28472         * m4/check-version.m4 (gl_CHECK_VERSION):
28473         * m4/crc.m4 (gl_CRC):
28474         * m4/des.m4 (gl_DES):
28475         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
28476         * m4/gc.m4 (gl_GC):
28477         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
28478         * m4/getline.m4 (gl_FUNC_GETLINE):
28479         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
28480         * m4/hmac-md5.m4 (gl_HMAC_MD5):
28481         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
28482         * m4/md2.m4 (gl_MD2):
28483         * m4/md4.m4 (gl_MD4):
28484         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
28485         * m4/read-file.m4 (gl_FUNC_READ_FILE):
28486         * m4/readline.m4 (gl_FUNC_READLINE):
28487         * m4/rijndael.m4 (gl_RIJNDAEL):
28488         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
28489         to get the necessary .h files and whatnot.
28490
28491 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
28492
28493         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
28494         gnulib rather than the other way around.
28495         * config/srclistvars.sh (COREUTILS): Remove.
28496
28497 2006-08-22  Jim Meyering  <jim@meyering.net>
28498
28499         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
28500
28501         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
28502
28503 2006-08-22  Eric Blake  <ebb9@byu.net>
28504
28505         * modules/regexprops-generic: New file.
28506         * MODULES.html.sh (Support for building documentation): List it.
28507
28508 2006-08-22  Eric Blake  <ebb9@byu.net>
28509
28510         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
28511         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
28512         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
28513         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
28514
28515 2006-08-22  Bruno Haible  <bruno@clisp.org>
28516
28517         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
28518         and lib_LTLIBRARIES like the other lib_* variables.
28519
28520 2006-08-22  Bruno Haible  <bruno@clisp.org>
28521
28522         * build-aux/x-to-1.in: New file, from GNU gettext.
28523
28524 2006-08-22  Bruno Haible  <bruno@clisp.org>
28525
28526         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
28527         <utmpx.h> exists.
28528
28529 2006-08-22  Bruno Haible  <bruno@clisp.org>
28530
28531         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
28532         <utmpx.h> exists.
28533
28534 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
28535
28536         BeOS portability.
28537         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
28538         exist.
28539         Problem reported by Bruno Haible.
28540
28541 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
28542
28543         Avoid the need for AC_LIBSOURCES in m4 macros.
28544         * modules/acl (EXTRA_DIST): Add acl.h.
28545         * modules/argmatch (Files): Add m4/argmatch.m4.
28546         (configure.ac): Add gl_ARGMATCH.
28547         (EXTRA_DIST): Renamed from lib_SOURCES, for
28548         consistency with the other modules.  Remove argmatch.c.
28549         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
28550         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
28551         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
28552         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
28553         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
28554         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
28555         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
28556         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
28557         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
28558         * modules/closeout (EXTRA_DIST): Add closeout.h.
28559         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
28560         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
28561         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
28562         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
28563         dirname.h; remove basename.c and stripslash.c.
28564         * modules/exclude (EXTRA_DIST): Add exclude.h.
28565         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
28566         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
28567         * modules/file-type (EXTRA_DIST): Add file-type.h.
28568         * modules/filemode (EXTRA_DIST): Add filemode.h.
28569         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
28570         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
28571         * modules/fpending (EXTRA_DIST): Add __fpending.h.
28572         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
28573         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
28574         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
28575         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
28576         * modules/getdate (EXTRA_DIST): Add getdate.c.
28577         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
28578         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
28579         * modules/getpass (EXTRA_DIST): Add getpass.h.
28580         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
28581         * modules/group-member (EXTRA_DIST): Add group-member.h.
28582         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
28583         * modules/hash (EXTRA_DIST): Add hash.h.
28584         * modules/human (EXTRA_DIST): Add human.h.
28585         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
28586         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
28587         * modules/lchown (EXTRA_DIST): Add lchown.h.
28588         * modules/long-options (EXTRA_DIST): Add long-options.h.
28589         * modules/lstat (EXTRA_DIST): Add lstat.h.
28590         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
28591         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
28592         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
28593         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
28594         * modules/memxor (EXTRA_DIST): Add memxor.h.
28595         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
28596         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
28597         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
28598         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
28599         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
28600         * modules/physmem (EXTRA_DIST): Add physmem.h.
28601         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
28602         * modules/posixver (EXTRA_DIST): Add posixver.h.
28603         * modules/quote (EXTRA_DIST): Add quote.h.
28604         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
28605         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
28606         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
28607         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
28608         regex_internal.h regexec.c.
28609         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
28610         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
28611         * modules/same (EXTRA_DIST): Add same.h.
28612         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
28613         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
28614         * modules/savedir (EXTRA_DIST): Add savedir.h.
28615         * modules/sha1 (EXTRA_DIST): Add sha1.h.
28616         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
28617         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
28618         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
28619         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
28620         * modules/strdup (EXTRA_DIST): Add strdup.h.
28621         * modules/strftime (EXTRA_DIST): Add strftime.h.
28622         * modules/strndup (EXTRA_DIST): Add strndup.h.
28623         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
28624         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
28625         * modules/time_r (EXTRA_DIST): Add time_r.h.
28626         * modules/timespec (EXTRA_DIST): Add timespec.h.
28627         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
28628         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
28629         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
28630         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
28631         * modules/userspec (EXTRA_DIST): Add userspec.h.
28632         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
28633         * modules/utimens (EXTRA_DIST): Add utimens.h.
28634         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
28635         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
28636         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
28637         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
28638         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
28639         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
28640         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
28641         * modules/yesno (EXTRA_DIST): Add yesno.h.
28642
28643 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
28644
28645         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
28646
28647         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
28648         * m4/dev-ino.m4, same-inode.m4: Remove.
28649
28650         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
28651         * m4/acl.m4 (AC_FUNC_ACL):
28652         * m4/backupfile.m4 (gl_BACKUPFILE):
28653         * m4/c-strtod.m4 (gl_C99_STRTOLD):
28654         * m4/canon-host.m4 (gl_CANON_HOST):
28655         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
28656         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
28657         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
28658         * m4/cloexec.m4 (gl_CLOEXEC):
28659         * m4/close-stream.m4 (gl_CLOSE_STREAM):
28660         * m4/closeout.m4 (gl_CLOSEOUT):
28661         * m4/dirfd.m4 (gl_FUNC_DIRFD):
28662         * m4/dirname.m4 (gl_DIRNAME):
28663         * m4/exclude.m4 (gl_EXCLUDE):
28664         * m4/exitfail.m4 (gl_EXITFAIL):
28665         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
28666         * m4/file-type.m4 (gl_FILE_TYPE):
28667         * m4/filemode.m4 (gl_FILEMODE):
28668         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
28669         * m4/fpending.m4 (gl_FUNC_FPENDING):
28670         * m4/fprintftime.m4 (gl_FPRINTFTIME):
28671         * m4/fts.m4 (gl_FUNC_FTS):
28672         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
28673         * m4/getdate.m4 (gl_GETDATE):
28674         * m4/gethrxtime.m4 (gl_GETHRXTIME):
28675         * m4/getpagesize.m4 (gl_GETPAGESIZE):
28676         * m4/getpass.m4 (gl_FUNC_GETPASS):
28677         * m4/gettime.m4 (gl_GETTIME):
28678         * m4/getugroups.m4 (gl_GETUGROUPS):
28679         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
28680         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
28681         * m4/hard-locale.m4 (gl_HARD_LOCALE):
28682         * m4/hash.m4 (gl_HASH):
28683         * m4/idcache.m4 (gl_IDCACHE):
28684         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
28685         * m4/lchown.m4 (gl_FUNC_LCHOWN):
28686         * m4/long-options.m4 (gl_LONG_OPTIONS):
28687         * m4/lstat.m4 (gl_FUNC_LSTAT):
28688         * m4/md5.m4 (gl_MD5):
28689         * m4/memcasecmp.m4 (gl_MEMCASECMP):
28690         * m4/memcoll.m4 (gl_MEMCOLL):
28691         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
28692         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
28693         * m4/memxor.m4 (gl_MEMXOR):
28694         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
28695         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
28696         * m4/modechange.m4 (gl_MODECHANGE):
28697         * m4/mountlist.m4 (gl_MOUNTLIST):
28698         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
28699         * m4/openat.m4 (gl_FUNC_OPENAT):
28700         * m4/pathmax.m4 (gl_PATHMAX):
28701         * m4/physmem.m4 (gl_PHYSMEM):
28702         * m4/posixtm.m4 (gl_POSIXTM):
28703         * m4/posixver.m4 (gl_POSIXVER):
28704         * m4/quote.m4 (gl_QUOTE):
28705         * m4/quotearg.m4 (gl_QUOTEARG):
28706         * m4/readtokens.m4 (gl_READTOKENS):
28707         * m4/readutmp.m4 (gl_READUTMP):
28708         * m4/regex.m4 (gl_REGEX):
28709         * m4/safe-read.m4 (gl_SAFE_READ):
28710         * m4/safe-write.m4 (gl_SAFE_WRITE):
28711         * m4/same.m4 (gl_SAME):
28712         * m4/save-cwd.m4 (gl_SAVE_CWD):
28713         * m4/savedir.m4 (gl_SAVEDIR):
28714         * m4/settime.m4 (gl_SETTIME):
28715         * m4/sha1.m4 (gl_SHA1):
28716         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
28717         * m4/stat-macros.m4 (gl_STAT_MACROS):
28718         * m4/stat-time.m4 (gl_STAT_TIME):
28719         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
28720         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
28721         * m4/strdup.m4 (gl_FUNC_STRDUP):
28722         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
28723         * m4/strndup.m4 (gl_FUNC_STRNDUP):
28724         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
28725         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
28726         * m4/time_r.m4 (gl_TIME_R):
28727         * m4/timespec.m4 (gl_TIMESPEC):
28728         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
28729         * m4/unlinkdir.m4 (gl_UNLINKDIR):
28730         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
28731         * m4/userspec.m4 (gl_USERSPEC):
28732         * m4/utimecmp.m4 (gl_UTIMECMP):
28733         * m4/utimens.m4 (gl_UTIMENS):
28734         * m4/xalloc.m4 (gl_XALLOC):
28735         * m4/xgetcwd.m4 (gl_XGETCWD):
28736         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
28737         * m4/xreadlink.m4 (gl_XREADLINK):
28738         * m4/xstrtod.m4 (gl_XSTRTOD):
28739         * m4/yesno.m4 (gl_YESNO):
28740         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
28741         to get the necessary .h files and whatnot.
28742
28743 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
28744             Bruno Haible  <bruno@clisp.org>
28745
28746         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
28747         /bin/sh understanding of '!' conditional negation.
28748
28749 2006-08-21  Jim Meyering  <jim@meyering.net>
28750
28751         * modules/openat (Depends-on): Really alphabetize.
28752
28753         * modules/acl (Depends-on): Add error and quote.
28754
28755         * check-module (find_included_lib_files): Add at-func.c to the
28756         ok-to-include-more-than-once white list.
28757
28758         * modules/openat (Depends-on): Add lstat.  Alphabetize.
28759
28760 2006-08-21  Bruno Haible  <bruno@clisp.org>
28761
28762         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
28763         Emit a pkgdata_DATA variable only if some snippets add contents to it.
28764         Reported by Martin Lambers <marlam@marlam.de>.
28765
28766 2006-08-21  Bruno Haible  <bruno@clisp.org>
28767
28768         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
28769         specify an installation location, don't emit a noinst_LIBRARIES or
28770         noinst_LTLIBRARIES assignment.
28771
28772 2006-08-21  Bruno Haible  <bruno@clisp.org>
28773
28774         BeOS portability.
28775         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
28776         BeOS has mbrtowc() but no <wctype.h>.
28777
28778 2006-08-21  Bruno Haible  <bruno@clisp.org>
28779
28780         BeOS portability.
28781         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
28782         exist.
28783
28784 2006-08-21  Bruno Haible  <bruno@clisp.org>
28785
28786         BeOS portability.
28787         * lib/mbchar.h: Include <wctype.h> only if it exists.
28788
28789 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28790
28791         Remove files that are no longer needed by their respective modules.
28792         * m4/obstack.m4: Remove.
28793         * m4/strerror_r.m4: Remove.
28794         * m4/uint32_t.m4: Remove.
28795         * m4/uintptr_t.m4: Remove.
28796         * m4/ullong_max.m4: Remove.
28797         * m4/xstrtoimax.m4: Remove.
28798         * m4/xstrtoumax.m4: Remove.
28799
28800         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
28801         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
28802         dependencies now capture this.
28803
28804         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
28805         Do not use AC_LIBSOURCES, since gnulib modules now do this.
28806         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
28807         * m4/human.m4 (gl_HUMAN): Likewise.
28808         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
28809         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
28810
28811         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
28812
28813         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
28814         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
28815         stdint.
28816         * m4/human.m4 (gl_HUMAN): Likewise.
28817         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
28818         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
28819         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
28820         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
28821         * m4/xstrtol (gl_XSTRTOL): Likewise.
28822
28823         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
28824         AC_TYPE_LONG_LONG_INT.
28825         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
28826         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
28827         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
28828         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
28829
28830         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
28831         on stdbool.
28832
28833         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
28834         (gl_PREREQ_XSTRTOUL): Remove.
28835
28836         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
28837
28838         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
28839         mode.
28840
28841 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28842
28843         Add and change modules to make it easier for coreutils to use
28844         gnulib-tool.
28845         * modules/backupfile (Files): Remove m4/d-ino.m4.
28846         (Depends-on): Add d-ino.
28847         * modules/cycle-check (Depends-on): Add stdint.
28848         (lib_SOURCES): Add cycle-check.h.
28849         * modules/d-ino: New module.
28850         * modules/d-type: New module.
28851         * modules/error (Files): Remove m4/strerror_r.m4.
28852         * modules/filemode (Files): Add m4/st_dm_mode.m4.
28853         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
28854         m4/inttypes_h.m4, m4/uintmax_t.m4.
28855         (Depends-on): Add stdint.
28856         (lib_SOURCES): Add fsusage.h.
28857         * modules/getcwd (Files): Remove d-ino.m4.
28858         (Depends-on): Add d-ino.
28859         * modules/getndelim2 (Depends-on): Add stdint.
28860         * modules/glob (Files): Remove m4/d-type.m4.
28861         (Depends-on): Add d-type.
28862         * modules/host-os: New module.
28863         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
28864         m4/inttypes_h.m4, m4/uintmax_t.m4.
28865         * Depends-on: Add stdint.
28866         (lib_SOURCES): Add human.h.
28867         * modules/inttostr (Files): Remove m4/intmax_t.m4,
28868         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
28869         m4/uintmax_t.m4, m4/ulonglong.m4.
28870         (Depends-on): Add stdint.
28871         (EXTRA_DIST): Add inttostr.h.
28872         * modules/lchmod: New module.
28873         * modules/link-follow: New module.
28874         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
28875         (Depends-on): Add lchmod.
28876         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
28877         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
28878         (Depends-on): Add stdint.
28879         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
28880         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
28881         (Depends-on): Add stdint.
28882         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
28883         * modules/perl: New module.
28884         * modules/regex (Depends-on): Add stdint.
28885         * modules/rmdir-errno: New module.
28886         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
28887         m4/intmax_t.m4.
28888         (Depends-on): Add stdint.
28889         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
28890         m4/uintmax_t.m4.
28891         (Depends-on): Add stdint.
28892         * modules/unlink-busy: New module.
28893         * modules/utimecmp (Depends-on): Add stdint.
28894         * modules/uptime: New module.
28895         * modules/winsz-ioctl: New module.
28896         * modules/winsz-termios: New module.
28897         * modules/xnanosleep (Depends-on): Add nanosleep.
28898         * modules/ullong_max: Remove.
28899         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
28900         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
28901         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
28902         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
28903         (Depends-on): Add inttypes.
28904         (lib_SOURCES): Add xstrtol.h.
28905         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
28906         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
28907         * MODULES.html.sh: Move 'assert' into the assert section.
28908         Move 'dummy' into the linking section.
28909         Remove ullong_max.
28910         Add section for compatibility checks for POSIX:2001 functions,
28911         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
28912         winsz-ioctl, and winsz-termios into it.
28913         Add lchmod.
28914         Add top-level Misc section and put host-os, perl, and uptime
28915         into it.
28916
28917 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28918
28919         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
28920         now assume the stdint module.  Do not include inttypes.h.
28921         * lib/fsusage.h: Likewise.
28922         * lib/getndelim2.c: Likewise.
28923         * lib/human.h: Likewise.
28924         * lib/inttostr.h: Likewise.
28925         * lib/obstack.c: Likewise.
28926         * lib/regex_internal.h: Likewise.
28927         * lib/tempname.c: Likewise.
28928         * lib/utimecmp.c: Likewise.
28929         * lib/xstrtol.h: Likewise.
28930
28931         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
28932
28933         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
28934         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
28935         * lib/xtime.h: Likewise.
28936
28937 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
28938
28939         * modules/openat (Files): Add lib/fchmodat.c.
28940         Fixes problem reported by Jay Youngman.
28941
28942 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
28943
28944         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
28945         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
28946
28947 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
28948             Bruno Haible  <bruno@clisp.org>
28949
28950         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
28951         and is a script that invokes bison. Tighten the code. Add comments.
28952
28953 2006-08-18  Jim Meyering  <jim@meyering.net>
28954
28955         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
28956         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
28957         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
28958         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
28959
28960 2006-08-18  Bruno Haible  <bruno@clisp.org>
28961
28962         * modules/bison-i18n: New file.
28963         * MODULES.html.sh (Internationalization functions): Add it.
28964
28965 2006-08-18  Bruno Haible  <bruno@clisp.org>
28966
28967         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
28968         sys/statvfs.h. When getmntinfo was found, check its declaration and
28969         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
28970
28971 2006-08-18  Bruno Haible  <bruno@clisp.org>
28972
28973         * m4/bison-i18n.m4: New file, from bison.
28974
28975 2006-08-18  Bruno Haible  <bruno@clisp.org>
28976
28977         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
28978         (ME_DUMMY): Treat "kernfs" as a dummy.
28979         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
28980
28981 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
28982
28983         Update from coreutils.
28984
28985         2006-08-15  Jim Meyering  <jim@meyering.net>
28986
28987         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
28988
28989         2006-01-17  Jim Meyering  <jim@meyering.net>
28990
28991         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
28992
28993         2006-01-11  Jim Meyering  <jim@meyering.net>
28994
28995         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
28996         Check for the lchmod function.
28997
28998 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
28999
29000         Update from coreutils.
29001
29002         * lib/__fpending.h: Add copyright notice.
29003         * lib/fprintftime.h: Likewise.
29004         * lib/savedir.c: Use (C) in copyright notice.
29005         * lib/savedir.h: Likewise.
29006
29007         2006-08-15  Jim Meyering  <jim@meyering.net>
29008
29009         * lib/at-func.c: New file, with the logic of all emulated at-functions.
29010         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
29011         in support of the EXPECTED_ERRNO macro.
29012         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
29013         definitions.  Instead, define the appropriate symbols and include
29014         "at-func.c".
29015         * lib/mkdirat.c (mkdirat): Likewise.
29016         * lib/fchmodat.c (fchmodat): Likewise.
29017         (ENOSYS): Remove definition.
29018         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
29019         it.  Don't include "unistd--.h" -- it wasn't ever used.
29020
29021         2006-01-17  Jim Meyering  <jim@meyering.net>
29022
29023         Rewrite fts.c not to change the current working directory,
29024         by using openat, fstatat, fdopendir, etc..
29025
29026         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
29027         (HAVE_OPENAT_SUPPORT): Define.
29028         [_LIBC] (fchdir): Don't undef or define; no longer used.
29029         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
29030         Now, this `function' always succeeds, and consumes its file descriptor
29031         parameter -- so callers must not close such FDs.  Update callers.
29032         (diropen_fd, opendirat, cwd_advance_fd): New functions.
29033         (diropen): Add parameter, SP.  Adjust all callers.
29034         Implement using diropen_fd, rather than open.
29035         (fts_open): Initialize new member, fts_cwd_fd.
29036         Remove fts_rft-setting code.
29037         (fts_close): Close fts_cwd_fd, if necessary.
29038         (__opendir2): Define in terms of opendir or opendirat,
29039         depending on whether the FST_NOCHDIR flag is set.
29040         (fts_build): Since fts_safe_changedir consumes its FD, and since
29041         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
29042         and close the dup'd file descriptor upon failure.
29043         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
29044         (fts_safe_changedir): Tweak semantics to reflect that this function
29045         now calls cwd_advance_fd and hence consumes its FD argument.
29046         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
29047         [struct FTS] (fts_rft): Remove now-unused member.
29048         [struct FTS] (fts_cycle.state): Improve comment.
29049
29050         * lib/openat.c (openat_needs_fchdir): New function.
29051         * lib/openat.h (openat_needs_fchdir): Declare it.
29052
29053 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
29054
29055         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
29056         Problem and fix reported by Pádraig Brady in
29057         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
29058
29059 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29060
29061         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
29062
29063 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29064
29065         * lib/memcoll.c (memcoll): Optimize for the common case where the
29066         arguments are bytewise equal.
29067
29068 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
29069
29070         * doc/regexprops-generic.texi: Add a copyright notice.
29071
29072 2006-08-15  Bruno Haible  <bruno@clisp.org>
29073
29074         * modules/tmpdir (License): Change to LGPL.
29075
29076 2006-08-15  Bruno Haible  <bruno@clisp.org>
29077
29078         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
29079         module.
29080
29081 2006-08-14  Simon Josefsson  <jas@extundo.com>
29082
29083         * config/srclist.txt: Add gnupload.
29084
29085 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
29086
29087         Change copyright notice from LGPL 2 to GPL 2, since that's the
29088         standard form used in the gnulib repository.
29089         * tests/test-lock.c: Likewise.
29090         * tests/test-stdint.c: Likewise.
29091         * tests/test-tls.c: Likewise.
29092
29093         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
29094         prelude-manager.  User shorter URLs for GNU projects, without '?'.
29095         Add copyright notice.
29096
29097         * check-module: Add copyright notice.  Output a copyright
29098         notice if "--version" is specified.
29099         * modules/COPYING: New file.
29100         * tests/test-getaddrinfo.c: Add copyright notice.
29101         * tests/test-verify.c: Likewise.
29102
29103 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
29104
29105         Change copyright notice from LGPL 2 to GPL 2, since that's the
29106         standard form used in the gnulib repository.
29107         * lib/lock.c: LGPL -> GPL.
29108         * lib/lock.h: Likewise.
29109         * lib/strnlen1.c: Likewise.
29110         * lib/strnlen1.h: Likewise.
29111         * lib/tls.c: Likewise.
29112         * lib/tls.h: Likewise.
29113         * lib/tmpdir.c: Likewise.
29114
29115         * lib/TODO: Remove; this belongs only in coreutils.
29116
29117 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
29118
29119         Add copyright notices to long-enough files that lack them, since
29120         otherwise the files aren't clearly free.  Use the same notice that
29121         getdate.texi already uses.
29122         * doc/alloca-opt.texi: Add copyright notice.
29123         * doc/alloca.texi: Likewise.
29124         * doc/ctime.texi: Likewise.
29125         * doc/functions.texi: Likewise.
29126         * doc/gcd.texi: Likewise.
29127         * doc/gnulib-tool.texi: Likewise.
29128         * doc/inet_ntoa.texi: Likewise.
29129         * doc/visibility.texi: Likewise.
29130
29131         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
29132         * doc/quote.texi: Add copyright notice.
29133
29134         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
29135         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
29136         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
29137         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
29138         is now obsolete, and give a pointer to the Sun list.
29139         Add copyright notice.
29140
29141 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
29142
29143         * config/srclistvars.sh: Add copyright notice.
29144
29145 2006-08-14  Eric Blake  <ebb9@byu.net>
29146
29147         Import the following change from libc:
29148
29149         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
29150
29151         Upstream bug 2997.
29152         * lib/misc/error.c: Add space between program name and message if file
29153         name is missing.
29154
29155 2006-08-12  Karl Berry  <karl@gnu.org>
29156
29157         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
29158         remove, these originate in gnulib now.
29159
29160 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29161
29162         * doc/Makefile (standards.info standards.html standards.dvi):
29163         Also depend on make-stds.texi.
29164
29165 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
29166
29167         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
29168         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
29169
29170         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
29171         in wchar_t.  Problem reported by Eric Blake.
29172
29173         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
29174         LEN is smaller than SIZE.  Suggested by Bruno Haible.
29175         Also, help the compiler to keep LEN in a register.
29176
29177 2006-08-11  Eric Blake  <ebb9@byu.net>
29178
29179         * users.txt: Sort.  Add tar.
29180
29181 2006-08-11  Bruno Haible  <bruno@clisp.org>
29182
29183         * users.txt: New file.
29184
29185 2006-08-11  Bruno Haible  <bruno@clisp.org>
29186
29187         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
29188         before <wchar.h>. Needed for OSF/1 and BSD/OS.
29189
29190 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
29191
29192         * modules/snprintf (Depends-on): Remove minmax.
29193         (Maintainer): Add self and Bruno.
29194
29195 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
29196
29197         * lib/.cppi-disable: Add snprintf.h, socket_.h.
29198         * lib/snprintf.c: Include <errno.h> and <limits.h>.
29199         (EOVERFLOW): Define if the system does not.
29200         Do not include "minmax.h"; it wasn't used.
29201         (snprintf): Don't assume size_t promotes to an unsigned type.
29202         Fix bug when generated string was too long for the buffer: the
29203         buffer's contents are supposed to be the initial prefix of the
29204         output.  Don't assume vasnprintf returns EOVERFLOW if the size
29205         exceeds INT_MAX; do the check ourselves.
29206
29207         Import the following changes from libc:
29208
29209         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
29210
29211         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
29212         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
29213         set wc to the byte which couldn't be converted.
29214         (re_string_reconstruct): Don't clear valid_raw_len before calling
29215         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
29216         tip_context using re_string_context_at.
29217
29218         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
29219
29220         * lib/posix/regex.h: g++ still cannot handled [restrict].
29221
29222         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
29223
29224         * lib/posix/regex.h: Remove special handling for VMS.
29225
29226 2006-08-10  Jim Meyering  <jim@meyering.net>
29227
29228         * modules/same-inode: New module.
29229         * modules/dev-ino: New module.
29230         * modules/cycle-check: Depend on these modules, rather than simply
29231         including their .h files.
29232         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
29233         required via m4/cycle-check.m4.
29234         * modules/same: Depend on new same-inode module, rather than
29235         including same-inode.h.
29236         * modules/chdir-safer: New file.
29237
29238         * modules/chown (Depends-on): Add stat-macros.
29239
29240 2006-08-10  Jim Meyering  <jim@meyering.net>
29241
29242         * m4/cycle-check.m4: New file.
29243         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
29244         * m4/dev-ino.m4, m4/same-inode.m4: New files.
29245
29246 2006-08-10  Eric Blake  <ebb9@byu.net>
29247
29248         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
29249         in from original proposal.
29250
29251 2006-08-10  Eric Blake  <ebb9@byu.net>
29252         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
29253
29254         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
29255         namespace.
29256
29257 2006-08-10  Bruno Haible  <bruno@clisp.org>
29258
29259         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
29260         as well.
29261
29262 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
29263
29264         Sync from coreutils.
29265
29266         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
29267
29268         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
29269         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
29270
29271 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
29272
29273         * modules/restrict: Remove; no longer needed now that we assume
29274         Autoconf 2.59 or later.
29275         * MODULES.html.sh: Remove 'restrict'.
29276         * modules/argp (Depends-on): Remove 'restrict'.
29277         * modules/base64 (Depends-on): Likewise.
29278         * modules/gc (Depends-on): Likewise.
29279         * modules/getaddrinfo (Depends-on): Likewise.
29280         * modules/glob (Depends-on): Likewise.
29281         * modules/inet_ntop (Depends-on): Likewise.
29282         * modules/inet_pton (Depends-on): Likewise.
29283         * modules/memxor (Depends-on): Likewise.
29284         * modules/regex (Depends-on): Likewise.
29285         * modules/strtok_r (Depends-on): Likewise.
29286         * modules/time_r (Depends-on): Likewise.
29287
29288 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
29289
29290         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
29291         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
29292         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
29293         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
29294         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
29295         * m4/memxor.m4 (gl_MEMXOR): Likewise.
29296         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
29297         gl_C_RESTRICT replaced by AC_C_RESTRICT.
29298
29299         Merge from coreutils.
29300         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
29301         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
29302         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
29303         * m4/time_r.m4 (gl_TIME_R): Likewise.
29304
29305 2006-08-09  Karl Berry  <karl@gnu.org>
29306
29307         * config/srclist.txt: no more gettext-tools, per Bruno.
29308
29309 2006-08-08  Eric Blake  <ebb9@byu.net>
29310
29311         * modules/verror: New module.
29312         * MODULES.html.sh: Document it.
29313
29314 2006-08-08  Eric Blake  <ebb9@byu.net>
29315
29316         * lib/verror.h, lib/verror.c: New files.
29317
29318 2006-08-08  Eric Blake  <ebb9@byu.net>
29319
29320         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
29321         verror_at_line output complies with GNU Coding Standards even when
29322         file is NULL.
29323
29324 2006-08-07  Bruno Haible  <bruno@clisp.org>
29325
29326         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
29327         versions of AIX.
29328         Reported by Ralf Wildenhues.
29329
29330 2006-08-07  Bruno Haible  <bruno@clisp.org>
29331
29332         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
29333         in an AC_DEFUN. Needed so that the autoconf snippets can use
29334         AC_REQUIRE.
29335
29336 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29337
29338         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
29339         Initialize pkgdata_DATA.
29340         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
29341         overriding it.
29342
29343 2006-08-06  Eric Blake  <ebb9@byu.net>
29344
29345         * lib/error.h: Fold in some upstream changes from glibc.
29346         * lib/error.c: Likewise.
29347
29348 2006-08-04  Bruno Haible  <bruno@clisp.org>
29349
29350         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
29351         Make the mostlyclean-local rule depend on mostlyclean-generic.
29352         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
29353
29354 2006-07-31  Bruno Haible  <bruno@clisp.org>
29355
29356         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
29357         <stdlib.h>, <string.h>.
29358
29359 2006-07-30  Bruno Haible  <bruno@clisp.org>
29360
29361         * modules/readlink (License): Change to LGPL.
29362
29363 2006-07-30  Bruno Haible  <bruno@clisp.org>
29364
29365         * modules/javaversion (Makefile.am): Distribute javaversion.java and
29366         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
29367         set PKGDATADIR to point to it.
29368
29369 2006-07-30  Bruno Haible  <bruno@clisp.org>
29370
29371         * modules/csharpexec (configure.ac): Comment out macro invocation.
29372         * modules/javaexec (configure.ac): Likewise.
29373         * modules/javacomp-script (configure.ac): Likewise.
29374
29375         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
29376
29377 2006-07-30  Bruno Haible  <bruno@clisp.org>
29378
29379         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
29380         linked-list.
29381
29382 2006-07-30  Bruno Haible  <bruno@clisp.org>
29383
29384         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
29385
29386 2006-07-30  Bruno Haible  <bruno@clisp.org>
29387
29388         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
29389         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
29390         get removed.
29391
29392 2006-07-29  Bruno Haible  <bruno@clisp.org>
29393
29394         Make it possible for gnulib-tool to work with locally modified or
29395         augmented gnulib repositories.
29396         * gnulib-tool (func_usage): Document --local-dir option.
29397         (local_gnulib_dir): New variable.
29398         Handle --local-dir option.
29399         (func_lookup_file): New function.
29400         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
29401         (func_get_description, func_get_filelist, func_get_description,
29402         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
29403         func_get_automake_snippet, func_get_include_directive,
29404         func_get_license, func_get_maintainer): Use func_lookup_file.
29405         (func_import, func_create_testdir): Use func_lookup_file.
29406
29407 2006-07-29  Bruno Haible  <bruno@clisp.org>
29408
29409         * modules/setenv (Depends-on): Add unistd.
29410
29411 2006-07-29  Bruno Haible  <bruno@clisp.org>
29412
29413         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
29414
29415 2006-07-29  Bruno Haible  <bruno@clisp.org>
29416
29417         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
29418
29419 2006-07-29  Bruno Haible  <bruno@clisp.org>
29420
29421         * gnulib-tool (import, update): If there is no Makefile.am, look at
29422         aclocal.m4, instead of bailing out.
29423
29424 2006-07-29  Bruno Haible  <bruno@clisp.org>
29425
29426         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
29427         Categorize the options by when they are useful.
29428
29429 2006-07-29  Bruno Haible  <bruno@clisp.org>
29430
29431         * gnulib-tool (func_usage): Document option --no-libtool.
29432         Handle option --no-libtool.
29433         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
29434         for changed semantics of $libtool variable.
29435         (func_import): Likewise. If libtool is not used, show this through
29436         an option --no-libtool.
29437         (func_create_testdir): Update.
29438
29439 2006-07-29  Bruno Haible  <bruno@clisp.org>
29440
29441         * gnulib-tool (func_import): Extend error message about missing
29442         --doc-base.
29443
29444 2006-07-29  Bruno Haible  <bruno@clisp.org>
29445
29446         * gnulib-tool (func_import): Don't create the $docbase directory if
29447         there is no file to store there.
29448
29449 2006-07-29  Bruno Haible  <bruno@clisp.org>
29450
29451         * gnulib-tool (autoconf_minversion): If a --dir option is given and
29452         relevant, look for configure.ac there, not in the current directory.
29453         Also use a simple search for AC_PREREQ, not "autoconf --trace".
29454
29455 2006-07-29  Bruno Haible  <bruno@clisp.org>
29456
29457         * gnulib-tool (SORT): New variable.
29458         (func_usage): Undocument --assume-autoconf option.
29459         Remove --assume-autoconf option handling.
29460         (autoconf_minversion): Determine from the contents of configure.ac.
29461         (func_import): Remove autoconf_minversion handling.
29462         Suggested by Eric Blake.
29463
29464 2006-07-29  Bruno Haible  <bruno@clisp.org>
29465
29466         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
29467
29468 2006-07-29  Bruno Haible  <bruno@clisp.org>
29469
29470         * config/srclist.txt (*setenv.[ch]): Remove rules.
29471
29472 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29473
29474         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
29475
29476 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29477
29478         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
29479         arpa/inet.h.
29480
29481 2006-07-28  Simon Josefsson  <jas@extundo.com>
29482
29483         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
29484         * modules/inet_pton (Depends-on): Likewise.
29485
29486 2006-07-28  Simon Josefsson  <jas@extundo.com>
29487
29488         * m4/netinet_in_h.m4: New file.
29489
29490 2006-07-28  Simon Josefsson  <jas@extundo.com>
29491
29492         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
29493         #include's.
29494
29495 2006-07-28  Simon Josefsson  <jas@extundo.com>
29496
29497         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
29498         #include's.
29499
29500 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
29501
29502         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
29503         setgid on directories only if they set these bits.
29504         * lib/modechange.h: Remove obsolete comment about masks.
29505
29506 2006-07-28  Eric Blake  <ebb9@byu.net>
29507
29508         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
29509         macro expansion.
29510
29511 2006-07-28  Bruno Haible  <bruno@clisp.org>
29512
29513         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
29514
29515 2006-07-28  Bruno Haible  <bruno@clisp.org>
29516
29517         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
29518
29519 2006-07-28  Bruno Haible  <bruno@clisp.org>
29520
29521         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
29522         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
29523         Define fallbacks.
29524         Avoids link error on FreeBSD 4.x.
29525         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
29526
29527         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
29528         encoding.
29529         * lib/mbswidth.c (iswcntrl): Likewise.
29530
29531 2006-07-27  Bruno Haible  <bruno@clisp.org>
29532
29533         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
29534         test.
29535
29536 2006-07-27  Bruno Haible  <bruno@clisp.org>
29537
29538         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
29539         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
29540         defined.
29541
29542 2006-07-26  Eric Blake  <ebb9@byu.net>
29543
29544         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
29545
29546 2006-07-26  Eric Blake  <ebb9@byu.net>
29547
29548         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
29549         like mingw that lack mkstemp.
29550         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
29551         avoid compilation warning on mingw.
29552
29553 2006-07-26  Bruno Haible  <bruno@clisp.org>
29554
29555         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
29556         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
29557         INT_FAST*_MIN, INTPTR_MIN.
29558
29559 2006-07-25  Bruno Haible  <bruno@clisp.org>
29560
29561         * modules/version-etc (Depends-on): Add stdarg.
29562
29563 2006-07-25  Bruno Haible  <bruno@clisp.org>
29564
29565         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
29566         complex commands.
29567
29568 2006-07-25  Bruno Haible  <bruno@clisp.org>
29569
29570         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
29571         defined in <stdarg.h> or config.h.
29572
29573 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
29574
29575         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
29576         (gl_STDIO_SAFER): Remove.
29577
29578 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
29579
29580         * MODULES.html.sh (File stream based Input/Output):
29581         Add fopen-safer, tmpfile-safer; remove stdio-safer.
29582         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
29583         * modules/fopen-safer, modules/tmpfile-safer: New files.
29584         * modules/stdio-safer: Remove.
29585
29586 2006-07-24  Bruno Haible  <bruno@clisp.org>
29587
29588         * modules/tmpdir: New file.
29589         * MODULES.html.sh (File system functions): Add it.
29590
29591 2006-07-24  Bruno Haible  <bruno@clisp.org>
29592
29593         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
29594         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
29595
29596 2006-07-24  Bruno Haible  <bruno@clisp.org>
29597
29598         * modules/clean-temp: New file.
29599
29600 2006-07-24  Bruno Haible  <bruno@clisp.org>
29601
29602         * m4/tmpdir.m4: New file, from GNU gettext.
29603
29604 2006-07-24  Bruno Haible  <bruno@clisp.org>
29605
29606         * lib/tmpdir.h: New file, from GNU gettext.
29607         * lib/tmpdir.c: New file, from GNU gettext.
29608
29609 2006-07-24  Bruno Haible  <bruno@clisp.org>
29610
29611         * lib/clean-temp.h: New file, from GNU gettext.
29612         * lib/clean-temp.c: New file, from GNU gettext.
29613
29614 2006-07-23  Eric Blake  <ebb9@byu.net>
29615
29616         * modules/stdio-safer (Files): Add tmpfile-safer.c.
29617         (Depends-on): Add binary-io.
29618
29619 2006-07-23  Eric Blake  <ebb9@byu.net>
29620
29621         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
29622
29623 2006-07-23  Eric Blake  <ebb9@byu.net>
29624
29625         * lib/tmpfile-safer.c: New file.
29626         * lib/stdio-safer.h (fopen_safer): Add prototype.
29627         * lib/stdio--.h (tmpfile): Make safer.
29628
29629 2006-07-23  Bruno Haible  <bruno@clisp.org>
29630
29631         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
29632         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
29633         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
29634         gl_linked_remove_at): Use it.
29635
29636 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29637         and Simon Josefsson <jas@extundo.com>
29638
29639         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
29640
29641         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
29642
29643 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
29644
29645         * modules/close-stream: New file.
29646         * modules/closeout (Description): Make it clear that it exits
29647         with a diagnostic on error.
29648         (Depends-on): Add close-stream.  Remove fpending, stdbool.
29649         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
29650
29651 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
29652
29653         * m4/close-stream.m4: New file.
29654
29655 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
29656
29657         * lib/close-stream.c, lib/close-stream.h: New files.
29658
29659 2006-07-22  Bruno Haible  <bruno@clisp.org>
29660
29661         Merge from GNU gettext 0.15.
29662
29663         2006-05-01  Bruno Haible  <bruno@clisp.org>
29664
29665                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
29666
29667         2006-07-22  Bruno Haible  <bruno@clisp.org>
29668
29669                 * modules/javaversion: New file.
29670                 * MODULES.html.sh (Java): Add javaversion.
29671
29672         2006-03-12  Bruno Haible  <bruno@clisp.org>
29673
29674                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
29675
29676         2005-12-04  Bruno Haible  <bruno@clisp.org>
29677
29678                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
29679                 (untested).
29680
29681         2006-06-21  Bruno Haible  <bruno@clisp.org>
29682
29683                 Avoid warnings from recent versions of mcs.
29684                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
29685                 -o, -L, -r any more. Use options documented since mcs-1.0
29686                 instead. Similarly for -g.
29687
29688         2005-12-04  Bruno Haible  <bruno@clisp.org>
29689
29690                 * build-aux/csharpcomp.sh.in: Suffix for resources is
29691                 .resources, not .resource.
29692
29693         2005-07-09  Bruno Haible  <bruno@clisp.org>
29694
29695                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
29696                 add a .dll suffix.
29697                 Reported by Mark Junker <mjscod@gmx.de>.
29698
29699         2006-07-22  Bruno Haible  <bruno@clisp.org>
29700
29701                 * modules/gettext: Upgrade to gettext-0.15.
29702                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
29703                 m4/visibility.m4.
29704                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
29705
29706 2006-07-22  Bruno Haible  <bruno@clisp.org>
29707
29708         Merge from GNU gettext 0.15.
29709
29710         2006-03-25  Bruno Haible  <bruno@clisp.org>
29711
29712                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
29713
29714         2006-07-21  Bruno Haible  <bruno@clisp.org>
29715
29716                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
29717                 "1.1".
29718
29719         2006-05-09  Bruno Haible  <bruno@clisp.org>
29720
29721                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
29722                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
29723                 for the conftestver execution.
29724
29725         2006-05-01  Bruno Haible  <bruno@clisp.org>
29726
29727                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
29728                 optional target-version argument. Verify that the compiler
29729                 groks source of the specified source-version, or add -source
29730                 option as necessary. Verify that the compiler produces
29731                 bytecode in the specified target-version, or add -target and
29732                 -source options as necessary. Make the result of the test
29733                 available as variable CONF_JAVAC. Also log error output in
29734                 config.log.
29735
29736         2006-03-11  Bruno Haible  <bruno@clisp.org>
29737
29738                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
29739
29740         2006-05-09  Bruno Haible  <bruno@clisp.org>
29741
29742                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
29743                 CLASSPATH_SEPARATOR to a semicolon.
29744
29745         2006-03-12  Bruno Haible  <bruno@clisp.org>
29746
29747                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
29748                 available as variable CONF_JAVA, for subsequent autoconf
29749                 tests. Also log error output in config.log.
29750
29751         2006-07-19  Bruno Haible  <bruno@clisp.org>
29752
29753                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
29754                 that getline works on glibc2 systems. Needed to avoid trouble
29755                 in relocatable.c.
29756                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
29757
29758         2005-12-04  Bruno Haible  <bruno@clisp.org>
29759
29760                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
29761                 launcher (untested).
29762
29763         2005-12-04  Bruno Haible  <bruno@clisp.org>
29764
29765                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
29766
29767         2006-07-22  Bruno Haible  <bruno@clisp.org>
29768
29769                 * gettext.m4: Update from GNU gettext-0.15.
29770                 * nls.m4: Likewise.
29771                 * po.m4: Likewise.
29772                 * inttypes-pri.m4: Likewise.
29773                 * inttypes-h.m4: Renamed from inttypes.m4.
29774                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
29775
29776 2006-07-22  Bruno Haible  <bruno@clisp.org>
29777
29778         Merge from GNU gettext 0.15.
29779
29780         2005-07-05  Bruno Haible  <bruno@clisp.org>
29781
29782                 * printf-args.c (printf_fetchargs): Work around broken
29783                 definition of wint_t on mingw.
29784
29785         2005-02-12  Bruno Haible  <bruno@clisp.org>
29786
29787                 * xallocsa.h: Add extern "C" for C++.
29788
29789         2006-05-17  Bruno Haible  <bruno@clisp.org>
29790
29791                 Cygwin portability.
29792                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
29793
29794         2006-04-30  Bruno Haible  <bruno@clisp.org>
29795
29796                 * progreloc.c: Include <mach-o/dyld.h> if available.
29797                 (find_executable): Use _NSGetExecutablePath when possible.
29798
29799         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
29800
29801                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
29802                 function.
29803
29804         2005-12-29  Bruno Haible  <bruno@clisp.org>
29805
29806                 * progreloc.c (set_program_name_and_installdir): Fix
29807                 compilation error.
29808
29809         2005-12-04  Bruno Haible  <bruno@clisp.org>
29810
29811                 Cygwin portability.
29812                 * progreloc.c: Include <windows.h> also on Cygwin.
29813                 (find_executable): Add support for Cygwin.
29814                 (set_program_name_and_installdir): Handle also platforms with
29815                 nonempty EXEEXT.
29816
29817         2006-07-11  Bruno Haible  <bruno@clisp.org>
29818
29819                 * javacomp.c: Fix a comment.
29820                 Reported by Jim Meyering.
29821
29822         2006-04-30  Bruno Haible  <bruno@clisp.org>
29823
29824                 * javacomp.h (compile_java_class): Add source_version,
29825                 target_version arguments.
29826                 * javacomp.c: Rewritten to choose only a compiler that
29827                 respects the specified source_version and target_version.
29828
29829         2006-06-27  Bruno Haible  <bruno@clisp.org>
29830
29831                 Assume correct S_ISDIR macro.
29832                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
29833
29834         2006-07-22  Bruno Haible  <bruno@clisp.org>
29835
29836                 * javaversion.h: New file, from GNU gettext.
29837                 * javaversion.c: New file, from GNU gettext.
29838                 * javaversion.java: New file, from GNU gettext.
29839                 * javaversion.class: New file, from GNU gettext.
29840
29841         2006-05-17  Bruno Haible  <bruno@clisp.org>
29842
29843                 Cygwin portability.
29844                 * javaexec.c (execute_java_class): Test for jview program
29845                 also on Cygwin.
29846
29847         2006-04-09  Bruno Haible  <bruno@clisp.org>
29848
29849                 * fatal-signal.c: Don't include string.h.
29850                 (at_fatal_signal): Use a copying loop instead of memcpy.
29851
29852         2005-12-04  Bruno Haible  <bruno@clisp.org>
29853
29854                 * csharpexec.c: Add support for 'clix' launcher (untested).
29855                 (execute_csharp_using_sscli): New function.
29856                 (execute_csharp_program): Call it.
29857
29858         2006-06-21  Bruno Haible  <bruno@clisp.org>
29859
29860                 Avoid warnings from recent versions of mcs.
29861                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
29862                 -o, -L, -r any more. Use options documented since mcs-1.0
29863                 instead. Similarly for -g.
29864
29865         2005-07-09  Bruno Haible  <bruno@clisp.org>
29866
29867                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
29868                 add a .dll suffix.
29869                 Reported by Mark Junker <mjscod@gmx.de>.
29870
29871         2006-06-17  Bruno Haible  <bruno@clisp.org>
29872
29873                 * config.charset: Update for NetBSD 3.0.
29874
29875         2006-05-17  Bruno Haible  <bruno@clisp.org>
29876
29877                 Cygwin portability.
29878                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
29879
29880         2006-05-16  Bruno Haible  <bruno@clisp.org>
29881
29882                 * localcharset.c [CYGWIN]: Include <windows.h>.
29883                 (get_charset_aliases): For Cygwin, return the same CPxxx
29884                 aliases list as under WIN32.
29885                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
29886                 the environment variables. Fall back to GetACP().
29887
29888         2006-04-05  Bruno Haible  <bruno@clisp.org>
29889
29890                 * config.charset: Update Juan Manuel Guerrero's address.
29891
29892         2005-02-12  Bruno Haible  <bruno@clisp.org>
29893
29894                 * allocsa.h: Add extern "C" for C++.
29895
29896         2005-02-10  Bruno Haible  <bruno@clisp.org>
29897
29898                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
29899                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
29900
29901         2006-07-22  Bruno Haible  <bruno@clisp.org>
29902
29903                 * gettext.h: Update to GNU gettext-0.15.
29904
29905 2006-07-22  Bruno Haible  <bruno@clisp.org>
29906
29907         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
29908         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
29909         lib-prefix.m4, longdouble.m4, ssize_t.m4.
29910
29911 2006-07-21  Eric Blake  <ebb9@byu.net>
29912
29913         * modules/stdlib-safer: New file.
29914         * MODULES.html.sh (File stream based Input/Output): Add
29915         stdlib-safer.
29916
29917 2006-07-21  Eric Blake  <ebb9@byu.net>
29918
29919         * lib/stdlib-safer.h: New file from coreutils, required by
29920         stdlib--.h.
29921
29922 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
29923
29924         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
29925
29926 2006-07-20  Bruno Haible  <bruno@clisp.org>
29927
29928         * gnulib-tool: Recognize new option --assume-autoconf.
29929         (autoconf_minversion): New variable.
29930         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
29931
29932 2006-07-20  Bruno Haible  <bruno@clisp.org>
29933
29934         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
29935
29936 2006-07-19  Derek R. Price  <derek@ximbiot.com>
29937
29938         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
29939         Reindent and repaginate.
29940
29941 2006-07-19  Derek Price  <derek@ximbiot.com>
29942
29943         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
29944         Correct grammar.
29945
29946 2006-07-17  Bruno Haible  <bruno@clisp.org>
29947
29948         * modules/list: New file.
29949         * modules/array-list: New file.
29950         * modules/carray-list, modules/carray-list-tests: New files.
29951         * modules/linked-list, modules/linked-list-tests: New files.
29952         * modules/avltree-list, modules/avltree-list-tests: New files.
29953         * modules/rbtree-list, modules/rbtree-list-tests: New files.
29954         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
29955         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
29956         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
29957         * modules/oset: New file.
29958         * modules/array-oset: New file.
29959         * modules/avltree-oset, modules/avltree-oset-tests: New files.
29960         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
29961         * tests/test-carray_list.c: New file.
29962         * tests/test-linked_list.c: New file.
29963         * tests/test-avltree_list.c: New file.
29964         * tests/test-rbtree_list.c: New file.
29965         * tests/test-linkedhash_list.c: New file.
29966         * tests/test-avltreehash_list.c: New file.
29967         * tests/test-rbtreehash_list.c: New file.
29968         * tests/test-avltree_oset.c: New file.
29969         * tests/test-rbtree_oset.c: New file.
29970         * MODULES.html.sh (Container data structures): New section.
29971
29972 2006-07-17  Bruno Haible  <bruno@clisp.org>
29973
29974         * m4/gl_list.m4: New file.
29975
29976 2006-07-17  Bruno Haible  <bruno@clisp.org>
29977
29978         * lib/gl_list.h: New file.
29979         * lib/gl_list.c: New file.
29980         * lib/gl_array_list.h: New file.
29981         * lib/gl_array_list.c: New file.
29982         * lib/gl_carray_list.h: New file.
29983         * lib/gl_carray_list.c: New file.
29984         * lib/gl_linked_list.h: New file.
29985         * lib/gl_linked_list.c: New file.
29986         * lib/gl_anylinked_list1.h: New file.
29987         * lib/gl_anylinked_list2.h: New file.
29988         * lib/gl_avltree_list.h: New file.
29989         * lib/gl_avltree_list.c: New file.
29990         * lib/gl_anyavltree_list1.h: New file.
29991         * lib/gl_anyavltree_list2.h: New file.
29992         * lib/gl_rbtree_list.h: New file.
29993         * lib/gl_rbtree_list.c: New file.
29994         * lib/gl_anyrbtree_list1.h: New file.
29995         * lib/gl_anyrbtree_list2.h: New file.
29996         * lib/gl_anytree_list1.h: New file.
29997         * lib/gl_anytree_list2.h: New file.
29998         * lib/gl_linkedhash_list.h: New file.
29999         * lib/gl_linkedhash_list.c: New file.
30000         * lib/gl_anyhash_list1.h: New file.
30001         * lib/gl_anyhash_list2.h: New file.
30002         * lib/gl_avltreehash_list.h: New file.
30003         * lib/gl_avltreehash_list.c: New file.
30004         * lib/gl_rbtreehash_list.h: New file.
30005         * lib/gl_rbtreehash_list.c: New file.
30006         * lib/gl_anytreehash_list1.h: New file.
30007         * lib/gl_anytreehash_list2.h: New file.
30008
30009         * lib/gl_oset.h: New file.
30010         * lib/gl_oset.c: New file.
30011         * lib/gl_array_oset.h: New file.
30012         * lib/gl_array_oset.c: New file.
30013         * lib/gl_avltree_oset.h: New file.
30014         * lib/gl_avltree_oset.c: New file.
30015         * lib/gl_rbtree_oset.h: New file.
30016         * lib/gl_rbtree_oset.c: New file.
30017         * lib/gl_anytree_oset.h: New file.
30018
30019 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
30020
30021         * m4/mkancesdirs.m4: New file.
30022         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
30023         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
30024         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
30025         it.
30026
30027 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
30028
30029         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
30030         * lib/mkancesdirs.h: New files.
30031         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
30032         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
30033         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
30034         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
30035         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
30036         callers changed.  Revamp internals significantly, by not
30037         attempting to create directories that are temporarily more
30038         permissive than the final results.  Do not attempt to use
30039         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
30040         This removes some race conditions, fixes some bugs, and simplifies
30041         things.  Use new dirchownmod function to do owner and mode changes.
30042         * lib/mkdir-p.h: Likewise.
30043         * lib/modechange.c (octal_to_mode): New function.
30044         (struct mode_change): New member mentioned.
30045         (make_node_op_equals): New arg mentioned.  All callers changed.
30046         (mode_compile): Keep track of which mode bits the user has explicitly
30047         mentioned.
30048         (mode_adjust): New arg DIR, so that we implement the X op correctly.
30049         New arg PMODE_BITS, to keep track of which mode bits the user
30050         mentioned; it treats S_ISUID and S_ISGID speciall.
30051         All callers changed.
30052         * lib/modechange.h: Likewise.
30053
30054 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
30055
30056         * MODULES.html.sh: Add mkancestors.
30057         * modules/mkancesdirs: New module.
30058         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
30059         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
30060         The chdir-safer and afs files are now orphans; I'll remove them
30061         unless someone speaks up.
30062         Add lib/dirchownmod.c, lib/dirchownmod.h.
30063         (Depends-on): Remove alloca, chown, save-cwd, dirname.
30064         Add lchown, mkancesdirs.
30065         (Maintainer): Add self.
30066
30067 2006-07-15  Karl Berry  <karl@gnu.org>
30068
30069         * gnulib-tool: help message wording/arrangement.
30070
30071 2006-07-14  Simon Josefsson  <jas@extundo.com>
30072
30073         * doc/gnulib.texi (Libtool and Windows): New section.
30074
30075 2006-07-12  Simon Josefsson  <jas@extundo.com>
30076
30077         * modules/gendocs (License): Fix license, approved by Karl.
30078
30079 2006-07-12  Eric Blake  <ebb9@byu.net>
30080
30081         * MODULES.html.sh: Add gendocs.
30082
30083 2006-07-11  Eric Blake  <ebb9@byu.net>
30084
30085         * modules/fdl: New module, to install doc/fdl.texi.
30086         * MODULES.html.sh: Add new section for documentation modules.
30087         * gnulib-tool: Avoid space-tab.
30088         (--doc-base): New option, to manage files from doc.
30089
30090 2006-07-11  Eric Blake  <ebb9@byu.net>
30091
30092         * m4/absolute-header.m4: Fix comments to match recent change.
30093
30094 2006-07-11  Eric Blake  <ebb9@byu.net>
30095
30096         * gnulib-tool: List --doc-base before --tests-base.
30097
30098 2006-07-11  Derek R. Price  <derek@ximbiot.com>
30099
30100         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
30101
30102 2006-07-11  Bruno Haible  <bruno@clisp.org>
30103
30104         * README: Mention where to put documentation.
30105
30106 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30107
30108         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
30109
30110 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
30111
30112         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
30113         to stdint.m4.
30114
30115 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
30116
30117         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
30118         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
30119         "no/such/file/stdint.h" when there is no such file, so that
30120         the resulting C code can be parsed by dodgy compilers.
30121         Problems reported by Bob Proulx.
30122
30123 2006-07-10  Derek R. Price  <derek@ximbiot.com>
30124
30125         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
30126         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
30127         macros into the GNU _D_EXACT_NAMLEN.
30128         * lib/savedir.c:  Likewise.
30129         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
30130
30131 2006-07-10  Derek R. Price  <derek@ximbiot.com>
30132         and Paul Eggert  <eggert@cs.ucla.edu>
30133
30134         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
30135         * m4/savedir.m4:
30136         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
30137         macros into the GNU _D_EXACT_NAMLEN.
30138
30139 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
30140
30141         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
30142         around the absolute name, to work around a problem with the HP-UX
30143         11.23 native C compiler, reported by Bob Proulx.
30144
30145 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
30146
30147         * doc/maintain.texi, make-stds.texi: Sync from
30148         <http://savannah.gnu.org/projects/gnustandards>.
30149
30150 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
30151
30152         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
30153
30154 2006-07-09  Jim Meyering  <jim@meyering.net>
30155
30156         * m4/glob.m4: Remove a doubled word in a comment.
30157
30158 2006-07-09  Jim Meyering  <jim@meyering.net>
30159
30160         * lib/argp-pv.c: Remove a doubled word in a comment.
30161         * lib/check-version.c (check_version): Likewise.
30162         * lib/javacomp.c (compile_java_class): Likewise.
30163
30164 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
30165
30166         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
30167         for the benefit of people using Autoconf 2.60.  If you want to
30168         support older Autoconf versions you can copy m4/onceonly_2_57.m4
30169         (or m4/onceonly.m4, if pre-2.57) manually.
30170
30171 2006-07-08  Jim Meyering  <jim@meyering.net>
30172
30173         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
30174         comment.
30175         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
30176         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
30177         comment.
30178
30179 2006-07-08  Jim Meyering  <jim@meyering.net>
30180
30181         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
30182
30183 2006-07-07  Simon Josefsson  <jas@extundo.com>
30184
30185         * tests/test-crc.c: Change expected crc value, the test vector
30186         were probably computed using the old broken crc.c?
30187
30188 2006-07-06  Simon Josefsson  <jas@extundo.com>
30189
30190         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
30191         now the canonical place for the M4 file).
30192
30193         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
30194         from the sys_socket dependency now.
30195
30196         * modules/inet_pton (Files): Ditto.
30197
30198         * modules/inet_ntop (Files): Ditto.
30199
30200 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
30201
30202         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
30203         not gl_PREREQ_GETUSERSHELL.
30204
30205 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30206
30207         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
30208         with only one argument, for Autoconf 2.60.
30209         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
30210         expand to nothing, so add a shell command to avoid syntax error.
30211         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
30212
30213 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30214
30215         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
30216
30217 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
30218
30219         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
30220         no longer needed.  Check for isblank decl.
30221         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
30222         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
30223         of existence.
30224
30225 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
30226
30227         * lib/getloadavg.c: Use __VMS, not VMS.
30228         * lib/getopt.c: Likewise.
30229         * lib/getpagesize.h: Likewise.
30230         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
30231         and probably does not work.
30232
30233 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
30234
30235         * lib/.cppi-disable: Add wcwidth.
30236         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
30237         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
30238         (ISGRAPH): Remove.  All uses changed to isgraph.
30239         (FOLD) [!defined _LIBC]: Remove special case.
30240         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
30241         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
30242         HAVE_ISBLANK.
30243         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
30244         case.
30245
30246 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
30247
30248         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
30249         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
30250         brackets.  Other minor changes to suppress some compiler
30251         warnings.
30252
30253 2006-07-06  Derek R. Price  <derek@ximbiot.com>
30254         and Paul Eggert  <eggert@cs.ucla.edu>
30255
30256         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
30257         of invoking obsolescent AC_HEADER_DIRENT macro.
30258         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
30259         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
30260         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
30261         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
30262         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
30263         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
30264         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
30265         * m4/readdir.m4: Remove; no longer needed.
30266
30267 2006-07-06  Derek R. Price  <derek@ximbiot.com>
30268         and Paul Eggert  <eggert@cs.ucla.edu>
30269
30270         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
30271         Don't worry about this obsolete case any more.
30272         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
30273         directories.
30274         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
30275         worry about this obsolete case any more.
30276         * lib/fts.c: Likewise.
30277         * lib/getcwd.c: Likewise.
30278         * lib/glob.h: Likewise.
30279         * lib/savedir.c: Likewise.
30280
30281 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
30282
30283         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
30284         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
30285         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
30286         needed.
30287         All uses removed.
30288         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
30289         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
30290         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
30291         needed.
30292         * m4/getdate.m4 (gl_GETDATE): Likewise.
30293         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
30294         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
30295         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
30296         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
30297         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
30298         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
30299         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
30300         needed.
30301
30302 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
30303
30304         * lib/memcasecmp.c: Include <limits.h>.
30305         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
30306         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
30307         Don't assume isdigit succeeds only on '0' through '9'.
30308
30309 2006-07-05  Eric Blake  <ebb9@byu.net>
30310
30311         * modules/getaddrinfo (Depends-on): Add snprintf.
30312
30313 2006-07-05  Eric Blake  <ebb9@byu.net>
30314
30315         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
30316         to avoid 'header present but could not be compiled' on cygwin.
30317
30318 2006-07-05  Eric Blake  <ebb9@byu.net>
30319
30320         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
30321         missing from netdb.h.
30322         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
30323
30324 2006-07-05  Derek R. Price  <derek@ximbiot.com>
30325
30326         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
30327         no longer needed.
30328         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
30329         * m4/getdate.m4 (gl_GETDATE): Likewise.
30330         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
30331         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
30332         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
30333         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
30334         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
30335
30336 2006-07-05  Derek R. Price  <derek@ximbiot.com>
30337
30338         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
30339         All uses of is_space replaced by isspace.
30340         * lib/exit.h: Don't talk about STDC_HEADERS.
30341         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
30342         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
30343         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
30344         replaced by isprint etc.
30345         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
30346         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
30347         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
30348         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
30349         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
30350         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
30351
30352 2006-07-05  Bruno Haible  <bruno@clisp.org>
30353
30354         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
30355         the function exists, before testing against AIX.
30356         Reported by Martin Lambers <marlam@marlam.de>.
30357
30358 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
30359
30360         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
30361         From Mark D. Baushke.
30362
30363 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
30364
30365         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
30366         to the absolute name, not just one, to bypass Sun C 5.8's
30367         "warning: #include of /usr/include/... may be non-portable".
30368
30369 2006-07-04  Eric Blake  <ebb9@byu.net>
30370
30371         * modules/dirname-tests: New test module.
30372         * tests/test-dirname.c: New file, replacing dirname.c
30373         TEST_DIRNAME section that was recently deleted.
30374
30375 2006-07-04  Bruno Haible  <bruno@clisp.org>
30376
30377         Assume ANSI C header files and <ctype.h> functions.
30378         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
30379         (mbsnwidth): Use isprint, iscntrl instead.
30380
30381 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
30382
30383         Merge from coreutils.
30384         * MODULES.html.sh: Add xstrtold.
30385         * modules/xstrtold: New file.
30386         * modules/cycle-check (Files): Add lib/same-inode.h.
30387         * modules/dirname (Files): Add m4/double-slash-root.m4.
30388         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
30389         * modules/mkdir-p (Files): Add lib/same-inode.h.
30390         * modules/same (Files): Add lib/same-inode.h.
30391
30392 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
30393
30394         * m4/absolute-header.m4: Renamed from full-header-path.m4.
30395         This is to keep the terminology clean; POSIX talks about
30396         "absolute pathnames", not "full pathnames", but the GNU
30397         Coding Standards say to use "path" for something else;
30398         so use "absolute" to keep both sides happy.
30399         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
30400         Set gl_absolute_header, not gl_full_header_path.
30401         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
30402         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
30403         All uses changed.
30404
30405         Merge from coreutils.
30406
30407         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30408
30409         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
30410         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
30411         want to require the building of c-strtod.o.
30412         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
30413         needs -lm directly.
30414         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
30415
30416         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
30417
30418         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
30419         --as-needed option if available.  Problem reported by Albert Chin in
30420         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
30421         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
30422         cc merely issues a bunch of annoying warnings for --as-needed
30423         (this problem was reported by Bob Proulx).  Also, try linking with
30424         -lm to detect a bug in binutils 2.16 (this problem was reported
30425         by Ralf Wildenhues).
30426
30427         2006-06-18  Jim Meyering  <jim@meyering.net>
30428
30429         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
30430         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
30431         macro.
30432         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
30433         also check for glibc-2.4's abort-inducing bug.
30434
30435         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
30436         Low-probability clean-up should be to use rmdir to get rid of
30437         the just-created directory, not unlink.
30438
30439         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
30440         configure fail, and request a bug report to inform us about it.
30441         Add a comment that, barring reports to the contrary, in 2007 we'll
30442         assume ftruncate is universally available.
30443
30444         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
30445
30446         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
30447
30448         2006-03-12  Jim Meyering  <jim@meyering.net>
30449
30450         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
30451         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
30452         * m4/same.m4 (gl_SAME): Likewise.
30453         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
30454
30455         2006-03-11  Eric Blake  <ebb9@byu.net>
30456
30457         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
30458         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
30459         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
30460         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
30461
30462 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
30463
30464         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
30465         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
30466         reported by Mark D. Baushke, one in
30467         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
30468
30469         Merge from coreutils.
30470
30471         * lib/.cppi-disable: Add stdint_.h.
30472         * lib/.cvsignore: Add stdint.h.
30473
30474         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30475
30476         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
30477         both double and long double versions.
30478         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
30479         * lib/xstrtold.c: New file.
30480         * lib/xstrtod.h (xstrtold): New decl.
30481
30482         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
30483
30484         * lib/filemode.c (setst): Remove.
30485         (strmode): Rewrite to avoid setst.  This makes the code shorter,
30486         (arguably) clearer, and the generated code is a bit smaller on my
30487         Debian GNU/Linux stable x86 host.
30488
30489         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
30490
30491         * lib/filemode.c: Include "filemode.h" first, to test the interface.
30492         Assume that filemode.h includes sys/types.h and sys/stat.h.
30493         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
30494         (ftypelet): Reorder to put common cases first, for efficiency.
30495         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
30496         to do 'M'.
30497         (strmode): Renamed from mode_string, and now stores 12 bytes instead
30498         of 10, for compatibility with FreeBSD.  All callers changed.
30499         (filemodestring): Now stores 12 bytes instead of 10, and sets file
30500         types that can't be deduced solely from st_mode.  First arg is now a
30501         const pointer.
30502         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
30503         (strmode): Renamed from mode_string.
30504         (filemodestring): New decl.
30505         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
30506         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
30507         needed.
30508         (S_ISPORT, S_ISWHT): New macros, if not already defined.
30509
30510         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
30511
30512         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
30513         fsusage.h now does that.  Include fsusage.h first, to test interface.
30514         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
30515         at most one method (the old code could have generated decls that
30516         didn't conform to C89, not that this was ever exercised).
30517         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
30518
30519         2006-03-19  Jim Meyering  <jim@meyering.net>
30520
30521         Work even in a chroot where d_ino values for entries in "/"
30522         don't match the stat.st_ino values for the same names.
30523         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
30524         number, iterate through all entries again, using lstat instead.
30525         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
30526         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
30527
30528         * lib/getcwd.c (__getcwd): Clarify a comment.
30529         Use memcpy in place of a call to strcpy.
30530
30531         2006-03-12  Jim Meyering  <jim@meyering.net>
30532
30533         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
30534         matches that of the current directory (which we're about to chdir ".."
30535         out of), then save the dev-ino of the parent, instead.
30536
30537         * lib/same-inode.h (SAME_INODE): New file/macro.
30538         * lib/chdir-safer.c (SAME_INODE): Remove definition.
30539         Include "same-inode.h", instead.
30540         * lib/same.c: Likewise.
30541         * lib/cycle-check.h: Include "same-inode.h".
30542         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
30543         * lib/cycle-check.c (SAME_INODE): Remove definition.
30544         * lib/root-dev-ino.h: Include "same-inode.h".
30545
30546         2006-03-11  Eric Blake  <ebb9@byu.net>
30547
30548         * lib/same.c (same_name): s/base_name/last_component/
30549         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
30550         * lib/filenamecat.c (file_name_concat): Likewise.
30551
30552         2006-03-11  Eric Blake  <ebb9@byu.net>,
30553                     Paul Eggert  <eggert@cs.ucla.edu>
30554
30555         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
30556         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
30557         drive prefix.
30558         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
30559         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
30560         (last_component): New method.
30561         * lib/dirname.c (dir_len): Determine when drive letters need a
30562         subsequent slash.  Preserve // when it is special.
30563         (dir_name): Don't append dot when drive letter is absolute.
30564         [TEST_DIRNAME]: Move into a full-blown gnulib test.
30565         * lib/basename.c (base_name): New semantics - malloc the result.
30566         Preserve // when it is special.  Preserve relative files that look
30567         like drive letters.
30568         (base_len): Preserve // when it is special.
30569         (last_component): New method, similar to old base_name semantics.
30570         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
30571         base_name.  Strip redundant slashes from ///.
30572
30573 2006-07-03  Jim Meyering  <jim@meyering.net>
30574
30575         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
30576         macro is used before the first cycle_check call.
30577
30578 2006-07-03  Eric Blake  <ebb9@byu.net>
30579
30580         * modules/dirname (Depends-on): Add xstrndup.
30581
30582 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30583
30584         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
30585         test cases, so that config.log is a bit easier to follow.
30586
30587 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30588
30589         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
30590         both are 64 bits, since this seems to be the tradition, and this
30591         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
30592         we ever run into a host that prefers long long to long in this
30593         case, we'll need another configure-time test.  Problem reported by
30594         Jim Meyering.
30595
30596 2006-07-02  Eric Blake  <ebb9@byu.net>
30597
30598         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
30599
30600 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
30601
30602         * modules/inttypes (Depends-on): No longer depends on stdint.
30603         * modules/stdint (Description): Say more about assumptions.
30604         Say that the fast types might differ.  Say macros are used.
30605         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
30606         (Makefile.am): Revise list of substituted symbols to match
30607         new stdint.m4.
30608         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
30609         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
30610         * tests/test-stdint.c (verify_same_types)
30611         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
30612         the code conforms to C99/C89.
30613         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
30614         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
30615
30616 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
30617
30618         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
30619         but fix a bug, by requiring at least 64 bits.
30620         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
30621         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
30622         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
30623         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
30624
30625         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
30626         changes.  Make 2.59 a prerequisite.  Check and substitute for
30627         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
30628         inttypes.h.  Do not use special include files; just use the
30629         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
30630         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
30631         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
30632         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
30633         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
30634         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
30635         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
30636         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
30637         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
30638         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
30639         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
30640         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
30641         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
30642         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
30643         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
30644         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
30645         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
30646         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
30647         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
30648         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
30649         WINT_MAX.  Check for C99 conformance more strictly, by detecting
30650         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
30651         not check for things that C99 does not require, e.g., int8_t.  If
30652         a test isn't needed unless <stdint.h> isn't working, and is
30653         unlikely to be needed for any other reason, then don't do it
30654         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
30655         size_t, since we assume C89 freestanding at least.  Do not check
30656         for sig_atomic_t, wchar_t, or wint_t, since the code now does
30657         the right thing even if the types are not defined.  Instead use:
30658         (gl_STDINT_TYPE_PROPERTIES): New macro.
30659         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
30660         testing whether <sys/types.h> clashes, as Autoconf does this for
30661         us now.  All uses removed.
30662         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
30663         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
30664         (gl_CHECK_TYPE_SAME):
30665         Remove; no longer needed.
30666         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
30667         exists, since we'll return 0 anyway in that case.
30668         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
30669
30670 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
30671
30672         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
30673         possible collision with system files.
30674         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
30675         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
30676         WCHAR_MIN and WCHAR_MAX in this case.
30677         (<stddef.h>): Do not include; no longer needed.
30678         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
30679         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
30680         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
30681         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
30682         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
30683         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
30684         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
30685         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
30686         !defined(__c99))]: Include in this case too, since it's harmless
30687         now.
30688         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
30689         dangerous to do so.
30690         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
30691         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
30692         (_STDINT_MIN, _STDINT_MAX): New macros.
30693         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
30694         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
30695         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
30696         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
30697         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
30698         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
30699         macros, not typedefs; this simplifies things quite a bit.
30700         Use long int for all types narrower than int64_t.
30701         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
30702         Define in terms of long long int or int64_t or long int,
30703         not int64_t or int32_t.  This saves some compile-time testing.
30704         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
30705         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
30706         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
30707         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
30708         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
30709         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
30710         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
30711         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
30712         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
30713         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
30714         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
30715         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
30716         undef any previous version and define our own version, for
30717         simplicity and consistency with the new macros for types.
30718         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
30719         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
30720         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
30721         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
30722         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
30723         @WINT_T_SUFFIX@ to keep things simple here.
30724         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
30725         Simplify by assuming typical 8/16/32/64 host, since we're
30726         already doing that elsewhere anyway.
30727         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
30728         and assume long long int is 64 bits if available.  This
30729         speeds up 'configure'.
30730
30731 2006-07-01  Eric Blake  <ebb9@byu.net>
30732
30733         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
30734         Reported by Andreas Buening.
30735
30736 2006-07-01  Eric Blake  <ebb9@byu.net>
30737
30738         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
30739
30740 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
30741
30742         * lib/getaddrinfo.c: fixed typo
30743
30744 2006-06-29  Jim Meyering  <jim@meyering.net>
30745
30746         * modules/strftime (Maintainer): Add my name, since with the
30747         FPRINTFTIME changes strftime.c has forked from glibc.
30748
30749 2006-06-29  Eric Blake  <ebb9@byu.net>
30750
30751         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
30752
30753 2006-06-29  Eric Blake  <ebb9@byu.net>
30754
30755         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
30756
30757 2006-06-29  Eric Blake  <ebb9@byu.net>
30758
30759         * lib/stat_.h: New file.
30760
30761 2006-06-29  Eric Blake  <ebb9@byu.net>
30762
30763         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
30764         unused static function.
30765
30766 2006-06-29  Eric Blake  <ebb9@byu.net>
30767
30768         * doc/functions.texi (Function Portability): Document missing lstat
30769         on mingw.
30770
30771 2006-06-29  Eric Blake  <ebb9@byu.net>
30772
30773         * MODULES.html.sh: Add sys_stat.
30774         * modules/sys_stat: New module.
30775         * modules/mkstemp (Depends-on): Add sys_stat.
30776
30777 2006-06-29  Derek R. Price  <derek@ximbiot.com>
30778
30779         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
30780
30781 2006-06-29  Derek R. Price  <derek@ximbiot.com>
30782
30783         * m4/c-bs-a.m4: Removed.
30784
30785 2006-06-29  Derek R. Price  <derek@ximbiot.com>
30786
30787         * lib/strftime.c: Assume strftime() exists.
30788
30789 2006-06-29  Derek Price  <derek@ximbiot.com>
30790
30791         * modules/c-bs-a: Removed - \a is C89.
30792         * MODULES.html.sh: Remove c-bs-a.
30793
30794 2006-06-29  Bruno Haible  <bruno@clisp.org>
30795
30796         * modules/wcwidth (License): Change to LGPL.
30797
30798 2006-06-28  Simon Josefsson  <jas@extundo.com>
30799
30800         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
30801         on _WIN32.
30802
30803         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
30804         getnameinfo.
30805
30806 2006-06-28  Simon Josefsson  <jas@extundo.com>
30807
30808         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
30809
30810 2006-06-28  Simon Josefsson  <jas@extundo.com>
30811
30812         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
30813         functions there.  It will succeed on Windows XP, but on Windows
30814         2000 and (presumably) earlier, it will fail, and use the internal
30815         re-implementation.
30816         (use_win32_p): New function.
30817         (getaddrinfo): Use strtoul on servname, to support numeric ports.
30818         Support AI_NUMERICSERV to disable getservbyname.
30819         (getnameinfo): New function, only supports
30820         NI_NUMERICHOST|NI_NUMERICSERV for now.
30821
30822         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
30823         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
30824         getnameinfo.
30825
30826 2006-06-28  Eric Blake  <ebb9@byu.net>
30827
30828         * modules/wcwidth: New file.
30829         * modules/mbchar (Depends-on): Add wcwidth.
30830         * modules/mbswidth (Depends-on): Add wcwidth.
30831         * MODULES.html.sh: Add wcwidth.
30832
30833 2006-06-28  Eric Blake  <ebb9@byu.net>
30834
30835         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
30836         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
30837
30838 2006-06-28  Eric Blake  <ebb9@byu.net>
30839
30840         * lib/xvasprintf.h: Fix comments.
30841
30842 2006-06-28  Eric Blake  <ebb9@byu.net>
30843
30844         * lib/mbchar.h (wcwidth): Include wcwidth.h.
30845         * lib/mbswidth.c (wcwidth): Move from here...
30846         * lib/wcwidth.h: ...to this new file.
30847
30848 2006-06-28  Derek R. Price  <derek@ximbiot.com>
30849
30850         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
30851
30852         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
30853         it's obsolete.
30854         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
30855
30856 2006-06-28  Derek R. Price  <derek@ximbiot.com>
30857
30858         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
30859         Autoconf 2.60 says this stuff was obsolete.
30860
30861 2006-06-28  Bruno Haible  <bruno@clisp.org>
30862
30863         * modules/wcwidth (Files): Add m4/wchar_t.m4.
30864
30865 2006-06-28  Bruno Haible  <bruno@clisp.org>
30866
30867         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
30868         gt_TYPE_WCHAR_T.
30869
30870 2006-06-28  Bruno Haible  <bruno@clisp.org>
30871
30872         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
30873         declaration for wcwidth.
30874         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
30875
30876 2006-06-28  Bruno Haible  <bruno@clisp.org>
30877
30878         * lib/mkdtemp.c [MINGW]: Include <io.h>.
30879         (mkdir): Define using _mkdir.
30880
30881 2006-06-28  Bruno Haible  <bruno@clisp.org>
30882
30883         * lib/getaddrinfo.h: Fix POSIX URL.
30884         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
30885         _WIN32.
30886         (use_win32_p): Make static.
30887         (getaddrinfo): Reject service name if it is empty or does not consist
30888         solely of decimal digits, or if its value is > 65535.
30889         (getnameinfo): Remove useless casts.
30890
30891 2006-06-27  Simon Josefsson  <jas@extundo.com>
30892
30893         * modules/sys_select: New file, suggested by Bruno Haible, Paul
30894         Eggert and Martin Lambers.
30895
30896 2006-06-27  Simon Josefsson  <jas@extundo.com>
30897
30898         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
30899         Eggert and Martin Lambers.
30900
30901 2006-06-27  Bruno Haible  <bruno@clisp.org>
30902
30903         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
30904         result to 0, not to empty.
30905         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
30906
30907 2006-06-27  Bruno Haible  <bruno@clisp.org>
30908
30909         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
30910
30911 2006-06-26  Simon Josefsson  <jas@extundo.com>
30912
30913         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
30914         present.
30915
30916 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
30917
30918         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
30919         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
30920         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
30921
30922 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
30923
30924         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
30925
30926 2006-06-26  Bruno Haible  <bruno@clisp.org>
30927
30928         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
30929
30930 2006-06-26  Bruno Haible  <bruno@clisp.org>
30931
30932         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
30933
30934 2006-06-26  Bruno Haible  <bruno@clisp.org>
30935
30936         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
30937         SGI C compiler in pre-C99 mode.
30938         Suggested by Mark D. Baushke and Larry Jones.
30939
30940 2006-06-26  Bruno Haible  <bruno@clisp.org>
30941
30942         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
30943         WCHAR_MAX.
30944         Reported by Mark D. Baushke and Larry Jones.
30945
30946 2006-06-26  Bruno Haible  <bruno@clisp.org>
30947
30948         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
30949         in pre-C99 mode.
30950         Suggested by Mark D. Baushke and Larry Jones.
30951
30952 2006-06-23  Simon Josefsson  <jas@extundo.com>
30953             Bruno Haible  <bruno@clisp.org>
30954
30955         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
30956         Emit mostlyclean-local rule.
30957         (func_emit_tests_Makefile_am): Likewise.
30958         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
30959
30960 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
30961
30962         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
30963
30964 2006-06-23  Bruno Haible  <bruno@clisp.org>
30965
30966         * tests/test-stdint.c: Update to match ISO C 99 Technical
30967         Corrigendum 1.
30968
30969 2006-06-23  Bruno Haible  <bruno@clisp.org>
30970
30971         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
30972
30973 2006-06-23  Bruno Haible  <bruno@clisp.org>
30974
30975         * lib/stdint_.h: Treat IRIX like OpenBSD.
30976
30977 2006-06-23  Bruno Haible  <bruno@clisp.org>
30978
30979         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
30980         ISO C 99 Technical Corrigendum 1.
30981
30982 2006-06-22  Simon Josefsson  <jas@extundo.com>
30983
30984         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
30985         MinGW.
30986
30987 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
30988
30989         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
30990         needed.  Some compiler complained about some of them.  Problem reported
30991         by Larry Jones in
30992         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
30993
30994 2006-06-21  Simon Josefsson  <jas@extundo.com>
30995
30996         * tests/test-getaddrinfo.c: New file.
30997
30998         * modules/getaddrinfo-tests: New file.
30999
31000         * MODULES.html.sh: Add inet_pton.
31001
31002         * modules/inet_pton: New file.
31003
31004 2006-06-21  Simon Josefsson  <jas@extundo.com>
31005
31006         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
31007         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
31008         of using the (limited) gnulib implementation on Windows XP.
31009
31010         * m4/inet_pton.m4: New file.
31011
31012 2006-06-21  Simon Josefsson  <jas@extundo.com>
31013
31014         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
31015         variable.
31016
31017         * lib/socket_.h: Don't define WINVER.
31018
31019         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
31020         slightly modified to work in gnulib.
31021
31022 2006-06-21  Simon Josefsson  <jas@extundo.com>
31023
31024         * doc/gnulib.texi (Windows sockets): Add.
31025
31026 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
31027
31028         * lib/read-file.c (fread_file): Start with buffer allocation of
31029         0 bytes rather than 1 byte; this simplifies the code.
31030         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
31031         code to free buffer and save/restore errno.
31032         (internal_read_file): Remove unused local.
31033
31034 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
31035
31036         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
31037         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
31038         Problem reported by Denis Excoffier in
31039         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
31040
31041 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
31042
31043         * modules/sys_socket, modules/socklen: Include sys/types since
31044         FreeBSD 4.x's sys/socket.h needs it.
31045
31046 2006-06-19  Simon Josefsson  <jas@extundo.com>
31047
31048         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
31049
31050 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
31051
31052         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
31053
31054 2006-06-19  Bruno Haible  <bruno@clisp.org>
31055
31056         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
31057         and FULL_PATH_INTTYPES_H in angle brackets.
31058         Reported by Mark D. Baushke <mdb@gnu.org>.
31059
31060 2006-06-17  Eric Blake  <ebb9@byu.net>
31061
31062         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
31063         errno.
31064
31065 2006-06-17  Bruno Haible  <bruno@clisp.org>
31066
31067         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
31068         <sys/inttypes.h>.
31069
31070 2006-06-17  Bruno Haible  <bruno@clisp.org>
31071
31072         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
31073         whether errno is declared. Assume <errno.h> declares errno.
31074
31075 2006-06-17  Bruno Haible  <bruno@clisp.org>
31076
31077         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
31078
31079 2006-06-17  Bruno Haible  <bruno@clisp.org>
31080
31081         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
31082         problem on Solaris 2.5.1.
31083
31084 2006-06-16  Eric Blake  <ebb9@byu.net>
31085
31086         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
31087         * lib/unicodeio.c [!defined errno]: Likewise.
31088         * lib/strtol.c [!defined errno]: Likewise.
31089         * lib/strtod.c [!defined errno]: Likewise.
31090
31091 2006-06-15  Eric Blake  <ebb9@byu.net>
31092
31093         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
31094
31095 2006-06-15  Eric Blake  <ebb9@byu.net>
31096
31097         * config/srclist.txt (ssize_t.m4): Lose sync.
31098
31099 2006-06-15  Bruno Haible  <bruno@clisp.org>
31100
31101         * modules/stdint (Files): Include m4/full-header-path.m4,
31102         m4/size_max.m4, m4/wchar_t.m4.
31103         (Makefile.am): Many more substitutions.
31104         * modules/stdint-tests: New file.
31105         * tests/test-stdint.c: New file.
31106
31107 2006-06-15  Bruno Haible  <bruno@clisp.org>
31108
31109         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
31110         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
31111         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
31112         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
31113         gl_CHECK_TYPE_SAME): New macros.
31114
31115 2006-06-15  Bruno Haible  <bruno@clisp.org>
31116
31117         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
31118
31119 2006-06-15  Bruno Haible  <bruno@clisp.org>
31120
31121         * lib/stdint_.h: Rewritten to be fully auto-configured.
31122         Fixes bug on HP-UX/IA64.
31123
31124 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
31125
31126         * lib/getdate.y (__attribute__): Don't define if already defined.
31127         Problem reported by Larry Jones.
31128         * lib/utimens.c (__attribute__): Likewise.
31129
31130 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
31131
31132         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
31133         reported by Andreas Schwab.
31134
31135 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31136             Bruno Haible  <bruno@clisp.org>
31137
31138         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
31139         check for the declaration of strnlen and a run test that exposes the
31140         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
31141         rpl_strndup.
31142
31143 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31144             Bruno Haible  <bruno@clisp.org>
31145
31146         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
31147
31148 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31149
31150         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
31151         compile test, for Tru64 4.0D.
31152
31153 2006-05-28  Karl Berry  <karl@gnu.org>
31154
31155         * config/srclist.txt (printf-args.c): lose sync.
31156
31157 2006-05-26  Martin Lambers  <marlam@marlam.de>
31158
31159         * lib/getpass.c: Updates the test for the native W32 API, and adds
31160         missing includes, thus fixing compilation warnings.
31161
31162 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
31163
31164         * lib/exclude.c (exclude_fnmatch): New function.
31165         (excluded_file_name): Call exclude_fnmatch.
31166         * lib/exclude.h (excluded_file_name): New prototype
31167
31168 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
31169
31170         * lib/tempname.c (small_open, large_open): New macros.
31171         (__open, __open64) [!_LIBC]: Remove.
31172         (__gen_tempname): Use small_open and large_open instead of __open
31173         and __open64.  This fixes a portability bug on HP-UX 11.11i
31174         reported by Simon Wing-Tang in
31175         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
31176
31177 2006-05-24  Bruno Haible  <bruno@clisp.org>
31178
31179         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
31180         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
31181         Reported by Thorsten Maerz <torte@netztorte.de> via
31182         Aaron Stone <aaron@serendipity.cx>.
31183
31184 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31185
31186         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
31187         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
31188         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
31189         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
31190         not really conditional on the cache.
31191         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
31192
31193 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
31194
31195         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
31196         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
31197         (my_usleep): Don't mishandle maximum value.
31198
31199 2006-05-19  Jim Meyering  <jim@meyering.net>
31200
31201         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
31202
31203 2006-05-17  Bruno Haible  <bruno@clisp.org>
31204
31205         Cygwin portability.
31206         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
31207
31208 2006-05-17  Bruno Haible  <bruno@clisp.org>
31209
31210         * lib/stdint_.h: Fix recognition of Cygwin.
31211
31212 2006-05-15  Bruno Haible  <bruno@clisp.org>
31213
31214         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
31215         on libtool patch by Ralf Wildenhues.
31216
31217 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
31218
31219         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
31220         test for C99 conformance; (bool) 0.5 is an integer constant
31221         expression, but (bool) -0.5 is not.  Problem reported by Fedor
31222         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
31223
31224 2006-05-11  Simon Josefsson  <jas@extundo.com>
31225
31226         * m4/xvasprintf.m4: Fix obvious typo.
31227
31228 2006-05-11  Jim Meyering  <jim@meyering.net>
31229
31230         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
31231         James Lemley.
31232
31233 2006-05-10  Simon Josefsson  <jas@extundo.com>
31234
31235         * lib/md4.c: Typo fix, update copyright years.
31236         (K1, K2): Don't use L because it turn computations into 64-bit on
31237         64-bit platforms.
31238
31239 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
31240
31241         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
31242         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
31243         unwanted sign propagation, e.g., on hosts with 64-bit int.
31244         There still are some problems with reeelly weird theoretical hosts
31245         (e.g., 33-bit int) but it's not worth worrying about now.
31246         * lib/sha1.c (rol): Likewise.
31247         (K1, K2, K3, K4): Remove unnecessary L suffix.
31248
31249 2006-05-10  Bruno Haible  <bruno@clisp.org>
31250
31251         * lib/des.c: Cast to avoid warnings.
31252
31253 2006-05-09  Bruno Haible  <bruno@clisp.org>
31254
31255         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
31256         (Depends-on): Depend also on xsize, stdarg.
31257         (configure.ac): Add gl_XVASPRINTF.
31258
31259 2006-05-09  Bruno Haible  <bruno@clisp.org>
31260
31261         * m4/xvasprintf.m4: New file.
31262
31263 2006-05-09  Bruno Haible  <bruno@clisp.org>
31264
31265         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
31266         (EOVERFLOW): Define fallback value.
31267         (xstrcat): New function.
31268         (xvasprintf): Recognize the special case of a string concatenation.
31269
31270 2006-05-08  Eric Blake  <ebb9@byu.net>
31271
31272         * gnulib-tool (func_version): Base copyright year on CVS date.
31273         (func_emit_copyright_notice): New function.
31274         (func_emit_lib_Makefile_am): Use it.
31275         (func_emit_tests_Makefile_am): Likewise.
31276         (func_import): Likewise.
31277
31278 2006-05-08  Bruno Haible  <bruno@clisp.org>
31279
31280         * modules/stdarg: New file.
31281         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
31282
31283 2006-05-08  Bruno Haible  <bruno@clisp.org>
31284
31285         * m4/stdarg.m4: New file, from GNU gettext.
31286
31287 2006-05-08  Bruno Haible  <bruno@clisp.org>
31288
31289         * config/srclist.txt (build-aux/config.rpath): different from latest
31290         release.
31291
31292 2006-05-08  Bruno Haible  <bruno@clisp.org>
31293
31294         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
31295
31296 2006-05-05  Jim Meyering  <jim@meyering.net>
31297
31298         * m4/warning.m4: New file, derived from bison's file by the same name.
31299
31300 2006-05-03  Bruno Haible  <bruno@clisp.org>
31301
31302         * lib/stdint_.h: Shorter URL.
31303         * lib/inttypes.h: Likewise.
31304
31305 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
31306
31307         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
31308
31309 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
31310
31311         * lib/verify.h: Document the internals better.  Most of this change
31312         was written by Bruno Haible.
31313
31314 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
31315
31316         * doc/verify.texi: New file, partly based on a proposal by
31317         Bruno Haible.
31318
31319 2006-05-02  Bruno Haible  <bruno@clisp.org>
31320
31321         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
31322         test from here...
31323         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
31324
31325 2006-04-29  Bruno Haible  <bruno@clisp.org>
31326
31327         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
31328         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
31329
31330 2006-04-29  Bruno Haible  <bruno@clisp.org>
31331
31332         * gnulib-tool: Make --update option actually work.
31333
31334 2006-04-29  Bruno Haible  <bruno@clisp.org>
31335
31336         * doc/gcd.texi: New file.
31337         * doc/gnulib.texi: Include it.
31338
31339 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
31340
31341         * lib/getdate.y (get_date): When adding relative date, start with the
31342         initial time, not with the result of the first mktime call.
31343
31344 2006-04-25  Bruno Haible  <bruno@clisp.org>
31345
31346         * gnulib-tool (func_import): Output the include directives in three
31347         blocks, sorted separately.
31348         Reported by Ben Pfaff <blp@cs.stanford.edu>.
31349
31350 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
31351
31352         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
31353         to define main with arguments, for C++.  Reported by Eric Blake.
31354         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
31355         Prefer 'int main ()' to 'int main (void)', for C++.
31356         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
31357         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
31358         for 'main', for C99 and C++.
31359
31360 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
31361
31362         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
31363         Don't assume that exit status -1 is valid.
31364         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
31365         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
31366         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
31367         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
31368         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
31369         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
31370         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
31371         functions can be used without declaring them, or that you can
31372         exit with status -1.
31373         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
31374
31375 2006-04-24  Karl Berry  <karl@gnu.org>
31376
31377         * config/srclist.txt (longdouble.m4): sync lost.
31378
31379 2006-04-24  Eric Blake  <ebb9@byu.net>
31380
31381         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
31382
31383 2006-04-24  Bruno Haible  <bruno@clisp.org>
31384
31385         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
31386         poll() implementation in AIX.
31387         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31388
31389 2006-04-24  Bruno Haible  <bruno@clisp.org>
31390
31391         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
31392         assigned exactly once.
31393
31394 2006-04-23  Claudio Fontana  <claudio@gnu.org>
31395             Bruno Haible  <bruno@clisp.org>
31396
31397         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
31398         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
31399         for AM_CPPFLAGS.
31400
31401 2006-04-23  Bruno Haible  <bruno@clisp.org>
31402
31403         * modules/copy-file: Depend on unistd.
31404         * modules/execute: Likewise.
31405         * modules/fatal-signal: Likewise.
31406         * modules/findprog: Likewise.
31407         * modules/mkdtemp : Likewise.
31408         * modules/pipe: Likewise.
31409         * modules/wait-process: Likewise.
31410
31411 2006-04-23  Bruno Haible  <bruno@clisp.org>
31412
31413         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
31414         condition was already detected.
31415         Reported by Ben Pfaff <blp@cs.stanford.edu>.
31416
31417 2006-04-23  Bruno Haible  <bruno@clisp.org>
31418
31419         * lib/copy-file.c: Include <unistd.h> unconditionally.
31420         * lib/execute.c: Likewise.
31421         * lib/fatal-signal.c: Likewise.
31422         * lib/findprog.c: Likewise.
31423         * lib/mkdtemp.c: Likewise.
31424         * lib/pipe.h: Likewise.
31425         * lib/pipe.c: Likewise.
31426         * lib/wait-process.h: Likewise.
31427
31428 2006-04-23  Bruno Haible  <bruno@clisp.org>
31429
31430         * gnulib-tool (func_usage): Fix --import description. Document
31431         --update.
31432         (func_import): Create temporary file in a temporary directory, if
31433         --dry-run is specified. Silence errors from 'grep' when there are no
31434         m4 files in $m4dir.
31435         (func_create_testdir): Silence errors from 'grep' when there are no
31436         m4 files in $m4dir.
31437         Reported by Karl Berry <karl@freefriends.org>.
31438
31439 2006-04-20  Bruno Haible  <bruno@clisp.org>
31440
31441         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
31442         one argument, so that the code will be portable to Autoconf 2.60.
31443         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
31444         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
31445         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
31446
31447 2006-04-19  Derek Price  <derek@ximbiot.com>
31448             Eric Blake  <ebb9@byu.net>
31449
31450         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
31451         rather than "/full/path.h".  Update comment to match.  Shorten &
31452         generalize m4_translit call via AS_TR_CPP.
31453
31454 2006-04-19  Derek Price  <derek@ximbiot.com>
31455             Eric Blake  <ebb9@byu.net>
31456
31457         * lib/inttypes.h: Correct grammar in comment.
31458
31459 2006-04-18  Derek Price  <derek@ximbiot.com>
31460             Paul Eggert  <eggert@cs.ucla.edu>
31461
31462         * modules/inttypes: New file.
31463         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
31464
31465 2006-04-18  Derek Price  <derek@ximbiot.com>
31466             Paul Eggert  <eggert@cs.ucla.edu>
31467
31468         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
31469         New files.
31470
31471 2006-04-18  Derek Price  <derek@ximbiot.com>
31472             Paul Eggert  <eggert@cs.ucla.edu>
31473
31474         * lib/inttypes.h: New file.
31475         * lib/strtoimax.c: Assume <inttypes.h>.
31476
31477 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31478
31479         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
31480         isn't mounted.  Problem reported by Kir Kolyshkin.
31481
31482 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
31483
31484         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
31485         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
31486         Derek R. Price.
31487         * lib/regex.h (RE_DUP_MAX): Update comment to match current
31488         implementation.
31489
31490 2006-04-12  Eric Blake  <ebb9@byu.net>
31491
31492         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
31493         is now done automatically by the corresponding Autoconf macro.
31494
31495 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
31496
31497         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
31498         time_r.h.
31499
31500 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31501
31502         Merge regex changes from libc, removing some of our
31503         POSIX-conformance changes that were rejected and redoing them in a
31504         less-intrusive way.
31505
31506         * lib/regcomp.c (re_compile_internal, init_dfa):
31507         Length arg is now size_t, not Idx.  All uses changed.
31508         (peek_token): Forward decl now says internal_function.
31509         (__re_error_msgid, __re_error_msgid_idx):
31510         Now static rather than extern with attribute_hidden.
31511         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
31512         For some reason libc prefers K&R style defns for external functions.
31513         (regerror) [!defined _LIBC]: Likewise.
31514         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
31515         (seek_collating_symbol_entry, lookup_collation_sequence_value):
31516         (build_range_exp, build_collating_symbol):
31517         Use K&R-style defn.
31518         (re_compile_fastmap): Use '\0' to memset, not 0.
31519         (utf8_sb_map): Make the calculations more obvious.
31520         (init_dfa, parse_bracket_exp, build_charclass_op):
31521         Call calloc and cast result, as glibc does.
31522         (init_word_char, fetch_token, peek_token, peek_token_bracket):
31523         (build_range_exp, build_collating_symbol):
31524         Now internal functions.
31525
31526         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
31527
31528         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
31529         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
31530         Don't depend on VMS; depend on __VMS instead, for POSIX
31531         namespace cleanness.
31532         (regoff_t): Define to ssize_t, not long int.
31533
31534         Remove the REG_ macros named below.  Instead, make the old names
31535         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
31536         __USE_GNU_REGEX.
31537         (REG_BACKSLASH_ESCAPE_IN_LISTS):
31538         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
31539         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
31540         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
31541         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
31542         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
31543         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
31544         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
31545         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
31546         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
31547         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
31548         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
31549         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
31550         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
31551         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
31552         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
31553         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
31554         (REG_NREGS):
31555         Remove.  All uses replaced by the old RE_* names.
31556         (RE_BACKSLASH_ESCAPE_IN_LISTS):
31557         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
31558         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
31559         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
31560         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
31561         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
31562         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
31563         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
31564         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
31565         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
31566         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
31567         Don't bother having these macros be independent of each others'
31568         values, since they no longer exist in the POSIX name space.
31569
31570         Rename the following member names back to their old names,
31571         unless !__USE_GNU_REGEX.  All uses changed back.
31572         (buffer): Renamed from re_buffer.
31573         (allocated): Renamed from re_allocated.
31574         (used): Renamed from re_used.
31575         (syntax): Renamed from re_syntax.
31576         (fastmap): Renamed from re_fastmap.
31577         (translate): Renamed from re_translate.
31578         (can_be_null): Renamed from re_can_be_null.
31579         (regs_allocated): Renamed from re_regs_allocated.
31580         (fastmap_accurate): Renamed from re_fastmap_accurate.
31581         (no_sub): Renamed from re_no_sub.
31582         (not_bol): Renamed from re_not_bol.
31583         (not_eol): Renamed from re_not_eol.
31584         (newline_anchor): Renamed from re_newline_anchor.
31585         (num_regs): Renamed from rm_num_regs.
31586         (start): Renamed from rm_start.
31587         (end): Renamed from rm_end.
31588
31589         (free_state): Move up a bit.
31590
31591         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
31592         #define to be empty.
31593         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
31594         when that is what is intended.
31595         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
31596         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
31597         (MAX): New macro.
31598         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
31599         All uses changed back to re_malloc, etc.  It's now the caller's
31600         responsibility to check for overflow; all callers changed.
31601         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
31602         (re_x2nrealloc): Remove.
31603         (free_state): Remove decl.
31604
31605         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
31606         (re_set_registers, re_exec):
31607         Use K&R-style defn.
31608
31609         2006-01-31  Roland McGrath  <roland@redhat.com>
31610
31611         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
31612         Reported by Mike Frysinger <vapier@gentoo.org>.
31613
31614         2006-01-15  Andreas Jaeger  <aj@suse.de>
31615
31616         [BZ #1950]
31617         * lib/regex_internal.c (re_string_reconstruct): Adjust for
31618         build_wcs_upper_buffer change.
31619         (build_wcs_upper_buffer): Change return type.
31620
31621         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
31622
31623         * lib/regex_internal.h: Include <stdint.h> if available.
31624
31625         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
31626
31627         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
31628
31629         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
31630
31631         * lib/regcomp.c: Adjust for changed secondary hash function.
31632
31633         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
31634
31635         * lib/regex.h: Pretty printing.
31636         Clean up namespace a bit.
31637
31638         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
31639
31640         * lib/regexec.c (update_cur_sifted_state, check_arrival,
31641         check_arrival_add_next_nodes): Avoid using uninitialized variable.
31642
31643         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
31644                     Ulrich Drepper  <drepper@redhat.com>
31645
31646         [BZ #1302]
31647         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
31648         changed.
31649         (bitset_word_t): Renamed from bitset_word.  All uses changed.
31650
31651         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
31652
31653         [BZ #281]
31654         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
31655         * lib/regcomp.c: Remove unnecessary uses of
31656         unsigned RE_TRANSLATE_TYPE.
31657         * lib/regex_internal.h: Likewise.
31658         * lib/regex_internal.c: Likewise.
31659         * lib/regexec.c: Likewise.
31660         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
31661
31662         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
31663
31664         * lib/regexec.c (find_recover_state): Remove unnecessary
31665         initialization.
31666         (transit_state_bkref): Make DFA a const pointer.
31667         (get_subexp): Likewise.
31668         (check_arrival): Likewise.
31669         (update_cur_sifted_state): Likewise.
31670         (re_search_internal): Likewise.
31671         (prune_impossible_nodes): Likewise.
31672         (acquire_init_state_context): Likewise.
31673         (proceed_next_node): Likewise.
31674         (set_regs): Likewise.
31675         (free_fail_stack_return): Likewise.
31676         (check_arrival_expand_ecl): Mark DFA parameter as const.
31677         (check_arrival_expand_ecl_sub): Likewise.
31678         (check_subexp_limits): Likewise.
31679         (sub_epsilon_src_nodes):  Likewise.
31680         (add_epsilon_src_nodes):  Likewise.
31681         (merge_state_array): Likewise.
31682         (update_regs): Likewise.
31683         (build_trtable): Likewise.
31684         (sift_states_backward): Mark MCTX parameter as const.
31685         (build_sifted_states): Likewise.
31686         (update_cur_sifted_state): Likewise.
31687         (sift_states_mkref): Likewise.
31688         (check_arrival_expand_ecl): Mark eclosure as const.
31689         (check_dst_limits_calc_pos_1): Likewise.
31690         * lib/regex_internal.h (re_match_context_t): Make dfa a const
31691         pointer.
31692
31693         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
31694
31695         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
31696         (transit_state_sb): Likewise.
31697         (transit_state_mb): Likewise.
31698         (sift_states_iter_mb): Likewise.
31699         (check_arrival_add_next_nodes): Likewise.
31700         (check_node_accept_bytes): Change first parameter to pointer-to-const.
31701         [_LIBC] (re_search_2_stub): Use mempcpy.
31702
31703         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
31704         mbrtowc for very simple UTF-8 case.
31705
31706         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
31707         a pointer-to-const.
31708         (re_acquire_state_context): Likewise.
31709         * lib/regex_internal.h: Adjust prototypes.
31710
31711         * lib/regex.c: Prevent using C++ compilers.
31712
31713         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
31714         (re_acquire_state_context): Likewise.
31715
31716 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31717
31718         * modules/regex (Depends-on): Add ssize_t.
31719
31720 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31721
31722         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
31723         translation table.
31724
31725 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31726
31727         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
31728
31729 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
31730             Bruno Haible  <bruno@clisp.org>
31731
31732         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
31733         <sys/types.h> and <inttypes.h>.
31734
31735 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31736
31737         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
31738         `__error_t_defined', so argp.h will not typedef the former.
31739
31740 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
31741
31742         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
31743         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
31744         glibc names.  Even if glibc is changed to conform to POSIX, the
31745         traditional names will be available anyway, since regex depends on
31746         the extensions module.  Also, fix a longstanding typo in the
31747         implementation of Spencer ERE test #75 from grep 2.3.  Problems
31748         reported by Emanuele Giaquinta.  Also, change sense of cached
31749         variable, so that the message makes sense.
31750
31751 2006-03-24  Simon Josefsson  <jas@extundo.com>
31752
31753         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
31754         including some doc fixes.
31755         (base64_encode_alloc): Fix +1 bug on allocation failures.
31756
31757 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31758
31759         * lib/base64.c (base64_encode): Do not read past end of array with
31760         unsanitized input on systems with CHAR_BIT > 8.
31761
31762 2006-03-24  Eric Blake  <ebb9@byu.net>
31763
31764         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
31765
31766 2006-03-22  Karl Berry  <karl@gnu.org>
31767
31768         * config/srclist.txt (*setenv.[ch]): get from coreutils.
31769         * config/srclistvars.sh (COREUTILS): new var.
31770
31771 2006-03-17  Jim Meyering  <jim@meyering.net>
31772
31773         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
31774         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
31775
31776 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
31777
31778         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
31779         no longer needs it.  Instead, check that regoff_t is as least
31780         as wide as ptrdiff_t.
31781
31782         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
31783         so that our regex.h stays compatible with the installed regex.
31784         This is helpful for installers who configure --without-included-regex.
31785         Problem reported by Emanuele Giaquinta.
31786
31787 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
31788
31789         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
31790         Typedef to long int, not to off_, as POSIX will likely change
31791         in that direction.
31792
31793 2006-03-15  Eric Blake  <ebb9@byu.net>
31794
31795         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
31796
31797 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
31798
31799         * lib/argp-help.c (validate_uparams): Fix typo
31800         * lib/argp-parse.c (argp_default_options): Consistently begin help
31801         messages with a lowercase letter.
31802
31803 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
31804
31805         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
31806         overrun buffers and shouldn't be used (much as gets shouldn't be
31807         used).
31808         * lib/time_r.c (asctime_r, ctime_r): Likewise.
31809
31810 2006-03-08  Simon Josefsson  <jas@extundo.com>
31811
31812         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
31813         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31814
31815 2006-03-08  Simon Josefsson  <jas@extundo.com>
31816
31817         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
31818         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31819
31820 2006-03-08  Simon Josefsson  <jas@extundo.com>
31821
31822         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
31823         signal that configure disabled the device.
31824
31825 2006-03-08  Simon Josefsson  <jas@extundo.com>
31826
31827         * build-aux/maint.mk: Fix refresh-po, to handle no translated
31828         languages.
31829
31830 2006-03-07  Simon Josefsson  <jas@extundo.com>
31831
31832         * modules/getopt (Depends-on): Add unistd.
31833
31834         * modules/unistd: New file.
31835
31836 2006-03-07  Simon Josefsson  <jas@extundo.com>
31837
31838         * modules/gc-random: New file.
31839
31840 2006-03-07  Simon Josefsson  <jas@extundo.com>
31841
31842         * m4/unistd_h.m4: New file.
31843
31844 2006-03-07  Simon Josefsson  <jas@extundo.com>
31845
31846         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
31847         test to be side-effect free by storing the result in the cache
31848         variable gl_cv_lib_readline, and moving the assignment of
31849         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
31850         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31851
31852 2006-03-07  Simon Josefsson  <jas@extundo.com>
31853
31854         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
31855         error on missing devices (the functions will return an error).
31856
31857         * m4/gc.m4: Move random stuff to gc-random.m4
31858
31859 2006-03-07  Simon Josefsson  <jas@extundo.com>
31860
31861         * lib/unistd_.h: New file.
31862
31863 2006-03-07  Simon Josefsson  <jas@extundo.com>
31864
31865         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
31866
31867 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
31868
31869         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
31870         Problem reported by Juan Manuel Guerrero.
31871
31872 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
31873
31874         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
31875         the unistd module.
31876         * lib/getlogin_r.c: Likewise.
31877         * lib/getlogin_r.h: Likewise.
31878         * lib/glob.c: Likewise.
31879         * lib/pagealign_alloc.c: Likewise.
31880         * lib/unistd_.h: Remove; no longer needed.
31881
31882 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
31883
31884         * MODULES.html.sh (Support for systems lacking POSIX:2001):
31885         Add unistd.
31886         * modules/c-stack (Depends-on): Add unistd.
31887         * modules/getlogin_r: Likewise.
31888         * modules/glob: Likewise.
31889         * modules/pagealign_alloc: Likewise.
31890         * modules/unistd (Files): Remove lib/unistd_.h.
31891         (EXTRA_DIST): Remove.
31892         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
31893         need unistd_.h.
31894         (MOSTLYCLEANFILES): Remove unistd.h-t.
31895
31896 2006-03-03  Simon Josefsson  <jas@extundo.com>
31897
31898         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
31899
31900 2006-03-03  Simon Josefsson  <jas@extundo.com>
31901
31902         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
31903         libidn and bison.
31904
31905 2006-03-03  Simon Josefsson  <jas@extundo.com>
31906
31907         * build-aux/maint.mk: Add indent target.
31908
31909 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
31910
31911         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
31912         our replacement poll.h in any case, to avoid a differing
31913         declaration from a system header.  Seen on AIX.
31914
31915 2006-03-01  Simon Josefsson  <jas@extundo.com>
31916
31917         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
31918         <kasal@ucw.cz>.
31919
31920 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
31921
31922         * modules/gettime (Depends-on): Add extensions module.
31923         * modules/nanosleep (Depends-on): Likewise.
31924         * modules/settime (Depends-on): Likewise.
31925
31926 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
31927
31928         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
31929         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
31930         pedantically.
31931         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
31932         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
31933
31934         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
31935         not "==".  Reported by Ralf Wildenhues.
31936
31937 2006-03-01  Karl Berry  <karl@gnu.org>
31938
31939         * doc/Copyright/request-*: new files, synced from gnuorg.
31940
31941 2006-03-01  Karl Berry  <karl@gnu.org>
31942
31943         * config/srclist.txt (Copyright/*): new entries.
31944
31945 2006-02-28  Simon Josefsson  <jas@extundo.com>
31946
31947         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
31948
31949 2006-02-27  Simon Josefsson  <jas@extundo.com>
31950
31951         * lib/base64.h: Indent #define's.  From Jim Meyering
31952         <jim@meyering.net>.
31953
31954 2006-02-27  Jim Meyering  <jim@meyering.net>
31955
31956         Revert the change of 2006-02-24, so these files can continue
31957         to be sync'd from gettext.
31958         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
31959         of `config.h'.
31960
31961 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
31962
31963         * modules/intprops: New file.
31964         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
31965         Add intprops.
31966         * modules/getloadavg (Files): Remove lib/intprops.h.
31967         (Depends-on): Add intprops.
31968         * modules/human: Likewise.
31969         * modules/inttostr: Likewise.
31970         * modules/openat: Likewise.
31971         * modules/sig2str: Likewise.
31972         * modules/userspec: Likewise.
31973         * modules/utimecmp: Likewise.
31974         * modules/xnanosleep: Likewise.
31975         * modules/xstrtol: Likewise.
31976
31977 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
31978
31979         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
31980         * modules/lock-tests (TESTS): Use $(EXEEXT).
31981         * modules/tls-tests: Likewise.
31982         * modules/argp-tests: Likewise.
31983         (check_PROGRAMS): New var, replacing...
31984         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
31985
31986 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31987
31988         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
31989         `config.h'.
31990
31991 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
31992
31993         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
31994
31995 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31996
31997         Sync from coreutils.
31998         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
31999         gl_CHDIR_SAFER.
32000
32001 2006-02-22  Jim Meyering  <jim@meyering.net>
32002
32003         Sync from coreutils.
32004         * m4/chdir-safer.m4: New file.
32005
32006 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
32007
32008         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
32009         AT_FDCWD exceeds INT_MAX.
32010         * lib/openat.h (AT_FDCWD): Likewise.
32011
32012 2006-02-17  Eric Blake  <address@hidden>
32013
32014         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
32015
32016 2006-02-16  Simon Josefsson  <jas@extundo.com>
32017
32018         * modules/getaddrinfo (Depends-on): Add sys_socket.
32019
32020 2006-02-15  Simon Josefsson  <jas@extundo.com>
32021
32022         * build-aux/maint.mk: Add dsyntax-check rule.
32023
32024 2006-02-15  Eric Blake  <ebb9@byu.net>
32025
32026         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
32027         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
32028         'present but cannot compile' warnings on cygwin.
32029         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
32030         use ws2tcpip.h if sys/socket.h works.
32031         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
32032         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
32033
32034 2006-02-14  Simon Josefsson  <jas@extundo.com>
32035
32036         * modules/maintainer-makefile (Files): Rename.
32037
32038         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
32039         and (the local) Makefile.cfg to maint-cfg.mk.
32040
32041         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
32042         to the latter.
32043
32044         * modules/maintainer-makefile: New module.
32045
32046         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
32047         severaly stripped to make it possible to build it up from scratch
32048         with reliable tests.
32049
32050         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
32051         fixes to permit overriding the default actions when configure and
32052         makefile are not available.
32053
32054 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
32055
32056         Sync from coreutils.
32057         * modules/lstat (Depends-on): Don't depend on xalloc.
32058         (License): Change from GPL to LGPL, since this is now simply a
32059         replacement for a libc function.
32060
32061 2006-02-14  Jim Meyering  <jim@meyering.net>
32062
32063         Sync from coreutils.
32064
32065         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
32066         failure on deficient systems, and simplify gnulib lgpl dependencies.
32067         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
32068         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
32069
32070         * lib/xalloc-die.c: Remove unused definition of N_.
32071
32072 2006-02-14  Jim Meyering  <jim@meyering.net>
32073
32074         Sync from coreutils.
32075         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
32076         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
32077         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
32078         double-quote uses of that variable, to accommodate the rare case in
32079         which getmntent is available in none of the libraries checked.  This
32080         happens at least on FreeBSD 5.0.
32081
32082 2006-02-13  Simon Josefsson  <jas@extundo.com>
32083
32084         * gnulib-tool (Usage): Fix --import, from
32085         karl@freefriends.org (Karl Berry).
32086
32087 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
32088
32089         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
32090
32091 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
32092
32093         * lib/argp-namefrob.h: Restore changes accidentally lost during the
32094         "autoupdate" on 2005-12-12.
32095
32096 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
32097
32098         * modules/closeout (Depends-on): Remove atexit.
32099
32100 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
32101
32102         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
32103         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
32104
32105 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
32106
32107         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
32108         __EXTENSIONS__ if this causes compilation to fail.  Problem
32109         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
32110         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
32111
32112 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
32113
32114         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
32115         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
32116         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
32117         All uses changed.
32118
32119 2006-01-26  Simon Josefsson  <jas@extundo.com>
32120
32121         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
32122         prototype is visible on mingw32.
32123
32124         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
32125         for mingw32.
32126
32127         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
32128         mingw32).
32129
32130 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
32131
32132         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
32133         attempt to open for write; this always fails, at least on POSIX
32134         hosts.  This reinstates the 2006-01-09 change, which was
32135         inadvertently removed.
32136
32137 2006-01-26  Bruno Haible  <bruno@clisp.org>
32138
32139         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
32140         Reported by Paul Eggert.
32141
32142 2006-01-26  Bruno Haible  <bruno@clisp.org>
32143             Paul Eggert  <eggert@cs.ucla.edu>
32144
32145         * lib/stdbool_.h (_Bool)
32146         [(! (defined __cplusplus || defined __BEOS__)
32147           && !defined __GNUC__
32148           && !(defined __HP_cc || defined __xlc__
32149                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
32150                || defined __sgi))]:
32151         #define to signed char in these cases too; this simplifies
32152         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
32153         etc., separately) and makes it more conservative.
32154
32155 2006-01-25  Simon Josefsson  <jas@extundo.com>
32156
32157         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
32158         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
32159         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
32160
32161 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
32162
32163         * lib/argp-namefrob.h: Bugfix. Remove stray #
32164
32165 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
32166
32167         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
32168         so that we test the test.
32169         Check for yet another HP-UX cc bug involving *bool |= bool.
32170
32171 2006-01-25  Karl Berry  <karl@gnu.org>
32172
32173         * config/srclist.txt (vasnprintf.c): sync lost.
32174
32175 2006-01-25  Jim Meyering  <jim@meyering.net>
32176
32177         Sync from the stable (b5) branch of coreutils:
32178
32179         * lib/fts.c (fts_children): Don't let close() clobber errno from
32180         failed fchdir().
32181
32182         * lib/fts.c (fts_stat): When following a symlink-to-directory,
32183         don't necessarily interpret stat-fails+lstat-succeeds as indicating
32184         a dangling symlink.  That can also happen at least for ELOOP.
32185         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
32186         FYI, this bug predates the inclusion of fts.c in coreutils.
32187
32188         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
32189         in their own block, so pre-c99 compilers don't object.
32190
32191         Avoid the double-free (first in fts_read, second in fts_close) that
32192         would occur when an `active' directory is made inaccessible (e.g.,
32193         via chmod a-x) during a traversal.
32194         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
32195         before returning.  Reproduce this failure by
32196         mkdir -p a/b; cd a; chmod a-x . b
32197         Reported by Stavros Passas.
32198
32199 2006-01-25  Jim Meyering  <jim@meyering.net>
32200
32201         * lib/fileblocks.c: Remove more useless parentheses.
32202         * lib/readutmp.h: Likewise.
32203
32204 2006-01-25  Bruno Haible  <bruno@clisp.org>
32205
32206         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
32207         warnings.
32208         Reported by Paul Eggert.
32209
32210 2006-01-25  Bruno Haible  <bruno@clisp.org>
32211
32212         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
32213         rid of a trap command. For Solaris sh.
32214         Reported by Mark D. Baushke <mdb@gnu.org>.
32215
32216 2006-01-24  Simon Josefsson  <jas@extundo.com>
32217
32218         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
32219         Bruno.
32220
32221 2006-01-24  Karl Berry  <karl@gnu.org>
32222
32223         * config/srclist.txt (argp-namefrob.h): sync lost.
32224
32225 2006-01-24  Jim Meyering  <jim@meyering.net>
32226
32227         * modules/openat (Files): Add lib/intprops.h.
32228         From Mark D. Baushke.
32229
32230 2006-01-24  Jim Meyering  <jim@meyering.net>
32231
32232         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
32233         Reported by Mark D. Baushke.
32234
32235 2006-01-24  Jim Meyering  <jim@meyering.net>
32236
32237         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
32238
32239 2006-01-24  Bruno Haible  <bruno@clisp.org>
32240
32241         * modules/strnlen (Maintainer): Change from glibc to all.
32242
32243 2006-01-24  Bruno Haible  <bruno@clisp.org>
32244
32245         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
32246         Patch by Paul Eggert.
32247
32248 2006-01-24  Bruno Haible  <bruno@clisp.org>
32249
32250         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
32251         already has it.
32252         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
32253         2005-11-26.
32254
32255         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
32256         'signed char' to avoid problems with the built-in _Bool type.
32257         Reported by Paul Eggert on 2005-11-26.
32258
32259 2006-01-24  Bruno Haible  <bruno@clisp.org>
32260
32261         * gnulib-tool (func_import): Avoid constructing complicated sed
32262         expressions inside backquote.
32263         Report and solution by Mark D. Baushke <mdb@gnu.org>.
32264
32265 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
32266
32267         These changes imported from libc.
32268         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
32269         test and two separate function calls.
32270         * lib/strndup.c (__strndup): Add libc_hidden_def.
32271
32272 2006-01-23  Simon Josefsson  <jas@extundo.com>
32273
32274         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
32275         Remove the test_*_SOURCES variable: automake infers it by default.
32276         * modules/tls-tests: Likewise.
32277
32278 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
32279
32280         Work around porting bugs reported by Dieter in
32281         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
32282         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
32283         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
32284         Include "getopt.h" first, to check interface.
32285         (getenv): Declare only if defined HAVE_DECL_GETENV &&
32286         !HAVE_DECL_GETENV.
32287         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
32288         (__strndup): Revert to K&R-style function dfns, the glibc style.
32289         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
32290         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
32291         Include strnlen.h first, to get prototype properly.
32292         (strnlen): Renamed from __strnlen.
32293         Remove weak alias.
32294
32295 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
32296
32297         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
32298
32299 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
32300
32301         * config/srclist.txt: Adjust to reflect glibc reorganization.
32302         This affects only comments.
32303
32304 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
32305
32306          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
32307          Reported by Bruce Korb <bkorb@gnu.org>.
32308
32309 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
32310
32311         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
32312         to pacify gcc -Wswitch-default.
32313
32314 2006-01-22  Bruno Haible  <bruno@clisp.org>
32315
32316         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
32317         temporary buffer for sprintf, take into account the precision also
32318         for 'd', 'i', 'u', 'o', 'x', 'X'.
32319
32320 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
32321
32322         * modules/argp-tests: New module
32323         * tests/test-argp.c: New file
32324         * tests/test-argp-2.sh: New file
32325
32326 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
32327
32328         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
32329         (__argp_base_name): Removed
32330         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
32331         typo.
32332         (__argp_base_name): Provide macro definition or extern declaration
32333         depending on the configuration
32334
32335 2006-01-20  Simon Josefsson  <jas@extundo.com>
32336
32337         * modules/inet_ntop (Depends-on): Depend on sys_socket.
32338
32339 2006-01-20  Simon Josefsson  <jas@extundo.com>
32340
32341         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
32342
32343 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
32344
32345         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
32346         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
32347         Suggested by Bruno Haible.
32348
32349 2006-01-20  Karl Berry  <karl@gnu.org>
32350
32351         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
32352         until changes propagate, I guess.
32353
32354 2006-01-19  Simon Josefsson  <jas@extundo.com>
32355
32356         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
32357
32358 2006-01-19  Simon Josefsson  <jas@extundo.com>
32359
32360         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
32361
32362 2006-01-19  Simon Josefsson  <jas@extundo.com>
32363
32364         * gnulib-tool: Set check_PROGRAMS.
32365
32366         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
32367         modules/des-tests, modules/gc-arcfour-tests,
32368         modules/gc-arctwo-tests, modules/gc-des-tests,
32369         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
32370         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
32371         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
32372         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
32373         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
32374         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
32375         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
32376         test_*_SOURCES.
32377
32378 2006-01-18  Simon Josefsson  <jas@extundo.com>
32379
32380         * modules/socklen (Depends-on): Depend on sys_socket.
32381
32382 2006-01-18  Simon Josefsson  <jas@extundo.com>
32383
32384         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
32385         modules/des-tests, modules/gc-arcfour-tests,
32386         modules/gc-arctwo-tests, modules/gc-des-tests,
32387         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
32388         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
32389         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
32390         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
32391         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
32392         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
32393         $(EXEEXT) to automake TESTS variable, for mingw32.
32394
32395 2006-01-17  Simon Josefsson  <jas@extundo.com>
32396
32397         * modules/socklen (Include): Need sys/socket.h.
32398
32399 2006-01-17  Bruno Haible  <bruno@clisp.org>
32400
32401         * modules/ssize_t (Include): Add <sys/types.h>.
32402
32403 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
32404
32405         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
32406         it's not portable and it doesn't work with cross-compiles.
32407         Problem reported by Bruno Haible.  Fix missing-$ typo in
32408         'test "gl_cv_ignore_unused_libraries" ...' that prevented
32409         -zignore from being used with Sun's C compiler.
32410
32411 2006-01-12  Simon Josefsson  <jas@extundo.com>
32412
32413         * lib/base64.c: Fix warning, reported by Bruno Haible
32414         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
32415
32416 2006-01-12  Bruno Haible  <bruno@clisp.org>
32417
32418         * modules/ldd: New file.
32419         * build-aux/ldd.sh.in: New file.
32420         * MODULES.html.sh (Support for building libraries and executables): Add
32421         ldd.
32422
32423 2006-01-12  Bruno Haible  <bruno@clisp.org>
32424
32425         * m4/ldd.m4: New file.
32426
32427 2006-01-12  Bruno Haible  <bruno@clisp.org>
32428
32429         * gnulib-tool (func_import, func_create_testdir): Don't go into an
32430         endless loop while replacing $auxdir with build-aux.
32431
32432 2006-01-11  Simon Josefsson  <jas@extundo.com>
32433
32434         * lib/stdint_.h (SIZE_MAX): Add missing (.
32435
32436 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
32437
32438         Sync from coreutils.
32439         * lib/md5.c: Fix commentary typos.
32440         (alignof, UNALIGNED_P): No need for a GCC-specific version.
32441         * lib/md5.h (__attribute__): Remove; unused.
32442         * lib/sha1.c: Fix commentary to match md5 better.
32443         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
32444         so that we don't need to worry about alignment.  All uses changed.
32445         This merges the 2005-10-28 md5 change into sha1.
32446
32447 2006-01-11  Jim Meyering  <jim@meyering.net>
32448
32449         Sync from coreutils.
32450         * lib/md5.c (OP): Fix spacing.
32451
32452 2006-01-11  Bruno Haible  <bruno@clisp.org>
32453
32454         Ensure automatic ordering between gl_LOCK and gl_ARGP.
32455         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
32456         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
32457
32458 2006-01-11  Bruno Haible  <bruno@clisp.org>
32459
32460         Ensure automatic ordering between gl_LOCK and gl_ARGP.
32461         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
32462         the "early" section as well.
32463
32464 2006-01-11  Bruno Haible  <bruno@clisp.org>
32465
32466         Avoid "ar: no archive members specified" error on MacOS X.
32467         * gnulib-tool (func_modules_add_dummy): New function.
32468         (func_import, func_create_testdir): Invoke it.
32469
32470 2006-01-11  Bruno Haible  <bruno@clisp.org>
32471
32472         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
32473         with $auxdir in AC_CONFIG_FILES statements.
32474
32475 2006-01-11  Bruno Haible  <bruno@clisp.org>
32476
32477         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
32478         Initialize also noinst_HEADERS to empty.
32479
32480 2006-01-11  Bruno Haible  <bruno@clisp.org>
32481
32482         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
32483         variables.
32484         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
32485         autoreconf.
32486
32487 2006-01-11  Bruno Haible  <bruno@clisp.org>
32488
32489         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
32490         overridable by the user.
32491         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
32492
32493 2006-01-10  Simon Josefsson  <jas@extundo.com>
32494
32495         * modules/sys_socket: New file.
32496
32497 2006-01-10  Simon Josefsson  <jas@extundo.com>
32498
32499         * m4/sys_socket_h.m4: New file.
32500
32501 2006-01-10  Simon Josefsson  <jas@extundo.com>
32502
32503         * lib/socket_.h: New file.
32504
32505 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
32506
32507         * modules/readutmp (Maintainer): Add myself.
32508
32509 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
32510
32511         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
32512         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
32513         People who are still concerned with buggy memcmp implementations
32514         can invoke gl_FUNC_MEMCMP themselves.
32515
32516 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
32517
32518         * lib/regex_internal.h (BITSET_WORD_BITS):
32519         Work around a bug in 64-bit PGC (before version 6.1-2), where the
32520         preprocessor mishandles large unsigned values as if they were signed.
32521         Problem reported by Claudio Fontana in
32522         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
32523
32524 2006-01-10  Jim Meyering  <jim@meyering.net>
32525
32526         Avoid the double-free (first in fts_read, second in fts_close) that
32527         would occur when an `active' directory is made inaccessible (e.g.,
32528         via chmod a-x) during a traversal.
32529         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
32530         before returning.  Reproduce this failure by
32531         mkdir -p a/b; cd a; chmod a-x . b
32532         Reported by Stavros Passas.
32533
32534         Sync from coreutils.
32535         * lib/sha1.c: Tweak grammar in a comment.
32536
32537 2006-01-10  Jim Meyering  <jim@meyering.net>
32538
32539         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
32540         Patch by Joerg Sonnenberger.
32541
32542 2006-01-10  Bruno Haible  <bruno@clisp.org>
32543
32544         * modules/readutmp: Depend on module free.
32545         * modules/strtok_r: Depend on module restrict.
32546
32547 2006-01-10  Bruno Haible  <bruno@clisp.org>
32548
32549         * modules/gettext (configure.ac): Add an invocation of
32550         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
32551
32552 2006-01-10  Bruno Haible  <bruno@clisp.org>
32553
32554         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
32555         Reported by Werner Lemberg <wl@gnu.org>.
32556
32557 2006-01-10  Bruno Haible  <bruno@clisp.org>
32558
32559         * lib/localcharset.c: Update from GNU gettext.
32560
32561 2006-01-10  Bruno Haible  <bruno@clisp.org>
32562
32563         * lib/argp.h (__const): Remove macro. Use const instead.
32564         * lib/argp-fmtstream.h (__const): Likewise.
32565         * lib/glob_.h (__const): Remove macro.
32566         * lib/glob-libc.h: Use const instead of __const.
32567
32568 2006-01-10  Bruno Haible  <bruno@clisp.org>
32569
32570         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
32571         variable.
32572         Needed to avoid an automake error regarding the 'gettext' module.
32573
32574 2006-01-09  Simon Josefsson  <jas@extundo.com>
32575
32576         * modules/inet_ntop (Depends-on): Add restrict.
32577
32578 2006-01-09  Simon Josefsson  <jas@extundo.com>
32579
32580         * modules/gc-rijndael-tests (License): Put under LGPL.
32581
32582         * modules/gc-des-tests (License): Likewise.
32583
32584         * modules/gc-arcfour-tests (License): Likewise.
32585
32586         * modules/gc-arctwo-tests (License): Likewise.
32587
32588         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
32589
32590         * modules/gc-hmac-sha1-tests (Files): Likewise.
32591
32592         * modules/gc-hmac-md5-tests (License): Likewise.
32593
32594         * modules/gc-sha1-tests (License): Likewise.
32595
32596         * modules/gc-md5-tests (License): Likewise.
32597
32598         * modules/gc-md4-tests (License): Likewise.
32599
32600         * modules/gc-md2-tests (License): Likewise.
32601
32602         * modules/gc-tests (License): Likewise.
32603
32604         * modules/des-tests (License): Likewise.
32605
32606         * modules/md4-tests (License): Likewise.
32607
32608         * modules/md2-tests (License): Likewise.
32609
32610 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32611
32612         Sync from coreutils:
32613
32614         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
32615         * modules/lib-ignore: New file.
32616         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
32617         chdir-safer.m4, lchmod.m4.
32618         * modules/openat: Add mkdirat.c, openat-priv.h.
32619
32620 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32621
32622         Sync from coreutils.
32623         * m4/lib-ignore.m4: New file.
32624         * m4/lchmod.m4: New file.
32625
32626 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32627
32628         Sync from coreutils.
32629         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
32630         for write access: POSIX says that must fail.
32631         * lib/fts.c (diropen): Likewise.
32632         * lib/save-cwd.c (save_cwd): Likewise.
32633         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
32634         well, for minor improvements on hosts that lack O_DIRECTORY.
32635         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
32636         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
32637         Fall back on chown if open failed with EACCES.
32638
32639         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
32640         Report an error at compile-time if only a 1-second nominal clock
32641         resolution is found.
32642
32643         * lib/lchmod.h: New file.
32644         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
32645         (make_dir_parents): Use lchown rather than chown, and
32646         lchmod rather than chmod.
32647
32648         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
32649         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
32650         "proc" reported by n0dalus.
32651
32652         * lib/mountlist.c: Include <limits.h>.
32653         (dev_from_mount_options)
32654         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
32655         New function.  It no longer assumes "dev=" has the System V meaning
32656         on Linux (since it doesn't).  It also parses "dev=" more carefully.
32657         (read_file_system_list)
32658         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
32659         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
32660         dev= in that case.
32661
32662         * lib/posixtm.h (PDS_PRE_2000): New macro.
32663         * lib/posixtm.c (year): Arg is now syntax_bits rather than
32664         allow_century.  All usages changed.  Reject dates outside the range
32665         1969-1999 if PDS_PRE_2000 is used.
32666
32667 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32668
32669         Sync from coreutils.
32670         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
32671         (Time of day items): Mention the possibility of leap seconds.
32672         Problem reported by Dr. David Alan Gilbert.
32673
32674 2006-01-09  Jim Meyering  <jim@meyering.net>
32675
32676         Sync from coreutils.
32677
32678         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
32679
32680         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
32681
32682         * lib/modechange.c (mode_compile): Reject an invalid mode string
32683         that starts with an octal digit.  From Andreas Gruenbacher.
32684
32685         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
32686         and dup to open_safer and dup_safer, respectively.
32687         (openat_permissive): Fix typo in comment.
32688
32689         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
32690         "gettext.h"; either no longer needed or are guaranteed by openat.h.
32691         (_): Remove; no longer needed.
32692         (openat): Renamed from rpl_openat; no need for rpl_openat
32693         since openat.h renames openat for us.
32694         Replace most of the body with a call to openat_permissive,
32695         to avoid duplicate code.
32696         Port to (probably hypothetical) environments were mode_t is
32697         wider than int.
32698         (openat_permissive): Require mode arg, so that we can check
32699         types better.  Put it just after flags.  Change cwd failure
32700         indicator from pointer-to-bool to pointer-to-errno-value.
32701         All callers changed.
32702         Invoke openat_save_fail and/or openat_restore_fail if
32703         cwd_errno is null, so that openat can call us.
32704         (openat_permissive, fdopendir, fstatat, unlinkat):
32705         Simplify errno handling to avoid some duplicate code,
32706         as it's OK to set errno on success.
32707         * lib/openat.h: Revamp code so that function macros depend on
32708         __OPENAT_PREFIX only, not also on AT_FDCWD.
32709         (openat_ro): Remove.  Caller changed to use openat_permissive.
32710         (openat_permissive): Now a macro, if not a function.
32711         (openat_restore_fail, openat_save_fail): Now always functions,
32712         since mkdirat needs them even if __OPENAT_PREFIX is defined.
32713
32714         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
32715         and openat.c.
32716         * lib/mkdirat.c: Include openat-priv.h.
32717         Remove definitions of macros defined therein.
32718         * lib/openat.c: Likewise.
32719
32720         * lib/mkdirat.c (mkdirat): New file and function.
32721         * lib/openat.h (mkdirat): Declare.
32722
32723         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
32724
32725         * lib/openat.h (openat_permissive): Declare.
32726         (openat_ro): Define.
32727
32728         * lib/openat.c (EXPECTED_ERRNO): New macro.
32729         (openat_permissive): New function -- used in remove.c rewrite.
32730         (all functions): Set errno just before returning, only if there
32731         was an actual failure.
32732         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
32733
32734         Emulate openat-family functions using Linux's procfs, if possible.
32735         Idea and some code based on Ulrich Drepper's glibc changes.
32736
32737         * lib/openat.c: (BUILD_PROC_NAME): New macro.
32738         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
32739         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
32740         before falling back on save_cwd and restore_cwd.
32741         (fdopendir, fstatat, unlinkat): Likewise.
32742
32743         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
32744         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
32745
32746         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
32747         as second argument to va_arg.  Otherwise, some versions of gcc
32748         warn that `if this code is reached, the program will abort'.
32749
32750 2006-01-09  Jim Meyering  <jim@meyering.net>
32751
32752         Sync from coreutils.
32753         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
32754         Require openat-priv.h.
32755
32756 2006-01-09  Bruno Haible  <bruno@clisp.org>
32757
32758         * modules/strnlen (Include): Use strnlen.h.
32759
32760 2006-01-09  Bruno Haible  <bruno@clisp.org>
32761
32762         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
32763
32764 2006-01-09  Bruno Haible  <bruno@clisp.org>
32765
32766         * lib/sysexit_.h (EX_OK): New macro.
32767         Suggested by Martin Lambers <marlam@marlam.de>.
32768
32769 2006-01-09  Bruno Haible  <bruno@clisp.org>
32770
32771         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
32772         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
32773
32774 2006-01-09  Bruno Haible  <bruno@clisp.org>
32775
32776         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
32777         numbers.
32778
32779 2006-01-09  Bruno Haible  <bruno@clisp.org>
32780
32781         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
32782         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
32783         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
32784         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
32785
32786 2006-01-09  Bruno Haible  <bruno@clisp.org>
32787
32788         * build-aux/javacomp.sh.in: New file, moved from lib/.
32789         * modules/javacomp-script (Files): Update.
32790         (configure.ac): Add AC_CONFIG_FILES invocation.
32791         (EXTRA_DIST): Remove variable.
32792
32793         * build-aux/javaexec.sh.in: New file, moved from lib/.
32794         * modules/javaexec (Files): Update.
32795         (configure.ac): Add AC_CONFIG_FILES invocation.
32796         (EXTRA_DIST): Remove javaexec.sh.in.
32797
32798         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
32799         * modules/csharpcomp-script (Files): Update.
32800         (configure.ac): Add AC_CONFIG_FILES invocation.
32801         (EXTRA_DIST): Remove variable.
32802
32803         * build-aux/csharpexec.sh.in: New file, moved from lib/.
32804         * modules/csharpexec (Files): Update.
32805         (configure.ac): Add AC_CONFIG_FILES invocation.
32806         (EXTRA_DIST): Remove csharpexec.sh.in.
32807
32808 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
32809
32810         Sync from coreutils.
32811
32812         Add POSIX ACL support
32813         * lib/acl.h (copy_acl, set_acl): Add declarations.
32814         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
32815         systems other than Linux.
32816         (chmod_or_fchmod): New function: use fchmod when possible,
32817         and chmod otherwise.
32818         (file_has_acl): Add a POSIX ACL implementation, with a
32819         Linux-specific subcase.
32820         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
32821         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
32822         acls are unsupported.
32823         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
32824         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
32825         are unsupported.
32826
32827 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
32828
32829         Sync from coreutils.
32830         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
32831
32832 2006-01-07  Bruno Haible  <bruno@clisp.org>
32833
32834         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
32835         gl_EARLY.
32836
32837 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
32838
32839         * lib/strftime.c (tzname): Don't declare if it is already #defined.
32840         Problem reported for Mingw by Mark Junker.
32841
32842 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
32843
32844         * README: Gnulib normally doesn't generate a tarball.
32845
32846 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
32847
32848         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
32849         long int, not int, for nanosecond counts, so that people who are
32850         used to POSIX struct timespec won't be surprised.  Reported by Jim
32851         Meyering.
32852
32853 2005-12-28  Bruno Haible  <bruno@clisp.org>
32854
32855         * build-aux/config.rpath: Update from GNU gettext.
32856
32857 2005-12-16  Jim Meyering  <jim@meyering.net>
32858
32859         * modules/fprintftime: New module.
32860         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
32861
32862 2005-12-16  Jim Meyering  <jim@meyering.net>
32863
32864         * m4/fprintftime.m4: New file.
32865
32866 2005-12-16  Jim Meyering  <jim@meyering.net>
32867
32868         * lib/fprintftime.c, lib/fprintftime.h: New files.
32869
32870 2005-12-15  Simon Josefsson  <jas@extundo.com>
32871
32872         * modules/socklen (configure.ac): Fix M4 macro name, to align with
32873         new m4/socklen.m4.
32874
32875 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
32876
32877         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
32878         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
32879
32880 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
32881
32882         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
32883         * lib/argp-help.c (fill_in_uparams): Check if the constructed
32884         struct uparams is valid. Fall back to the default values if it is
32885         not.
32886
32887 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
32888
32889         * modules/argp (Files): Add argp-pin.c
32890         (Depends-on): dirname
32891         (lib_SOURCES): Add argp-pin.c
32892
32893 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
32894
32895         * m4/argp.m4:  Check if program_invocation_name and
32896         program_invocation_short_name are declared and define appropriate
32897         macros if they are not.
32898
32899 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
32900
32901         * lib/argp-help.c (__argp_base_name): New function
32902         (__argp_short_program_name): Rewrite using __argp_base_name
32903         * lib/argp-namefrob.h: Define program_invocation_name and
32904         program_invocation_short_name if requested
32905         (__argp_base_name): Add prototype
32906         * lib/argp-parse.c (argp_def): Use gettext wrappers
32907         (argp_default_parser): Use __argp_base_name
32908         * lib/argp-pin.c: New file. Defines program_invocation_name and
32909         program_invocation_short_name on systems that lack them.
32910
32911 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
32912
32913         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
32914         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
32915         porting problem reported by Georg Schwarz in
32916         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
32917
32918 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
32919
32920         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
32921         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
32922         porting problem reported by Georg Schwarz in
32923         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
32924
32925 2005-12-05  Bruno Haible  <bruno@clisp.org>
32926
32927         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
32928         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
32929         Reported by Mark Junker <mjscod@gmx.de>.
32930
32931 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
32932
32933         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
32934         Use implementation from Albert Chin, with some
32935         comments/corrections by Stepan Kasal and myself.
32936
32937 2005-12-02  Bruno Haible  <bruno@clisp.org>
32938
32939         * gnulib-tool (func_import): Accept GPLed build tool modules when
32940         --lgpl is given.
32941         * modules/csharpcomp-script: New file.
32942         * modules/csharpcomp: Depend on it.
32943         * modules/javacomp-script: New file.
32944         * modules/javacomp: Depend on it.
32945         Suggested by Simon Josefsson.
32946
32947 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
32948
32949         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
32950         statement, to work around an HP-UX 10.20 compiler bug reported by
32951         Peter O'Gorman.
32952
32953 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
32954
32955         * modules/savedir (Depends-on): Add openat.
32956
32957 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
32958
32959         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
32960         (uintmax_t) [defined uintmax_t]: Do not declare.
32961         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
32962         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
32963         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
32964         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
32965         sake of portability to weird hosts that C allows (though we don't
32966         know of any practical examples).
32967
32968         * lib/savedir.h (fdsavedir): New decl.
32969         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
32970         contains most of the former guts of savedir.
32971         (savedir): Use savedirstream.
32972         Include "openat.h".
32973
32974 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
32975
32976         * modules/obstack (Files): Add m4/ulonglong.m4.
32977         Problem reported by Davide Angelocola.
32978
32979 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
32980
32981         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
32982         coreutils no longer futzes with rounding modes.
32983
32984 2005-11-14  Jim Meyering  <jim@meyering.net>
32985
32986         * lib/mkstemp-safer.c: Include <config.h>, required for possible
32987         replacement of mkstemp.
32988
32989 2005-11-10  Simon Josefsson  <jas@extundo.com>
32990
32991         * lib/readline.c: Remove EOL.
32992
32993 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
32994
32995         * modules/gethrxtime (Depends-on): Add gettime.
32996
32997 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
32998
32999         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
33000         or gettimeofday; no longer needed.
33001
33002 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
33003
33004         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
33005         time business.
33006         (gethrxtime) [! (HAVE_NANOUPTIME
33007         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
33008         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
33009         our own approximation.
33010
33011 2005-11-08  Eric Blake  <ebb9@byu.net>
33012
33013         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
33014
33015 2005-11-08  Eric Blake  <ebb9@byu.net>
33016
33017         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
33018
33019 2005-11-04  Bruno Haible  <bruno@clisp.org>
33020
33021         * gnulib-tool: Implement --update mode.
33022
33023 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
33024
33025         Fix porting problem reported by Theodoros V. Kalamatianos.
33026         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
33027         Don't assume that futimes failing means we must fail.
33028
33029 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
33030
33031         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
33032         variables to suggest the intended function of the PATH_MAX check.
33033
33034 2005-10-30  Kean Johnston  <jkj@sco.com>
33035
33036         Trivial changes to support SCO systems.
33037         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
33038         as PATH_MAX.
33039         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
33040         where __ptr is null when no I/O is pending.
33041
33042 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
33043
33044         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
33045         leave errno alone.  Problem reported by Dmitry V. Levin.
33046
33047 2005-10-28  Simon Josefsson  <jas@extundo.com>
33048
33049         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
33050         Test more.
33051
33052         * tests/test-gc-md2.c, tests/test-md2.c: New files.
33053
33054         * modules/md2, modules/md2-tests: New files.
33055
33056 2005-10-28  Simon Josefsson  <jas@extundo.com>
33057
33058         * m4/inet_ntop.m4: More tests.
33059
33060         * m4/gc-md2.m4, md2.m4: New file.
33061
33062 2005-10-28  Simon Josefsson  <jas@extundo.com>
33063
33064         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
33065         "restrict" keywords, as per POSIX.  Protect the function
33066         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
33067         Don't use K&R prototypes.  Check the sprintf return values.
33068         Re-define EAFNOSUPPORT if not present.  Indent.
33069
33070         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
33071         suggested by Bruno Haible <bruno@clisp.org>.
33072
33073         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
33074
33075         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
33076
33077         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
33078         libgcrypt).
33079
33080         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
33081
33082         * lib/md2.h, lib/md2.c: New files.
33083
33084 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
33085
33086         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
33087         errno alone.  Problem reported by Frederic Jolliton.
33088
33089 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
33090
33091         * modules/verify (License): Change from GPL to LGPL.  This is a
33092         tiny module and there are apparently near-equivalents that are
33093         under the BSD license.
33094
33095 2005-10-24  Simon Josefsson  <jas@extundo.com>
33096
33097         * modules/sha1: Relicense to LGPL.
33098
33099 2005-10-24  Simon Josefsson  <jas@extundo.com>
33100
33101         * lib/md4.h: Shrink buffer size, now that we changed the type.
33102
33103 2005-10-23  Simon Josefsson  <jas@extundo.com>
33104
33105         * gnulib-tool (func_import): Fix --tests-base.
33106
33107 2005-10-22  Simon Josefsson  <jas@extundo.com>
33108
33109         * modules/arcfour (Depends-on): Need stdint.
33110
33111 2005-10-22  Simon Josefsson  <jas@extundo.com>
33112
33113         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
33114         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
33115
33116 2005-10-22  Simon Josefsson  <jas@extundo.com>
33117
33118         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
33119         suggested by Bruno Haible <bruno@clisp.org>.
33120
33121 2005-10-22  Simon Josefsson  <jas@extundo.com>
33122
33123         * lib/crc.h: Include stddef.h, for size_t.
33124
33125 2005-10-22  Simon Josefsson  <jas@extundo.com>
33126
33127         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
33128         arcfour_context struct (simplify test vector testing in GNU
33129         Shishi).
33130
33131 2005-10-21  Simon Josefsson  <jas@extundo.com>
33132
33133         * modules/des, modules/des-tests: New files.
33134
33135         * modules/gc-des, modules/gc-des-tests: New files.
33136
33137         * tests/test-des.c, tests/test-gc-des.c: New file.
33138
33139 2005-10-21  Simon Josefsson  <jas@extundo.com>
33140
33141         * modules/arctwo, modules/arctwo-tests: New files.
33142
33143         * tests/test-arctwo.c: New file.
33144
33145         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
33146
33147         * tests/test-gc-arctwo.c: New file.
33148
33149 2005-10-21  Simon Josefsson  <jas@extundo.com>
33150
33151         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
33152         Bruno Haible <bruno@clisp.org>.
33153
33154         * m4/gc-des.m4: New file.
33155
33156 2005-10-21  Simon Josefsson  <jas@extundo.com>
33157
33158         * m4/arctwo.m4: New file.
33159
33160         * m4/gc-arctwo.m4: New file.
33161
33162 2005-10-21  Simon Josefsson  <jas@extundo.com>
33163
33164         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
33165         block.
33166
33167 2005-10-21  Simon Josefsson  <jas@extundo.com>
33168
33169         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
33170         <bruno@clisp.org>.
33171
33172         * lib/hmac-sha1.c (hmac_sha1): Likewise.
33173
33174         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
33175         Bruno Haible <bruno@clisp.org>.
33176
33177         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
33178         <bruno@clisp.org>.
33179
33180 2005-10-21  Simon Josefsson  <jas@extundo.com>
33181
33182         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
33183
33184 2005-10-21  Simon Josefsson  <jas@extundo.com>
33185
33186         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
33187
33188 2005-10-21  Simon Josefsson  <jas@extundo.com>
33189
33190         * lib/des.h, lib/des.c: New files.
33191
33192         * lib/gc-gnulib.c: Support DES.c
33193
33194 2005-10-21  Simon Josefsson  <jas@extundo.com>
33195
33196         * lib/arctwo.h, lib/arctwo.c: New files.
33197
33198         * lib/gc-gnulib.c: Support ARCTWO.
33199
33200 2005-10-21  Simon Josefsson  <jas@extundo.com>
33201
33202         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
33203         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
33204
33205 2005-10-21  Simon Josefsson  <jas@extundo.com>
33206
33207         * gnulib-tool (func_import, func_create_testdir): Define automake
33208         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
33209         Makefile.am snippet),
33210         suggested by Bruno Haible <bruno@clisp.org>.
33211
33212         * modules/gc (Makefile.am): Use it.
33213
33214 2005-10-21  Bruno Haible  <bruno@clisp.org>
33215
33216         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
33217         patch.
33218
33219 2005-10-19  Simon Josefsson  <jas@extundo.com>
33220
33221         * tests/test-gc-rijndael.c: New file.
33222
33223         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
33224
33225 2005-10-19  Simon Josefsson  <jas@extundo.com>
33226
33227         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
33228         interface too.
33229
33230 2005-10-19  Simon Josefsson  <jas@extundo.com>
33231
33232         * tests/test-gc-arcfour.c: New file.
33233
33234         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
33235
33236 2005-10-19  Simon Josefsson  <jas@extundo.com>
33237
33238         * modules/gc-md4, modules/gc-md4-tests: New file.
33239
33240         * tests/test-gc-md4.c: New file.
33241
33242 2005-10-19  Simon Josefsson  <jas@extundo.com>
33243
33244         * m4/gc-md4.m4: New file.
33245
33246 2005-10-19  Simon Josefsson  <jas@extundo.com>
33247
33248         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
33249         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
33250         <kasal@ucw.cz>.
33251
33252 2005-10-19  Simon Josefsson  <jas@extundo.com>
33253
33254         * m4/gc-arcfour.m4: New file.
33255
33256         * m4/gc-rijndael.m4: New file.
33257
33258 2005-10-19  Simon Josefsson  <jas@extundo.com>
33259
33260         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
33261
33262 2005-10-19  Simon Josefsson  <jas@extundo.com>
33263
33264         * lib/gc-gnulib.c: Support ARCFOUR.
33265
33266 2005-10-19  Simon Josefsson  <jas@extundo.com>
33267
33268         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
33269         support.
33270
33271         * lib/gc.h: Add ECB enum type.
33272
33273         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
33274
33275 2005-10-18  Simon Josefsson  <jas@extundo.com>
33276
33277         * tests/test-md5.c: New file.
33278
33279         * modules/md5-tests: New file.
33280
33281 2005-10-18  Simon Josefsson  <jas@extundo.com>
33282
33283         * tests/test-md4.c: New file.
33284
33285         * modules/md4, modules/md4-tests: New files.
33286
33287 2005-10-18  Simon Josefsson  <jas@extundo.com>
33288
33289         * m4/md4.m4: New file.
33290
33291 2005-10-18  Simon Josefsson  <jas@extundo.com>
33292
33293         * lib/md4.h, lib/md4.c: New files, based on md5.?.
33294
33295 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
33296
33297         * gnulib-tool (func_create_testdir): Omit the second check whether
33298         BUILT_SOURCES in nonempty.
33299
33300 2005-10-17  Simon Josefsson  <jas@extundo.com>
33301
33302         * tests/test-rijndael.c: New file.
33303
33304 2005-10-17  Simon Josefsson  <jas@extundo.com>
33305
33306         * modules/sha1: Depend on stdint instead of md5.
33307
33308         * modules/md5: Depend on stdint, remove uint32_t.
33309
33310 2005-10-17  Simon Josefsson  <jas@extundo.com>
33311
33312         * modules/gc-sha1-tests: New file.
33313
33314         * tests/test-gc-sha1.c: New file.
33315
33316 2005-10-17  Simon Josefsson  <jas@extundo.com>
33317
33318         * m4/md5.m4: Remove call to uint32_t.m4.
33319
33320 2005-10-17  Simon Josefsson  <jas@extundo.com>
33321
33322         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
33323
33324         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
33325         md5.h.
33326
33327         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
33328
33329         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
33330
33331 2005-10-17  Simon Josefsson  <jas@extundo.com>
33332
33333         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
33334
33335 2005-10-17  Simon Josefsson  <jas@extundo.com>
33336
33337         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
33338
33339 2005-10-17  Simon Josefsson  <jas@extundo.com>
33340
33341         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
33342
33343         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
33344
33345 2005-10-17  Bruno Haible  <bruno@clisp.org>
33346
33347         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
33348         that it can also be used in a test.
33349
33350 2005-10-16  Bruno Haible  <bruno@clisp.org>
33351
33352         * gnulib-tool (func_emit_tests_Makefile_am): Also define
33353         TESTS_ENVIRONMENT, so that individual tests can augment it.
33354
33355         * gnulib-tool (func_create_testdir): Use an intermediate target for
33356         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
33357         macros, like $(ALLOCA_H), which cannot be passed through the command
33358         line.
33359
33360 2005-10-15  Simon Josefsson  <jas@extundo.com>
33361
33362         * modules/rijndael-tests: New file.
33363
33364         * modules/rijndael: New file.
33365
33366 2005-10-15  Simon Josefsson  <jas@extundo.com>
33367
33368         * m4/rijndael.m4: New file.
33369
33370 2005-10-15  Simon Josefsson  <jas@extundo.com>
33371
33372         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
33373
33374         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
33375
33376 2005-10-14  Simon Josefsson  <jas@extundo.com>
33377
33378         * tests/test-arcfour.c: New file.
33379
33380         * modules/arcfour, modules/arcfour-tests: New files.
33381
33382 2005-10-14  Simon Josefsson  <jas@extundo.com>
33383
33384         * m4/arcfour.m4: New file.
33385
33386 2005-10-14  Simon Josefsson  <jas@extundo.com>
33387
33388         * lib/arcfour.h, lib/arcfour.c: New files.
33389
33390 2005-10-14  Roland McGrath  <roland@redhat.com>
33391
33392         Import from libc.  [BZ #1331]
33393         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
33394         macro argument.
33395         Reported by Matej Vela <vela@debian.org>.
33396
33397 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
33398
33399         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
33400         include <wchar.h>; no longer needed.
33401
33402 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
33403
33404         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
33405
33406 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
33407         and  Ulrich Drepper  <drepper@redhat.com>
33408
33409         Import from libc.
33410         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
33411         instead of inline stream orientation test and two separate
33412         function calls.  Pay no attention to USE_IN_LIBIO.
33413
33414 2005-10-13  Simon Josefsson  <jas@extundo.com>
33415
33416         * modules/gc-hmac-md5-tests: New file.
33417
33418         * tests/test-gc-hmac-sha1.c: New file.
33419
33420         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
33421
33422         * modules/gc-hmac-md5-tests: New file.
33423
33424         * tests/test-gc-md5.c: New file.
33425
33426         * modules/gc-md5-tests: New file.
33427
33428 2005-10-13  Simon Josefsson  <jas@extundo.com>
33429
33430         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
33431         Move memory allocation outside of loop.
33432
33433 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
33434
33435         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
33436         intermediate directory is in a read-only file system.  Problem
33437         reported by Eric Blake.
33438
33439 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
33440
33441         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
33442
33443 2005-10-12  Simon Josefsson  <jas@extundo.com>
33444
33445         * tests/test-hmac-sha1.c: New file.
33446
33447         * modules/hmac-sha1-tests: New file.
33448
33449         * modules/hmac-sha1: New file.
33450
33451 2005-10-12  Simon Josefsson  <jas@extundo.com>
33452
33453         * modules/gc-sha1: New file.
33454
33455 2005-10-12  Simon Josefsson  <jas@extundo.com>
33456
33457         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
33458
33459         * tests/test-gc-pbkdf2-sha1.c: New file.
33460
33461 2005-10-12  Simon Josefsson  <jas@extundo.com>
33462
33463         * modules/gc-md5, modules/gc-hmac-md5: New files.
33464
33465         * modules/gc (Files): Remove md5, memxor and hmac files.
33466
33467 2005-10-12  Simon Josefsson  <jas@extundo.com>
33468
33469         * m4/gc-pbkdf2-sha1.m4: New file.
33470
33471         * m4/gc-hmac-sha1.m4: New file.
33472
33473         * m4/gc-sha1: New file.
33474
33475         * m4/hmac-sha1.m4: New file.
33476
33477 2005-10-12  Simon Josefsson  <jas@extundo.com>
33478
33479         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
33480
33481         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
33482
33483 2005-10-12  Simon Josefsson  <jas@extundo.com>
33484
33485         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
33486         suggested by Bruno Haible <bruno@clisp.org>.
33487
33488 2005-10-12  Simon Josefsson  <jas@extundo.com>
33489
33490         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
33491
33492 2005-10-12  Simon Josefsson  <jas@extundo.com>
33493
33494         * lib/gc-pbkdf2-sha1.c: New file.
33495
33496         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
33497
33498 2005-10-12  Simon Josefsson  <jas@extundo.com>
33499
33500         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
33501
33502         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
33503
33504 2005-10-12  Simon Josefsson  <jas@extundo.com>
33505
33506         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
33507         GC_USE_HMAC_MD5, respectively.
33508
33509         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
33510         (gc_md5): Fix typo.
33511
33512         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
33513
33514         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
33515
33516         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
33517
33518 2005-10-12  Bruno Haible  <bruno@clisp.org>
33519
33520         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
33521         Reported by Stepan Kasal <kasal@ucw.cz>.
33522
33523 2005-10-11  Simon Josefsson  <jas@extundo.com>
33524
33525         * tests/test-crc.c: New file.
33526
33527         * modules/crc, modules/crc-tests: New files.
33528
33529 2005-10-11  Simon Josefsson  <jas@extundo.com>
33530
33531         * m4/crc.m4: New file.
33532
33533 2005-10-11  Simon Josefsson  <jas@extundo.com>
33534
33535         * lib/gc.h: Add gc_hash and gc_hash_buffer.
33536
33537         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
33538
33539         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
33540
33541 2005-10-11  Simon Josefsson  <jas@extundo.com>
33542
33543         * lib/crc.h, lib/crc.c: New files.
33544
33545         * lib/gc.h (gc_hash_buffer): Add doc.
33546
33547 2005-10-11  Bruno Haible  <bruno@clisp.org>
33548
33549         * modules/c-strcasestr: New file.
33550         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
33551
33552 2005-10-11  Bruno Haible  <bruno@clisp.org>
33553
33554         * modules/c-strcase: New file.
33555         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
33556
33557 2005-10-11  Bruno Haible  <bruno@clisp.org>
33558
33559         * lib/strcasecmp.c: Include limits.h.
33560         (strcasecmp): Avoid integer overflow on exotic platforms.
33561         * lib/strncasecmp.c: Include limits.h.
33562         (strncasecmp): Avoid integer overflow on exotic platforms.
33563         Reported by Paul Eggert.
33564
33565 2005-10-11  Bruno Haible  <bruno@clisp.org>
33566
33567         * lib/c-strcasestr.h: New file, from GNU gettext.
33568         * lib/c-strcasestr.c: New file, from GNU gettext.
33569
33570 2005-10-11  Bruno Haible  <bruno@clisp.org>
33571
33572         * lib/c-strcase.h: New file, from GNU gettext.
33573         * lib/c-strcasecmp.c: New file, from GNU gettext.
33574         * lib/c-strncasecmp.c: New file, from GNU gettext.
33575
33576 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
33577
33578         * modules/mempcpy (License): GPL -> LGPL.
33579         * modules/strchrnul (License): Likewise.
33580         * modules/sysexits (License): Likewise.
33581
33582 2005-10-08  Simon Josefsson  <jas@extundo.com>
33583
33584         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
33585
33586 2005-10-07  Simon Josefsson  <jas@extundo.com>
33587
33588         * m4/memxor.m4: Remove gl_C_RESTRICT call.
33589
33590 2005-10-06  Simon Josefsson  <jas@extundo.com>
33591
33592         * tests/test-hmac-md5.c: New file.
33593
33594         * modules/hmac-md5-tests: New file.
33595
33596         * modules/hmac-md5: New file.
33597
33598 2005-10-06  Simon Josefsson  <jas@extundo.com>
33599
33600         * m4/hmac-md5.m4: New file.
33601
33602         * m4/memxor.m4: Require gl_C_RESTRICT.
33603
33604 2005-10-06  Simon Josefsson  <jas@extundo.com>
33605
33606         * lib/memxor.c (memxor): Avoid casts and warnings.
33607
33608 2005-10-06  Simon Josefsson  <jas@extundo.com>
33609
33610         * lib/hmac-md5.c: New file.
33611
33612         * lib/hmac.h: New file.
33613
33614 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
33615
33616         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
33617         promotes to int, not unsigned int, to catch the AIX 5.3
33618         compiler bug.
33619
33620 2005-10-05  Simon Josefsson  <jas@extundo.com>
33621
33622         * modules/memxor: New file.
33623
33624         * modules/iconv (Files): Move config.rpath to havelib, it is used
33625         there.
33626
33627         * modules/havelib (Files): Add config.rpath.
33628
33629 2005-10-05  Simon Josefsson  <jas@extundo.com>
33630
33631         * m4/memxor.m4: New file.
33632
33633 2005-10-05  Simon Josefsson  <jas@extundo.com>
33634
33635         * lib/memxor.c (memxor): Fix compiler error.
33636
33637         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
33638         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
33639
33640         * lib/memxor.h, lib/memxor.c: New files.
33641
33642         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
33643         we assume all systems have it, suggested by Jim Meyering
33644         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
33645         any systems lack sys/socket.h; mingw32 is known to lack it, but we
33646         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
33647         same reasons.
33648
33649 2005-10-05  Simon Josefsson  <jas@extundo.com>
33650
33651         * config/srclist.txt: Add glibc bug 1423 for md5.h.
33652
33653 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
33654
33655         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
33656         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
33657         needed, since the source code now assumes these .h files.
33658
33659 2005-10-05  Derek Price  <derek@ximbiot.com>
33660
33661         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
33662
33663 2005-10-05  Bruno Haible  <bruno@clisp.org>
33664
33665         * modules/stdint (License): Change to LGPL.
33666
33667 2005-10-04  Simon Josefsson  <jas@extundo.com>
33668
33669         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
33670         D. Baushke" <mdb@gnu.org>.
33671
33672 2005-10-04  Bruno Haible  <bruno@clisp.org>
33673
33674         * lib/verify.h (verify_true): Provide alternative definition for C++.
33675
33676 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
33677
33678         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
33679         (SSIZE_MAX): New macro, if not already defined.
33680         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
33681         than 2 GiB.
33682
33683 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
33684
33685         Sync from coreutils.
33686         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
33687         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
33688         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
33689         ULLONG_MAX doesn't work with 2.7.2.1.
33690
33691 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
33692
33693         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
33694         From Ben Pfaff.
33695
33696         * modules/exclude (Depends-on): Depend on verify.
33697         * modules/strtoimax (Depends-on): Likewise.
33698         * modules/utimecmp (Depends-on): Likewise.
33699
33700 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
33701
33702         * lib/exclude.c: Include verify.h.
33703         (verify): Remove.  All callers changed to use verify.h's version.
33704         * lib/strtoimax.c: Likewise.
33705         * lib/utimecmp.c: Likewis.e
33706
33707         Sync from coreutils.
33708         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
33709         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
33710         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
33711         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
33712         bother returning ENOSYS if settimeofday or stime fails; just let
33713         them return whatever errno they want to return.
33714         * lib/utimens.c: Include unistd.h, for dup2.
33715         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
33716         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
33717
33718 2005-10-02  Jim Meyering  <jim@meyering.net>
33719
33720         Sync from coreutils.
33721         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
33722         from glibc-2.2.5 that fails for read-only files.
33723
33724 2005-10-02  Jim Meyering  <jim@meyering.net>
33725
33726         Sync from coreutils.
33727         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
33728         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
33729         `#if HAVE_CONFIG_H'.
33730         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
33731         Remove AT_FDCWD test.
33732         Do not consume the fd unless successful.
33733         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
33734         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
33735         block, so that we don't even try to compile it if settimeofday is
33736         available.  This works around a compilation failure on OSF1 V5.1,
33737         due to stime requiring a `long int*' while tv_sec is `int'.
33738
33739 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
33740
33741         Sync from coreutils.
33742         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
33743         against `yes', rather than just testing for nonempty.
33744
33745 2005-10-01  Simon Josefsson  <jas@extundo.com>
33746
33747         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
33748         and Darwin.
33749
33750         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
33751         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
33752         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
33753         freeaddrinfo and gai_strerror are declared by the POSIX headers.
33754         Check if struct addrinfo is declared.
33755
33756 2005-10-01  Simon Josefsson  <jas@extundo.com>
33757
33758         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
33759         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
33760         AI_* and EAI_* definitions.  Protect function declarations.
33761
33762 2005-10-01  Jim Meyering  <jim@meyering.net>
33763
33764         Sync from coreutils.
33765
33766         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
33767         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
33768         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
33769         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
33770         in the inet and nsl libraries.  Required on Solaris 5.7.
33771
33772 2005-10-01  Jim Meyering  <jim@meyering.net>
33773
33774         Sync from coreutils.
33775         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
33776         in the inet and nsl libraries.  Required on Solaris 5.7.
33777
33778 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
33779
33780         * lib/getdelim.c (getdelim): Remove unused variables.
33781
33782 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
33783
33784         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
33785         so that the code works even with ancient cpp.  Portability problem
33786         with GCC 2.7.2.1 reported by Thomas M.Ott.
33787
33788 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
33789
33790         * modules/regex (Depends-on): Add strcase.
33791
33792         * modules/gethostname (Licence): Change from GPL to LGPL, since
33793         gethostname.c is a trivial implementation of a standard library
33794         function.
33795         * modules/poll (License): Change from GPL to LGPL, since it's
33796         derived from LGPL code.
33797
33798 2005-09-27  Jim Meyering  <jim@meyering.net>
33799
33800         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
33801         HAVE_CONFIG_H.
33802
33803         * lib/intprops.h (signed_type_or_expr__): Define.
33804         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
33805         for unsigned types.
33806
33807 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
33808
33809         * lib/verify.h (verify_expr): Remove, replacing with:
33810         (verify_true): New macro that returns true instead of void.
33811         (verify_type__): Remove.
33812         (verify): Use verify_true rather than verify_type__.
33813
33814 2005-09-26  Bruno Haible  <bruno@clisp.org>
33815
33816         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
33817         is necessary.
33818         (lib_SOURCES): Remove mbchar.c.
33819         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
33820         (Files): Add m4/mbrtowc.m4.
33821         * modules/mbiter: Likewise.
33822         * modules/mbuiter: Likewise.
33823
33824 2005-09-26  Bruno Haible  <bruno@clisp.org>
33825
33826         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
33827         compile mbchar.c if they are not both present.
33828         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
33829         * m4/mbiter.m4 (gl_MBITER): Likewise.
33830         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
33831         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
33832         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
33833
33834 2005-09-25  Jim Meyering  <jim@meyering.net>
33835
33836         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
33837         also uses socklen_t.
33838
33839 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
33840
33841         * lib/utimens.c (ENOSYS): Define if not already defined.
33842         (futimens): Support having a null PATH if the file descriptor
33843         is nonnegative.
33844
33845         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
33846         Remove.
33847         (__attribute): Define to empty unless GCC 3.1 or later.
33848         This works around a core dump on OpenBSD 3.4, which has GCC
33849         2.95.3, which dumps core when given __attribute__(()).  It also
33850         simplifies other tests, since we really don't want to bother with
33851         worrying about which ancient version of GCC supported what.
33852         Original problem reported by Yoann Vandoorselaere, with part of
33853         the fix suggested by Derek Price.
33854
33855 2005-09-24  Jim Meyering  <jim@meyering.net>
33856
33857         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
33858         so we can once again use a positive bitfield width of 1 -- now we
33859         don't have to explain why we were using a bitfield width of 2.
33860
33861 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
33862
33863         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
33864         and similarly for the other external symbols.  Problem reported
33865         by James Gallager.
33866
33867         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
33868         bug reported by Jim Meyering.
33869
33870         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
33871         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
33872         not needed, since socklen is a prerequisite module.
33873
33874 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
33875
33876         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
33877         Problem reported by Eric Blake.
33878         (getaddrinfo): Initialize se so that it's not garbage.
33879         Redo internal storage allocation so that it doesn't make unportable
33880         assumptions about alignment.
33881         Fix a memory leak.
33882
33883         * lib/utimens.c (futimens): Use futimesat if available.
33884         Prefer it to futimes since it doesn't have the futimes bug.
33885
33886         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
33887         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
33888         Instead, declare a function that returns a pointer to an array,
33889         and use verify_type__ to declare the size of the array.
33890         Problem and germ of a solution reported by Bruno Haible.
33891         (verify_type__): Use 2, not 1, for bitfield size, to avoid
33892         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
33893
33894 2005-09-23  Jim Meyering  <jim@meyering.net>
33895
33896         Sync from coreutils.
33897         Correct build failure (socklen_t not defined) on at least
33898         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
33899         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
33900
33901 2005-09-23  Jim Meyering  <jim@meyering.net>
33902
33903         * modules/getaddrinfo (Depends-on): Add socklen.
33904
33905 2005-09-23  Bruno Haible  <bruno@clisp.org>
33906
33907         * tests/test-verify.c: New file.
33908
33909 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
33910
33911         Sync from coreutils.
33912
33913         * modules/argmatch (Depends-on): Add verify.
33914         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
33915         unistd-safer.
33916         * modules/save-cwd (Depends-on): Likewise.
33917
33918         * modules/openat (Files): Add lib/openat-die.c.
33919         (Depends-on): Remove error, exitfail.
33920         Add dirname.
33921
33922         * modules/verify: New file.
33923         * MODULES.html.sh (Diagnostics <assert.h>): New section,
33924         with "verify" module.
33925
33926 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
33927
33928         Sync from coreutils.
33929
33930         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
33931         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
33932         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
33933         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
33934         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
33935         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
33936         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
33937         Don't bother checking for string.h, stdlib.h, unistd.h.
33938         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
33939         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
33940         module's job.
33941         * m4/jm-macros.m4 (gl_MACROS): Likewise.
33942         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
33943
33944         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
33945         (gl_GETDATE): Use it.
33946
33947         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
33948
33949 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
33950
33951         Sync from coreutils.
33952
33953         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
33954         stat-time.h.
33955         * lib/argmatch.h: Include verify.h
33956         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
33957         (ARGMATCH_ASSERT): Remove; unused.
33958         * lib/canonicalize.c: Assume STDC_HEADERS.
33959         * lib/exclude.c: Include "strcase.h".
33960         * lib/regex_internal.h [!defined _LIBC]: Likewise.
33961         * lib/getusershell.c: Include stdio--.h rather than stdio.h
33962         and stdio-safer.h.
33963         (getusershell): Call fopen, not fopen_safer.
33964         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
33965         Do not include unistd-safer.h.
33966         (save_cwd): Don't call fd_safer; no longer needed
33967         now that we include fcntl--.h.
33968
33969         * lib/getdate.y (relative_time): New type.
33970         (RELATIVE_TIME_0): New constant.
33971         (parser_control): Use relative_time instead of doing it ourselves.
33972         (%union): Add new relative_time rel member.
33973         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
33974         Now typeless.
33975         (relunit, relunit_snumber): Now of type rel.
33976         (zone, rel, relunit, get_date): Adjust to above changes.
33977
33978         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
33979         Do not include unistd-safer.h.
33980         (getloadavg): Don't call fd_safer; no longer needed
33981         now that we include fcntl--.h.
33982
33983         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
33984         (make_dir_parents): Treat ENOSYS like EEXIST.
33985
33986         Improve quality of diagnostics on restore_cwd failure.
33987         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
33988         (make_dir_parents): Last arg is now int * (for errno), not bool *.
33989         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
33990         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
33991         each time through the loop.  Do not diagnose restore_cwd failure;
33992         that is the caller's job (and perhaps the caller does not care).
33993
33994         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
33995         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
33996         If the file already exists but is not a directory, don't bother
33997         to try to make its parents.
33998         Close potential file descriptor leak if we can't chdir("/") (!).
33999         Don't always return true if chdir($PWD) fails; return true only
34000         if the requested action was done successfully (except for the
34001         chdir($PWD)).
34002         Don't log final directory unless we actually made it.
34003         Refactor to avoid duplicate code to fix up permissions.
34004         Don't attempt to fix up parent permissions if chdir($PWD) fails.
34005
34006         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
34007         to make it a bit faster and (I hope) clearer.
34008         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
34009         Fix bug in formats like %2N.
34010
34011         * lib/verify.h: New file.
34012
34013 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
34014
34015         Sync from coreutils.
34016         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
34017
34018 2005-09-22  Jim Meyering  <jim@meyering.net>
34019
34020         Sync from coreutils.
34021
34022         * m4/lstat.m4 (gl_FUNC_LSTAT):
34023         Use AC_LIBSOURCES to require lstat.c and lstat.h.
34024         Remove obsolete comment.
34025         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
34026         * m4/xstrtod.m4: Likewise.
34027
34028         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
34029
34030 2005-09-22  Jim Meyering  <jim@meyering.net>
34031
34032         Sync from coreutils.
34033
34034         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
34035
34036         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
34037         the .tm_year member, since otherwise gcc-4.0 would now warn about
34038         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
34039
34040         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
34041         order to avoid an unsuppressible warning from gcc on 64-bit systems.
34042
34043         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
34044         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
34045         when run in a time zone for which daylight savings time is in effect
34046         for the starting date.
34047
34048         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
34049         stop us from restricting permissions of just-created absolute-named
34050         directories.
34051         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
34052         to restore initial working directory.
34053         * lib/mkdir-p.c (make_dir_parents): New parameter:
34054         different_working_dir, to tell caller if/when we change the working
34055         directory and are unable to return to the initial one.
34056         * lib/mkdir-p.h (make_dir_parents): Update prototype.
34057         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
34058         `return false'.  This fixes a bug introduced on 2004-07-30.
34059
34060         * lib/openat.c (fdopendir): Be sure to close the supplied
34061         file descriptor before returning.  This makes our replacement
34062         implementation a little closer to Solaris's, where fdopendir
34063         ties the file descriptor to the returned DIR* pointer.
34064         * lib/openat.c (unlinkat): New function.
34065         * lib/openat.h (unlinkat): Add prototype.
34066         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
34067         (openat_restore_fail): Rename from openat_restore_die.
34068         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
34069
34070         Provide an alternative to exiting immediately upon save_cwd or
34071         restore_cwd failure.  Now, an application can arrange e.g.,
34072         to perform a longjump in that case.
34073         * lib/openat.c: Include dirname.h.
34074         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
34075         (rpl_openat, fdopendir, fstatat): Call openat_save_die
34076         and openat_restore_die rather than calling error directly.
34077         Don't include "error.h" or "exitfail.h"; they're no longer needed.
34078
34079         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
34080         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
34081         define.
34082
34083         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
34084         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
34085                             int utc, int nanoseconds);
34086         Background:
34087         date should not have to allocate a megabyte of virtual memory to
34088         handle a format argument like +%1048575T.  When implemented with
34089         strftime, it must allocate such a buffer, use strftime to fill it
34090         in, print it, then free it.
34091         With fprintftime, it simply prints everything and exits.
34092         With no need for memory allocation, that's one fewer way to fail.
34093         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
34094         optional field width, not before, so we accept %9:z, not %:9z.
34095         (my_strftime): Be sure to use L_('x') for literals.
34096
34097         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
34098         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
34099         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
34100         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
34101         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
34102         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
34103         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
34104         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
34105         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
34106         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
34107         * lib/xgethostname.c, lib/xreadlink.c:
34108         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
34109
34110         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
34111         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
34112         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
34113         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
34114         and don't include <sys/file.h>).
34115
34116 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
34117
34118         Sync from coreutils.
34119
34120         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
34121         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
34122         [!LDAV_DONE]: Avoid unused variable warning.
34123
34124 2005-09-21  Bruno Haible  <bruno@clisp.org>
34125
34126         * lib/unicodeio.h (unicode_to_mb): New declaration.
34127
34128 2005-09-20  Derek Price  <derek@ximbiot.com>
34129
34130         * lib/getaddrinfo.c: Don't include <netdb.h> included from
34131         getaddrinfo.h.
34132
34133 2005-09-20  Bruno Haible  <bruno@clisp.org>
34134
34135         * gnulib-tool: Remove trailing slashes from the values specified for
34136         --source-base, --m4-base, --tests-base, --aux-dir.
34137         Suggested by Simon Josefsson <jas@extundo.com>.
34138
34139 2005-09-20  Bruno Haible  <bruno@clisp.org>
34140
34141         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
34142         func_modules_to_filelist, func_import, func_create_testdir): Make all
34143         sorting results locale-independent, so that gnulib-cache.m4 doesn't
34144         change when gnulib-tool is invoked in a different locale.
34145
34146 2005-09-19  Simon Josefsson  <jas@extundo.com>
34147
34148         * m4/socklen.m4: Fix typo.
34149
34150 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34151
34152         Use a consistent style for including <config.h>.
34153         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
34154         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
34155         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
34156         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
34157         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
34158         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
34159         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
34160         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
34161         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
34162         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
34163         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
34164         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
34165         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
34166         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
34167         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
34168         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
34169         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
34170         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
34171         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
34172         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
34173         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
34174         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
34175         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
34176         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
34177         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
34178         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
34179         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
34180         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
34181         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
34182         lib/xstrtoumax.c, lib/yesno.c:
34183         Standardize inclusion of config.h.
34184         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
34185         lib/inttostr.h:  Removed inclusion of config.h from header files.
34186         * lib/inttostr.c:  Adjusted in-tree users.
34187         * lib/timespec.h: Remove superfluous warning to include config.h.
34188         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
34189         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
34190         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
34191         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
34192         config.h with HAVE_CONFIG_H.
34193
34194 2005-09-19  Jim Meyering  <jim@meyering.net>
34195
34196         * modules/pathmax (License): Change to LGPL.
34197
34198 2005-09-19  Derek Price  <derek@ximbiot.com>
34199
34200         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
34201
34202 2005-09-19  Bruno Haible  <bruno@clisp.org>
34203
34204         * gnulib-tool (import): Provide default for --tests-base.
34205
34206 2005-09-19  Bruno Haible  <bruno@clisp.org>
34207
34208         * doc/quote.texi: New file, extracted from gnulib.texi.
34209         * doc/ctime.texi: New file, extracted from gnulib.texi.
34210         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
34211         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
34212         * doc/gnulib.texi: Include them.
34213
34214 2005-09-18  Bruno Haible  <bruno@clisp.org>
34215
34216         Portability fix.
34217         * gnulib-tool (func_readlink): New function.
34218         (func_ln_if_changed): Use it.
34219
34220 2005-09-18  Bruno Haible  <bruno@clisp.org>
34221
34222         * gnulib-tool: Support --with-tests also with --import.
34223         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
34224         (func_import): Use variables $testsbase and $inctests. Emit a
34225         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
34226         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
34227         SUBDIRS += $testsdir.
34228         (func_create_testdir): Update.
34229
34230 2005-09-18  Bruno Haible  <bruno@clisp.org>
34231
34232         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
34233         instead of $dry_run.
34234         (func_cp_if_changed, func_mv_if_changed): Remove functions.
34235         (func_ln_if_changed): Don't handle dry-run here.
34236         (func_import): In dry-run mode, detect more precisely which actions
34237         would be performed, and don't use "...ing" verbs.
34238
34239 2005-09-18  Bruno Haible  <bruno@clisp.org>
34240
34241         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
34242         (func_import): Use join on two temporary files instead of three nested
34243         loops, in order to determine which files are new or old.
34244
34245 2005-09-18  Bruno Haible  <bruno@clisp.org>
34246
34247         * gnulib-tool (func_import): Comment out code that spits out the
34248         new files with --dry-run.
34249
34250 2005-09-18  Bruno Haible  <bruno@clisp.org>
34251
34252         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
34253
34254 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
34255
34256         * lib/stat-time.h: New file.
34257         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
34258         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
34259         in a different way.
34260         (timespec_cmp): New function.
34261         * lib/utimecmp.c: Include stat-time.h.
34262         (SYSCALL_RESOLUTION): Depend on whether various struct stat
34263         members exist, not on the obsolescent ST_MTIM_NSEC.
34264         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
34265
34266 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
34267
34268         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
34269
34270 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
34271
34272         * MODULES.html.sh (File system functions): Add stat-time.
34273         * modules/stat-time: New file.
34274         * modules/timespec (Files): Remove m4/st_mtim.m4; this
34275         is now done in a different way, by the stat-time module.
34276         * modules/utimecmp (Depends-on): Add stat-time.
34277
34278 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
34279
34280         * m4/st_mtim.m4: Remove.  Superseded by...
34281         * m4/stat-time.m4: New file.
34282         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
34283         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
34284
34285 2005-09-15  Derek Price  <derek@ximbiot.com>
34286
34287         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
34288
34289 2005-09-15  Derek Price  <derek@ximbiot.com>
34290
34291         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
34292         * lib/regex_internal.c: Ditto, using this...
34293         (__GNUC_PREREQ): ...new macro.
34294         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
34295         using...
34296         (__GNUC_PREREQ): ...this new macro.
34297
34298         * lib/strstr.h: Include string.h. Define strstr as a macro here.
34299
34300 2005-09-15  Derek Price  <derek@ximbiot.com>
34301             Paul Eggert  <eggert@cs.ucla.edu>
34302
34303         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
34304         changes, consolidating in...
34305         * lib/regex_internal.h: ...this file.
34306
34307 2005-09-13  Jim Meyering  <jim@meyering.net>
34308
34309         * lib/canon-host.c: Filter through gnu indent and reword comments
34310         slightly.
34311         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
34312
34313 2005-09-13  Derek Price  <derek@ximbiot.com>
34314
34315         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
34316         failure.
34317         Reported by Jim Meyering  <jim@meyering.net>.
34318
34319 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
34320
34321         * lib/base64.c: Typo.
34322         (base64_encode): Put b64str in initialized data section.
34323
34324 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
34325
34326         Merge glibc and coreutils changes into gnulib, plus a few
34327         extra fixes.
34328         * lib/md5.c: Use #error rather than a string.
34329         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
34330         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
34331         (__attribute__): Define to empty for non recent-GCC.
34332         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
34333         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
34334         Renamed from their non-__ counterparts, with new macros replacing
34335         them if not _LIBC.  Add __THROW attribute.
34336         (rol): Remove.
34337         (struct md5_ctx): Align buffer if using GCC.
34338         * lib/sha1.h (struct sha1_ctx): Likewise.
34339         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
34340         The old name was backwards.
34341         (NOTSWAP): Remove; not used.
34342         (rol): New macro, moved here from md5.h.
34343         (sha1_process_block): Remove a FIXME that doesn't make sense.
34344
34345 2005-09-12  Derek Price  <derek@ximbiot.com>
34346
34347         Return usable errors from canon-host.
34348         * lib/canon-host.h: New file.
34349         * lib/canon-host.c (canon_host): Wrap...
34350         (canon_host_r): ...this new function, which now relies exclusively on
34351         getaddrinfo.
34352         (ch_strerror): New function.
34353         (last_cherror): New global.
34354         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
34355         interface.
34356         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
34357         void *.
34358         (freeaddrinfo): Free ai->ai_canonname when set.
34359
34360 2005-09-12  Derek Price  <derek@ximbiot.com>
34361
34362         Make canon-host require getaddrinfo.
34363         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
34364         AC_LIBSOURCE canon-host.h.  Call...
34365         (gl_PREREQ_CANON_HOST): ...this new function, which requires
34366         gl_GETADDRINFO.
34367         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
34368
34369 2005-09-12  Derek Price  <derek@ximbiot.com>
34370
34371         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
34372         LGPL.
34373         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
34374
34375 2005-09-12  Derek Price  <derek@ximbiot.com>
34376
34377         * lib/gai_strerror.c: Include config.h when available.  Include
34378         getaddrinfo.h before other headers to test interface.
34379         Reported by Larry Jones <lawrence.jones@ugs.com>.
34380
34381 2005-09-12  Derek Price  <derek@ximbiot.com>
34382             Paul Eggert  <eggert@cs.ucla.edu>
34383
34384         * modules/glob (Files): Add glob-libc.h.
34385
34386 2005-09-12  Derek Price  <derek@ximbiot.com>
34387             Paul Eggert  <eggert@cs.ucla.edu>
34388
34389         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
34390         glob_.h, glob-libc.h.
34391         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
34392
34393 2005-09-12  Derek Price  <derek@ximbiot.com>
34394             Paul Eggert  <eggert@cs.ucla.edu>
34395
34396         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
34397         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
34398         protecting things that should be done only in gnulib contexts.
34399         * lib/glob_.h: New file, containing only the glob things needed for
34400         gnulib.
34401         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
34402         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
34403         (glob, globfree, glob_pattern_p): Now defined simply in terms of
34404         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
34405         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
34406         and to respect the namespace rules better.
34407
34408 2005-09-08  Simon Josefsson  <jas@extundo.com>
34409
34410         * modules/socklen: New file.
34411
34412 2005-09-08  Simon Josefsson  <jas@extundo.com>
34413
34414         * m4/socklen.m4: New file.
34415
34416 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
34417
34418         * modules/utimens (Files): Add m4/utimbuf.m4, since
34419         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
34420         Reported by Sergey Poznyakoff.
34421
34422 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
34423
34424         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
34425         definitions, since that's the preferred style in glibc.
34426         Fix a minor spacing issue, and update copyright notice to match
34427         glibc's.
34428
34429 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
34430
34431         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
34432
34433 2005-09-06  Simon Josefsson  <jas@extundo.com>
34434
34435         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
34436         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
34437
34438 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
34439
34440         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
34441         warning.
34442
34443 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
34444
34445         * config/srclist.txt: Add glibc bug 1302.
34446
34447 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
34448
34449         Change bitset word type from unsigned int to unsigned long int,
34450         as this has better performance on typical 64-bit hosts.
34451         Port bitset code to hosts with unusual word sizes.
34452         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
34453         (build_collating_symbol):
34454         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
34455         argument is a bitset.  This is merely a style issue, but it makes
34456         it clearer that an entire array is expected.
34457         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
34458         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
34459         Port to the case where bitset_word is not the same as unsigned int.
34460         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
34461         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
34462         Likewise.
34463         * lib/regexec.c (check_dst_limits_calc_pos_1,
34464         check_subexp_matching_top):
34465         (build_trtable, group_nodes_into_DFAstates):
34466         Likewise.
34467         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
34468         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
34469         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
34470         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
34471         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
34472         * lib/regcomp.c (optimize_subexps, lower_subexp):
34473         Work even if bitset_word has holes in its bitwise representation.
34474         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
34475         * lib/regexec.c (check_dst_limits_calc_pos_1,
34476         check_subexp_matching_top):
34477         Likewise.
34478         * lib/regex_internal.c (re_string_reconstruct):
34479         Don't assume UCHAR_MAX == 255.
34480         * lib/regex_internal.h (bitset_set_all): Likewise.
34481         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
34482         All uses changed.
34483         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
34484         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
34485         All uses changed.
34486         (BITSET_WORD_MAX): New macro.
34487         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
34488         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
34489         (bitset_empty, bitset_copy):
34490         Prefer sizeof (bitset) to multiplying it out ourselves.
34491         (bitset_not_merge): Remove; unused.
34492         (bitset_contain): Return bool, not unsigned int with one bit on.
34493         All callers changed.
34494         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
34495         alignment than re_node_set; do this by defining a new internal
34496         type struct dests_alloc and using it to allocate memory.
34497
34498 2005-09-05  Bruno Haible  <bruno@clisp.org>
34499
34500         * gnulib-tool (func_import): Fix comparison in handling of symbolic
34501         links.
34502
34503 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
34504
34505         * modules/size_max (Makefile.am): Add size_max.h
34506
34507 2005-09-04  Derek Price  <derek@ximbiot.com>
34508
34509         * gnulib-tool (func_import): Fix reversed $symbolic logic.
34510
34511 2005-09-03  Simon Josefsson  <jas@extundo.com>
34512
34513         * gnulib-tool: Fix typo.
34514
34515 2005-09-03  Simon Josefsson  <jas@extundo.com>
34516
34517         * config/srclist.txt: Add glibc bug 1293.
34518
34519 2005-09-03  Derek Price  <derek@ximbiot.com>
34520
34521         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
34522         From Larry Jones <lawrence.jones@ugs.com>.
34523
34524 2005-09-02  Simon Josefsson  <jas@extundo.com>
34525
34526         * modules/socklen: New file.
34527
34528 2005-09-02  Simon Josefsson  <jas@extundo.com>
34529
34530         * modules/havelib: New module.
34531
34532         * modules/gettext, modules/iconv, modules/lock, modules/readline:
34533         Use havelib.
34534
34535 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
34536
34537         Check for arithmetic overflow when calculating sizes, to prevent
34538         some buffer-overflow issues.  These patches are conservative, in the
34539         sense that when I couldn't determine whether an overflow was possible,
34540         I inserted a run-time check.
34541         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
34542         macros.
34543         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
34544         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
34545         (re_xnrealloc, re_x2nrealloc): New inline functions.
34546         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
34547         parse_bracket_exp):
34548         (build_equiv_class, build_charclass): Check for arithmetic overflow
34549         in size expression calculations.
34550         * lib/regex_internal.c (re_string_realloc_buffers):
34551         (build_wcs_upper_buffer, re_node_set_add_intersect):
34552         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
34553         (re_dfa_add_node, register_state): Likewise.
34554         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
34555         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
34556         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
34557         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
34558
34559 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
34560
34561         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
34562         m4/ulonglong.m4.  Problem reported by Martin Lambers.
34563
34564 2005-09-02  Bruno Haible  <bruno@clisp.org>
34565
34566         Support for lib vs. lib64 distinction on biarch platforms.
34567         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
34568         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
34569         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
34570
34571 2005-09-02  Bruno Haible  <bruno@clisp.org>
34572
34573         * gnulib-tool (import): In the other first-use case, provide defaults
34574         as well.
34575
34576 2005-09-02  Bruno Haible  <bruno@clisp.org>
34577
34578         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
34579         patches not yet found in the latest gettext release.
34580
34581 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
34582
34583         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
34584         to avoid a collision with bits/local_lim.h in glibc.
34585         All uses changed.  Problem reported by Dmitry V. Levin in
34586         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
34587
34588         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
34589         bugs in int versus size_t comparisons.
34590         (re_string_context_at): Fix bug where the code assumed that
34591         Idx is signed.
34592
34593         Use bool where appropriate.
34594         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
34595         All callers changed.
34596         (calc_eclosure_iter): Likewise, for ROOT arg.
34597         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
34598         (build_charclass_op): Likewise, for NON_MATCH arg.
34599         * lib/regex_internal.c (re_string_allocate, re_string_construct):
34600         (re_string_construct_common): Likewise, for ICASE arg.
34601         * lib/regexec.c (re_search_2_stub, re_search_stub):
34602         Likewise, for RET_LEN arg.
34603         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
34604         (set_regs): Likewise, for FL_BACKTRACK arg.
34605         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
34606         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
34607         (calc_eclosure_iter, parse_bracket_exp):
34608         Use bool for internal variables that are booleans.
34609         * lib/regexec.c (re_search_internal, check_matching,
34610         proceed_next_node):
34611         (set_regs, build_sifted_states, sift_states_bkref):
34612         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
34613         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
34614         (find_collation_sequence_value):
34615         Likewise.
34616         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
34617         (re_node_set_compare):
34618         Return bool, not int. All callers changed.
34619         * lib/regexec.c (check_halt_node_context, check_dst_limits):
34620         (build_trtable, check_node_accept): Likewise.
34621         * lib/regex_internal.h: Include stdbool.h.
34622
34623         Fix bugs uncovered when converting to bool.
34624         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
34625         failure instead of charging ahead blindly.
34626         * lib/regex_internal.c (register_state): Likewise.
34627         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
34628         for freeing internal storage.
34629         (group_nodes_into_DFA_states): Use unsigned int, not int, for
34630         bitset pieces used as boolean, to avoid undefined behavior
34631         on hosts that do int overflow checking.
34632
34633 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
34634
34635         * config/srclist.txt: Add glibc bugs 1285-1287.
34636
34637 2005-09-01  Jim Meyering  <jim@meyering.net>
34638
34639         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
34640         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
34641         Require gl_STAT_MACROS, too.
34642
34643 2005-09-01  Bruno Haible  <bruno@clisp.org>
34644
34645         * gnulib-tool (import): In the first-use case, provide defaults.
34646
34647 2005-09-01  Bruno Haible  <bruno@clisp.org>
34648
34649         * gnulib-tool (func_import): Remove the .tmp files.
34650
34651 2005-09-01  Bruno Haible  <bruno@clisp.org>
34652
34653         * gnulib-tool (func_import): Fix handling of symbolic links.
34654
34655 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34656
34657         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
34658         old glibc regex code mishandles strings longer than 2**31 bytes.
34659         This patch fixes this when the regex code is used in gnulib
34660         (i.e., outside glibc).
34661
34662         This patch should not affect the use of the regex code inside
34663         glibc.  No doubt this problem also needs to be handled for glibc
34664         as well, but the result will be an incompatible change to the
34665         glibc ABI, and the old ABI will have to be supported too.  That
34666         can be the the subject for another patch.
34667
34668         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
34669         governing whether the rest of this patch is active.  By default,
34670         the macro is disabled and the patch has no effect.
34671         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
34672         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
34673         (struct re_pattern_buffer, re_search, re_search_2, re_match):
34674         (re_match_2, re_set_registers): Use the new types.
34675         * lib/regex_internal.h (Idx, re_hashval_t): New types.
34676         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
34677         New macros.
34678         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
34679         (re_string_context_at, bin_tree_t, re_dfastate_t):
34680         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
34681         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
34682         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
34683         (re_string_char_size_at, re_string_wchar_at):
34684         (re_string_elem_size_at):
34685         Use the new types and macros to port to 64-bit hosts.
34686         Use unsigned types for internal values, so that the code
34687         mostly works even for arrays larger than SSIZE_MAX.
34688         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
34689         (search_duplicated_node, calc_eclosure_iter, fetch_number):
34690         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
34691         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
34692         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
34693         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
34694         (calc_inveclosure, parse_dup_op, build_range_exp):
34695         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
34696         (fetch_number, create_token_tree, mark_opt_subexp):
34697         Likewise.
34698         * lib/regex_internal.c (re_string_construct_common,
34699         create_ci_newstate):
34700         (create_cd_newstate, re_string_allocate, re_string_construct):
34701         (re_string_realloc_buffers, build_wcs_upper_buffer):
34702         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
34703         (re_string_reconstruct, re_string_peek_byte_case):
34704         (re_string_fetch_byte_case, re_string_context_at):
34705         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
34706         (re_node_set_init_copy, re_node_set_add_intersect):
34707         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
34708         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
34709         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
34710         (re_acquire_state, re_acquire_state_context, register_state):
34711         Likewise.
34712         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
34713         search_cur_bkref_entry):
34714         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
34715         (re_search_internal, re_search_2_stub, re_search_stub)
34716         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
34717         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
34718         (update_cur_sifted_state, check_dst_limits):
34719         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
34720         (check_subexp_limits, sift_states_bkref, merge_state_array):
34721         (check_subexp_matching_top, get_subexp, get_subexp_sub):
34722         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
34723         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
34724         (expand_bkref_cache, check_node_accept_bytes):
34725         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
34726         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
34727         (acquire_init_state_context, check_halt_node_context):
34728         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
34729         (sift_states_backward, clean_state_log_if_needed):
34730         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
34731         (find_recover_state, transit_state_sb, transit_state_mb):
34732         (transit_state_bkref, build_trtable, match_ctx_clean):
34733         Likewise.
34734         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
34735         to work around an assumption that REG_MISSING is negative.
34736
34737         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
34738         (seek_collating_symbol_entry) [defined _LIBC]:
34739         (lookup_collation_sequence_value) [defined _LIBC]:
34740         (build_range_exp, build_collating_symbol) [defined _LIBC]:
34741         Use prototypes rather than old-style function definitions.
34742         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
34743         (transit_state_sb) [0]:
34744         (find_collation_sequence_value) [defined _LIBC]: Likewise.
34745
34746         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
34747         rm_eo.
34748
34749         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
34750         (optimize_subexps, lower_subexp):
34751         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
34752         since the signed shift might overflow.  Use 1u<<31 instead.
34753         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
34754         Likewise.
34755         * lib/regexec.c (check_dst_limits_calc_pos_1,
34756         check_subexp_matching_top): Likewise.
34757
34758         * lib/regcomp.c (optimize_subexps, lower_subexp):
34759         Use CHAR_BIT rather than 8, for clarity.
34760         * lib/regexec.c (check_dst_limits_calc_pos_1):
34761         (check_subexp_matching_top): Likewise.
34762         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
34763         have to worry about portability issues when shifting it left.
34764         Remove no-longer-needed test for table_size > 0.
34765         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
34766         in a word, as the resulting behavior is undefined.
34767         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
34768         in one case, a <= should have been an <, and in another case the
34769         whole test was missing.
34770         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
34771         the standard name CHAR_BIT.
34772         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
34773         this is not true on one's complement and signed-magnitude hosts.
34774
34775         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
34776         next_last_offset.
34777         (struct re_dfa_t): Remove unused member states_alloc.
34778         * lib/regcomp.c (init_dfa): Don't initialize unused members.
34779
34780 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34781
34782         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
34783         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
34784         and large-file glibc and in 32-bit large-file Solaris.
34785
34786 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34787
34788         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
34789         lengths fit in regoff_t; this isn't true if regoff_t is the same
34790         width as size_t.
34791         * lib/regex.c (re_search_internal): 5th arg is LAST_START
34792         (= START + RANGE) instead of RANGE.  This avoids overflow
34793         problems when regoff_t is the same width as size_t.
34794         All callers changed.
34795         (re_search_2_stub): Check for overflow when adding the
34796         sizes of the two strings.
34797         (re_search_stub): Check for overflow when adding START
34798         to RANGE; if it occurs, substitute the extreme value.
34799
34800 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34801
34802         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
34803
34804 2005-08-31  Jim Meyering  <jim@meyering.net>
34805
34806         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
34807         a pointer-to-const.
34808         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
34809         (register_state): Likewise.
34810         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
34811         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
34812         (group_nodes_into_DFAstates): Likewise.
34813
34814 2005-08-31  Jim Meyering  <jim@meyering.net>
34815
34816         * check-module: Add a FIXME comment.
34817
34818 2005-08-31  Eric Blake  <ebb9@byu.net>
34819
34820         * modules/unistd-safer (Files): Add unistd--.h.
34821         * modules/stdio-safer (Files): Add stdio--.h.
34822
34823 2005-08-31  Derek Price  <derek@ximbiot.com>
34824
34825         * lib/getdelim.c (getdelim): Return EOF on EOF.
34826         Reported by Larry Jones <lawrence.jones@ugs.com>.
34827
34828 2005-08-31  Bruno Haible  <bruno@clisp.org>
34829
34830         Avoid unnecessary diffs in the generated lib/Makefile.am.
34831         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
34832         the generated files.
34833         (func_import): Don't set cmd.
34834
34835 2005-08-31  Bruno Haible  <bruno@clisp.org>
34836
34837         * lib/strstr.c: Include <stddef.h>, for NULL.
34838         * lib/strcasestr.c: Likewise.
34839         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
34840
34841 2005-08-31  Bruno Haible  <bruno@clisp.org>
34842
34843         * gnulib-tool: New option --macro-prefix.
34844         (func_import): Use macro_prefix.
34845         (import): Handle option --macro-prefix.
34846
34847 2005-08-31  Bruno Haible  <bruno@clisp.org>
34848
34849         * gnulib-tool (import): Rename most ac_* variables to cached_*.
34850         Also use new variables cached_lgpl, cached_libtool.
34851
34852 2005-08-31  Bruno Haible  <bruno@clisp.org>
34853
34854         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
34855         always instantiating them.
34856
34857 2005-08-31  Bruno Haible  <bruno@clisp.org>
34858
34859         * gnulib-tool (func_import): Read the previous cached settings
34860         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
34861         earlier added by gnulib but are now dropped. Warn when a gnulib file
34862         overwrites a non-gnulib file.
34863
34864 2005-08-31  Bruno Haible  <bruno@clisp.org>
34865
34866         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
34867         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
34868         projects that don't keep autogenerated files in CVS. Put into
34869         actioncmd only the specified modules, not the transitive closure.
34870
34871 2005-08-31  Bruno Haible  <bruno@clisp.org>
34872
34873         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
34874         Create directories that shall be filled.
34875         (import): Don't look for gl_* macros in configure.ac. Recurse across
34876         all directories containing a gnulib-cache.m4 files, if meaningful.
34877
34878 2005-08-31  Bruno Haible  <bruno@clisp.org>
34879
34880         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
34881         (import): Set seen_libtool when we see gl_LIBTOOL.
34882
34883 2005-08-31  Bruno Haible  <bruno@clisp.org>
34884
34885         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
34886         declaration macro definitions from generated gnulib.m4.
34887
34888 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
34889
34890         * lib/iconvme.h: Add prototype for iconv_alloc.
34891
34892 2005-08-29  Simon Josefsson  <jas@extundo.com>
34893
34894         * lib/iconvme.c: Fix errno.
34895
34896 2005-08-29  Bruno Haible  <bruno@clisp.org>
34897
34898         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
34899         that it works when the directory contains spaces.
34900
34901 2005-08-29  Bruno Haible  <bruno@clisp.org>
34902
34903         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
34904
34905 2005-08-29  Bruno Haible  <bruno@clisp.org>
34906
34907         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
34908         Emit more advice.
34909
34910 2005-08-29  Bruno Haible  <bruno@clisp.org>
34911         and Stepan Kasal  <kasal@ucw.cz>
34912
34913         * check-module: If more parameters are given, check each of them
34914         separately; add more exceptions, as noted by Jim Meyering.
34915         (check_module): New procedure.
34916         (%exempt_header): Now contains all exceptions.
34917
34918 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
34919
34920         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
34921
34922 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
34923
34924         * lib/iconvme.c: Split iconv_string into iconv_alloc.
34925
34926 2005-08-28  Bruno Haible  <bruno@clisp.org>
34927
34928         * m4/gnulib-tool.m4: New file.
34929
34930 2005-08-27  Jim Meyering  <jim@meyering.net>
34931
34932         * modules/unistd-safer (Files): Add pipe-safer.c.
34933         * modules/fcntl-safer (Files): Add creat-safer.c.
34934
34935 2005-08-27  Jim Meyering  <jim@meyering.net>
34936
34937         * m4/stdlib-safer.m4: New file.  From coreutils.
34938         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
34939         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
34940         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
34941         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
34942         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
34943
34944 2005-08-27  Jim Meyering  <jim@meyering.net>
34945
34946         * lib/fopen-safer.c: Merge minor changes from coreutils.
34947         * lib/dup-safer.c: Likewise.
34948         * lib/fd-safer.c: Likewise.
34949
34950         Merge from coreutils.
34951         * lib/stdio--.h: New file.
34952         * lib/stdlib--.h: New file.
34953         * lib/mkstemp-safer.c: New file.
34954
34955         GNU tar needs these.
34956         * lib/pipe-safer.c: New file.
34957         * lib/creat-safer.c: New file.
34958         * lib/fcntl--.h (creat): Define to creat_safer.
34959         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
34960         * lib/unistd--.h (pipe): Define to pipe_safer.
34961         * lib/unistd-safer.h: Declare pipe_safer.
34962
34963 2005-08-26  Simon Josefsson  <jas@extundo.com>
34964
34965         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
34966         Haible <bruno@clisp.org>.
34967
34968 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
34969
34970         * lib/regex_internal.h: Remove all references to
34971         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
34972         or better.
34973         (bitset_not, bitset_merge, bitset_not_merge):
34974         (bitset_mask, re_string_allocate, re_string_construct):
34975         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
34976         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
34977         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
34978         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
34979         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
34980         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
34981         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
34982         (re_acquire_state_context):
34983         Remove unnecessary forward decls.
34984         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
34985         Put __attribute at function definition,
34986         now that the function decl has been removed.
34987         * lib/regex_internal.c (re_string_peek_byte_case):
34988         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
34989         Likewise.
34990
34991 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
34992
34993         * m4/regex.m4: Add AC_PREREQ(2.50).
34994         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
34995
34996 2005-08-25  Simon Josefsson  <jas@extundo.com>
34997
34998         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
34999         __fsetlocking.
35000
35001 2005-08-25  Simon Josefsson  <jas@extundo.com>
35002
35003         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
35004         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
35005         GLIBC specific code.
35006
35007 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
35008
35009         Make regex safe for g++.  This fixes one real bug (an "err"
35010         that should have been "*err").  g++ problem reported by
35011         Sam Steingold.
35012         * lib/regex_internal.h (re_calloc): New macro, consistent with
35013         re_malloc etc.  All callers of calloc changed to use re_calloc.
35014         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
35015         not int.  All callers changed.
35016         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
35017         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
35018         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
35019         (find_recover_state): Change "err" to "*err"; this fixes what
35020         appears to be a real bug.
35021         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
35022         versus int.
35023
35024 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
35025
35026         * modules/regex (Depends-on): Add malloc, since the code
35027         assumes that !malloc(0) means failure.
35028
35029 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
35030
35031         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
35032
35033         alloca modernization/simplification for regex.
35034         * lib/regex.c: Remove portability cruft for alloca.  This no longer
35035         needs to be at the start of the file, and can be moved into
35036         regex_internal.h and simplified.
35037         * lib/regex_internal.h: Include <alloca.h>.
35038         (__libc_use_alloca) [!defined _LIBC]: New macro.
35039         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
35040         now works outside glibc.
35041
35042 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
35043
35044         * config/srclist.txt: Add glibc bugs 1241, 1245.
35045
35046 2005-08-25  Jim Meyering  <jim@meyering.net>
35047
35048         * lib/open-safer.c: Include <config.h>.
35049         Otherwise, we'd lose LARGEFILE support in any file using
35050         e.g. "fcntl--.h"
35051
35052 2005-08-25  Bruno Haible  <bruno@clisp.org>
35053
35054         * m4/minmax.m4: Require autoconf 2.52.
35055         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
35056         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
35057         alternatives of translit over the alphabet.
35058         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
35059
35060 2005-08-24  Simon Josefsson  <jas@extundo.com>
35061
35062         * tests/test-getpass.c: New file.
35063
35064 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
35065
35066         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
35067         for GNU regex features.
35068
35069 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
35070
35071         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
35072         * lib/regex.h (regerror): Likewise.
35073
35074         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
35075         requires this.  (The code never needed it.)
35076
35077         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
35078         All uses of recently-renamed identifiers changed to use the new,
35079         POSIX-compliant names.  The code will build and run just fine
35080         without these changes, but it's better to eat our own dog food
35081         and use the standard-conforming names.
35082
35083         * lib/regex.h: Fix a multitude of POSIX name space violations.
35084         These changes have an effect only for programs that define
35085         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
35086         do not change anything for programs compiled in the normal way.
35087         Also, there is no effect on the ABI.
35088
35089         (_REGEX_SOURCE): New macro.
35090         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
35091         defined and _GNU_SOURCE is not; this fixes a name space violation.
35092
35093         Rename the following macros to obey POSIX requirements.
35094         The old names are still visible as macros if _REGEX_SOURCE is defined.
35095         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
35096         RE_BACKSLASH_ESCAPE_IN_LISTS.
35097         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
35098         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
35099         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
35100         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
35101         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
35102         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
35103         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
35104         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
35105         (REG_INTERVALS): renamed from RE_INTERVALS.
35106         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
35107         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
35108         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
35109         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
35110         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
35111         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
35112         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
35113         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
35114         RE_UNMATCHED_RIGHT_PAREN_ORD.
35115         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
35116         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
35117         (REG_DEBUG): renamed from RE_DEBUG.
35118         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
35119         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
35120         unusual, since we can't clash with the POSIX REG_ICASE.
35121         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
35122         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
35123         (REG_NO_SUB): renamed from RE_NO_SUB.
35124         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
35125         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
35126         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
35127         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
35128         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
35129         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
35130         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
35131         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
35132         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
35133         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
35134         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
35135         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
35136         RE_SYNTAX_POSIX_MINIMAL_BASIC.
35137         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
35138         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
35139         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
35140         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
35141         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
35142         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
35143         (REG_FIXED): Renamed from REGS_FIXED.
35144         (REG_NREGS): Renamed from RE_NREGS.
35145
35146         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
35147         of other REG_* macros, since POSIX says the user is allowed to
35148         #undef these macros selectively.
35149
35150         (reg_errcode_t): Update comment stating what other tables need
35151         to be consistent.
35152
35153         Rename the following enum values to obey POSIX requirements.
35154         The old names are still visible as macros.
35155         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
35156         is not defined, since GNU is supposed to be a superset of POSIX as
35157         much as possible, and since we want reg_errcode_t to be a signed
35158         type for implementation consistency.
35159         (_REG_NOERROR): Renamed from REG_NOERROR.
35160         (_REG_NOMATCH): Renamed from REG_NOMATCH.
35161         (_REG_BADPAT): Renamed from REG_BADPAT.
35162         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
35163         (_REG_ECTYPE): Renamed from REG_ECTYPE.
35164         (_REG_EESCAPE): Renamed from REG_EESCAPE.
35165         (_REG_ESUBREG): Renamed from REG_ESUBREG.
35166         (_REG_EBRACK): Renamed from REG_EBRACK.
35167         (_REG_EPAREN): Renamed from REG_EPAREN.
35168         (_REG_EBRACE): Renamed from REG_EBRACE.
35169         (_REG_BADBR): Renamed from REG_BADBR.
35170         (_REG_ERANGE): Renamed from REG_ERANGE.
35171         (_REG_ESPACE): Renamed from REG_ESPACE.
35172         (_REG_BADRPT): Renamed from REG_BADRPT.
35173         (_REG_EEND): Renamed from REG_EEND.
35174         (_REG_ESIZE): Renamed from REG_ESIZE.
35175         (_REG_ERPAREN): Renamed from REG_ERPAREN.
35176         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
35177         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
35178         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
35179         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
35180
35181         (_REG_RE_NAME, _REG_RM_NAME): New macros.
35182         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
35183         changed.  But support the old name if the new one is not defined
35184         and if _REGEX_SOURCE.
35185
35186         Change the following member names in struct re_pattern_buffer.
35187         The old names are still supported if !_REGEX_SOURCE.
35188         The new names are always supported, regardless of _REGEX_SOURCE.
35189         (re_buffer): Renamed from buffer.
35190         (re_allocated): Renamed from allocated.
35191         (re_used): Renamed from used.
35192         (re_syntax): Renamed from syntax.
35193         (re_fastmap): Renamed from fastmap.
35194         (re_translate): Renamed from translate.
35195         (re_can_be_null): Renamed from can_be_null.
35196         (re_regs_allocated): Renamed from regs_allocated.
35197         (re_fastmap_accurate): Renamed from fastmap_accurate.
35198         (re_no_sub): Renamed from no_sub.
35199         (re_not_bol): Renamed from not_bol.
35200         (re_not_eol): Renamed from not_eol.
35201         (re_newline_anchor): Renamed from newline_anchor.
35202
35203         Change the following member names in struct re_registers.
35204         The old names are still supported if !_REGEX_SOURCE.
35205         The new names are always supported, regardless of _REGEX_SOURCE.
35206         (rm_num_regs): Renamed from num_regs.
35207         (rm_start): Renamed from start.
35208         (rm_end): Renamed from end.
35209
35210         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
35211         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
35212         Prepend __ to parameter names.
35213
35214         Undo yesterday's changes.
35215
35216 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
35217
35218         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
35219         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
35220         lib/regex.c.
35221
35222 2005-08-24  Jim Meyering  <jim@meyering.net>
35223
35224         Sync from coreutils.
35225         * m4/fcntl-safer.m4: New file.
35226
35227         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
35228         and object files for this module.
35229
35230 2005-08-24  Jim Meyering  <jim@meyering.net>
35231
35232         Sync from coreutils.
35233         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
35234
35235 2005-08-24  Jim Meyering  <jim@meyering.net>
35236
35237         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
35238         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
35239
35240 2005-08-24  Jim Meyering  <jim@meyering.net>
35241
35242         * modules/fcntl-safer: New module.
35243         * modules/fts (Depends-on): Add fcntl-safer.
35244         * MODULES.html.sh (File descriptor based Input/Output):
35245         Add fcntl-safer.
35246
35247 2005-08-24  Bruno Haible  <bruno@clisp.org>
35248
35249         Support for unit test modules.
35250         * modules/README: Mention tests modules.
35251         * modules/TEMPLATE-TESTS: New file.
35252         * gnulib-tool: New options --extract-tests-module, --with-tests and
35253         --tests-base (unused for the moment).
35254         (testsbase, inctests): New variables.
35255         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
35256         (func_verify_module): Exclude TEMPLATE-TESTS.
35257         (func_verify_nontests_module, func_verify_tests_module): New functions.
35258         (func_get_dependencies): Add implicit dependency for tests modules.
35259         (func_get_tests_module): New function.
35260         (func_modules_transitive_closure): When --with-tests was specified,
35261         include the unit tests as well, unless explicitly avoided.
35262         (func_emit_lib_Makefile_am): Ignore the tests modules here.
35263         (func_emit_tests_Makefile_am): New function.
35264         (func_create_testdir): When --with-tests was specified, emit a
35265         tests/ directory.
35266         * MODULES.html.sh (Future developments): Update.
35267
35268 2005-08-24  Bruno Haible  <bruno@clisp.org>
35269
35270         * modules/tls-tests: New file.
35271         * tests/test-tls.c: New file, from GNU gettext.
35272
35273 2005-08-24  Bruno Haible  <bruno@clisp.org>
35274
35275         * modules/lock-tests: New file.
35276         * tests/test-lock.c: New file, from GNU gettext.
35277
35278 2005-08-24  Bruno Haible  <bruno@clisp.org>
35279
35280         * lib/lock.h: Add multiple inclusion guard.
35281         * lib/tls.h: Add multiple inclusion guard.
35282
35283 2005-08-24  Bruno Haible  <bruno@clisp.org>
35284
35285         * gnulib-tool: Add support for the --aux-dir option to
35286         --create-testdir, --create-megatestdir, --test, --megatest.
35287         (func_create_testdir, func_create_megatestdir): Optionally emit a
35288         AC_CONFIG_AUX_DIR directive.
35289         (create-testdir, create-megatestdir, test, megatest): Provide a
35290         default value for $auxdir.
35291
35292 2005-08-24  Bruno Haible  <bruno@clisp.org>
35293
35294         * gnulib-tool (import): Use compound statement instead of subshell
35295         where possible.
35296
35297 2005-08-24  Bruno Haible  <bruno@clisp.org>
35298
35299         * gnulib-tool (import): Change --aux-dir default to "build-aux".
35300
35301 2005-08-24  Bruno Haible  <bruno@clisp.org>
35302
35303         * gnulib-tool (func_version): Update.
35304
35305 2005-08-24  Bruno Haible  <bruno@clisp.org>
35306
35307         * gnulib-tool (func_import, func_create_testdir,
35308         func_create_megatestdir): Quote all autoconf macro arguments.
35309
35310 2005-08-24  Bruno Haible  <bruno@clisp.org>
35311
35312         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
35313         option --force, because --force causes the aclocal.m4 of each
35314         subdirectory to be newer than the corresponding config.h.in.
35315
35316 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
35317
35318         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
35319         All contents moved to gl_REGEX.
35320         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
35321         assume that it does.
35322
35323 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
35324
35325         * lib/regex.h (REG_NOSYS)
35326         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
35327         Define, since POSIX requires it as of 2001.
35328         (_REG_ENOSYS)
35329         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
35330         New private symbol, used to keep the enum signed in all cases.
35331         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
35332         Youngman in
35333         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
35334
35335         * lib/regex_internal.c (re_string_skip_chars, register_state):
35336         (calc_state_hash):
35337         Remove forward decls; no longer needed now that we use prototypes.
35338         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
35339         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
35340         (clean_state_log_if_needed): Likewise.
35341
35342 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
35343
35344         * config/srclist.txt: Add glibc bugs 1231-1233.
35345
35346 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
35347
35348         Fix problems reported by Sam Steingold in
35349         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
35350         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
35351         assumed that reg_errcode_t is a signed type, which is not
35352         necessarily true if _XOPEN_SOURCE is not defined.
35353         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
35354         since some compilers warn about it otherwise.
35355
35356 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
35357
35358         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
35359         (init_word_char, create_initial_state, duplicate_node_closure):
35360         (fetch_token, peek_token_bracket, build_range_exp):
35361         (build_collating_symbol): Remove forward decls; no longer needed
35362         now that we use prototypes.
35363
35364         * lib/regcomp.c:
35365         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
35366         (re_compile_fastmap_iter, regcomp, regerror, regfree):
35367         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
35368         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
35369         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
35370         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
35371         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
35372         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
35373         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
35374         (build_range_exp, build_collating_symbol, parse_bracket_exp):
35375         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
35376         (build_charclass, build_charclass_op, fetch_number, create_tree):
35377         (create_token_tree, mark_opt_subexp, duplicate_tree):
35378         Use prototypes rather than old-style definitions.
35379
35380         * lib/regex_internal.c:
35381         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
35382         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
35383         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
35384         (re_string_reconstruct, re_string_peek_byte_case):
35385         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
35386         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
35387         (re_node_set_init_copy, re_node_set_add_intersect):
35388         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
35389         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
35390         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
35391         (re_acquire_state, re_acquire_state_context, register_state):
35392         (create_ci_newstate, create_cd_newstate, free_state):
35393         Likewise.
35394         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
35395         re_search_2):
35396         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
35397         (re_search_internal, prune_impossible_nodes):
35398         (acquire_init_state_context, check_matching, static):
35399         (check_halt_node_context, check_halt_state_context, proceed_next_node):
35400         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
35401         (update_regs, sift_states_backward, build_sifted_states):
35402         (clean_state_log_if_needed, merge_state_array):
35403         (update_cur_sifted_state, add_epsilon_src_nodes):
35404         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
35405         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
35406         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
35407         (find_recover_state, check_subexp_matching_top, transit_state_mb):
35408         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
35409         (check_arrival, check_arrival_add_next_nodes):
35410         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
35411         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
35412         (check_node_accept_bytes, check_node_accept, extend_buffers):
35413         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
35414         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
35415         (sift_ctx_init):
35416         Likewise.
35417
35418         * lib/regex_internal.h:
35419         (re_string_allocate, re_string_construct, re_string_reconstruct):
35420         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
35421         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
35422         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
35423         (re_string_context_at, re_string_peek_byte_case):
35424         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
35425         is defined, since we now use prototypes always.
35426
35427         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
35428         C89 or better.  All uses removed.
35429
35430 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
35431
35432         * config/srclist.txt: Add glibc bugs 1220-1227.
35433
35434 2005-08-20  Jim Meyering  <jim@meyering.net>
35435
35436         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
35437         of unused local, dfa.
35438
35439 2005-08-20  Bruno Haible  <bruno@clisp.org>
35440
35441         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
35442
35443 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
35444
35445         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
35446         (re_node_set_insert_last, re_dfa_add_node):
35447         Rename local variables to avoid GCC shadowing warnings.
35448
35449 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
35450
35451         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
35452         [defined lint]: Suppress bogus uninitialized-variable warnings.
35453
35454         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
35455         and let the caller return REG_ESPACE if out of space.  This
35456         removes an uninitialied-variable warning with GCC 4.0.1, and also
35457         avoids taking the address of a local variable.  All callers
35458         changed.
35459
35460 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
35461
35462         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
35463         $LIBCSRC/posix/regexec.c.
35464         Add glibc bug 1217 for regcomp.c.
35465
35466 2005-08-19  Jim Meyering  <jim@meyering.net>
35467
35468         * lib/regexec.c (proceed_next_node): Redo local variables to
35469         avoid GCC shadowing warnings.
35470
35471 2005-08-18  Bruno Haible  <bruno@clisp.org>
35472
35473         * lib/strstr.c (strstr): Fix return value in multibyte case.
35474         * lib/strcasestr.c (strcasestr): Likewise.
35475
35476 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
35477
35478         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
35479
35480 2005-08-17  Jim Meyering  <jim@meyering.net>
35481
35482         Make the %s format (seconds since the epoch) work for a negative
35483         number and when used with a zero-padded field width, e.g. %015s.
35484
35485         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
35486         label so that it precedes the code to set `digits'.  Otherwise,
35487         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
35488         print `00-22'.  Now, it prints `-0022', as it should.
35489
35490 2005-08-17  Bruno Haible  <bruno@clisp.org>
35491
35492         * modules/strstr (Files): Add m4/mbrtowc.m4.
35493         (Depends-on): Add mbuiter.
35494
35495 2005-08-17  Bruno Haible  <bruno@clisp.org>
35496
35497         * modules/strcasestr: New file.
35498         * MODULES.html.sh (String handling, based on ANSI C 89): Add
35499         strcasestr.
35500
35501 2005-08-17  Bruno Haible  <bruno@clisp.org>
35502
35503         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
35504
35505 2005-08-17  Bruno Haible  <bruno@clisp.org>
35506
35507         * modules/mbuiter: New file.
35508         * MODULES.html.sh (Extended multibyte and wide character utilities):
35509         Add mbuiter.
35510
35511 2005-08-17  Bruno Haible  <bruno@clisp.org>
35512
35513         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
35514         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
35515
35516 2005-08-17  Bruno Haible  <bruno@clisp.org>
35517
35518         * m4/strcasestr.m4: New file.
35519
35520 2005-08-17  Bruno Haible  <bruno@clisp.org>
35521
35522         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
35523         * lib/strstr.c: Completely rewritten, with multibyte locale support.
35524
35525 2005-08-17  Bruno Haible  <bruno@clisp.org>
35526
35527         * lib/strcasestr.h: New file.
35528         * lib/strcasestr.c: New file.
35529
35530 2005-08-17  Bruno Haible  <bruno@clisp.org>
35531
35532         * lib/strcasecmp.c: Use mbuiter.h.
35533
35534 2005-08-17  Bruno Haible  <bruno@clisp.org>
35535
35536         * lib/mbuiter.h: New file.
35537
35538 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
35539
35540         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
35541         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
35542         and gl_GETOPT are both invoked via different paths (as happens
35543         with GNU tar CVS because it uses both argp and getopt), the former
35544         wins.
35545
35546 2005-08-16  Bruno Haible  <bruno@clisp.org>
35547
35548         * modules/tls: New file.
35549         * MODULES.html.sh (Multithreading): Add tls.
35550
35551 2005-08-16  Bruno Haible  <bruno@clisp.org>
35552
35553         * modules/strnlen1: New file.
35554         * MODULES.html.sh (String handling): Add strnlen1.
35555
35556 2005-08-16  Bruno Haible  <bruno@clisp.org>
35557
35558         * modules/strcase (Files): Add m4/mbrtowc.m4.
35559         (Depends-on): Add strnlen1, mbchar.
35560
35561 2005-08-16  Bruno Haible  <bruno@clisp.org>
35562
35563         * modules/mbiter: New file.
35564         * MODULES.html.sh (Extended multibyte and wide character utilities):
35565         Add mbiter.
35566
35567 2005-08-16  Bruno Haible  <bruno@clisp.org>
35568
35569         * modules/mbfile: New file.
35570         * MODULES.html.sh (Extended multibyte and wide character utilities):
35571         Add mbfile.
35572
35573 2005-08-16  Bruno Haible  <bruno@clisp.org>
35574
35575         * modules/mbchar: New file.
35576         * MODULES.html.sh (Extended multibyte and wide character utilities):
35577         New section.
35578
35579 2005-08-16  Bruno Haible  <bruno@clisp.org>
35580
35581         * m4/tls.m4: New file, from GNU gettext.
35582
35583 2005-08-16  Bruno Haible  <bruno@clisp.org>
35584
35585         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
35586         always.
35587         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
35588
35589 2005-08-16  Bruno Haible  <bruno@clisp.org>
35590
35591         * m4/mbiter.m4: New file.
35592
35593 2005-08-16  Bruno Haible  <bruno@clisp.org>
35594
35595         * m4/mbfile.m4: New file.
35596
35597 2005-08-16  Bruno Haible  <bruno@clisp.org>
35598
35599         * m4/mbchar.m4: New file.
35600
35601 2005-08-16  Bruno Haible  <bruno@clisp.org>
35602
35603         * lib/tls.h: New file, from GNU gettext.
35604         * lib/tls.c: New file, from GNU gettext.
35605
35606 2005-08-16  Bruno Haible  <bruno@clisp.org>
35607
35608         * lib/strnlen1.h: New file.
35609         * lib/strnlen1.c: New file.
35610
35611 2005-08-16  Bruno Haible  <bruno@clisp.org>
35612
35613         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
35614         (mbi_init): Update.
35615         (mbi_avail, mbi_advance): Let the iteration end before the terminating
35616         NUL byte, not after it.
35617
35618 2005-08-16  Bruno Haible  <bruno@clisp.org>
35619
35620         * lib/strcase.h (strcasecmp): Add note in comments.
35621         * lib/strncasecmp.c: Use code from strcasecmp.c.
35622         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
35623         (strcasecmp): Work correctly in multibyte locales.
35624
35625 2005-08-16  Bruno Haible  <bruno@clisp.org>
35626
35627         * lib/mbiter.h: New file.
35628
35629 2005-08-16  Bruno Haible  <bruno@clisp.org>
35630
35631         * lib/mbfile.h: New file.
35632
35633 2005-08-16  Bruno Haible  <bruno@clisp.org>
35634
35635         * lib/mbchar.h: New file.
35636         * lib/mbchar.c: New file.
35637
35638 2005-08-16  Bruno Haible  <bruno@clisp.org>
35639
35640         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
35641         the valid ones. Makes the comparison operations transitive:
35642         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
35643         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
35644
35645 2005-08-15  Simon Josefsson  <jas@extundo.com>
35646
35647         * modules/ssize_t (License): Change to 'unlimited'.
35648
35649         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
35650
35651 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
35652
35653         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
35654         Add comments for each pending glibc patch.
35655
35656 2005-08-15  Bruno Haible  <bruno@clisp.org>
35657
35658         * lib/regex.h (__restrict_arr): Don't define to __restrict if
35659         __cplusplus is defined.
35660
35661 2005-08-14  Jim Meyering  <jim@meyering.net>
35662
35663         Sync from coreutils.
35664
35665         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
35666         Use the hash-table-based cycle-detection code not just when
35667         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
35668         Reported by James Youngman in
35669         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
35670         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
35671         FTS_TIGHT_CYCLE_CHECK.
35672         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
35673         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
35674         once again.
35675         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
35676         * lib/fts.c (fd_safer): Remove decl.
35677         Include fcntl--.h rather than unistd-safer.h
35678         (fts_safe_changedir): Don't call fd_safer; no longer needed
35679         now that we include fcntl--.h.
35680
35681 2005-08-12  Simon Josefsson  <jas@extundo.com>
35682
35683         * modules/getndelim2: Use ssize_t module.
35684         * modules/getnline: Likewise.
35685         * modules/safe-read: Likewise.
35686         * modules/xreadlink: Likewise.
35687
35688         * modules/ssize_t: New file.
35689
35690 2005-08-12  Simon Josefsson  <jas@extundo.com>
35691
35692         * m4/readline.m4: Look for termcap, curses or ncurses if required.
35693
35694 2005-08-12  Simon Josefsson  <jas@extundo.com>
35695
35696         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
35697         ssize_t.
35698
35699 2005-08-12  Simon Josefsson  <jas@extundo.com>
35700
35701         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
35702         readline, getdelim and check_version.
35703         (Support for systems lacking ISO C 99: Sizes of integer types):
35704         Add size_max.
35705
35706 2005-08-12  Bruno Haible  <bruno@clisp.org>
35707
35708         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
35709
35710 2005-08-11  Simon Josefsson  <jas@extundo.com>
35711
35712         * modules/readline: New file.
35713
35714         * modules/strnlen (Files): Add strnlen.h.
35715
35716 2005-08-11  Simon Josefsson  <jas@extundo.com>
35717
35718         * m4/readline.m4: New file.
35719
35720 2005-08-11  Simon Josefsson  <jas@extundo.com>
35721
35722         * lib/readline.h, readline.c: New file.
35723
35724 2005-08-11  Simon Josefsson  <jas@extundo.com>
35725
35726         * doc/gnulib.texi (Initial import, Finishing touches): Mention
35727         gl_AVOID.
35728
35729 2005-08-11  Bruno Haible  <bruno@clisp.org>
35730
35731         * lib/strnlen.h (strnlen): Change parameter name to match comment.
35732
35733 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
35734
35735         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
35736
35737 2005-08-10  Simon Josefsson  <jas@extundo.com>
35738
35739         * tests/test-iconvme.c: New file.
35740
35741 2005-08-10  Simon Josefsson  <jas@extundo.com>
35742
35743         * m4/strnlen.m4: New file.
35744
35745         * m4/strndup.m4: Don't check for strnlen declaration, done in
35746         strnlen.m4.
35747
35748 2005-08-10  Simon Josefsson  <jas@extundo.com>
35749
35750         * lib/strndup.c: Use strnlen.h.
35751
35752         * lib/strnlen.h: New file.
35753
35754 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
35755
35756         * README: Typos.
35757
35758 2005-08-02  Simon Josefsson  <jas@extundo.com>
35759
35760         * modules/readline: New file.
35761
35762 2005-08-02  Simon Josefsson  <jas@extundo.com>
35763
35764         * modules/getdelim: New file.
35765
35766         * modules/getline: Rewrite, don't use getndelim2.
35767
35768 2005-08-02  Simon Josefsson  <jas@extundo.com>
35769
35770         * m4/getline.m4: Separate out getdelim stuff into separate module.
35771
35772         * m4/getdelim.m4: New file.
35773
35774 2005-08-02  Simon Josefsson  <jas@extundo.com>
35775
35776         * lib/getline.h, getline.c: Rewrite.
35777
35778         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
35779
35780 2005-07-31  Bruno Haible  <bruno@clisp.org>
35781
35782         * lib/lock.h (gl_lock_initializer): New macro.
35783         (gl_lock_define_initialized): Use it.
35784         (gl_rwlock_initializer): New macro.
35785         (gl_rwlock_define_initialized): Use it.
35786         (gl_recursive_lock_initializer): New macro.
35787         (gl_recursive_lock_define_initialized): Use it.
35788
35789 2005-07-30  Karl Berry  <karl@gnu.org>
35790
35791         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
35792         Report from Ben Pfaff, regarding getopt.
35793
35794 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
35795
35796         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
35797         normal way.
35798         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
35799         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
35800         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
35801         (gl_GETOPT): Use the new macros.  Most of the implementation
35802         is moved to the new macros.  This is for programs like Emacs
35803         that don't want all the functionality of gl_GETOPT.
35804
35805 2005-07-26  Bruno Haible  <bruno@clisp.org>
35806
35807         * m4/lock.m4: Update from GNU gettext.
35808
35809 2005-07-26  Bruno Haible  <bruno@clisp.org>
35810
35811         * lib/lock.h: Update from GNU gettext.
35812         * lib/lock.c: Update from GNU gettext.
35813
35814 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
35815
35816         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
35817         obsolescent AC_TRY_RUN.  Include the default includes files, for
35818         'exit'.
35819
35820 2005-07-24  Bruno Haible  <bruno@clisp.org>
35821
35822         * modules/visibility: New file.
35823         * MODULES.html.sh (Misc): Add visibility.
35824
35825 2005-07-24  Bruno Haible  <bruno@clisp.org>
35826
35827         * m4/visibility.m4: New file.
35828
35829 2005-07-24  Bruno Haible  <bruno@clisp.org>
35830
35831         * doc/visibility.texi: New file.
35832
35833 2005-07-22  Bruno Haible  <bruno@clisp.org>
35834
35835         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
35836         $(ALLOCA_H), redundant through BUILT_SOURCES.
35837         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
35838         redundant through BUILT_SOURCES.
35839         * modules/byteswap (Makefile.am): Remove explicit dependency on
35840         $(BYTESWAP_H), redundant through BUILT_SOURCES.
35841         * modules/fnmatch (Makefile.am): Remove explicit dependency on
35842         $(FNMATCH_H), redundant through BUILT_SOURCES.
35843         * modules/getopt (Makefile.am): Remove explicit dependency on
35844         $(GETOPT_H), redundant through BUILT_SOURCES.
35845         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
35846         redundant through BUILT_SOURCES.
35847         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
35848         redundant through BUILT_SOURCES.
35849         * modules/stdbool (Makefile.am): Remove explicit dependency on
35850         $(STDBOOL_H), redundant through BUILT_SOURCES.
35851         * modules/stdint (Makefile.am): Remove explicit dependency on
35852         $(STDINT_H), redundant through BUILT_SOURCES.
35853         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
35854         Remove explicit dependency on $(SYSEXITS_H).
35855         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
35856
35857 2005-07-18  Simon Josefsson  <jas@extundo.com>
35858
35859         * lib/check-version.c (check_version): Accept identical versions too.
35860
35861 2005-07-18  Bruno Haible  <bruno@clisp.org>
35862
35863         * modules/lock: New file.
35864         * MODULES.html.sh (Multithreading): New section.
35865
35866 2005-07-18  Bruno Haible  <bruno@clisp.org>
35867
35868         * m4/lock.m4: New file, from GNU gettext.
35869
35870 2005-07-18  Bruno Haible  <bruno@clisp.org>
35871
35872         * lib/lock.h: New file, from GNU gettext.
35873         * lib/lock.c: New file, from GNU gettext.
35874
35875 2005-07-18  Bruno Haible  <bruno@clisp.org>
35876
35877         * lib/lock.h (gl_once_t): New type.
35878         (gl_once_define, gl_once): New macros.
35879         * lib/lock.c (fresh_once): New variable.
35880         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
35881         functions.
35882
35883 2005-07-16  Simon Josefsson  <jas@extundo.com>
35884
35885         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
35886         workaround, suggested by Bruno.
35887
35888 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
35889
35890         * modules/xalloc (Depends-on): Add xalloc-die.
35891         * modules/xvasprintf (Depends-on): Add xalloc-die.
35892
35893 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
35894
35895         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
35896         with a minor change.
35897
35898 2005-07-15  Bruno Haible  <bruno@clisp.org>
35899
35900         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
35901         When using lib/poll.c, define poll as rpl_poll.
35902
35903 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
35904
35905         * modules/argp (Depends-on): Remove unlocked-io.
35906
35907 2005-07-14  Derek Price  <derek@ximbiot.com>
35908
35909         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
35910         for glob symlink bug.
35911
35912 2005-07-14  Bruno Haible  <bruno@clisp.org>
35913
35914         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
35915         Instead, test for *_unlocked function declarations directly.
35916
35917 2005-07-11  Simon Josefsson  <jas@extundo.com>
35918
35919         * modules/size_max: New file.
35920
35921         * modules/xsize: Depend on size_max module for size_max.m4.
35922
35923 2005-07-11  Simon Josefsson  <jas@extundo.com>
35924
35925         * lib/size_max.h: New file.
35926
35927 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
35928
35929         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
35930         copyright symbol and the year.
35931         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
35932         (version_etc_va): Use parameterized copyright notice.
35933         Reword to conform to the current GNU coding standards.
35934
35935 2005-07-11  Karl Berry  <karl@gnu.org>
35936
35937         * doc/gnulib.texi (Quoting): new node.
35938         (Initial import): more info, from Patrice.
35939
35940 2005-07-11  Bruno Haible  <bruno@clisp.org>
35941
35942         * gnulib-tool (func_usage): Document option --avoid.
35943         (Command line options): Handle --avoid.
35944         (func_acceptable): New function.
35945         (func_modules_transitive_closure): Use it.
35946
35947 2005-07-11  Bruno Haible  <bruno@clisp.org>
35948
35949         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
35950         Reported by Jim Meyering.
35951
35952 2005-07-10  Bruno Haible  <bruno@clisp.org>
35953
35954         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
35955         Needed when size_t is smaller than 'unsigned int'.
35956         Reported by Paul Eggert.
35957
35958 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
35959
35960         * modules/argp (Depends-on): Add unlocked-io
35961
35962 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
35963
35964         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
35965         block of defines.
35966
35967 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
35968
35969         * config/srclist.txt: Comment out regcomp.c, since we have a porting
35970         fix now.
35971
35972 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
35973         and Paul Eggert  <eggert@cs.ucla.edu>
35974
35975         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
35976         in wint_t, not wchar_t.  Remove now-unnecessary cast.
35977
35978 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
35979
35980         * modules/regex (Files): Add lib/regex_internal.c,
35981         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
35982         (Depends-on): Add extensions.
35983         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
35984
35985 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
35986
35987         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
35988         pathconf.
35989         * m4/same.m4 (gl_SAME): Likewise.
35990         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
35991
35992         * m4/regex.m4: Adjust to new libc regex implementation.
35993         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
35994         all the .c and .h parts of (the new) regex.
35995         Quote the m4 stuff better.
35996         Check for RE_ICASE bug of old gnulib.
35997         Check for REG_STARTEND of recent libc.
35998         Rename local variables from jm_* to gl_*.
35999         Quote operand of "test -f".
36000         Say "recent enough" version of libc, not "version 2".
36001         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
36002         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
36003         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
36004         Remove check for btowc, isascii.
36005         Require AM_LANGINFO_CODESET.
36006
36007 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
36008
36009         * lib/regex.c, regex.h: Sync from libc.
36010         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
36011         * lib/regexec.c:
36012         New files, synced from libc, except that regex_internal.h
36013         currently has a small porting fix.
36014
36015 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
36016
36017         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
36018         regex_internal.c, regexec.c.
36019         Add regex_internal.h too, but as a comment, since the libc version
36020         is currently broken in gnulib mode.
36021
36022 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
36023
36024         Support programs like Emacs that use gnulib but not gettext.
36025         * MODULES.html.sh (Internationalization functions): Add gettext-h.
36026         * modules/gettext-h: New file.
36027         * modules/gettext (Files): Remove lib/gettext.h.
36028         (Depends-on): Add gettext-h.
36029         (Makefile.am): Remove lib_SOURCES.
36030         * modules/argmatch, modules/c-stack, modules/closeout:
36031         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
36032         * modules/execute, modules/file-type, modules/getaddrinfo:
36033         * modules/getopt, modules/human, modules/javacomp:
36034         * modules/javaexec, modules/mkdir-p, modules/obstack:
36035         * modules/openat, modules/pagealign_alloc, modules/pipe:
36036         * modules/quotearg, modules/regex, modules/rpmatch:
36037         * modules/unicodeio, modules/userspec, modules/version-etc:
36038         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
36039         * modules/xsetenv:
36040         Depend on gettext-h, not gettext.
36041
36042 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
36043
36044         * gnulib-tool (func_import): Add support for 'public domain' license.
36045         * modules/alloca, modules/atexit, modules/memmove:
36046         Now public domain, not GPL.
36047         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
36048         * modules/realloc, modules/strerror, modules/strtod:
36049         Now LGPL, not GPL.
36050
36051 2005-07-05  Bruno Haible  <bruno@clisp.org>
36052
36053         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
36054         autoconf CVS. Needed for mingw.
36055
36056 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
36057
36058         Remove the dependency of the strftime module on the tzset module.
36059         * modules/strftime (Depends-on): Remove dependency on tzset.
36060
36061 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
36062
36063         Remove the dependency of the strftime module on the tzset module.
36064         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
36065         gl_FUNC_TZSET_CLOBBER.
36066
36067 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
36068
36069         Remove the dependency of the strftime module on the tzset module.
36070         * lib/strftime.c (my_strftime)
36071         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
36072         Copy the input structure, to work around some of the bug with
36073         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
36074         Solaris releases, you should also use the tzset module, but we won't
36075         require it as a dependency any more since we don't want LGPLed code
36076         to depend on GPLed code.
36077
36078 2005-07-02  Jim Meyering  <jim@meyering.net>
36079
36080         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
36081         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
36082         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
36083         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
36084
36085 2005-07-02  Jim Meyering  <jim@meyering.net>
36086
36087         * lib/backupfile.c (backup_args): Change a `0' to NULL.
36088
36089 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
36090
36091         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
36092         declares only 'struct timespec;' (!).
36093
36094 2005-07-01  Jim Meyering  <jim@meyering.net>
36095
36096         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
36097         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
36098         * lib/save-cwd.c, tempname.c:
36099         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
36100         and don't include <sys/file.h>).
36101
36102 2005-06-29  Jim Meyering  <jim@meyering.net>
36103
36104         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
36105         type name.  Use the variable name instead.
36106         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
36107         Likewise.
36108
36109 2005-06-28  Simon Josefsson  <jas@extundo.com>
36110
36111         * modules/check-version (Files): Add check-version.m4.
36112
36113 2005-06-28  Simon Josefsson  <jas@extundo.com>
36114
36115         * m4/check-version.m4: New file, suggested by Jim Meyering
36116         <jim@meyering.net>.
36117
36118 2005-06-28  Simon Josefsson  <jas@extundo.com>
36119
36120         * lib/check-version.h, lib/check-version.c: New files.
36121
36122 2005-06-28  Simon Josefsson  <jas@extundo.com>
36123
36124         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
36125         collision with global variable.  Better indentation.  Don't
36126         increment buffer pointer beyond buffer end.  Based on comments
36127         from Paul Eggert <eggert@cs.ucla.edu>.
36128
36129         * lib/base64.h: Indent.
36130
36131 2005-06-28  Simon Josefsson  <jas@extundo.com>
36132
36133         * doc/gnulib.texi (Library version handling): New section.
36134
36135 2005-06-28  Jim Meyering  <jim@meyering.net>
36136
36137         * check-module (find_included_lib_files): Hard-code another
36138         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
36139         but modules/fts-lgpl (correctly) does not list those files.
36140
36141         * modules/canonicalize (Files): Add lib/pathmax.h.
36142
36143 2005-06-25  Simon Josefsson  <jas@extundo.com>
36144
36145         * modules/check-version: New file.
36146
36147 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
36148
36149         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
36150         initializer of struct addrinfo, as an indication that we don't
36151         care how many members the structure has.
36152
36153 2005-06-24  Derek Price  <derek@ximbiot.com>
36154         and Bruno Haible  <bruno@clisp.org>
36155
36156         Remove stat module & update lstat.
36157         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
36158         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
36159         * m4/stat.m4: Remove this file.
36160
36161 2005-06-24  Derek Price  <derek@ximbiot.com>
36162         and Bruno Haible  <bruno@clisp.org>
36163
36164         Remove stat module & update lstat.
36165         * lib/stat.c: Remove this file...
36166         (slash_aware_lstat): ...moving this content and its support...
36167         * lib/lstat.c (rpl_lstat): ...into here.
36168         * lib/lstat.h: New file.
36169
36170 2005-06-24  Derek Price  <derek@ximbiot.com>
36171         and Bruno Haible  <bruno@clisp.org>
36172
36173         Remove stat module & update lstat.
36174         * config/srclist.txt (libc sources): Remove stat.
36175
36176 2005-06-24  Derek Price  <derek@ximbiot.com>
36177         and Bruno Haible  <bruno@clisp.org>
36178
36179         Remove stat module & update lstat.
36180         * MODULES.html.sh (stat): Remove.
36181         * MODULES.html: Regenerated.
36182         * modules/lstat (Description): Correct function name.
36183         (Files): Add "lstat.h".
36184         (Depends-on): Remove stat, add xalloc, stat-macros.
36185         * modules/stat: Remove this file.
36186         (Include): Add "lstat.h", remove <sys/stat.h>.
36187
36188 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
36189
36190         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
36191         (ranged_convert): Don't save conversion in a temporary struct.
36192         This causes a warning with GCC 4.0.0, and anyway in the typical
36193         case it's not worth the extra 100 bytes or so of code.
36194         (ranged_convert, __mktime_internal): When calling a function via a
36195         pointer P, use P () rather than (*P) (), as we now assume C89 or
36196         better.
36197
36198 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
36199
36200         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
36201         "who -r" failed to give output.  Problem reported by Tim Waugh.
36202
36203         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
36204         (xcalloc): Use it to avoid needless tests.
36205         Problem reported by Jim Meyering.
36206
36207 2005-06-20  Derek Price  <derek@ximbiot.com>
36208
36209         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
36210         unnecessary for Autoconfs > 2.59c.
36211
36212 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36213
36214         * lib/argp.h (__option_is_short): Check upper limit of
36215         __key. Isprint() requires its argument to have the value
36216         of an unsigned char or EOF.
36217
36218 2005-06-16  Jim Meyering  <jim@meyering.net>
36219
36220         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
36221         when either N or S is zero.
36222
36223 2005-06-16  Derek Price  <derek@ximbiot.com>
36224
36225         * m4/bison.m4: Declare YACC & YFLAGS precious.
36226
36227 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
36228
36229         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
36230         multibyte string or pattern, fall back on unibyte matching.
36231         Problem reported by James Youngman.
36232
36233 2005-06-08  Bruno Haible  <bruno@clisp.org>
36234
36235         * modules/csharpcomp: New file.
36236         * MODULES.html.sh (C#): Add csharpcomp.
36237
36238 2005-06-08  Bruno Haible  <bruno@clisp.org>
36239
36240         * m4/csharpcomp.m4: New file, from GNU gettext.
36241
36242 2005-06-08  Bruno Haible  <bruno@clisp.org>
36243
36244         * lib/csharpcomp.h: New file, from GNU gettext.
36245         * lib/csharpcomp.c: New file, from GNU gettext.
36246         * lib/csharpcomp.sh.in: New file, from GNU gettext.
36247
36248 2005-06-08  Bruno Haible  <bruno@clisp.org>
36249
36250         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
36251         warning on mingw.
36252
36253 2005-06-07  Derek Price  <derek@ximbiot.com>
36254
36255         Sync from CVS.
36256         * lib/glob_.h: Indent nested #ifdef.
36257
36258 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
36259
36260         Sync from coreutils.
36261         Use "file name" when talking about file names, instead of "filename"
36262         or "path", as per the GNU coding standards.
36263         * lib/mkdir-p.c: Renamed from makepath.c.
36264         (make_dir_parents): Renamed from make_path.  All callers changed.
36265         * lib/mkdir-p.h: Likewise.  All includers changed.
36266         * lib/filenamecat.c: Renamed from path-concat.c.
36267         (file_name_concat): Renamed from path_concat.  All callers changed.
36268         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
36269         * lib/filenamecat.h: Likewise.  All includers changed.
36270         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
36271         in comments or local variable names.
36272         * lib/basename.c: Likewise.
36273         * lib/canonicalize.c, canonicalize.h: Likewise.
36274         * lib/dirname.c, dirname.h: Likewise.
36275         * lib/euidaccess.c: Likewise.
36276         * lib/exclude.c: Likewise
36277         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
36278         * lib/fsusage.c, fsuage.h: Likewise.
36279         * lib/fts.c, fts_.h: Likewise.
36280         * lib/getcwd.c: Likewise.
36281         * lib/getloadavg.c: Likewise.
36282         * lib/mkstemp.c: Likewise.
36283         * lib/mountlist.c, mountlist.h: Likewise.
36284         * lib/openat.c, openat.h: Likewise.
36285         * lib/readlink-stub.c: Likewise.
36286         * lib/readutmp.c, readutmp.h: Likewise.
36287         * lib/rename.c: Likewise.
36288         * lib/rmdir.c: Likewise.
36289         * lib/same.c: Likewise.
36290         * lib/savedir.c: Likewise.
36291         * lib/stripslash.c: Likewise.
36292         * lib/tempname.c: Likewise.
36293         * lib/xreadlink.c: Likewise.
36294         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
36295         All uses changed.
36296         * lib/exclude.h: Likewise.
36297
36298         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
36299         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
36300         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
36301         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
36302         * lib/pathmax.h: Include <limits.h> unconditionally, since other
36303         files have been getting away with it for years (MORE/BSD 4.3
36304         is extinct now).
36305         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
36306         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
36307
36308         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
36309         Define to 256, not 255, as per modern POSIX.
36310
36311 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
36312
36313         Sync from coreutils.
36314         Use "file name" when talking about file names, instead of "filename"
36315         or "path", as per the GNU coding standards.
36316         * MODULES.html.sh: mkdir-p renamed from makepath.
36317         filenamecat renamed from path-concat.
36318         * modules/filenamecat: Renamed from modules/path-concat.
36319         (Files): filenamecat.h and filenamecat.c renamed from
36320         path-concat.h and path-concat.c.
36321         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
36322         (Include): filenamecat.h, not path-concat.h.
36323         * modules/mkdir-p: Renamed from modules/makepath.
36324         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
36325         makepath.c.
36326         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
36327         (Include): mkdir-p.h, not makepath.h.
36328
36329 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
36330
36331         Sync from coreutils.
36332         * m4/mkdir-p.m4: Renamed from makepath.m4.
36333         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
36334         Rename files from makepath.c to mkdir-p.c, and from
36335         makepath.h to mkdir-p.h.
36336         * m4/filenamecat.m4: Renamed from path-concat.m4.
36337         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
36338         Rename files from path-concat.c to filenamecat.c,
36339         and from path-concat.h to filenamecat.h.
36340         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
36341         "file name" in local variables or comments.
36342         * m4/rename.m4: Likewise.
36343
36344 2005-06-01  Bruno Haible  <bruno@clisp.org>
36345
36346         * modules/csharpexec: New file.
36347         * MODULES.html.sh (C#): New section.
36348
36349 2005-06-01  Bruno Haible  <bruno@clisp.org>
36350
36351         * m4/csharp.m4: New file, from GNU gettext.
36352         * m4/csharpexec.m4: New file, from GNU gettext.
36353
36354 2005-06-01  Bruno Haible  <bruno@clisp.org>
36355
36356         * lib/csharpexec.h: New file, from GNU gettext.
36357         * lib/csharpexec.c: New file, from GNU gettext.
36358         * lib/csharpexec.sh.in: New file, from GNU gettext.
36359
36360 2005-05-31  Derek Price  <derek@ximbiot.com>
36361             Paul Eggert  <eggert@cs.ucla.edu>
36362
36363         Sync from cvs.
36364         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
36365
36366 2005-05-31  Derek Price  <derek@ximbiot.com>
36367             Paul Eggert  <eggert@cs.ucla.edu>
36368
36369         Sync from cvs.
36370         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
36371
36372 2005-05-29  Derek Price  <derek@ximbiot.com>
36373
36374         * config/srclist.txt (glob_.h, glob.c): Add these files.
36375
36376 2005-05-29  Derek Price  <derek@ximbiot.com>
36377
36378         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
36379         * modules/glob: New file.
36380         * modules/getlogin_r: Add link to POSIX spec in description.
36381
36382 2005-05-29  Derek Price  <derek@ximbiot.com>
36383             Paul Eggert  <eggert@cs.ucla.edu>
36384
36385         * m4/glob.m4: New file.
36386
36387 2005-05-29  Derek Price  <derek@ximbiot.com>
36388             Paul Eggert  <eggert@cs.ucla.edu>
36389
36390         * lib/glob_.h, lib/glob.c: New files.
36391
36392 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
36393
36394         * modules/fts (Files): Remove m4/inttypes-pri.m4.
36395         * modules/fts-lgpl (Depends-on): Remove gettext.
36396
36397 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
36398
36399         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
36400         and don't require gt_INTTYPES_PRI.
36401
36402 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
36403
36404         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
36405
36406         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
36407         the configuration hassle isn't worth it.
36408         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
36409         (LONGEST_MODIFIER, PRIuMAX): Remove.
36410
36411 2005-05-27  Bruno Haible  <bruno@clisp.org>
36412
36413         * lib/getlogin_r.h: Remove second include of <stddef.h>.
36414
36415 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
36416
36417         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
36418         _POSIX_PTHREAD_SEMANTICS for Solaris.
36419
36420 2005-05-25  Derek Price  <derek@ximbiot.com>
36421
36422         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
36423
36424 2005-05-25  Derek Price  <derek@ximbiot.com>
36425             Paul Eggert  <eggert@cs.ucla.edu>
36426
36427         * modules/getlogin_r, m4/getlogin_r.m4: New files.
36428         * lib/getlogin_r.c, getlogin_r.h: New files.
36429
36430 2005-05-25  Bruno Haible  <bruno@clisp.org>
36431             Derek Price  <derek@ximbiot.com>
36432
36433         * lib/getlogin_r.h: Simplify API documentation.
36434
36435 2005-05-23  Derek Price  <derek@ximbiot.com>
36436
36437         * modules/minmax (Files): Add m4/minmax.m4.
36438         (configure.ac): Add gl_MINMAX.
36439
36440 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
36441
36442         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
36443         so that unistd-safer.h (GPL'ed code) need not be included.
36444
36445 2005-05-22  Bruno Haible  <bruno@clisp.org>
36446
36447         * m4/minmax.m4: New file.
36448         Based on a patch by Derek Price <derek@ximbiot.com>.
36449
36450 2005-05-22  Bruno Haible  <bruno@clisp.org>
36451
36452         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
36453         (INT64_MIN): Fix definition.
36454         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
36455
36456         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
36457         NEED_SIGNED_INT_TYPES.
36458
36459         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
36460         HAVE_SYSTEM_INTTYPES.
36461
36462 2005-05-22  Bruno Haible  <bruno@clisp.org>
36463
36464         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
36465         Also include <sys/param.h> if it defines MIN, MAX.
36466         Based on a patch by Derek Price <derek@ximbiot.com>.
36467
36468 2005-05-21  Jim Meyering  <jim@meyering.net>
36469
36470         * modules/fts (Files): Add m4/inttypes-pri.m4.
36471         (Depends-on): Add lstat and remove gettext.  Alphabetize.
36472
36473 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
36474
36475         New fts module.
36476         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
36477         (setup_dir, free_dir): New functions.
36478         (enter_dir, leave_dir): Define trivial
36479         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
36480         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
36481         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
36482         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
36483         Move to fts-cycle.c.
36484         (fts_open): Use setup_dir.
36485         (fts_close): Use free_dir.
36486         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
36487         This adds a label and some gotos, but the alternatives were messier.
36488         Check for memory allocation failure when entering a dir.
36489         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
36490         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
36491         (FTS): New member fts_cycle, that is a union that contains the
36492         old active_dir_ht and cycle_state.  All uses changed to mention
36493         fts_cycle.ht and fts_cycle.state.
36494         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
36495         fts.c, with the following changes:
36496         (setup_dir, free_dir): New functions.
36497         (enter_dir): Now returns bool.  Return true if successful, false
36498         if memory exhausted.  All callers changed.
36499         Do not bother partly cleaning up on
36500         memory allocation failure; that is free_dir's job.
36501         However, free ad if hash_insert fails, to avoid memory leak.
36502         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
36503         fts->fts_options to see which union member to use.
36504
36505 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
36506
36507         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
36508         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
36509
36510 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
36511
36512         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
36513
36514 2005-05-20  Jim Meyering  <jim@meyering.net>
36515
36516         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
36517         Now a macro, to pacify GCC.
36518
36519 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
36520
36521         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
36522         of -1.
36523
36524 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
36525
36526         * lib/chown.c (rpl_chown): Return -1 on failure.
36527
36528 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
36529
36530         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
36531         Don't check for stddef.h.
36532         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
36533         don't use its results.
36534         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
36535         since we include them unconditionally.  Don't require
36536         AM_STDBOOL_H, since stdbool is a prerequisite.
36537         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
36538         since we assume C89 or better.
36539         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
36540         as we don't use their results.
36541         Don't check for fchdir, memmove, memset, strrchr, as we use
36542         them unconditionally.
36543         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
36544         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
36545
36546 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
36547
36548         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
36549         Include <stddef.h> unconditionally, since we assume C89 now.
36550         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
36551         * lib/fts.c: Include fts_.h first, to check interface.
36552         Do not include intprops.h; no longer needed.
36553         Include cycle-check.h and hash.h, since fts_.h no longer does.
36554         Remove unnecessary casts of closedir to void.
36555         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
36556         decide whether to decrement nlinks.
36557         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
36558         (FTS): Use struct hash_table * instead of Hash_table, so that
36559         we no longer need to include hash.h here.
36560
36561 2005-05-18  Jim Meyering  <jim@meyering.net>
36562
36563         * modules/dirfd (License): Change to LGPL.  Most of the code
36564         is already in the public domain.
36565
36566 2005-05-18  Jim Meyering  <jim@meyering.net>
36567
36568         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
36569         Reported by Yoann Vandoorselaere.
36570
36571 2005-05-17  Jim Meyering  <jim@meyering.net>
36572
36573         * m4/fts.m4: New file, from coreutils.
36574
36575 2005-05-17  Jim Meyering  <jim@meyering.net>
36576
36577         * lib/fts.c, lib/fts_.h: New files, from coreutils.
36578
36579 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36580
36581         Sync from coreutils.
36582         * m4/unlinkdir.m4: New file.
36583
36584 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36585
36586         Sync from coreutils.
36587         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
36588         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
36589         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
36590         White space changes only.
36591         * lib/makepath.c (make_path): Port to hosts where leading "//" is
36592         special.
36593         * lib/yesno.c: Include getline.h, not ctype.h.
36594         (yesno): Don't remove leading white space; POSIX doesn't allow it.
36595         Use getline to remove arbitrary restriction on response length.
36596
36597 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36598
36599         * config/srclist-update: Spell out "Street" in FSF postal
36600         mail address; this is the style the FSF seems to prefer.
36601
36602         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
36603         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
36604         this updates FSF postal mail address.
36605
36606         Sync from coreutils.
36607         * modules/unlinkdir: New file.
36608         * modules/yesno (Depends-on): Add getline.
36609         * MODULES.html.sh (File system functions): Add unlinkdir.
36610
36611 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
36612
36613         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
36614         lib/strsep.h:
36615         Change the initial comment to refer to GPL, not LGPL.
36616         gnulib-tool will change it to LGPL as needed.
36617
36618         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
36619         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
36620         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
36621         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
36622         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
36623         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
36624         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
36625         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
36626         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
36627         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
36628         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
36629         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
36630         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
36631         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
36632         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
36633         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
36634         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
36635         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
36636         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
36637         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
36638         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
36639         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
36640         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
36641         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
36642         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
36643         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
36644         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
36645         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
36646         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
36647         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
36648         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
36649         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
36650         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
36651         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
36652         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
36653         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
36654         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
36655         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
36656         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
36657         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
36658         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
36659         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
36660         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
36661         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
36662         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
36663         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
36664         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
36665         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
36666         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
36667         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
36668         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
36669         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
36670         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
36671         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
36672         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
36673         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
36674         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
36675         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
36676         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
36677         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
36678         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
36679         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
36680         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
36681         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
36682         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
36683         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
36684         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
36685         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
36686         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
36687         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
36688         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
36689         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
36690         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
36691         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
36692         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
36693         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
36694         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
36695         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
36696         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
36697         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
36698         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
36699         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
36700         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
36701         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
36702         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
36703         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
36704         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
36705         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
36706         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
36707         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
36708         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
36709         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
36710         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
36711         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
36712         lib/yesno.c, lib/yesno.h:
36713         Update FSF postal mail address.
36714
36715 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
36716
36717         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
36718         tests/test-memmem.c, tests/test-stpncpy.c:
36719         Update FSF postal mail address.
36720
36721 2005-05-13  Bruno Haible  <bruno@clisp.org>
36722
36723         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
36724         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
36725         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
36726         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
36727         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
36728         Add support for 64-bit integers in the MSVC compiler.
36729
36730 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36731
36732         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
36733
36734 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
36735
36736         * gnulib-tool (func_import): Sort and uniquify recommended includes.
36737
36738 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
36739
36740         * doc/getdate.texi (General date syntax): Don't say that date
36741         date --iso-8601=ns generates acceptable dates; it doesn't yet.
36742         Problem reported by Nic Ferrier.
36743
36744 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36745
36746         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
36747         specified in ai_socktype. Fix invalid ai_protocol
36748         check. ai_protocol is usually set to 0 or depending on
36749         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
36750         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
36751         ai_socktype / ai_protocol in the returned addrinfo structure.
36752
36753 2005-05-10  Simon Josefsson  <jas@extundo.com>
36754
36755         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
36756         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
36757
36758 2005-05-10  Karl Berry  <karl@gnu.org>
36759
36760         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
36761         (from http://www.gnu.org/licenses).
36762         * doc/COPYING.LIB: also rename to COPYING.LESSER.
36763         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
36764         fdl.texi suffices.
36765
36766 2005-05-10  Karl Berry  <karl@gnu.org>
36767
36768         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
36769         (COPYING.DOC): remove.
36770
36771         * config/srclist-update: new FSF address.
36772
36773 2005-05-10  Derek Price  <derek@ximbiot.com>
36774
36775         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
36776         possible.
36777
36778 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36779             Bruno Haible  <bruno@clisp.org>
36780
36781         * modules/inet_ntop: New file.
36782         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
36783         inet_ntop.
36784
36785 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36786             Bruno Haible  <bruno@clisp.org>
36787
36788         * m4/inet_ntop.m4: New file.
36789
36790 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36791             Bruno Haible  <bruno@clisp.org>
36792
36793         * lib/inet_ntop.h: New file.
36794         * lib/inet_ntop.c: New file, from glibc with modifications.
36795
36796 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
36797
36798         * modules/time_r (License): Change to LGPL.
36799         * modules/extensions (License): Change to LGPL.  Actually,
36800         the license is more permissive than that, but currently gnulib-tool
36801         doesn't know how to handle more-permissive licenses.
36802
36803         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
36804         Problem reported by Dave Love.
36805
36806 2005-05-08  Jim Meyering  <jim@meyering.net>
36807
36808         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
36809         blank.
36810
36811 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
36812
36813         * modules/argmatch (Depends-on): Add stdbool.
36814         * modules/backupfile (Depends-on): Likewise.
36815         * modules/chdir-long (Depends-on): Likewise.
36816         * modules/closeout (Depends-on): Likewise.
36817         * modules/cycle-check (Depends-on): Likewise.
36818         * modules/dirname (Depends-on): Likewise.
36819         * modules/fnmatch (Depends-on): Likewise.
36820         * modules/fsusage (Depends-on): Likewise.
36821         * modules/fwriteerror (Depends-on): Likewise.
36822         * modules/getcwd (Depends-on): Likewise.
36823         * modules/getloadavg (Depends-on): Likewise.
36824         * modules/hard-locale (Depends-on): Likewise.
36825         * modules/makepath (Depends-on): Likewise.
36826         * modules/mountlist (Depends-on): Likewise.
36827         * modules/nanosleep (Depends-on): Likewise.
36828         * modules/posixtm (Depends-on): Likewise.
36829         * modules/quotearg (Depends-on): Likewise.
36830         * modules/readtokens (Depends-on): Likewise.
36831         * modules/readtokens0 (Depends-on): Likewise.
36832         * modules/readutmp (Depends-on): Likewise.
36833         * modules/save-cwd (Depends-on): Likewise.
36834         * modules/strftime (Depends-on): Likewise.
36835         * modules/userspec (Depends-on): Likewise.
36836         * modules/utimecmp (Depends-on): Likewise.
36837         * modules/xgetcwd (Depends-on): Likewise.
36838         * modules/xnanosleep (Depends-on): Likewise.
36839         * modules/xstrtod (Depends-on): Likewise.
36840         * modules/yesno (Depends-on): Likewise.
36841
36842 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
36843
36844         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
36845         needless checks.
36846
36847 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
36848
36849         Merge from coreutils.  Among other things,
36850         add bulletproofing for cases where stdin, stdout, or stderr are closed.
36851         * lib/fd-safer.c: New file.
36852         * lib/fcntl-safer.h, open-safer.c: Remove.
36853         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
36854         * lib/dup-safer.c: Include unistd-safer.h first.
36855         Don't include errno.h.
36856         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
36857         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
36858         * lib/file-type.c: Rely on file-type.h change.
36859         * lib/getloadavg.c: Include unistd-safer.h.
36860         (getloadavg): Use safer open.
36861         * lib/getusershell.c: Include "stdio-safer.h".
36862         (getusershell): Use safer fopen.
36863         * lib/long-options.c (long_options): Use NULL rather than 0.
36864         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
36865         'free'.
36866         * lib/modechange.c: Likewise.
36867         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
36868         (MODE_DONE): New constant.
36869         (struct mode_change): Remove 'next' member.
36870         (make_node_op_equals): New function; like the old one of the
36871         same name, except it allocates an array.
36872         (mode_compile, mode_create_from_ref): Use it.
36873         (mode_compile): Allocate result as an array, not a linked list.
36874         Parse octal string ourself, so that we catch mistakes like "+0".
36875         (mode_adjust): Arg is an array, not a linked list.
36876         * lib/modechange.c: Include stat-macros.h, xalloc.h.
36877         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
36878         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
36879         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
36880         Remove.  This is now stat-macros.h's job.
36881         (talloc): Remove.  All callers replaced by xalloc, so that
36882         our invokers don't have to worry about reporting memory failures.
36883         (make_node_op_equals): Remove.
36884         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
36885         New constants.
36886         (struct mode_change): Moved here from modechange.h.
36887         (mode_append_entry): Remove.
36888         (mode_compile): Remove MASKED_OPS arg, since it encouraged
36889         apps to have incorrect behavior.  Use simpler algorithm for head
36890         and tail.  Don't futz with umask; that's now the job of mode_adjust.
36891         Detect more invalid usages rather than having somewhat-random behavior.
36892         Don't insert an "a=" action, as that leads to incorrect behavior.
36893         (mode_compile, mode_create_from_ref): Return NULL on error instead
36894         of an enum, since now there's only one way to have an error.  All
36895         callers changed.
36896         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
36897         at the correct time.  Simplify calculation of "+u" and its ilk.
36898         Don't mishandle "+X".
36899         (mode_free): Remove "register" and localize decls.
36900         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
36901         (struct mode_change): Move to modechange.c; callers don't
36902         need to see this stuff.
36903         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
36904         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
36905         (mode_change, mode_adjust): Reflect the new signatures noted above.
36906         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
36907         that might redefine system include files.
36908         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
36909         (my_usleep): Use NULL rather than (void *) 0.
36910         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
36911         Use siginterrupt to specify that system calls should be interrupted.
36912         (rpl_nanosleep): Move initialization of suspended closer to call of
36913         my_usleep.
36914         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
36915         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
36916         (desirable_utmp_entry): New function.
36917         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
36918         using x2nrealloc, to simplify logic.
36919         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
36920         size calculation.  Do not assume utmp file is a regular file.
36921         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
36922         (READ_UTMP_CHECK_PIDS): New constant.
36923         * lib/save-cwd.c: Include unistd-safer.h.
36924         (save_cwd): Use fd_safer.
36925         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
36926         [!_LIBC] Include "stat-macros.h" instead.
36927         * lib/unistd-safer.h (fd_safer): New decl.
36928
36929 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
36930
36931         * modules/getloadavg (Depends-on): Add unistd-safer.
36932         * modules/getusershell (Depends-on): Add stdio-safer.
36933         * modules/lstat (Depends-on): Remove xalloc.
36934         * modules/mkstemp (Depends-on): Add stat-macros.
36935         * modules/modechange (Depends-on): Remove xstrtol.
36936         Add stat-macros, xalloc.
36937         * modules/save-cwd (Depends-on): Add unistd-safer.
36938         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
36939         * modules/unistd-safer (Files): Add lib/fd-safer.c
36940         (Makefile.am): Remove lib_SOURCES.
36941
36942         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
36943         Remove fcntl-safer; unistd-safer supersedes it.
36944
36945 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
36946
36947         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
36948         AC_HEADER_STAT.
36949         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
36950         (gl_PREREQ_CHOWN): Remove.
36951         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
36952         it.  Don't require AC_HEADER_STAT.
36953         (gl_PREREQ_LSTAT): Remove.
36954         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
36955         Don't require AC_HEADER_STAT.
36956         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
36957         (gl_PREREQ_RMDIR): Remove.
36958         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
36959         mention stat-macros.h or AC_HEADER_STAT, since we'll make
36960         the stat-macros module a prerequisite.
36961         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
36962         * m4/filemode.m4 (gl_FILEMODE): Likewise.
36963         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
36964         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
36965         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
36966         variable names.
36967         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
36968         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
36969         variable prefixes.
36970         * m4/fcntl-safer.m4: Remove.
36971         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
36972         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
36973         Invoke gl_PREREQ_FD_SAFER.
36974         (gl_PREREQ_FD_SAFER): New macro.
36975         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
36976         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
36977         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
36978         Remove duplicate call to AC_LIBOBJ(readutmp).
36979         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
36980
36981         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
36982         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
36983
36984 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
36985
36986         * MODULES.html.sh (Misc): Add byteswap.
36987
36988 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
36989
36990         * modules/getcwd (Depends-on): Add extensions.
36991         * modules/openat (Depends-on): Likewise.
36992
36993 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
36994
36995         * modules/byteswap: New file.
36996
36997 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
36998
36999         * m4/byteswap.m4: New file.
37000
37001 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
37002
37003         * lib/byteswap_.h: New file.
37004
37005 2005-04-25  Karl Berry  <karl@gnu.org>
37006
37007         * m4/gettext.m4: Update from GNU gettext 0.14.4.
37008
37009 2005-04-25  Albert Chin  <china@thewrittenword.com>
37010
37011         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
37012         Toolkit C bug.
37013
37014 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
37015
37016         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
37017         (func_ln_if_changed) Remove forcibly for no error message
37018         in case file does not exist.
37019
37020 2005-04-19  Simon Josefsson  <jas@extundo.com>
37021
37022         * gnulib-tool (Options): Make --symlink mean --symbolic.
37023
37024 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
37025
37026         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
37027
37028 2005-04-16  Simon Josefsson  <jas@extundo.com>
37029
37030         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
37031
37032 2005-04-15  Simon Josefsson  <jas@extundo.com>
37033
37034         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
37035
37036 2005-04-15  Simon Josefsson  <jas@extundo.com>
37037
37038         * gnulib-tool: Rename --symlink to --symbolic.
37039
37040 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
37041
37042         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
37043         symbolic links to files instead of copying/moving.  Add --aux-dir,
37044         specifying directory relative --dir where auxiliary build tools
37045         are placed.
37046
37047 2005-04-14  Bruno Haible  <bruno@clisp.org>
37048
37049         * modules/allocsa (License): Change to LGPL.
37050         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
37051
37052 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
37053
37054         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
37055         that "UTC +1 second" continues to work.  Problem reported
37056         by Dmitry V. Levin.
37057         (relunit_snumber): New rule.
37058         (relunit): Use it.
37059
37060 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
37061
37062         * lib/getdate.y (universal_time_zone_table): New constant.
37063         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
37064         universal_time_zone_table.
37065         (lookup_zone): Prefer universal_time_zone_table to
37066         local_time_zone_table, so that "GMT" time stamps are allowed in
37067         London during the summer.  Problem reported by Ian Abbott.
37068
37069 2005-04-12  Jim Meyering  <jim@meyering.net>
37070
37071         * lib/human.c (humblock): Set *options even when returning due to
37072         xstrtoumax conversion failure.  Thanks to a used-uninitialized
37073         warning from gcc-4.
37074
37075 2005-04-09  Jim Meyering  <jim@meyering.net>
37076
37077         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
37078         -Wuninitialized: initialize tm0.tm_year.
37079
37080 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
37081
37082         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
37083         count, since there's no maximum.  All uses changed.
37084         Add member dsts_seen.
37085         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
37086         not being INT_MAX.
37087         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
37088         Use pc_rels_seen to decide whther a date is absolute.
37089
37090         * lib/getdate.y (number): Don't overwrite year.
37091         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
37092         check.
37093
37094 2005-04-02  Simon Josefsson  <jas@extundo.com>
37095
37096         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
37097         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
37098
37099 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
37100
37101         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
37102         where no absolute path name can be longer than PATH_MAX.
37103
37104 2005-03-27  Jim Meyering  <jim@meyering.net>
37105
37106         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
37107
37108 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
37109
37110         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
37111         "one's complement" -> "ones' complement" in comment, as per Knuth.
37112         "value of type" -> "type or expression" in comment.
37113         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
37114
37115 2005-03-26  Jim Meyering  <jim@meyering.net>
37116
37117         Comment nits.
37118         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
37119         Correct typos: s/or/of/.
37120
37121 2005-03-26  Jim Meyering  <jim@meyering.net>
37122
37123         * modules/check-include-files: Move to ../ and rename to...
37124         * check-module: ...this.
37125
37126 2005-03-25  Jim Meyering  <jim@meyering.net>
37127
37128         * modules/xvasprintf (Files): Add xalloc.h.
37129
37130 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
37131
37132         * modules/gettext (Files): config/config.rpath ->
37133         build-aux/config.rpath
37134         * modules/iconv (Files): Likewise.
37135         Problem reported by Oskar Liljeblad.
37136
37137 2005-03-23  Jim Meyering  <jim@meyering.net>
37138
37139         * modules/check-include-files: New script to check for
37140         missing dependencies, multiple includes, etc.
37141
37142         * modules/c-strtold (Depends-on): Add xalloc.
37143         * modules/c-strtod (Depends-on): Add xalloc.
37144         * modules/hash (Depends-on): Add xalloc.
37145         (Files): Remove lib/xalloc.h.
37146
37147         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
37148         * modules/userspec (Files): Add lib/inttostr.h.
37149
37150 2005-03-23  Jim Meyering  <jim@meyering.net>
37151
37152         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
37153
37154 2005-03-22  Jim Meyering  <jim@meyering.net>
37155
37156         * modules/stat-macros: New module.
37157         * modules/canonicalize, modules/euidaccess, modules/file-type,
37158         * modules/filemode, modules/lchown, modules/makepath,
37159         * modules/rmdir, modules/stat: Depend on new stat-macros module
37160         rather than listing lib/stat-macros.h manually.
37161         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
37162
37163 2005-03-22  Jim Meyering  <jim@meyering.net>
37164
37165         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
37166
37167 2005-03-22  Bruno Haible  <bruno@clisp.org>
37168
37169         * config/srclist.txt: Replace target directory 'config' with
37170         'build-aux'.
37171         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
37172         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
37173         ../build-aux/.
37174
37175 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
37176
37177         * modules/chdir-long (Depends-on): Add mempcpy.
37178
37179         * modules/acl, modules/backupfile, modules/c-strtod,
37180         modules/c-strtold, modules/canon-host, modules/canonicalize,
37181         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
37182         modules/exclude, modules/exitfail, modules/file-type,
37183         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
37184         modules/getdate, modules/getline, modules/getpagesize,
37185         modules/getpass, modules/getugroups, modules/group-member,
37186         modules/hard-locale, modules/hash, modules/human, modules/idcache,
37187         modules/inttostr, modules/long-options, modules/makepath,
37188         modules/md5, modules/memcasecmp, modules/memcoll,
37189         modules/modechange, modules/mountlist, modules/path-concat,
37190         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
37191         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
37192         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
37193         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
37194         modules/strftime, modules/strndup, modules/strverscmp,
37195         modules/timespec, modules/unlocked-io, modules/userspec,
37196         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
37197         modules/yesno:
37198         Remove lib_SOURCES line from Makefile.am section, as this is now
37199         done automatically by the corresponding Autoconf macro.
37200
37201 2005-03-21  Jim Meyering  <jim@meyering.net>
37202
37203         Changes imported from coreutils.
37204
37205         * lib/cycle-check.c: Don't include xalloc.h.
37206
37207         * lib/path-concat.c: Don't include assert.h.
37208         (path_concat): Remove assertion that would have triggered
37209         for ABASE starting with more than one slash.
37210         Reported by Andreas Schwab.
37211
37212         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
37213         properly when ABASE is an absolute file name.
37214         Correct the description of this function.
37215         Include <assert.h>.
37216         Add an assertion and a test driver.
37217         This fixes a bug introduced on 2004-07-02.
37218         Andreas Schwab reported the resulting failure of cp --parents:
37219         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
37220
37221 2005-03-21  Jim Meyering  <jim@meyering.net>
37222
37223         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
37224         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
37225
37226 2005-03-21  Jim Meyering  <jim@meyering.net>
37227         and  Paul Eggert  <eggert@cs.ucla.edu>
37228
37229         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
37230         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
37231         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
37232         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
37233         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
37234         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
37235         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
37236         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
37237         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
37238         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
37239         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
37240         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
37241         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
37242         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
37243         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
37244         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
37245         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
37246         for these modules.
37247
37248 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
37249
37250         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
37251         (which shouldn't happen), generate nothing instead of returning 0
37252         immediately, so that nstrftime (NULL, ...) doesn't return 0.
37253
37254 2005-03-16  Bruno Haible  <bruno@clisp.org>
37255
37256         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
37257         HAVE_LONGLONG_64BIT.
37258
37259 2005-03-16  Bruno Haible  <bruno@clisp.org>
37260
37261         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
37262         HAVE_LONGLONG_64BIT.
37263
37264 2005-03-16  Bruno Haible  <bruno@clisp.org>
37265
37266         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
37267         HAVE_LONGLONG_64BIT.
37268
37269 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
37270
37271         * lib/strftime.c (my_strftime): Prepend space to format so that we can
37272         reliably distinguish strftime failure from empty output on POSIX
37273         hosts.
37274
37275 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
37276
37277         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
37278         (iconv_string): Don't guess a size-zero buffer, as that might cause
37279         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
37280         result would be 'too large', where 'too large' is (heuristically)
37281         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
37282         overflow concerns.  This will prevent some unwanted malloc failures
37283         when the inputs are very large.
37284
37285 2005-03-15  Karl Berry  <karl@gnu.org>
37286
37287         * config/srclist.txt (config.rpath): from gettext.
37288         * config/config.rpath: update.
37289
37290 2005-03-15  Bruno Haible  <bruno@clisp.org>
37291
37292         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
37293         to 'negate'.
37294
37295         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
37296         variable.
37297
37298         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
37299         results.
37300
37301 2005-03-14  Simon Josefsson  <jas@extundo.com>
37302
37303         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
37304         <fx@gnu.org>.
37305
37306 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
37307
37308         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
37309         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
37310         intprops.h.
37311         * lib/strtol.c: Likewise.
37312
37313 2005-03-14  Jim Meyering  <jim@meyering.net>
37314
37315         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
37316         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
37317         to be nonzero so that we (and caller) can detect the difference
37318         between a valid zero-length expansion and an error return, even
37319         when the underlying strftime fails before writing anything into
37320         that location.
37321
37322 2005-03-14  Bruno Haible  <bruno@clisp.org>
37323
37324         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
37325         Update from GNU gettext 0.14.3.
37326
37327 2005-03-10  Jim Meyering  <jim@meyering.net>
37328
37329         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
37330
37331 2005-03-10  Jim Meyering  <jim@meyering.net>
37332
37333         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
37334         so that this module works on systems without fchdir.
37335
37336 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
37337
37338         Factor int-properties macros into a single file, except for
37339         glibc-related files.
37340         * lib/intprops.h: New file.
37341         * lib/getloadavg.c: Include it instead of limits.h.
37342         (INT_STRLEN_BOUND): Remove.
37343         * lib/human.c: Include intprops.h.
37344         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
37345         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
37346         302/1000.
37347         * lib/inttostr.h: Include intprops.h instead of limits.h.
37348         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
37349         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
37350         for consistency with intprops.h.
37351         (time_t_is_integer, twos_complement_arithmetic): Use them.
37352         * lib/sig2str.h: Include <signal.h>, intprops.h.
37353         (INT_STRLEN_BOUND): Remove.
37354         * lib/strftime.c (TYPE_SIGNED): Remove.
37355         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
37356         * lib/strtol.c: Adjust comments to match intprops.h.
37357         * lib/userspec.c: Include intprops.h.
37358         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
37359         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
37360         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
37361         instead of rolling our own expressions.
37362         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
37363
37364         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
37365         instead of int.
37366         (my_strftime): Do not mishandle years close to INT_MAX, by doing
37367         the right thing even if adding 1900 would overflow.  Similarly
37368         for tm_mon + 1 and tm_yday + 1.
37369         Make %Y always equivalent to %C%y, and similarly for %G and %g.
37370         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
37371         (DO_SIGNED_NUMBER): New macro.
37372         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
37373
37374 2005-03-07  Bruno Haible  <bruno@clisp.org>
37375
37376         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
37377
37378 2005-03-07  Bruno Haible  <bruno@clisp.org>
37379
37380         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
37381
37382 2005-03-04  Derek R. Price  <derek@ximbiot.com>
37383
37384         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
37385         (func_import): Only replace files via --import when they have actually
37386         changed.
37387
37388 2005-03-03  Derek R. Price  <derek@ximbiot.com>
37389
37390         * m4/mmap-anon.m4: New file.
37391         * m4/pagealign_alloc.m4: New file.
37392
37393 2005-03-03  Derek R. Price  <derek@ximbiot.com>
37394             Bruno Haible  <bruno@clisp.org>
37395
37396         * modules/pagealign_alloc: New file.
37397         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
37398
37399 2005-03-03  Derek R. Price  <derek@ximbiot.com>
37400             Bruno Haible  <bruno@clisp.org>
37401
37402         * lib/pagealign_alloc.h: New file.
37403         * lib/pagealign_alloc.c: New file.
37404
37405 2005-03-03  Bruno Haible  <bruno@clisp.org>
37406
37407         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
37408         Use an all-permissive copyright notice, recommended by RMS.
37409
37410 2005-03-02  Bruno Haible  <bruno@clisp.org>
37411
37412         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
37413         of AIX, the replacement has to be done only after <string.h> is
37414         included, therefore not in config.h. stpncpy.h does the replacement,
37415         and stpncpy.c uses it.
37416
37417 2005-03-02  Bruno Haible  <bruno@clisp.org>
37418
37419         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
37420         stpncpy.c uses it.
37421
37422 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
37423
37424         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
37425         The workaround isn't strictly needed for POSIX conformance, and
37426         it's too much of a pain to configure and maintain.  We'll ask
37427         people to fix their kernels instead.
37428         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
37429         (NANOSLEEP_BUG_WORKAROUND): Remove.
37430         (xnanosleep): Remove the workaround.
37431
37432 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
37433
37434         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
37435         Reported by Derek Price.
37436         (Include): Add "timespec.h".
37437
37438         * modules/xnanosleep (Depends-on): Remove gethrxtime.
37439
37440 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
37441
37442         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
37443         to detect nanosleep bug.
37444
37445 2005-03-01  Bruno Haible  <bruno@clisp.org>
37446
37447         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
37448
37449 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
37450
37451         * modules/gethrxtime: New file.
37452         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
37453         (Depends-on): Add gethrxtime.
37454         (configure.ac): Add gl_XNANOSLEEP.
37455         (Makefile.am): Remove lib_SOURCES line.
37456
37457 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
37458
37459         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
37460         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
37461
37462 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
37463
37464         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
37465         * lib/timespec.h (gettime): Return void, since it always
37466         succeeds now.  All uses changed.
37467         * lib/gettime.c (gettime) Likewise.
37468         [HAVE_NANOTIME]: Prefer nanotime.
37469         Assume gettimeofday succeeds, as POSIX requires.
37470         Assime time () succeeds, since other code already does.
37471         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
37472         (timespec_subtract): Remove.
37473         (NANOSLEEP_BUG_WORKAROUND): New constant.
37474         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
37475         things considerably.  Use it only on GNU/Linux hosts, since the
37476         workaround shouldn't be needed elsewhere.
37477
37478 2005-02-24  Bruno Haible  <bruno@clisp.org>
37479
37480         * modules/gettext (Files): Add m4/glibc2.m4.
37481
37482 2005-02-24  Bruno Haible  <bruno@clisp.org>
37483
37484         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
37485         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
37486         * m4/progtest.m4:
37487         Update from GNU gettext 0.14.2.
37488         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
37489
37490 2005-02-24  Bruno Haible  <bruno@clisp.org>
37491
37492         * lib/localcharset.c: Update from GNU gettext 0.14.2.
37493         * lib/config.charset: Update from GNU gettext 0.14.2.
37494
37495 2005-02-24  Bruno Haible  <bruno@clisp.org>
37496
37497         * lib/gettext.h: Update from GNU gettext 0.14.2.
37498
37499 2005-02-23  Simon Josefsson  <jas@extundo.com>
37500
37501         * m4/iconvme.m4: New file.
37502
37503 2005-02-23  Jim Meyering  <jim@meyering.net>
37504
37505         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
37506         change.
37507         Thanks to Bruno Haible for catching it.
37508
37509 2005-02-22  Simon Josefsson  <jas@extundo.com>
37510
37511         * modules/iconvme: New file.
37512
37513         * MODULES.html.sh: Add iconvme.
37514
37515 2005-02-22  Simon Josefsson  <jas@extundo.com>
37516
37517         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
37518
37519 2005-02-22  Simon Josefsson  <jas@extundo.com>
37520
37521         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
37522
37523 2005-02-22  Jim Meyering  <jim@meyering.net>
37524
37525         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
37526         s/ifndef/ifdef/.
37527
37528 2005-02-20  Neil Conway  <neilc@samurai.com>
37529
37530         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
37531         returned by OSX/Darwin if the specified buffer is not large
37532         enough for the hostname.
37533
37534 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37535
37536         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
37537         pass it to _help, otherwise the latter coredumps trying to
37538         dereference state.root_argp.
37539
37540 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
37541
37542         * modules/chdir-long (Depends-on): Add memrchr.
37543         * modules/memrchr (Files): Add lib/memrchr.h.
37544         (Include): "memrchr.h".
37545
37546 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
37547
37548         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
37549
37550 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
37551
37552         * lib/memrchr.h: New file.
37553         * lib/chdir-long.c: Include it.
37554         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
37555         Don't bother including stddef.h.
37556
37557 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
37558
37559         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
37560         inclusion.
37561         Include <sys/types.h>, for dev_t.
37562         (ME_DUMMY, ME_REMOTE): Move from here....
37563         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
37564         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
37565         Dmitry V. Levin.
37566         Include mountlist.h first, to test the interface.
37567
37568 2005-01-29  Bruno Haible  <bruno@clisp.org>
37569
37570         * lib/progname.c (program_name): Initialize.
37571         Needed when linking statically on MacOS X.
37572
37573 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
37574
37575         Sync from coreutils.
37576         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
37577         (Depends-on): Add c-strtod.
37578         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
37579
37580 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
37581
37582         Sync from coreutils.
37583         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
37584
37585         Remove files that are specific to coreutils.
37586         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
37587
37588 2005-01-28  Bruno Haible  <bruno@clisp.org>
37589
37590         * modules/javacomp: New file.
37591         * MODULES.html.sh (Java): Add javacomp.
37592
37593 2005-01-28  Bruno Haible  <bruno@clisp.org>
37594
37595         * m4/javacomp.m4: New file, from GNU gettext.
37596
37597 2005-01-28  Bruno Haible  <bruno@clisp.org>
37598
37599         * lib/javacomp.sh.in: New file, from GNU gettext.
37600         * lib/javacomp.h: New file, from GNU gettext.
37601         * lib/javacomp.c: New file, from GNU gettext.
37602
37603 2005-01-26  Simon Josefsson  <jas@extundo.com>
37604
37605         * lib/gai_strerror.c: Use GPL in header.
37606
37607 2005-01-26  Bruno Haible  <bruno@clisp.org>
37608
37609         * modules/javaexec: New file.
37610         * MODULES.html.sh (Java): Add javaexec.
37611
37612 2005-01-26  Bruno Haible  <bruno@clisp.org>
37613
37614         * m4/javaexec.m4: New file, from GNU gettext.
37615
37616 2005-01-26  Bruno Haible  <bruno@clisp.org>
37617
37618         * lib/javaexec.sh.in: New file, from GNU gettext.
37619         * lib/javaexec.h: New file, from GNU gettext.
37620         * lib/javaexec.c: New file, from GNU gettext.
37621
37622 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37623
37624         * modules/lchown (Depends-on): Remove lchown.h
37625
37626 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37627
37628         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
37629         must be defined if the header file was not found, in order
37630         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
37631
37632 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37633
37634         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
37635         initializers for struct pentry_state.
37636         (__argp_error): Check return value of __asprintf
37637         (__argp_failure): Translate error message
37638
37639         * lib/argp-parse.c: Removed braces around the expansion of N_()
37640
37641 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
37642
37643         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
37644         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
37645         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
37646         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
37647         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
37648         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
37649         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
37650         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
37651         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
37652         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
37653         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
37654         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
37655         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
37656         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
37657         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
37658         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
37659         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
37660         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
37661         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
37662         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
37663         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
37664         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
37665         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
37666         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
37667         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
37668         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
37669         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
37670         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
37671         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
37672         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
37673         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
37674         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
37675         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
37676         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
37677         xstrtol.m4, xstrtoumax.m4, yesno.m4:
37678         Use an all-permissive copyright notice, recommended by RMS.
37679
37680 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
37681
37682         * modules/chdir-long (Depends-on): Remove mempcpy.
37683
37684 2005-01-21  Jim Meyering  <jim@meyering.net>
37685
37686         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
37687         same value as for Solaris 9.
37688
37689         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
37690         component length.  This included changing the parameter to be
37691         of type `char *' rather than `char const *'.
37692         * lib/chdir-long.h (chdir_long): Update prototype.
37693
37694         * lib/openat.c (fdopendir, fstatat): New functions.
37695         * lib/openat.h: Include headers required for use of DIR and struct
37696         stat.
37697         [AT_SYMLINK_NOFOLLOW]: Define.
37698         (fdopendir, fstatat): Add prototypes.
37699
37700 2005-01-21  Bruno Haible  <bruno@clisp.org>
37701
37702         * modules/classpath: New file.
37703         * MODULES.html.sh (Java): Add classpath.
37704
37705 2005-01-21  Bruno Haible  <bruno@clisp.org>
37706
37707         * lib/classpath.h: New file, from GNU gettext.
37708         * lib/classpath.c: New file, from GNU gettext.
37709
37710 2005-01-20  Simon Josefsson  <jas@extundo.com>
37711
37712         * modules/version-etc-fsf: New file.
37713
37714 2005-01-20  Simon Josefsson  <jas@extundo.com>
37715
37716         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
37717         * lib/version-etc.c: Remove version_etc_copyright.
37718         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
37719         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
37720
37721 2005-01-20  Simon Josefsson  <jas@extundo.com>
37722
37723         * lib/base64.h (isbase64): Add.
37724
37725         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
37726         using a unsigned prototype, don't inline.
37727         (base64_decode): Use it.
37728
37729 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37730
37731         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
37732         it.
37733
37734 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37735
37736         * lib/save-cwd.c (save_cwd): Remove code to support the case
37737         where fchdir is missing or flaky.
37738
37739 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37740
37741         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
37742
37743 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
37744
37745         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
37746         AC_LIBSOURCES now does this.
37747         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
37748         with new ullong_max module.
37749
37750 2005-01-19  Bruno Haible  <bruno@clisp.org>
37751
37752         * modules/sh-quote: New file.
37753         * MODULES.html.sh (Executing programs): Add sh-quote.
37754
37755 2005-01-19  Bruno Haible  <bruno@clisp.org>
37756
37757         * lib/sh-quote.h: New file, from GNU gettext.
37758         * lib/sh-quote.c: New file, from GNU gettext.
37759
37760 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
37761
37762         Merge from coreutils.
37763         * m4/ullong_max.m4: New file.
37764         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
37765         (gl_MACROS): Assume localeconv exists.
37766
37767 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
37768
37769         Merge changes from coreutils, as described below in several
37770         changelogs dated today.
37771
37772         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
37773         (O_DIRECTORY): Remove; not needed here, since "." must be
37774         a directory.  All uses removed.
37775         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
37776         universal on Suns, and we also need to test for IRIX.
37777         Revamp code to use 'if' rather than '#if'.
37778         Avoid unnecessary comparison of cwd->desc to 0.
37779
37780         * lib/utimens.c (futimens): Robustify the previous patch, by checking
37781         for known valid error numbers rather than observed invalid ones.
37782
37783 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
37784
37785         * modules/ullong_max: New file.
37786
37787         * modules/chdir-long, modules/openat: New files.
37788         * modules/save-cwd (Depends-on): Depend on chdir-long.
37789         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
37790
37791 2005-01-18  Jim Meyering  <jim@meyering.net>
37792
37793         Merge from coreutils.
37794         * m4/chdir-long.m4, m4/openat.m4: New files.
37795         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
37796         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
37797         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
37798         is sane and DOES follow symlinks.  Besides, testing 20 different
37799         systems found no broken chown implementations.
37800         Prompted by a change in rsync's copy of this macro.
37801         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
37802
37803         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
37804
37805         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
37806         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
37807         NULL-means-set-to-current-time semantics.
37808         Remove temporary file immediately, rather than waiting
37809         for configure's at-exit trap code to do it.
37810
37811 2005-01-18  Jim Meyering  <jim@meyering.net>
37812
37813         * lib/version-etc.c (version_etc_copyright): Update copyright date.
37814
37815         * lib/utimens.c (futimens): Account for the fact that futimes
37816         can also fail with errno == ENOSYS or errno == ENOENT.
37817         Patch from Dmitry V. Levin.
37818
37819         Change the name of the robust chdir function from chdir to chdir_long.
37820         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
37821         (restore_cwd): Use chdir_long, not chdir.
37822         * lib/chdir-long.c: Renamed from chdir.c.
37823         * lib/chdir-long.h: Renamed from chdir.h.
37824         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
37825         Hurd.
37826
37827 2005-01-18  Bruno Haible  <bruno@clisp.org>
37828
37829         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
37830         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
37831         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
37832         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
37833         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
37834         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
37835         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
37836         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
37837         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
37838         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
37839         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
37840         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
37841         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
37842         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
37843         Use an all-permissive copyright notice, recommended by RMS.
37844
37845 2005-01-18  Bob Proulx  <bob@proulx.com>
37846
37847         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
37848         simplify offsetof() macro construct to avoid compile failure with
37849         native HP-UX 11.0 ANSI C compiler.
37850
37851 2005-01-17  Bruno Haible  <bruno@clisp.org>
37852
37853         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
37854         redundant because stpncpy.m4 takes care of it.
37855
37856 2005-01-17  Bruno Haible  <bruno@clisp.org>
37857
37858         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
37859
37860 2005-01-17  Bruno Haible  <bruno@clisp.org>
37861
37862         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
37863         used.
37864
37865 2005-01-17  Bruno Haible  <bruno@clisp.org>
37866
37867         * lib/fwriteerror.h (fwriteerror): Change specification to include
37868         fclose.
37869         * lib/fwriteerror.c: Include <stdbool.h>.
37870         (fwriteerror): At the end, close the file stream. Record whether
37871         stdout was already closed.
37872
37873 2005-01-17  Bruno Haible  <bruno@clisp.org>
37874
37875         * lib/execute.c (environ): Declare if needed.
37876         * lib/pipe.c (environ): Likewise.
37877         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
37878
37879 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37880
37881         * modules/argp: Depend on vsnprintf
37882
37883 2005-01-10  Jim Meyering  <jim@meyering.net>
37884
37885         * modules/closeout (Depends-on): Add atexit.
37886
37887 2005-01-06  Bruno Haible  <bruno@clisp.org>
37888
37889         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
37890
37891 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
37892
37893         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
37894         definitions to be after all include files, to avoid collisions.
37895         Problem reported by Bob Proulx.
37896
37897 2005-01-04  Jim Meyering  <jim@meyering.net>
37898
37899         Changes imported from coreutils.
37900         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
37901         as the mkstemp template, use a temporary directory and an
37902         8.3-friendly template to avoid trouble on systems like DJGPP.
37903         Reported by Juan M. Guerrero via Stepan Kasal.
37904         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
37905         close. Remove the temporary directory right away, rather than waiting
37906         for configure's at-exit trap code to do it.
37907         Suggestion from Stepan Kasal.
37908
37909 2005-01-01  Simon Josefsson  <jas@extundo.com>
37910
37911         * gnulib-tool: Print #include directives when --import'ing.
37912
37913 2004-12-28  Simon Josefsson  <jas@extundo.com>
37914
37915         * tests/test-base64.c: Include required header files.  Remove
37916         unused variables.
37917
37918 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
37919
37920         * modules/error (Depends-on): Remove gettext.
37921
37922 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
37923
37924         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
37925         not needed.  This removes a dependency on the gettext module.
37926         [defined _LIBC]: Do not include <libintl.h>; not needed.
37927
37928 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
37929
37930         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
37931         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
37932
37933 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
37934
37935         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
37936         HAVE_DECL_STRTOLD.
37937
37938 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
37939
37940         * modules/getdate (Depends-on): Remove alloca-opt.
37941
37942 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
37943
37944         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
37945
37946 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
37947
37948         * lib/argp-parse.c: Include <stddef.h>.
37949         (alignof, alignto): New macros.
37950         (parser_init): Don't assume that void * is aligned sufficiently
37951         for struct option.
37952
37953         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
37954         need to extend the stack.
37955         (YYINITDEPTH): New macro, so that the initial stack isn't overly
37956         large.
37957
37958 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37959
37960         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
37961
37962 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
37963
37964         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
37965         (2004-10-24) change.  Apparently this was a false alarm.
37966
37967         * modules/getdate: Depend on alloca-opt, not alloca.
37968
37969 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
37970
37971         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
37972         Remove now-obsolete comment about AIX.
37973         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
37974         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
37975         (YYMAXDEPTH): New macro.
37976
37977 2004-12-18  Simon Josefsson  <jas@extundo.com>
37978
37979         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
37980
37981 2004-12-18  Bruno Haible  <bruno@clisp.org>
37982
37983         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
37984
37985 2004-12-18  Bruno Haible  <bruno@clisp.org>
37986
37987         * lib/fatal-signal.c (fatal_signals): Make non-const.
37988         (init_fatal_signals): New function.
37989         (uninstall_handlers, install_handlers): Ignore signals that were set to
37990         SIG_IGN.
37991         (at_fatal_signal): Call init_fatal_signals.
37992         (init_fatal_signal_set): Likewise. Ignore signals that were set to
37993         SIG_IGN.
37994         Reported by Paul Eggert.
37995
37996 2004-12-18  Bruno Haible  <bruno@clisp.org>
37997
37998         * doc/alloca.texi: New file.
37999         * doc/alloca-opt.texi: New file.
38000
38001 2004-12-17  Jim Meyering  <jim@meyering.net>
38002
38003         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
38004         Otherwise, install-sh could exit with improper exit status when
38005         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
38006
38007 2004-12-16  Simon Josefsson  <jas@extundo.com>
38008
38009         * tests/test-base64.c: Add license.
38010
38011 2004-12-15  Stepan Kasal  <address@hidden>
38012
38013         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
38014
38015 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
38016
38017         * modules/getcwd (Files): Add m4/d-ino.m4.
38018         Suggested by Mark D. Baushke.
38019
38020 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
38021
38022         * lib/getdate.y (textint): New member "negative".
38023         (time_zone_hhmm): New function.
38024         Expect 14 shift-reduce conflicts, not 13.
38025         (o_colon_minutes): New rule.
38026         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
38027         (yylex): Set the "negative" member of signed numbers.
38028
38029 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
38030
38031         * doc/getdate.texi (Time of day items, Time zone items):
38032         Describe new formats +00:00, UTC+00:00.
38033
38034 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
38035
38036         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
38037         spurious "-l"s.  Problem reported by Stepan Kasal.
38038
38039 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
38040
38041         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
38042         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
38043
38044 2004-12-04  Simon Josefsson  <jas@extundo.com>
38045
38046         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
38047         Vandoorselaere <yoann@prelude-ids.org>.
38048
38049 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
38050
38051         Changes imported from coreutils.
38052         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
38053         exist.
38054         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
38055
38056 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
38057
38058         Changes imported from coreutils.
38059         * lib/hard-locale.c: Assume <locale.h> exists.
38060         Include "strdup.h".
38061         (GLIBC_VERSION): New macro.
38062         (hard_locale): Assume setlocale exists.
38063         Rewrite to avoid #ifdef.
38064         Use strdup rather than malloc + strcpy.
38065         * lib/human.c: Assume <locale.h> exists.
38066         (human_readable): Assume localeconv exists.
38067
38068 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
38069
38070         * modules/hard-locale (Depends-on): Add strdup.
38071
38072 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
38073
38074         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
38075         convert T2, not T.  (Imported from libc.)
38076
38077 2004-11-30  Simon Josefsson  <jas@extundo.com>
38078
38079         * modules/restrict (License): Change to LGPL.
38080
38081 2004-11-30  Simon Josefsson  <jas@extundo.com>
38082
38083         * m4/restrict.m4: Add copyright and copying conditions.
38084
38085 2004-11-30  Simon Josefsson  <jas@extundo.com>
38086
38087         * m4/base64.m4: New file.
38088
38089 2004-11-30  Simon Josefsson  <jas@extundo.com>
38090
38091         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
38092         base64.
38093
38094         * tests/test-base64.c: New file.
38095
38096         * modules/base64: New file.
38097
38098 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
38099
38100         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
38101         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
38102
38103         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
38104
38105 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
38106
38107         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
38108         (__getcwd.c): Don't restore errno; glibc doesn't.
38109         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
38110         first, falling back to our code only if its results look suspicious.
38111         Ensure that the resulting buffer is only as large as necessary.
38112
38113         * lib/readutmp.c: Include readutmp.h first.
38114         Include <errno.h>, since readutmp.h no longer does that.
38115         * lib/readutmp.h: Don't include <errno.h>,
38116         <sys/param.h>, <time.h>; not needed to establish interface.
38117         (errno): Remove decl.
38118         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
38119         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
38120         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
38121
38122 2004-11-28  Simon Josefsson  <jas@extundo.com>
38123
38124         * lib/base64.h, base64.c: New file.
38125
38126 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
38127
38128         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
38129
38130 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
38131
38132         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
38133         (Depends-on): Remove pathmax, same.  Add mempcpy.
38134         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
38135         (Makefile.am): Append getcwd.h to lib_SOURCES.
38136         (Include): Add getcwd.h.
38137         (Maintainer): Change from Jim Meyering to "all, glibc",
38138         since getdate now uses intended-for-glibc code.
38139         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
38140         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
38141
38142 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
38143
38144         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
38145         HP's ANSI C compiler.
38146         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
38147         Declaring int functions causes warnings on some modern systems and
38148         shouldn't be needed to compile on ancient ones.
38149         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
38150         defined.
38151
38152         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
38153         with the following changes.
38154         (__set_errno): Parenthesize properly.
38155         Include <stdbool.h>.
38156         (MIN, MAX, MATCHING_INO): New macros.
38157         (__getcwd): Define with prototype, not K&R form.
38158         Use heuristics to allocate default buffer on stack if possible.
38159         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
38160         behavior, and to avoid the PATH_MAX limit when computing
38161         ../../../../...
38162         Use MATCHING_INO to compare inode number to file.
38163         Check for arithmetic overflow in size calculations.
38164         Fix bug in reallocation of dot array that caused getcwd to fail
38165         on directories nested deeper than 75.
38166         Be more careful about saving errno on error.
38167         Do not use realloc; use only free+malloc, as this is a bit
38168         more flexible and avoids a needless copy operation.
38169         Do not inspect st_dev and st_ino for symbolic links; POSIX
38170         doesn't specify the latter.
38171         Check for closedir errors.
38172         Avoid needless casts.
38173         Use "#ifdef weak_alias" around weak_alias, to be like other
38174         glibc code.
38175         The following changes to getcwd.c have effect only when used in
38176         gnulib; they have no effect inside glibc proper.
38177         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
38178         as alloca isn't used.
38179         (alloca, __alloca): Likewise.
38180         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
38181         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
38182         unconditionally, as gnulib assumes C89 or better.
38183         Do not include <sys/param.h>.
38184         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
38185         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
38186         better.
38187         (NULL) [!defined NULL]: Remove; we assume C89 or better.
38188         Include <dirent.h> in a way that is compatible with modern Autoconf.
38189         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
38190         New macros, if not already defined.
38191         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
38192         Use "_LIBC", not "defined _LIBC", for consistency.
38193         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
38194         a mempcpy module.
38195         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
38196         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
38197         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
38198         credit only to Jim Meyering and adjust the copyright dates.
38199         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
38200         <stdlib.h>, <unistd.h>, "pathmax.h".
38201         Instead, include "xgetcwd.h" (first) and "getcwd.h".
38202         (INITIAL_BUFFER_SIZE): Remove.
38203         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
38204
38205 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
38206
38207         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
38208         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
38209         Use the _ONCE methods, for efficiency.
38210         Check for fcntl.h.  In test program, include <errno.h>
38211         and <fcntl.h> if available.  Remove old K&R cruft from
38212         test program.  Check for common errors in GNU/Linux,
38213         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
38214         don't do AC_LIBOBJ, as that's getcwd.m4's job.
38215         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
38216         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
38217         name accordingly.
38218         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
38219         accommodate new getcwd.c.
38220         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
38221         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
38222         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
38223         that's all we need now.
38224
38225 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
38226
38227         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
38228         argp-parse.c depends on getopt internals, that means we should
38229         always use our getopt, to be on the safe side.
38230         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
38231         order not to spoil the result of an eventual previous invocation
38232         of gl_GETOPT_SUBSTITUTE.
38233
38234 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
38235
38236         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
38237         redefinition warnings. To avoid them, include the defines
38238         in `#if !defined __need_getopt ... #endif'. The only place
38239         where __getopt_argv_const is used is in definitions
38240         of getopt_long and getopt_long_only below, which are as well
38241         protected by `#ifndef __need_getopt'.
38242         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
38243         __need_getopt after including <stdio.h> and <unistd.h> These
38244         headers might have defined it.
38245
38246 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
38247
38248         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
38249
38250 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
38251
38252         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
38253         (futimens): New function, which uses futimes if available.
38254         (futimens, utimens): Support timespec==NULL, with same semantics
38255         as utime and utimens.
38256         * lib/utimens.h (futimens): New decl.
38257
38258 2004-11-23  Jim Meyering  <jim@meyering.net>
38259
38260         * lib/getopt_.h: Remove trailing blanks.
38261
38262 2004-11-23  Jim Meyering  <jim@meyering.net>
38263
38264         * lib/__fpending.c: Add comment.
38265
38266 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
38267
38268         * modules/canonicalize (Depends-on): Add xreadlink.
38269         Problem reported by James Youngman.
38270
38271 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
38272
38273         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
38274         New macros.
38275         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
38276         optopt): Use them instead of invoking ## directly; otherwise, the
38277         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
38278
38279 2004-11-19  Bruno Haible  <bruno@clisp.org>
38280
38281         * lib/strtok_r.c: Move comments from here...
38282         * lib/strtok_r.h: ... to here.
38283
38284 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
38285
38286         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
38287         implementations that mishandle size_t overflow.
38288
38289 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
38290
38291         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
38292         might fail.  Problem reported by Yoann Vandoorselaere.
38293         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
38294         implementations that mishandle size_t overflow.
38295
38296 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
38297
38298         * modules/canon-host (Depends-on): Add strdup.
38299
38300 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
38301
38302         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
38303
38304 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
38305
38306         * lib/canon-host.c: Include "strdup.h".
38307         (canon_host): Use getaddrinfo if available, so that IPv6 works.
38308         Use strdup instead of malloc/strcpy to duplicate strings.
38309
38310         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
38311         (human_space_before_unit): New constant.
38312         * lib/human.c (human_readable): Support it.
38313
38314         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
38315         (xgetcwd): Set errno correctly when failing.
38316         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
38317         the failure is actually due to a PATH_MAX problem.
38318
38319         Further getopt changes to make it more likely that glibc will
38320         buy the changes back.
38321         * lib/getopt.c (POSIXLY_CORRECT): New constant.
38322         (getopt): Use it, so to preserve glibc semantic
38323         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
38324         when compiling for libc.
38325         * lib/getopt_.h (__getopt_argv_const): Bring it back.
38326         (getopt_long, getopt_long_only): Use it.
38327
38328         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
38329         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
38330         (getopt): Argv is now char * const *, as per standard.
38331         (_getopt_internal_r, _getopt_internal): Argv is now char **,
38332         not char *__getopt_argv_const *.
38333         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
38334         _getopt_long_only_r): Likewise.
38335         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
38336         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
38337         _getopt_long_r, _getopt_long_only_r): Likewise.
38338         * lib/getopt_.h (__getopt_argv_const): Remove.
38339         (getopt): Argv is now char * const *, as per standard.
38340
38341         * lib/getdate.y (tORDINAL): New token.
38342         (day, relunit): Allow it for relative times.
38343         (relative_time_table): Use tORDINAL for ordinals.
38344
38345 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
38346
38347         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
38348         Document that "second" isn't allowed as an ordinal number.
38349
38350 2004-11-16  Jim Meyering  <jim@meyering.net>
38351
38352         * modules/closeout (Depends-on): Add fpending.
38353
38354 2004-11-15  Jim Meyering  <jim@meyering.net>
38355
38356         * lib/closeout.c: Include "__fpending.h" once again.
38357         Include <stdbool.h>.
38358         (close_stdout): Don't fail just because stdout was closed initially,
38359         since some programs don't write to stdout in the normal course of
38360         operation (other than --version and --help), and we don't want this
38361         function to make e.g. `touch file >&-' fail.
38362         But do fail if it was closed and someone has tried to write to it.
38363         E.g., `printf foo >&-' must fail.
38364
38365 2004-11-13  Jim Meyering  <jim@meyering.net>
38366
38367         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
38368
38369 2004-11-12  Simon Josefsson  <jas@extundo.com>
38370
38371         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
38372         small doc fix is still pending.
38373
38374 2004-11-11  Simon Josefsson  <jas@extundo.com>
38375
38376         * modules/strtok_r: New file.
38377
38378         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
38379         strtok_r.
38380
38381 2004-11-11  Simon Josefsson  <jas@extundo.com>
38382
38383         * m4/strtok_r.m4: New file.
38384
38385         * m4/getopt.m4: Replace opterr.
38386
38387 2004-11-11  Simon Josefsson  <jas@extundo.com>
38388
38389         * lib/strtok_r.h, strtok_r.c: New file.
38390
38391 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
38392
38393         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
38394         of replacing opterr, getopt, etc.  This should handle the
38395         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
38396
38397 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
38398
38399         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
38400         we can stop lying to compilers about the constness of argv when we
38401         are compiled outside glibc.
38402         (getopt, getopt_long, getopt_long_only): Use it.
38403         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
38404         _getopt_internal, getopt): Likewise.
38405         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
38406         _getopt_long_only_r): Likewise.
38407         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
38408         _getopt_long_r, _getopt_long_only_r): Likewise.
38409
38410         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
38411         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
38412         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
38413         the other external symbols.
38414         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
38415         declaration, since the above renaming now works around collisions.
38416
38417 2004-11-11  Jim Meyering  <jim@meyering.net>
38418
38419         * lib/linebreak.c: Remove trailing blanks.
38420         * lib/alloca_.h: Likewise.
38421         * lib/acosl.c: Likewise.
38422         * lib/euidaccess.c: Likewise.
38423         * lib/allocsa.h: Likewise.
38424
38425 2004-11-10  Simon Josefsson  <jas@extundo.com>
38426
38427         * m4/getaddrinfo.m4: New file.
38428
38429 2004-11-10  Simon Josefsson  <jas@extundo.com>
38430
38431         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
38432
38433 2004-11-10  Simon Josefsson  <jas@extundo.com>
38434
38435         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
38436         getaddrinfo.
38437
38438         * modules/getaddrinfo: New file.
38439
38440 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
38441
38442         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
38443
38444 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
38445
38446         * lib/mktime.c (SHR): New macro, which is a portable
38447         substitute for >> that should work even on Crays.
38448         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
38449         Problem reported by Mark D. Baushke in
38450         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
38451         * lib/getdate.y (SHR): Likewise.
38452         (tm_diff): Use it.
38453         * lib/strftime.c (SHR): Likewise.
38454         (tm_diff): Use it.
38455         * lib/quotearg.c (struct quoting_options): Use unsigned int for
38456         quote_these_too, so that right shifts are well defined.  All uses
38457         changed.
38458
38459 2004-11-10  Jim Meyering  <jim@meyering.net>
38460
38461         Ensure that no close failure goes unreported.
38462         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
38463         return early when it seems there's nothing to flush.
38464         Don't include __fpending.h.
38465
38466 2004-11-10  Jim Meyering  <jim@meyering.net>
38467
38468         * modules/closeout (Depends-on): Remove fpending.
38469
38470 2004-11-10  Jim Meyering  <jim@meyering.net>
38471
38472         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
38473
38474 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
38475
38476         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
38477         gl_FUNC_STRFTIME.
38478         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
38479         and AC_REQUIRE when possible, to avoid duplicate checks.
38480         Check for <wchar.h>.
38481
38482 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
38483
38484         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
38485
38486 2004-11-09  Bruno Haible  <bruno@clisp.org>
38487
38488         * m4/sockpfaf.m4: New file.
38489
38490 2004-11-05  Bruno Haible  <bruno@clisp.org>
38491
38492         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
38493         Reported by Mark D. Baushke <mdb@cvshome.org>.
38494
38495 2004-11-04  Bruno Haible  <bruno@clisp.org>
38496
38497         2004-09-11  Bruno Haible  <bruno@clisp.org>
38498                 * allocsa.valgrind: New file.
38499         2004-02-06  Bruno Haible  <bruno@clisp.org>
38500                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
38501                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
38502                 Reported by Christopher Seip <chris.seip@hp.com>.
38503
38504 2004-11-04  Bruno Haible  <bruno@clisp.org>
38505
38506         * modules/allocsa (Files): Add lib/allocsa.valgrind.
38507         (Makefile.am): Distribute it.
38508
38509 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
38510
38511         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
38512         with errno == ERANGE if the buffer is too small.
38513         Problem reported by Mark D. Baushke.
38514
38515 2004-11-03  Albert Chin  <china@thewrittenword.com>
38516             Paul Eggert  <eggert@cs.ucla.edu>
38517
38518         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
38519         equivalent, substitute $ac_type for equivalent type rather than
38520         blindly using uint32_t *always* which won't work if uint32_t is not
38521         available.  Define _UINT32_T to work around typedef of uint32_t if
38522         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
38523         2.5.1.
38524
38525 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
38526
38527         * m4/jm-macros.m4: Sync from coreutils.
38528         (gl_MACROS): Check for mbrlen, for pathchk.
38529         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
38530
38531 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
38532
38533         * lib/xreadlink.c (MAXSIZE): New macro.
38534         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
38535         size does not exceed MAXSIZE.  Avoid cast.
38536         As suggested by Mark D. Baushke in
38537         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
38538         if readlink fails with buffer size just under MAXSIZE, try again
38539         with MAXSIZE.
38540
38541 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
38542
38543         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
38544
38545 2004-11-02  Derek R. Price  <derek@ximbiot.com>
38546         and  Paul Eggert  <eggert@cs.ucla.edu>
38547
38548         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
38549         (get_date): Overparenthesize to avoid GCC warning.
38550
38551 2004-11-02  Bruno Haible  <bruno@clisp.org>
38552
38553         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
38554         returns void.
38555
38556 2004-11-02  Bruno Haible  <bruno@clisp.org>
38557
38558         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
38559         function returns void.
38560
38561 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
38562
38563         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
38564         fflush_unlocked, flockfile, funlockfile, funlockfile,
38565         fputs_unlocked, putc_unlocked.
38566
38567 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
38568
38569         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
38570         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
38571         already declared.
38572
38573 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
38574
38575         * modules/getdate (Files): Add doc/getdate.texi.
38576         (Depends-on): Add setenv, xalloc.
38577
38578 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
38579
38580         * lib/getdate.y: Add support for TZ="foo" within a date string.
38581         Fix some bugs near time_t boundaries.  Reject dates with
38582         out-of-range components, e.g., "Sept 31".
38583         Include <stdlib.h>, "setenv.h", "xalloc.h".
38584         (ISDIGIT_LOCALE): Remove; unused.
38585         Note that the TZ and time functions used here are not reentrant.
38586         (mktime_ok, get_tz): New functions.
38587         (TZBUFSIZE): New constant.
38588         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
38589         This requires that we sometimes generate our own TZ="XXX..." setting.
38590
38591 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
38592
38593         * doc/getdate.texi: New file, from coreutils with modifications for
38594         the new TZ parsing.
38595
38596 2004-10-27  Derek R. Price  <derek@ximbiot.com>
38597
38598         * lib/mktime.c (not_equal_tm): Remove redundant check.
38599
38600 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
38601
38602         * modules/regex (lib_SOURCES): Add regex.c.
38603         Reported by James Youngman in
38604         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
38605
38606 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
38607
38608         * lib/getdate.y: Use Bison 1.875 features, and some minor
38609         code cleanups.  This change does not affect semantics.
38610         Don't include <stdlib.h>; no longer needed.
38611         Don't include unlocked-io.h; only the "#if TEST" code uses
38612         stdio, and performance isn't crucial there.
38613         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
38614         Bison 1.875 features as described below.
38615         All uses of "PC." replaced by "pc->".
38616         (YYSTYPE): Add a forward declaration.
38617         (yylex, yyerror): Use full prototypes in forward decls.
38618         Use "%pure-parser" rather than obsolescent "%pure_parser".
38619         Use %parse-param and %lex-param instead of obsolescent
38620         YYPARSE_PARAM and YYLEX_PARAM.
38621         (meridian_table, month_and_day_table, time_units_table,
38622         relative_time_table, time_zone_table, military_table,
38623         lookup_zone, lookup_word, get_date):
38624         Use NULL instead of 0 where appropriate.
38625         (to_hour): Avoid abort (), to avoid a dependency on
38626         stdlib.h.
38627         (yyerror, yylex): Now accepts parser_control * arg.
38628         (main) [TEST]: Use '\0' rather than 0 for char.
38629
38630 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
38631
38632         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
38633
38634 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
38635
38636         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
38637         It's now the caller's responsibility to handle the case where
38638         !HAVE_GETPAGESIZE && !defined getpagesize.
38639
38640         * lib/mktime.c (leapyear): Arg is long int, not int.
38641
38642 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
38643
38644         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
38645
38646 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
38647
38648         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
38649         missing.  Problem reported by James Youngman.
38650
38651 2004-10-16  Simon Josefsson  <jas@extundo.com>
38652
38653         * gnulib-tool: Fix comments.  Fix parse problem.
38654         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
38655
38656 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
38657
38658         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
38659         implementation of getopt_long.  Problem reported by Alexander Taler in:
38660         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
38661
38662 2004-10-15  Bruno Haible  <bruno@clisp.org>
38663
38664         * gnulib-tool: Untabify. Initialize supplied_libname.
38665         (func_usage): More homogenous output.
38666         (func_modules_transitive_closure, func_modules_to_filelist,
38667         func_emit_lib_Makefile_am): New functions.
38668         (func_import): New function, extracted from big case statement. Use
38669         func_get_license, func_modules_transitive_closure,
38670         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
38671         opt_lgpl. Don't use test -a, as it's not portable.
38672         (func_create_testdir): Use func_modules_transitive_closure,
38673         func_modules_to_filelist, func_emit_lib_Makefile_am.
38674
38675 2004-10-15  Bruno Haible  <bruno@clisp.org>
38676
38677         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
38678
38679 2004-10-15  Bruno Haible  <bruno@clisp.org>
38680
38681         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
38682         the portions belonging to each module.
38683         Suggested by Derek Robert Price <derek@ximbiot.com>.
38684
38685 2004-10-12  Simon Josefsson  <jas@extundo.com>
38686
38687         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
38688         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
38689         to real functions.
38690
38691 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38692
38693         * modules/vsnprintf: New file.
38694
38695 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38696
38697         * m4/vsnprintf.m4: New file.
38698
38699 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38700
38701         * lib/vsnprintf.h: New file.
38702         * lib/vsnprintf.c: New file.
38703
38704 2004-10-11  Bruno Haible  <bruno@clisp.org>
38705
38706         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
38707         vsnprintf.
38708
38709 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
38710
38711         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
38712
38713 2004-10-07  Bruno Haible  <bruno@clisp.org>
38714
38715         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
38716         fits into the provided buffer.
38717
38718 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
38719
38720         * lib/diacrit.c, diacrit.h: Add GPL notice.
38721
38722         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
38723         notice.
38724         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
38725         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
38726         This avoids a potential constant-folding bug.
38727
38728 2004-10-05  Bruno Haible  <bruno@clisp.org>
38729
38730         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
38731         for the declaration of strsep.
38732
38733 2004-10-05  Bruno Haible  <bruno@clisp.org>
38734
38735         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
38736
38737 2004-10-04  Simon Josefsson  <jas@extundo.com>
38738
38739         * modules/memmem: New file.
38740         * tests/test-memmem.c: New file.
38741         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
38742
38743 2004-10-04  Simon Josefsson  <jas@extundo.com>
38744
38745         * m4/memmem.m4: New file.
38746
38747 2004-10-04  Simon Josefsson  <jas@extundo.com>
38748
38749         * lib/memmem.h: New file.
38750         * lib/memmem.c: New file, taken from glibc.
38751
38752 2004-10-04  Simon Josefsson  <jas@extundo.com>
38753
38754         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
38755         '#ifdef USE_UNLOCKED_IO'.
38756
38757 2004-10-04  Simon Josefsson  <jas@extundo.com>
38758
38759         * config/srclist.txt: Add memmem from glibc.
38760
38761 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38762
38763         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
38764
38765         * modules/argmatch, modules/argp, modules/closeout, modules/error,
38766         modules/exclude, modules/getdate, modules/getline,
38767         modules/getndelim2, modules/getpass, modules/getpass-gnu,
38768         modules/getusershell, modules/linebuffer, modules/md5,
38769         modules/mountlist, modules/posixtm, modules/readtokens,
38770         modules/readutmp, modules/regex, modules/sha1,
38771         modules/version-etc, modules/yesno:
38772         Remove dependency on unlocked-io.
38773
38774 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38775
38776         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
38777
38778         * m4/unlocked-io.m4: Add copyright notice.
38779         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
38780
38781 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38782
38783         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
38784         * lib/xmalloc.c (xmemdup): Likewise.
38785         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
38786         XFREE): Remove these long-obsolescent macros.
38787         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
38788         * lib/xstrdup.c: Remove.
38789
38790         * lib/regex.c (re_comp): Cast gettext return value to char *,
38791         Problem reported by Martin Neitzel via Mark D. Baushke.
38792
38793 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38794
38795         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
38796         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
38797         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
38798         regex.c, sha1.c, version-etc.c, yesno.c:
38799         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
38800         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
38801         the includer's responsibility.
38802
38803         Sync from coreutils.
38804
38805         * lib/modechange.c (mode_compile): Don't decrement a pointer that
38806         points to the start of a string, as the C Standard says the
38807         resulting behavior is undefined.
38808
38809         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
38810         simple -> simple_backups, numbered_existing ->
38811         numbered_existing_backups, numbered -> numbered_backups
38812         to avoid shadowing problems.  All uses changed.
38813         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
38814         * lib/backupfile.c (check_extension, numbered_backup):
38815         Rename locals to avoid shadowing 'basename'.
38816         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
38817         once.
38818
38819         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
38820         * lib/.cvsignore: Add getopt.h.
38821
38822 2004-10-04  Bruno Haible  <bruno@clisp.org>
38823
38824         * modules/README: New file.
38825         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
38826         not a module.
38827
38828 2004-10-02  Jim Meyering  <jim@meyering.net>
38829
38830         * lib/dirfd.h, getpagesize.h: Add copyright notice.
38831
38832 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38833
38834         * modules/strsep: New file.
38835
38836 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38837
38838         * m4/strsep.m4: New file.
38839
38840 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38841
38842         * lib/strsep.h: New file.
38843         * lib/strsep.c: New file.
38844
38845 2004-10-01  Simon Josefsson  <jas@extundo.com>
38846
38847         * lib/snprintf.c (snprintf): Handle size==0.
38848
38849 2004-10-01  Simon Josefsson  <jas@extundo.com>
38850             Bruno Haible  <bruno@clisp.org>
38851
38852         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
38853         (snprintf): Declare 'args'.
38854
38855 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
38856
38857         * lib/snprintf.c: Remove comments as to why each header is needed.
38858
38859 2004-10-01  Bruno Haible  <bruno@clisp.org>
38860
38861         * MODULES.html.sh: Add strsep.
38862
38863 2004-09-30  Simon Josefsson  <jas@extundo.com>
38864
38865         * modules/snprintf: New file.
38866
38867 2004-09-30  Simon Josefsson  <jas@extundo.com>
38868
38869         * m4/snprintf.m4: New file.
38870
38871 2004-09-30  Simon Josefsson  <jas@extundo.com>
38872
38873         * lib/snprintf.h, lib/snprintf.c: New files.
38874
38875 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
38876
38877         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
38878         (hol_entry_help): Never translate an empty string.
38879         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
38880         * lib/argp.h (OPTION_NO_TRANS): New option.
38881
38882 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
38883
38884         * modules/argp (Maintainer): Replace Simon Josefsson
38885         by Sergey Poznyakoff.
38886
38887 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
38888
38889         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
38890         changes merged back into glibc.
38891
38892 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
38893
38894         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
38895
38896 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
38897
38898         * lib/xvasprintf.c: Include xalloc.h.
38899         (xvasprintf): Use xalloc_die, not xmalloc_die.
38900
38901 2004-09-29  Bruno Haible  <bruno@clisp.org>
38902
38903         * modules/alloca-opt: New file, derived from modules/alloca.
38904         * modules/allocsa: Depend on alloca-opt instead of alloca.
38905         * modules/setenv: Likewise.
38906         * modules/vasnprintf: Likewise.
38907         * MODULES.html.sh: Add alloca-opt.
38908
38909 2004-09-28  Simon Josefsson  <jas@extundo.com>
38910
38911         * gnulib-tool: New parameter --lgpl, to asseert that modules are
38912         LGPL, and to replace license template from GPL to LGPL.
38913
38914 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
38915
38916         * modules/dummy: Change license to LGPL.
38917
38918 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
38919
38920         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
38921
38922 2004-09-24  Simon Josefsson  <jas@extundo.com>
38923
38924         * modules/minmax (License): Change from GPL to LGPL.
38925
38926 2004-09-23  Simon Josefsson  <jas@extundo.com>
38927
38928         * gnulib-tool (--import): Typo.
38929
38930 2004-09-23  Simon Josefsson  <jas@extundo.com>
38931
38932         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
38933
38934 2004-09-22  Bruno Haible  <bruno@clisp.org>
38935
38936         * modules/*: Add 'License' field.
38937         * gnulib-tool: Accept --extract-license option.
38938         (func_get_license): New function.
38939
38940 2004-09-21  Bruno Haible  <bruno@clisp.org>
38941
38942         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
38943         Reported by Simon Josefsson.
38944
38945 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
38946
38947         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
38948         gl_AC_TYPE_LONG_LONG.
38949
38950 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
38951
38952         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
38953
38954 2004-09-18  Simon Josefsson  <jas@extundo.com>
38955         and  Paul Eggert  <eggert@cs.ucla.edu>
38956
38957         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
38958         calls with autoreconf.  Define GL_LIB.
38959
38960 2004-09-14  Karl Berry  <karl@gnu.org>
38961
38962         * config/srclist.txt: unsync setenv.c, sigh.
38963
38964 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
38965
38966         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
38967         Problem reported by Bruno Haible in:
38968         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
38969
38970 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
38971
38972         * config/srclist.txt: Comment out argp-pvh.c.
38973
38974 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
38975
38976         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
38977         in case some system header has #define'd it.  Problem reported by
38978         Soeren D. Schulze in
38979         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
38980
38981 2004-09-09  Karl Berry  <karl@gnu.org>
38982
38983         * regex.[ch]: delete from the root.  These were supposed to be
38984                 synced with emacs cvs, but this has not happened for about
38985                 a year, and anyway nothing else uses emacs regex.[ch].
38986                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
38987                 lib/regex[.ch] is untouched.
38988
38989 2004-09-09  Bruno Haible  <bruno@clisp.org>
38990
38991         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
38992
38993 2004-09-09  Bruno Haible  <bruno@clisp.org>
38994
38995         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
38996         modifications.
38997         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
38998
38999 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
39000
39001         * modules/xvasprintf: New file.
39002         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
39003
39004 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
39005
39006         * lib/xvasprintf.h: New file.
39007         * lib/xvasprintf.c: New file.
39008         * lib/xasprintf.c: New file.
39009
39010 2004-09-08  Bruno Haible  <bruno@clisp.org>
39011
39012         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
39013
39014 2004-09-08  Bruno Haible  <bruno@clisp.org>
39015
39016         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
39017         length is > INT_MAX.
39018         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
39019         more.
39020
39021 2004-09-08  Bruno Haible  <bruno@clisp.org>
39022
39023         * lib/stdint_.h: New file, taken from GNU clisp.
39024
39025 2004-09-08  Bruno Haible  <bruno@clisp.org>
39026             Oskar Liljeblad  <oskar@osk.mine.nu>
39027
39028         * modules/stdint: New file.
39029         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
39030
39031 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
39032
39033         Import from coreutils.
39034         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
39035         strings on unbounded length.  alloca's performance benefits aren't
39036         that important here.
39037         (V_STRDUP): Remove.
39038         (parse_with_separator): New function, with most of the internals
39039         of the old parse_user_spec.  Allow user to omit both user and group,
39040         for compatibility with FreeBSD.
39041         Clone only the user name, not the entire spec.
39042         Do not set *uid, *gid unless entirely successful.
39043         Avoid memory leak in some failing cases.
39044         Fix regression for USER.GROUP reported by Dmitry V. Levin in
39045         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
39046         (parse_user_spec): Rewrite to use parse_with_separator.
39047
39048 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
39049
39050         * modules/userspec: Don't depend on alloca.
39051
39052 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
39053
39054         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
39055
39056 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
39057
39058         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
39059         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
39060         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
39061
39062 2004-08-16  Simon Josefsson  <jas@extundo.com>
39063
39064         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
39065         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
39066         Add --dry-run for --import.
39067         Let user provided command line parameters override configure.ac
39068         settings.
39069
39070 2004-08-12  Simon Josefsson  <jas@extundo.com>
39071
39072         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
39073         as discussed with Paul Eggert in threads rooted at
39074         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
39075         and
39076         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
39077         Before, the test was empty, and relied on ELIDE_CODE in source
39078         code.)
39079         (gl_PREREQ_GETOPT): New macro.
39080         (gl_GETOPT): Use them.
39081
39082 2004-08-12  Simon Josefsson  <jas@extundo.com>
39083
39084         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
39085         * lib/getopt_.h: Renamed from getopt.h.
39086
39087 2004-08-12  Simon Josefsson  <jas@extundo.com>
39088
39089         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
39090         Change default library name from libfoo to libgnu.
39091         Now, if you have a configure.ac that says:
39092                 gl_SOURCE_BASE(gl)
39093                 gl_M4_BASE(gl/m4)
39094                 gl_MODULES(error getopt etcetera)
39095                 gl_INIT
39096         you can import all you need by running:
39097                 ../gnulib/gnulib-tool --import
39098
39099         * modules/getopt (Files): Rename getopt.h to getopt_.h.
39100         (Makefile.am): Rewrite, use logic from argz.
39101         (Include): Use <getopt.h> instead of "getopt.h".
39102
39103 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
39104
39105         * modules/argp (Files): Add m4/unlocked-io.m4.
39106         (Depends-on): Add extensions.
39107
39108 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
39109
39110         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
39111         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
39112         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
39113         Check for program_invocation_name, program_invocation_short_name,
39114         flockfile, funlockfile, features.h, _getopt_long_only_r.
39115
39116 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
39117
39118         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
39119         its complicated substitute.
39120         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
39121         and program_invocation_name.
39122         (__argp_basename) [!_LIBC]: Remove; the only use was
39123         replaced by its body.
39124         (__argp_short_program_name): Change condition from
39125         !defined __argp_short_program_name to
39126         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
39127         to match argp-namefrob.h.
39128         (__argp_failure): Don't assume strerror_r returns char *.
39129         * lib/argp-parse.c (N_): Define unconditionally.
39130         (argp_default_options): Fill out initializers with 0 to avoid
39131         gcc warnings.
39132
39133 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
39134
39135         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
39136         getopt1.c.
39137
39138 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
39139
39140         Merge from coreutils.
39141
39142         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
39143
39144         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
39145         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
39146
39147 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
39148
39149         Merge from coreutils.
39150
39151         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
39152         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
39153         for Reliant Unix 5.43.
39154
39155         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
39156         (union fooround): Use uintmax_t, not long int.
39157         The rest is a merge from libc:
39158         [defined _LIBC]: Include <shlib-compat.h>.
39159         (_obstack) [defined _LIBC]: Remove after 2.3.4.
39160
39161         * lib/settime.c (settime): Recode to avoid warning with
39162         Sun Forte C 6U2.
39163
39164         * lib/strverscmp.c: Convert to UTF-8.
39165
39166 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
39167
39168         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
39169         m4/uintmax_t.m4.
39170
39171 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
39172
39173         * modules/xalloc-die: New file.
39174         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
39175
39176         * modules/md5 (Files): Add m4/uint32_t.m4.
39177         * modules/sha1: Renamed from modules/sha.
39178         (Files):
39179         Rename lib/sha.h to lib/sha1.h.
39180         Rename lib/sha.c to lib/sha1.c.
39181         Rename m4/sha.m4 to m4/sha1.m4.
39182         (lib_SOURCES): Likewise.
39183         (configure.ac): Rename gl_SHA to gl_SHA1.
39184         (Include): sha.h -> sha1.h.
39185
39186 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
39187
39188         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
39189         * m4/sha1.m4: Renamed from sha.m4.
39190         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
39191
39192 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
39193
39194         * lib/obstack.h (obstack_empty_p):
39195         Don't assume that chunk->contents is suitably aligned.
39196         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
39197         Likewise. Problem reported by Benno in
39198         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
39199
39200         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
39201         readable.  This could be improved further but it'd take some work.
39202
39203 2004-08-08  Simon Josefsson  <jas@extundo.com>
39204
39205         * modules/xgethostname (Depends-on): Remove exit and error (not
39206         used).
39207
39208         * modules/getpass-gnu: Add getpass.h.
39209         (Depends-on): Add stdbool.
39210         * modules/getpass: Add getpass.h.
39211
39212 2004-08-08  Simon Josefsson  <jas@extundo.com>
39213
39214         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
39215         Check getpass declaration.
39216
39217 2004-08-08  Simon Josefsson  <jas@extundo.com>
39218
39219         * lib/xgethostname.c: Don't include error.h (not used).
39220
39221         * lib/getpass.h: Add.
39222         * lib/getpass.c: Include getpass.h first.
39223
39224 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
39225
39226         * lib/xalloc-die.c: New file.
39227         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
39228         All uses removed.
39229         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
39230         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
39231         xalloc-die.c.
39232         (_, N_, xalloc_die): Move to xalloc-die.c.
39233         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
39234         so that we needn't mess with xalloc_msg_memory_exhausted.
39235
39236         * lib/sha1.h: Renamed from sha.h.
39237         (SHA1_H): Renamed from _SHA_H.
39238         (sha1_ctx): Renamed from sha_ctx.
39239         (sha1_init_ctx): Renamed from sha_init_ctx.
39240         (sha1_process_block): Renamed from sha_process_block.
39241         (sha1_process_bytes): Renamed from sha_process_bytes.
39242         (sha1_finish_ctx): Renamed from sha_finish_ctx.
39243         (sha1_read_ctx): Renamed from sha_read_ctx.
39244         (sha1_stream): Renamed from sha_stream.
39245         (sha1_buffer): Renamed from sha_buffer.
39246         * lib/sha1.c: Likewise; renamed from sha.c.
39247         Do not include <sys/types.h>.
39248         Include <stddef.h> rather than <stdlib.h>.
39249
39250 2004-08-08  Bruno Haible  <bruno@clisp.org>
39251
39252         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
39253         FILESYSTEM_PREFIX_LEN.
39254         * lib/progreloc.c: Likewise.
39255         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
39256
39257 2004-08-06  Simon Josefsson  <jas@extundo.com>
39258
39259         * modules/progname (Depends-on): Don't depend on stdbool.
39260
39261 2004-08-06  Simon Josefsson  <jas@extundo.com>
39262
39263         * modules/getsubopt: New file.
39264         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
39265         getsubopt.
39266
39267 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
39268
39269         More merge from coreutils.
39270
39271         * m4/utimens.m4, m4/utimecmp.m4: New files.
39272         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
39273         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
39274         prereq.m4, sha.m4: Import changes from coreutils.
39275
39276 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
39277
39278         More merge from coreutils.
39279         * modules/raise, modules/readtokens0, modules/utimens:
39280         * modules/utimecmp, module/xnanosleep: New files.
39281         * modules/strftime: Add lib/strftime.h.
39282         Change include from <time.h> to "strftime.h".
39283         * modules/yesno: Add lib/yesno.h.
39284         * modules/backupfile: Remove lib/addext.c.
39285         * modules/euidaccess: Add stat-macros.h.
39286         * modules/canonicalize, modules/euidaccess,
39287         modules/filemode, modules/lchown, modules/makepath,
39288         modules/rmdir, modules/stat: Likewise.
39289
39290 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
39291
39292         Merge from tar.
39293         * lib/argp-help.c (make_hol, hol_append): Don't assume that
39294         SIZE_MAX is a valid preprocessor constant.
39295         (__argp_basename): Change from "#ifndef _LIBC"
39296         to "#ifndef __argp_short_program_name", so that
39297         we don't compile these functions for tar.
39298
39299         More merges from coreutils.
39300         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
39301         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
39302         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
39303         * lib/addext.c: Remove; no longer needed.
39304         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
39305         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
39306         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
39307         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
39308         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
39309         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
39310         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
39311         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
39312         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
39313         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
39314         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
39315         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
39316         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
39317         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
39318         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
39319         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
39320         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
39321         Import changes from coreutils.
39322
39323 2004-08-05  Simon Josefsson  <jas@extundo.com>
39324
39325         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
39326
39327 2004-08-05  Simon Josefsson  <jas@extundo.com>
39328
39329         * m4/getsubopt.m4: New file.
39330
39331 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
39332
39333         Merge from coreutils.
39334
39335         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
39336         * m4/getcwd-path-max.m4: New files.
39337
39338         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
39339         FILESYSTEM_PREFIX_LEN ->
39340         FILE_SYSTEM_PREFIX_LEN.
39341         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
39342         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
39343         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
39344         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
39345
39346         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
39347         prerequisite modules now handle the DOS stuff.
39348         Don't check for unistd.h.
39349
39350 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
39351
39352         Merge from coreutils.
39353
39354         * lib/.gdb-history: Remove; this doesn't belong here.
39355
39356         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
39357         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
39358         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
39359         * lib/getcwd.c: New files.
39360
39361         * lib/dirname.h: Include <stdbool.h>.
39362         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
39363         for consistency with POSIX terminology.  All uses changed.
39364         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
39365         (strip_trailing_slashes): Use bool for booleans.
39366         * lib/stripslash.c (strip_trailing_slashes): Likewise.
39367
39368         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
39369         sometimes returns a positive errno value even when it succeeds.
39370         (print_errno_message) [!LIBC]: Fall back on strerror if
39371         __strerror_r fails.
39372
39373         * lib/path-concat.c (mempcpy): Don't define if a system header defines
39374         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
39375         (longest_relative_suffix): New function.
39376         (path_concat): Use it.  Assume first argument is not NULL.
39377         Port to DOS.  Omit redundant separators.
39378         Report an error instead of returning NULL.
39379         Use mempcpy instead of memcpy.
39380         (xpath_concat): Remove: not declared or used.
39381
39382         * lib/same.h: Include <stdbool.h>
39383         (same_name): Return bool, not int.
39384         * lib/same.c (same_name): Likewise.
39385         (errno): Don't declare; we assume C89 or better now.
39386
39387         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
39388         if not already defined.
39389
39390         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
39391         * lib/dup-safer.c (errno): Likewise.
39392
39393 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
39394
39395         Merge from coreutils.
39396         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
39397         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
39398         * modules/path-concat: Don't depend on strdup.
39399
39400 2004-08-03  Simon Josefsson  <jas@extundo.com>
39401
39402         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
39403         * lib/progname.h: Don't include stdbool.h.
39404
39405 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
39406
39407         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
39408         * MODULES.html.sh (func_all_modules): Remove fatal.
39409
39410 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
39411
39412         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
39413
39414 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
39415
39416         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
39417         working.
39418
39419 2004-08-02  Simon Josefsson  <jas@extundo.com>
39420
39421         * lib/getsubopt.h: New file, with comments from Bruno Haible.
39422         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
39423         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
39424
39425 2004-08-01  Simon Josefsson  <jas@extundo.com>
39426
39427         * lib/xgetdomainname.c: Include stdlib.h, for free().
39428
39429 2004-07-19  Bruno Haible  <bruno@clisp.org>
39430
39431         * MODULES.html.sh (func_all_modules): Add dummy.
39432
39433 2004-07-16  Simon Josefsson  <jas@extundo.com>
39434
39435         * modules/dummy: New file.
39436
39437 2004-07-16  Simon Josefsson  <jas@extundo.com>
39438
39439         * lib/dummy.c: New file.
39440
39441 2004-07-16  Bruno Haible  <bruno@clisp.org>
39442
39443         * lib/backupfile.h: Add extern "C" for C++.
39444         * lib/closeout.h: Likewise.
39445         * lib/copy-file.h: Likewise.
39446         * lib/findprog.h: Likewise.
39447         * lib/full-write.h: Likewise.
39448         * lib/pathname.h: Likewise.
39449         * lib/progname.h: Likewise.
39450         * lib/stpcpy.h: Likewise.
39451         * lib/stpncpy.h: Likewise.
39452         * lib/strcase.h: Likewise.
39453         * lib/strstr.h: Likewise.
39454         * lib/xalloc.h: Likewise.
39455
39456         * lib/mbswidth.h: Add extern "C" for C++.
39457         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
39458
39459 2004-07-13  Robert Millan  <robertmh@gnu.org>
39460
39461         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
39462
39463 2004-07-09  Simon Josefsson  <jas@extundo.com>
39464
39465         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
39466         failed without this.)
39467
39468 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
39469
39470         * modules/chown (Files): Add lib/fchown-stub.c, since
39471         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
39472
39473 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
39474
39475         * lib/fchown-stub.c: New file.
39476
39477 2004-06-24  Jim Meyering  <jim@meyering.net>
39478
39479         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
39480
39481 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39482
39483         * modules/argz: Omit "#include".
39484
39485         * MODULES.html.sh (func_all_modules): Add calloc, to match
39486         2004-06-01 addition of calloc module.
39487
39488 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39489
39490         * m4/argz.m4: New file, which is autoupdated from libtool.
39491
39492 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39493
39494         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
39495         libtool.
39496
39497 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39498
39499         * config/srclist-update: Don't insist on "USA." before the
39500         close-comment, as libtool omits the period and puts the */ on a
39501         separate line.
39502         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
39503         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
39504
39505 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
39506
39507         * modules/argz: New file.
39508         * MODULES.html.sh (func_all_modules): Add argz.
39509
39510 2004-06-12  Jim Meyering  <jim@meyering.net>
39511         and  Paul Eggert  <eggert@cs.ucla.edu>
39512
39513         * modules/hash (Files): Add lib/xalloc.h.
39514         * modules/pipe (Depends-on): Add wait-process.
39515         * modules/stat (Depends-on): Add xalloc.
39516         * modules/userspec (Files): Add lib/userspec.h.
39517         * modules/xstrto
39518
39519         Upgrade from gettext-0.13.
39520         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
39521         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
39522         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
39523
39524 2004-06-10  Jim Meyering  <jim@meyering.net>
39525
39526         * lib/calloc.c: New file.
39527
39528 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
39529
39530         * lib/getdate.y (yylex): Allow space between sign and number.
39531         Problem reported by Dan Jacobson.
39532
39533 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
39534
39535         Merge from coreutils CVS.
39536
39537         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
39538         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
39539         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
39540         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
39541         xstrtol.m4: Fix copyright date and/or serial number.
39542
39543         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
39544         See if we need an fchown replacement.
39545         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
39546         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
39547         and use the replacement function if we detect either defect.
39548
39549         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
39550         gl_UTIMECMP.
39551
39552 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
39553         and  Jim Meyering  <jim@meyering.net>
39554
39555         Merge from coreutils CVS.
39556
39557         * lib/stat-macros.h: New file, with contents from file-type.h
39558         and coreutils' system.h.
39559         * lib/file-type.c: Include "stat-macros.h".
39560         * lib/file-type.h (file_type): Move all macro definitions to new file,
39561         stat-macros.h.
39562
39563         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
39564         Wrap old code with this conditional.
39565         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
39566         function that does not dereference symlinks.
39567         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
39568
39569         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
39570         dependency problems.
39571         (xreadlink): Accept new arg SIZE, for efficiency.
39572         All decls and uses changed.
39573         * lib/xreadlink.h: Include <stddef.h>, for size_t.
39574
39575         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
39576         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
39577
39578         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
39579         sysexits.h.
39580
39581 2004-06-01  Jim Meyering  <jim@meyering.net>
39582
39583         * m4/calloc.m4: New file.
39584
39585 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
39586
39587         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
39588         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
39589         Also, fix a typo in a diagnostic.
39590
39591 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
39592
39593         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
39594         or AC_FUNC_REALLOC.
39595
39596 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
39597
39598         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
39599         macros to be defined.
39600         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
39601         the allocator returns NULL because the requested size is zero.
39602
39603 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
39604
39605         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
39606         var.  Add comment explaining why libc still defines it.  This
39607         merges the following patch from glibc:
39608         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
39609
39610 2004-05-20  Andreas Schwab  <schwab@suse.de>
39611
39612         * m4/free.m4: Replace free if it not known to work, not the other
39613         way round.
39614
39615 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
39616
39617         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
39618         present in glibc since revision 1.1 of this file.
39619         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
39620         obstack_alignment_mask, obstack_alloc, obstack_base,
39621         obstack_blank, obstack_blank_fast, obstack_chunk_size,
39622         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
39623         obstack_grow0, obstack_init, obstack_int_grow,
39624         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
39625         obstack_next_free, obstack_object_size, obstack_ptr_grow,
39626         obstack_ptr_grow_fast, obstack_room): Remove declarations of
39627         nonexistent functions.
39628
39629 2004-05-18  Karl Berry  <karl@gnu.org>
39630
39631         * config/srclist.txt: break link for vasnprintf.c.
39632
39633 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
39634
39635         Port obstack to the AS/400, where pointers are 16 bytes wide and
39636         you cannot cast an integer to a valid pointer.  This patch is
39637         currently waiting to be integrated into glibc; see
39638         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
39639
39640         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
39641         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
39642         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
39643         (struct obstack): temp member is now a union of a pointer and
39644         an integer, instead of an integer.  All integer uses changed.
39645         This does not affect the physical layout of struct obstack,
39646         except on hosts (like the AS/400) where the size or alignment of
39647         void * is greater than that of ptrdiff_t.
39648         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
39649         __STDC__)]: Store temporary in pointer member of union, not
39650         integer member.
39651         * lib/obstack.c: Include <stddef.h>, for offsetof.
39652         (struct fooalign): Remove; it doesn't need a name.
39653         (union fooround): Change double to long double, and add void *.
39654         (DEFAULT_ALIGNMENT): Use offsetof to compute.
39655         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
39656         not a macro.  Hence the values are always int; so remove all
39657         casts-to-int in uses.
39658
39659 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
39660
39661         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
39662         we can get this patch merged into glibc.
39663
39664 2004-05-17  Derek R. Price  <derek@ximbiot.com>
39665             Paul Eggert  <eggert@cs.ucla.edu>
39666
39667         * m4/argp: Depend on alloca.
39668
39669 2004-05-17  Derek R. Price  <derek@ximbiot.com>
39670             Paul Eggert  <eggert@cs.ucla.edu>
39671
39672         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
39673         freecoding.
39674
39675 2004-05-17  Bruno Haible  <bruno@clisp.org>
39676
39677         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
39678         precision that consists of a '.' followed by an empty digit string.
39679         Patch by Tor Lillqvist <tml@iki.fi>.
39680
39681 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
39682
39683         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
39684         for backward compatibility with older code.  We need our own
39685         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
39686         it under some other name, and our alloca.h will define it.
39687
39688 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
39689             Derek Price  <derek@ximbiot.com>
39690
39691         * lib/alloca.c: Include <alloca.h>, to get our interface.
39692         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
39693         include <alloca.h> first.  Use C89 prototype for alloca; this
39694         requires including <stddef.h> for size_t.  Use extern "C" if C++.
39695         Use #elif for simplicity, since we can assume C89 now.
39696         Don't try to source the system alloca.h since it will not be found
39697         and to prevent recursively including its replacement.
39698         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
39699         * lib/regex.c: Likewise.
39700
39701 2004-05-16  Derek Price  <derek@ximbiot.com>
39702             Paul Eggert  <eggert@cs.ucla.edu>
39703
39704         getline cleanup.  This changes the getndelim2 API: both order of
39705         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
39706         no delimiter).
39707
39708         * lib/getline.c: Don't include stddef.h or stdio.h, since our
39709         interface does that.
39710         (getline): Always use getdelim, so that we don't have two
39711         copies of this code.
39712         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
39713         if available.
39714         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
39715         (GETNDELIM2_MAXIMUM): New macro.
39716         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
39717         instead of the old practice of delim2==0.  All callers changed.
39718         Return -1 on overflow, instead of returning junk.
39719         Do not set *linesize unless allocation succeeds.
39720         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
39721         that we include sys/types.h.
39722         * lib/getnline.h: Likewise.
39723         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
39724         (getndelim2): Reorder arguments.
39725         * lib/getnline.c (getnline, getndelim):
39726         Don't discard the NMAX argument.
39727         (getnline): Invoke getndelim, to avoid code duplication.
39728         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
39729         of (size_t) -1 by callers of the getnline family.
39730
39731 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
39732
39733         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
39734         Check for gettimeofday.
39735         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
39736         Check for settimeofday, stime.
39737
39738 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
39739
39740         * lib/nanosleep.c (suspended): Change its type from int to
39741         sig_atomic_t volatile.
39742         (first_call): Make it private to rpl_nanosleep, and have it
39743         be zero initially as that's a bit faster.
39744         (my_usleep): Round up fractional times instead of truncating them,
39745         as this is the usual meaning for 'sleep'.
39746
39747         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
39748         doesn't work.
39749         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
39750         (ENOSYS): Define if not defined.
39751         (settime): Fall back on stime if it exists and settimeofday fails.
39752         But don't bother with fallbacks if a method fails with errno == EPERM.
39753
39754 2004-05-11  Jim Meyering  <jim@meyering.net>
39755
39756         Prior to this change, the save_cwd caller required read access to the
39757         current directory on most systems (ones with the fchdir function).
39758
39759         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
39760         fails, try write-only, and finally, resort to using xgetcwd.
39761
39762 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
39763
39764         * lib/obstack.c, obstack.h: Import changes from libc.
39765
39766 2004-04-28  Bruno Haible  <bruno@clisp.org>
39767
39768         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
39769         also implicitly appends .exe to executables.
39770         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
39771         accepts Windows pathnames.
39772         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
39773         Treat Cygwin like Windows, since it now accepts Windows pathnames.
39774         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
39775         Treat Cygwin like Windows, since it now accepts Windows pathnames.
39776         Reported by Derek Robert Price <derek@ximbiot.com>.
39777
39778 2004-04-21  Karl Berry  <karl@gnu.org>
39779
39780         * config/srclist.txt (localcharset.c): break sync.
39781
39782 2004-04-20  Paul Eggert  <eggert@twinsun.com>
39783
39784         * m4/host-os.m4: Add a copyright notice.
39785
39786 2004-04-20  Jim Meyering  <jim@meyering.net>
39787
39788         Change UTILS_ to gl_ in AC_DEFINE'd names.
39789         Change utils_- and jm_-prefixed variables, too.
39790         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
39791         UTILS_FUNC_MKDIR_TRAILING_SLASH.
39792         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
39793
39794         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
39795         Don't emit trailing blanks.
39796         Also rename jm_-prefixed variables to have gl_ prefix.
39797
39798         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
39799         Also rename jm_-prefixed variables to have gl_ prefix.
39800
39801         * m4/jm-macros.m4: Reflect the renamings.
39802         * m4/prereq.m4: Likewise.
39803
39804 2004-04-20  Jim Meyering  <jim@meyering.net>
39805
39806         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
39807         memory.
39808
39809 2004-04-20  Jim Meyering  <jim@meyering.net>
39810             Bruno Haible  <bruno@clisp.org>
39811
39812         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
39813         memory when realloc fails.
39814
39815 2004-04-19  Jim Meyering  <jim@meyering.net>
39816
39817         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
39818         now that readutmp.c may call `free (0)'.
39819
39820 2004-04-19  Bruno Haible  <bruno@clisp.org>
39821
39822         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
39823         * m4/inttypes_h.m4: Likewise.
39824         * m4/stdint_h.m4: Likewise.
39825         * m4/intmax_t.m4: Likewise.
39826         * m4/uintmax_t.m4: Likewise.
39827
39828 2004-04-18  Jim Meyering  <jim@meyering.net>
39829
39830         * m4/prereq.m4: Don't forbid jm_ prefix.
39831
39832         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
39833         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
39834         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
39835         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
39836         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
39837         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
39838         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
39839         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
39840         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
39841         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
39842         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
39843         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
39844         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
39845         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
39846         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
39847         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
39848         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
39849         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
39850         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
39851
39852 2004-04-18  Jim Meyering  <jim@meyering.net>
39853
39854         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
39855         failure, don't leak memory and do call END_UTMP_ENT.
39856
39857 2004-04-16  Jim Meyering  <jim@meyering.net>
39858
39859         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
39860         coreutils' stat program.
39861         (gl_PREREQ): Don't require jm_PREREQ_STAT.
39862
39863 2004-04-11  Paul Eggert  <eggert@twinsun.com>
39864
39865         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
39866         C89.
39867         (CHAR_BIT): Remove, since we assume C89.
39868         Include <stdint.h> if available, as per current Autoconf CVS advice.
39869
39870 2004-03-31  Jim Meyering  <jim@meyering.net>
39871
39872         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
39873         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
39874         * m4/xalloc.m4: Likewise.
39875
39876 2004-03-30  Paul Eggert  <eggert@twinsun.com>
39877
39878         Merge from coreutils.
39879
39880         * m4/inttostr.m4: New file.
39881         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
39882         Require AM_STDBOOL_H and gl_TIMESPEC instead.
39883         Require gl_CLOCK_TIME.
39884         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
39885
39886 2004-03-30  Paul Eggert  <eggert@twinsun.com>
39887
39888         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
39889         not bool, to be more consistent with Unix conventions.
39890         Suggested by Bruno Haible.
39891
39892         Merge from coreutils.
39893
39894         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
39895         * lib/umaxtostr.c: New files.
39896
39897         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
39898         the usual <time.h> dance.
39899         (get_date): Change signature to support fractional time stamps.
39900         All callers changed.
39901         * lib/getdate.y: Include "getdate.h" first, as we can now
39902         assume C89 and don't need to worry about 'const'.
39903         Similarly, include "unlocked-io.h" near start, not in middle.
39904         Include <limits.h>.
39905         (textint.value): Use long int rather than int.
39906         (textint.digits): Use size_t rather than int.
39907         (BILLION, LOG10_BILLION): New constants.
39908         (parser_control): New member rel_ns.  Members day_ordinal,
39909         time_zone, month, day, hour, minutes, rel_year, rel_month,
39910         rel_day, rel_hour, rel_minutes, rel_seconds
39911         are now long int, not int.  Member seconds is now struct timespec,
39912         not int.  New member timespec_seen.  Members dates_seen, days_seen,
39913         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
39914         not int.
39915         (%union.intval): Now long int, not int.
39916         New member timespec.
39917         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
39918         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
39919         (spec): Now is a timespec or an item list.
39920         (timespec, items): New nonterminals.
39921         (time, rel, relunit, number, get_date):
39922         Add support for fractional seconds.
39923         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
39924         (gmtime, localtime, mktime): Remove decls; not needed with C89.
39925         (to_hour): First arg is now long int, not int.
39926         (to_year): Returns long int, not int.
39927         Don't treat year -70 like 70.
39928         (tm_diff): Returns long int, not int.
39929         (lookup_word): Use bool instead of int when appropriate.
39930         (yylex): Use size_t for count, not int.
39931         Detect overflow when parsing large integer constants.
39932         Add support for fractions.
39933         (get_date): Make pointers 'const' if possible.
39934         Use more-portable code to detect integer overflow.
39935         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
39936         Don't use ctime; it's not reliable if the year has >4 digits.
39937
39938         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
39939         This is for compatibility with BSD.
39940
39941         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
39942         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
39943         From coreutils' system.h.
39944
39945         * lib/userspec.c: Don't include "posixver.h".
39946         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
39947         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
39948         compatible extension.  Simplify code by removing a boolean int
39949         that was always nonzero if a string was nonnull.
39950
39951 2004-03-30  Jim Meyering  <jim@meyering.net>
39952
39953         Merge from coreutils.
39954
39955         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
39956         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
39957         on some systems one must include <grp.h> before it.
39958         Reported by Christian Krackowizer.
39959
39960 2004-03-30  Jim Meyering  <jim@meyering.net>
39961
39962         Merge from coreutils.
39963
39964         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
39965
39966         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
39967         an empty input stream.
39968
39969         * lib/readtokens.c: Include <stdbool.h>.
39970         (readtoken): Use `size_t' rather than int/long.
39971         All callers adjusted.
39972         Use `bool' rather than `int' where appropriate.
39973         Use memset rather than an explicit loop.
39974         Use x2nrealloc rather than xrealloc.
39975         Allow the use of `\0' as a delimiter.
39976         (readtokens): Likewise.
39977         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
39978
39979 2004-03-30  Jim Meyering  <jim@meyering.net>
39980
39981         * m4/realloc.m4: Remove file, since now it does no more than
39982         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
39983         the `configure.ac' section of module/realloc.
39984         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
39985
39986 2004-03-30  Bruno Haible  <bruno@clisp.org>
39987
39988         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
39989         nonnull.
39990
39991 2004-03-29  Paul Eggert  <eggert@twinsun.com>
39992
39993         Merge changes to getloadavg.c from coreutils and Emacs.
39994
39995         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
39996         Define to an expression, not to the empty string.
39997         Include cloexec.h and xalloc.h.
39998         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
39999         Use set_cloexec_flag rather than rolling our own.
40000         * lib/cloexec.c, lib/cloexec.h: New files.
40001
40002 2004-03-29  Paul Eggert  <eggert@twinsun.com>
40003
40004         * m4/cloexec.m4: New file.
40005
40006 2004-03-18  Paul Eggert  <eggert@twinsun.com>
40007
40008         * lib/getopt.h: Sync with libc CVS.
40009
40010 2004-03-18  Paul Eggert  <eggert@twinsun.com>
40011             Bruno Haible  <bruno@clisp.org>
40012
40013         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
40014         mbswidth.
40015
40016 2004-03-18  Paul Eggert  <eggert@twinsun.com>
40017             Bruno Haible  <bruno@clisp.org>
40018
40019         * lib/mbswidth.h: Include <wchar.h> only if
40020         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
40021         <wchar.h>.
40022         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
40023
40024 2004-03-09  Paul Eggert  <eggert@twinsun.com>
40025
40026         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
40027         Sync with libc CVS.
40028         * lib/getopt_int.h: New file, also synced from libc.
40029
40030 2004-03-09  Paul Eggert  <eggert@twinsun.com>
40031
40032         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
40033         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
40034         Bring back getopt.c, getopt.h, getopt1.c.
40035
40036 2004-03-07  Paul Eggert  <eggert@twinsun.com>
40037
40038         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
40039         All uses changed.  Check for sa_sigaction member; this fixes
40040         a bug first reported by Jason Andrade in
40041         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
40042
40043 2004-03-07  Paul Eggert  <eggert@twinsun.com>
40044
40045         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
40046         '#if' expressions.  Unlike the code it replaces, it does not
40047         depend on (defined _SC_PAGESIZE).  However, it does depend on
40048         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
40049         first reported by Jason Andrade in
40050         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
40051
40052 2004-02-25  Simon Josefsson  <jas@extundo.com>
40053
40054         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
40055
40056 2004-02-25  Simon Josefsson  <jas@extundo.com>
40057
40058         * lib/strdup.h: New file.
40059         * lib/strdup.c: Include it.
40060         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
40061         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
40062
40063 2004-02-23  Karl Berry  <karl@gnu.org>
40064
40065         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
40066         (from fencepost.gnu.org:/gd/gnuorg).
40067
40068 2004-02-23  Karl Berry  <karl@gnu.org>
40069
40070         * config/srclistvars.sh (GNUORG) [karl]: redefine.
40071         * config/srclist.txt: add maintain/standards documents.
40072
40073 2004-02-18  Bruno Haible  <bruno@clisp.org>
40074
40075         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
40076         Reported by Derek Robert Price <derek@ximbiot.com>.
40077
40078 2004-02-16  Karl Berry  <karl@gnu.org>
40079
40080         * config/mkinstalldirs, install-sh: update from automake.
40081
40082 2004-02-06  Karl Berry  <karl@gnu.org>
40083
40084         * m4/po.m4: update from gettext 0.14.1.
40085
40086 2004-02-06  Karl Berry  <karl@gnu.org>
40087
40088         * lib/config.charset: update from gettext 0.14.1.
40089
40090 2004-02-05  Paul Eggert  <eggert@twinsun.com>
40091
40092         Add comments and code, prompted by suggestions from Bruno Haible
40093         for sh-quote.
40094         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
40095         describing the enum quoting_style values.
40096         * lib/quotearg.c (quotearg_alloc): New function.
40097         (quotearg_buffer_restyled): Treat lone { and } as special.
40098         Treat = as special.  Work around bug with older shells
40099         that "see" a '\' that is really the 2nd byte of a multibyte char.
40100         Quote empty string with shell_quoting_style.
40101
40102 2004-02-03  Bruno Haible  <bruno@clisp.org>
40103
40104         * m4/pipe.m4: New file, from GNU gettext.
40105
40106 2004-02-03  Bruno Haible  <bruno@clisp.org>
40107
40108         * lib/pipe.h: New file, from GNU gettext.
40109         * lib/pipe.c: New file, from GNU gettext.
40110
40111 2004-01-27  Bruno Haible  <bruno@clisp.org>
40112
40113         * m4/execute.m4: New file, from GNU gettext.
40114
40115 2004-01-27  Bruno Haible  <bruno@clisp.org>
40116
40117         * lib/execute.h: New file, from GNU gettext.
40118         * lib/execute.c: New file, from GNU gettext.
40119         * lib/w32spawn.h: New file, from GNU gettext.
40120
40121 2004-01-24  Paul Eggert  <eggert@twinsun.com>
40122
40123         Merge from diffutils.
40124
40125         * lib/file-type.c (file_type): Add typed memory objects.
40126         * lib/file-type.h (S_TYPEISTMO): New macro.
40127
40128         * lib/c-stack.h (c_stack_action): Remove argv argument.
40129         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
40130         (die): Don't calculate message unless segv_action returns.
40131         (get_stack_location, min_address_from_argv, max_address_from_argv,
40132         volatile stack_base, volatile_stack_size): Remove.
40133         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
40134         that every segmentation violation is a stack overflow.  (Ouch!)
40135         See Debian bug 136249 (still outstanding) for more info about why
40136         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
40137
40138 2004-01-24  Paul Eggert  <eggert@twinsun.com>
40139
40140         Exit-status fix from coreutils.
40141
40142         Use exit_failure consistently in place of EXIT_FAILURE,
40143         so that program exit statuses are consistent on failure.
40144
40145         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
40146         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
40147         * lib/argmatch.h: Comment fix to match the above.
40148         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
40149         Now a macro referring to exit_failure, instead of a separate
40150         variable.  Include "exitfail.h" to get it.
40151         * lib/xstrtol.h: Include "exitfail.h".
40152         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
40153
40154         * lib/long-options.c (parse_long_options): Use prototype
40155         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
40156         for clarity.
40157
40158 2004-01-21  Jim Meyering  <jim@meyering.net>
40159
40160         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
40161         so as not to conflict with a different-sized __mktime_internal
40162         function in GNU libc.
40163         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
40164         Problem building statically-linked `ls' reported by Michael Brunnbauer.
40165
40166 2004-01-20  Karl Berry  <karl@gnu.org>
40167
40168         * config/config.guess: update from config.
40169
40170         * config/srclistvars.sh: GNUWWWLICENSES for karl.
40171
40172 2004-01-20  Bruno Haible  <bruno@clisp.org>
40173
40174         Safer stack allocation.
40175         * lib/setenv.c: Include allocsa.h.
40176         (alloca): Remove fallback definition.
40177         (freea): Remove macro.
40178         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
40179         instead of freea.
40180
40181 2004-01-20  Bruno Haible  <bruno@clisp.org>
40182
40183         * m4/eealloc.m4: New file, from GNU gettext.
40184
40185 2004-01-20  Bruno Haible  <bruno@clisp.org>
40186
40187         * m4/allocsa.m4: New file, from GNU gettext.
40188
40189 2004-01-20  Bruno Haible  <bruno@clisp.org>
40190
40191         * lib/xallocsa.h: New file, from GNU gettext.
40192         * lib/xallocsa.c: New file, from GNU gettext.
40193
40194 2004-01-20  Bruno Haible  <bruno@clisp.org>
40195
40196         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
40197
40198 2004-01-20  Bruno Haible  <bruno@clisp.org>
40199
40200         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
40201         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
40202         specially.
40203
40204 2004-01-20  Bruno Haible  <bruno@clisp.org>
40205
40206         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
40207         patch.
40208
40209 2004-01-20  Bruno Haible  <bruno@clisp.org>
40210
40211         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
40212
40213 2004-01-20  Bruno Haible  <bruno@clisp.org>
40214
40215         * lib/eealloc.h: New file.
40216
40217 2004-01-20  Bruno Haible  <bruno@clisp.org>
40218
40219         * lib/binary-io.h: Avoid warnings on Cygwin.
40220
40221 2004-01-20  Bruno Haible  <bruno@clisp.org>
40222
40223         * lib/allocsa.h: New file, from GNU gettext.
40224         * lib/allocsa.c: New file, from GNU gettext.
40225
40226 2004-01-18  Karl Berry  <karl@gnu.org>
40227
40228         * doc/gpl.texi, doc/lgpl.texi: new files.
40229
40230 2004-01-18  Karl Berry  <karl@gnu.org>
40231
40232         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
40233         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
40234
40235 2004-01-15  Paul Eggert  <eggert@twinsun.com>
40236
40237         Merge from coreutils.
40238
40239         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
40240         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
40241         (gl_DEFAULT_POSIX2_VERSION): Move
40242         the documentation from 'configure' into 'config.hin',
40243         so that 'configure --help' isn't burdened by it and
40244         we don't have to worry about its formatting there.
40245         Reword the documentation so that it's more succinct
40246         and can be run together into a single paragraph.
40247         * m4/same.m4 (gl_SAME): Check for pathconf.
40248
40249 2004-01-15  Paul Eggert  <eggert@twinsun.com>
40250
40251         Merge from coreutils.
40252
40253         * lib/posixver.c: Include posixver.h.
40254
40255         * lib/same.c: Include <stdbool.h>, <limits.h>.
40256         (_POSIX_NAME_MAX): Define if not defined.
40257         (MIN): New macro.
40258         (same_name): If file names are silently truncated, report
40259         that the file names are the same if they are the same after
40260         the silent truncation.
40261
40262         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
40263         conversion function.
40264         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
40265         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
40266         longer needed.
40267
40268 2004-01-15  Jim Meyering  <jim@meyering.net>
40269
40270         Merge from coreutils.
40271
40272         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
40273         if no library is required.
40274         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
40275         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
40276         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
40277         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
40278         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
40279         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
40280         value, $ac_cv_search_crypt, if it's "none required".
40281         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
40282         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
40283         not gl_FUNC_GETLOADAVG.
40284         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
40285         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
40286
40287 2004-01-15  Jim Meyering  <jim@meyering.net>
40288
40289         Merge from coreutils.
40290
40291         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
40292         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
40293         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
40294
40295         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
40296         optional configure-time default.
40297
40298         * lib/version-etc.c (version_etc_copyright): Update copyright date.
40299
40300         * lib/xreadlink.c (xreadlink): Correct outdated comment.
40301
40302 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
40303
40304         Merge from coreutils.
40305
40306         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
40307         value, $ac_cv_search_nanosleep, if it's "none required".
40308
40309 2004-01-14  Paul Eggert  <eggert@twinsun.com>
40310
40311         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
40312         with like-named macro in fnmatch.c.
40313         (EXT): Use an internal constant instead.
40314
40315         Merge fnmatch patches from glibc.
40316         * lib/fnmatch.c (mbsinit): Remove define.
40317         Add libc_hidden_ver (__fnmatch, fnmatch).
40318         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
40319         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
40320
40321 2004-01-14  Karl Berry  <karl@gnu.org>
40322
40323         * config/install-sh: update from automake.
40324
40325 2004-01-13  Karl Berry  <karl@gnu.org>
40326
40327         * config/install-sh: update from automake.
40328
40329 2004-01-09  Karl Berry  <karl@gnu.org>
40330
40331         * config/install-sh: update from automake.
40332
40333 2004-01-05  Karl Berry  <karl@gnu.org>
40334
40335         * config/config.{sub,guess}: update from config.
40336
40337 2003-12-31  Karl Berry  <karl@gnu.org>
40338
40339         * config/depcomp: update from automake.
40340
40341 2003-12-14  Karl Berry  <karl@gnu.org>
40342
40343         * lib/config.charset: update from gettext-runtime.
40344
40345 2003-12-03  Paul Eggert  <eggert@twinsun.com>
40346
40347         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
40348         Bug reported by Alfred M. Szmidt.
40349
40350 2003-12-03  Bruno Haible  <bruno@clisp.org>
40351
40352         * m4/gettext.m4: Upgrade from gettext-0.13.
40353         * m4/po.m4: Upgrade from gettext-0.13.
40354         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
40355         * m4/intmax.m4: New file, from gettext-0.13.
40356         * m4/printf-posix.m4: New file, from gettext-0.13.
40357
40358 2003-11-29  Karl Berry  <karl@gnu.org>
40359
40360         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
40361
40362 2003-11-25  Paul Eggert  <eggert@twinsun.com>
40363             Bruno Haible  <bruno@clisp.org>
40364
40365         * lib/printf-parse.h: Don't include sys/types.h.
40366         (ARG_NONE): New macro.
40367         (char_directive): Change type of *arg_index fields to size_t.
40368         * lib/printf-parse.c: Don't include sys/types.h.
40369         (SSIZE_MAX): Remove macro.
40370         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
40371         Remove unnecessary overflow check.
40372         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
40373         fields.
40374
40375 2003-11-25  Bruno Haible  <bruno@clisp.org>
40376
40377         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
40378
40379 2003-11-25  Bruno Haible  <bruno@clisp.org>
40380
40381         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
40382         gt_TYPE_SSIZE_T.
40383
40384 2003-11-24  Paul Eggert  <eggert@twinsun.com>
40385
40386         * modules/alloca: Remove dependency on xalloc.
40387
40388 2003-11-24  Paul Eggert  <eggert@twinsun.com>
40389
40390         * lib/alloca.c: Remove dependency on xalloc module.
40391         (xalloc_die): Remove.
40392         (memory_full) [!defined emacs]: New macro.
40393         [!defined emacs]: Don't include xalloc.h.
40394         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
40395         address arithmetic overflows.  Change datatypes a bit to avoid
40396         unnecessary casts.
40397
40398 2003-11-22  Jim Meyering  <jim@meyering.net>
40399
40400         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
40401         s/size/size_t/.
40402
40403 2003-11-21  Karl Berry  <karl@gnu.org>
40404
40405         * config/config.{sub,guess}: update from config.
40406
40407 2003-11-18  Karl Berry  <karl@gnu.org>
40408
40409         * config/config.{sub,guess}: update from config.
40410
40411         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
40412
40413 2003-11-17  Paul Eggert  <eggert@twinsun.com>
40414
40415         * README: Mention that S+T cannot overflow if S is the size of
40416         an existing object and T is sufficiently small.
40417
40418 2003-11-17  Jim Meyering  <jim@meyering.net>
40419
40420         On systems without utime and without a utimes function capable of
40421         dealing with a NULL struct utimbuf* argument, this utime replacement
40422         could -- in unusual circumstances -- leak a file descriptor.
40423         * lib/utime.c: Include <unistd.h> and <errno.h>.
40424         (utime_null): Be sure to close `fd' and to preserve errno.
40425         Reported by Geoff Collyer via Arnold Robbins.
40426
40427 2003-11-17  Bruno Haible  <bruno@clisp.org>
40428
40429         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
40430         (Depends-on): Add xsize.
40431
40432 2003-11-17  Bruno Haible  <bruno@clisp.org>
40433
40434         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
40435
40436 2003-11-17  Bruno Haible  <bruno@clisp.org>
40437
40438         * lib/vasnprintf.c (alloca): Remove fallback definition.
40439         (freea): Remove definition.
40440         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
40441         Reported by Paul Eggert.
40442
40443 2003-11-16  Paul Eggert  <eggert@twinsun.com>
40444             Bruno Haible  <bruno@clisp.org>
40445
40446         Protect against address arithmetic overflow.
40447         * lib/printf-args.h: Include stddef.h.
40448         (arguments): Change type of field 'count' to size_t.
40449         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
40450         'unsigned int' where appropriate.
40451         * lib/printf-parse.h: Include sys/types.h.
40452         (char_directive): Change type of *arg_index fields to ssize_t.
40453         (char_directives): Change type of fields 'count', max_*_length to
40454         size_t.
40455         * lib/printf-parse.c: Include sys/types.h and xsize.h.
40456         (SSIZE_MAX): Define fallback value.
40457         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
40458         instead of 'int' where appropriate. Check a_allocated, d_allocated
40459         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
40460         * lib/vasnprintf.c: Include xsize.h.
40461         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
40462         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
40463         overflow. Avoid wraparound when converting a width or precision from
40464         decimal to binary.
40465
40466 2003-11-16  Bruno Haible  <bruno@clisp.org>
40467
40468         Update from GNU gettext.
40469         * lib/printf-parse.c: Generalize to it can be compiled for wide
40470         strings.
40471         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
40472         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
40473         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
40474         SNPRINTF): New macros.
40475         Don't include <alloca.h> if the file is used inside libintl.
40476         (local_wcslen): New function, for Solaris 2.5.1.
40477         (VASNPRINTF): Use it instead of wcslen.
40478
40479 2003-11-16  Bruno Haible  <bruno@clisp.org>
40480
40481         * lib/xsize.h (xmax): New function.
40482         (xsum, xsum3, xsum4): Declare as "pure" functions.
40483
40484 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40485
40486         * modules/xalloc (Files): Undo latest change, since xalloc.h
40487         no longer needs SIZE_MAX or PTRDIFF_MAX.
40488
40489 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40490
40491         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
40492         gl_PTRDIFF_MAX.
40493
40494 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40495
40496         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
40497         "return", to pacify some unknown compiler.  Problem reported
40498         by Joerg Schilling.
40499
40500 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40501
40502         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
40503         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
40504         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
40505         heuristic is just as accurate as far as we know, and it removes a
40506         dependency on size_max.m4 and ptrdiff_max.m4.
40507
40508 2003-11-11  Bruno Haible  <bruno@clisp.org>
40509
40510         * modules/xsize (Files): Add m4/size_max.m4.
40511         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
40512
40513 2003-11-11  Bruno Haible  <bruno@clisp.org>
40514
40515         * m4/size_max.m4: New file.
40516         * m4/ptrdiff_max.m4: New file.
40517         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
40518         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
40519         (gl_XALLOC): Invoke it.
40520
40521 2003-11-11  Bruno Haible  <bruno@clisp.org>
40522
40523         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
40524         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
40525         defined.
40526
40527 2003-11-10  Paul Eggert  <eggert@twinsun.com>
40528
40529         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
40530         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
40531         rejected some allocations of exactly SIZE_MAX - 2 bytes.
40532         From Bruno Haible.
40533         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
40534         not (size_t) -1, since it's defined here.
40535
40536 2003-11-09  Karl Berry  <karl@gnu.org>
40537
40538         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
40539
40540 2003-11-06  Paul Eggert  <eggert@twinsun.com>
40541
40542         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
40543         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
40544         Reject sizes of exactly SIZE_MAX bytes.
40545         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
40546         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
40547
40548 2003-11-05  Bruno Haible  <bruno@clisp.org>
40549
40550         * lib/xsize.h: Include limits.h, to avoid a possible collision with
40551         SIZE_MAX defined in <limits.h> on Solaris.
40552
40553 2003-11-04  Jim Meyering  <jim@meyering.net>
40554
40555         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
40556         variable names, rather than @VAR@.
40557         * modules/poll: Likewise.
40558
40559 2003-11-04  Bruno Haible  <bruno@clisp.org>
40560
40561         * modules/xsize: New file.
40562         * modules/linebreak: Depend on xsize.
40563         * MODULES.html.sh (func_all_modules): Add xsize.
40564
40565 2003-11-04  Bruno Haible  <bruno@clisp.org>
40566
40567         * m4/xsize.m4: New file.
40568
40569 2003-11-04  Bruno Haible  <bruno@clisp.org>
40570
40571         * lib/xsize.h: New file.
40572         * lib/linebreak.c: Include xsize.h.
40573         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
40574         argument for overflow.
40575         Suggested by Paul Eggert.
40576
40577 2003-11-03  Karl Berry  <karl@gnu.org>
40578
40579         * config/config.{guess,sub}: update from config.
40580
40581 2003-11-03  Jim Meyering  <jim@meyering.net>
40582
40583         * modules/userspec (lib_SOURCES): Add userspec.h.
40584         (Include): Add "userspec.h".
40585         Improve description.
40586
40587 2003-11-03  Jim Meyering  <jim@meyering.net>
40588
40589         * lib/userspec.c: Include "userspec.h".
40590         * lib/userspec.h: New file.
40591
40592 2003-11-03  Bruno Haible  <bruno@clisp.org>
40593
40594         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
40595
40596 2003-11-03  Bruno Haible  <bruno@clisp.org>
40597
40598         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
40599         available, to avoid (extremely rare) race condition.
40600         Suggested by Paul Eggert.
40601
40602 2003-11-02  Karl Berry  <karl@gnu.org>
40603
40604         * config/srclist.txt (vasprintf.c): sync broken, sigh.
40605
40606 2003-10-31  Paul Eggert  <eggert@twinsun.com>
40607
40608         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
40609         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
40610         (read_filesystem_list): Set and use me_type_malloced.
40611         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
40612         whatever the type happens to be), for brevity and consistency.
40613         Check for size calculation overflow on Alphas running OSF/1.
40614
40615 2003-10-31  Jim Meyering  <jim@meyering.net>
40616
40617         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
40618
40619         * lib/linebuffer.c: Include <string.h> for declaration of memset.
40620
40621 2003-10-30  Paul Eggert  <eggert@twinsun.com>
40622             Bruno Haible  <bruno@clisp.org>
40623
40624         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
40625         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
40626
40627 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
40628
40629         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
40630         netbsd*-gnu*.  Suggested by Robert Millan.
40631
40632 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40633
40634         * modules/group-member: Depend on stdbool.
40635
40636 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40637
40638         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
40639
40640 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40641
40642         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
40643         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
40644         after the 'gnu' in these cases.  This fixes some bugs in the
40645         previous change, and is based on suggestions by Robert Millan.
40646
40647 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40648
40649         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
40650         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
40651         no longer needed.
40652         * lib/quotearg.c (quotearg_n_options): Use it.
40653         * lib/group-member.c: Include <stdbool.h>.
40654         (free_group_info): Arg is now const *; don't free arg.
40655         (get_group_info): Now returns bool and accepts struct group_info *,
40656         rather than returning a malloc'ed struct group_info *.
40657         All uses changed.  Check for overflow in internal size calculation.
40658
40659         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
40660         rather than xmalloc/xrealloc.
40661         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
40662         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
40663         conformance bug: the old code used a pointer after freeing the
40664         storage that it addressed.
40665         * lib/hash.c (hash_initialize): Simplify the code by using
40666         xalloc_oversized rather than doing it by hand.
40667         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
40668         the buffer preserved.  Use free and xmalloc instead.
40669         * lib/quotearg.c (quotearg_n_options): Likewise.
40670         Use a simpler test for size overflow.  Don't use xalloc_oversized
40671         because unsigned int might be wider than size_t (!); this suggests
40672         that we should switch from unsigned int to size_t for slot numbers.
40673
40674 2003-10-28  Paul Eggert  <eggert@twinsun.com>
40675
40676         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
40677         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
40678         NetBSD kernels.  Requested by Richard Stallman.
40679
40680 2003-10-27  Paul Eggert  <eggert@twinsun.com>
40681
40682         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
40683         to allocate the returned structure.  Do not allocate a subarray,
40684         as x2nrealloc will do that.
40685         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
40686         instead of xnrealloc.
40687         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
40688
40689 2003-10-27  Bruno Haible  <bruno@clisp.org>
40690
40691         * lib/stdbool_.h: Better support for BeOS.
40692
40693 2003-10-26  Paul Eggert  <eggert@twinsun.com>
40694
40695         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
40696         now uses inline.
40697
40698 2003-10-26  Paul Eggert  <eggert@twinsun.com>
40699
40700         * lib/xalloc.h (xalloc_oversized): New static inline function, for
40701         callers that want to do their own size-overflow checking.  Include
40702         <stdbool.h>, since xalloc_oversized returns bool.
40703         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
40704         to use xalloc_oversized.
40705
40706         Add two functions x2realloc, x2nrealloc, for programs that grow
40707         arrays dynamically by doubling their sizes.
40708         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
40709         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
40710         New functions.
40711
40712         Port to C99 semantics for 'inline' of external functions.
40713         Bug reported by Bruno Haible.
40714         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
40715         with the old contents of xnmalloc.
40716         (xnmalloc, xmalloc): Use it.
40717         (xnrealloc_inline): New static inline function,
40718         with the old contents of xnrealloc.
40719         (xnrealloc, xrealloc): Use it.
40720
40721         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
40722         that.
40723
40724 2003-10-26  Karl Berry  <karl@gnu.org>
40725
40726         * config/srclist.txt (COPYING.DOC): no longer available from
40727         /gd/gnuorg; don't know where the ultimate source is.
40728
40729 2003-10-25  Paul Eggert  <eggert@twinsun.com>
40730
40731         Fix several address-calculation bugs in the hash modules,
40732         plus some minor code cleanup.
40733
40734         * lib/hash.h: Include <stdbool.h>, for bool.
40735         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
40736         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
40737         hash_get_n_entries, hash_get_max_bucket_length,
40738         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
40739         hash_rehash): Use size_t rather than unsigned.
40740         * lib/hash.c (struct hash_table, hash_get_n_buckets,
40741         hash_get_n_buckets_used, hash_get_n_entries,
40742         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
40743         hash_get_entries, hash_do_for_each, hash_string, is_prime,
40744         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
40745         Likewise.
40746         (SIZE_MAX): Define if not defined.
40747         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
40748         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
40749         hash_print):
40750         Use const * when possible.
40751         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
40752         (check_tuning): Fix bug: if tuning parameters were very close to
40753         0 or 1, rounding errors could have caused subscript violations.
40754         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
40755         (hash_initialize): Add 'fail:' label
40756         to free table and return NULL, and use it to simplify code.
40757         Use calloc rather than clearing the storage ourself.
40758         (hash_initialize, hash_rehash): Check for arithmetic overflow in
40759         buffer size calculations.
40760         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
40761         Include <stddef.h>, for size_t.
40762         * lib/hash-pjw.c (hash_pjw): Likewise.
40763         Switch to method described by Bruno Haible.
40764         Include <limits.h>, for CHAR_BIT.
40765         (SIZE_BITS): New macro.
40766
40767 2003-10-23  Paul Eggert  <eggert@twinsun.com>
40768
40769         * m4/getline.m4 (AM_FUNC_GETLINE):
40770         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
40771         hosts.  Problem reported by Derek Robert Price in
40772         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
40773         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
40774         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
40775
40776 2003-10-21  Paul Eggert  <eggert@twinsun.com>
40777
40778         * lib/getndelim2.c (getndelim2): When size calculation overflows,
40779         ceiling the allocation at NMAX bytes rather than silently
40780         discarding input bytes before NMAX is reached.  This makes
40781         a difference only if NMAX exceeds SIZE_MAX / 2.
40782
40783         * lib/obstack.c: Merge from glibc.
40784         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
40785         Add libc_hidden_def (_obstack_newchunk).
40786         (_obstack_free) [! defined _LIBC]: Remove.
40787         [defined _LIBC]: Make a strong alias from obstack_free, rather than
40788         a clone of the function body.
40789         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
40790         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
40791
40792         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
40793         glibc.
40794         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
40795         arg to memcpy.
40796
40797         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
40798         (obstack_ptr_grow_fast, obstack_int_grow_fast):
40799         Don't use lvalue casts, as GCC plans to remove support for them
40800         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
40801         was also present in the non-GCC version, indicating that this
40802         code had always been buggy and had never been widely used.
40803         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
40804         Use the fast variant of each macro, rather than copying the
40805         definiens of the fast variant; that way, we'll be more likely to
40806         catch future bugs in the fast variants.
40807
40808 2003-10-20  Bruno Haible  <bruno@clisp.org>
40809
40810         * modules/wait-process: New file.
40811         * MODULES.html.sh (func_all_modules): Add wait-process.
40812
40813 2003-10-20  Bruno Haible  <bruno@clisp.org>
40814
40815         * m4/wait-process.m4: New file.
40816
40817 2003-10-20  Bruno Haible  <bruno@clisp.org>
40818
40819         * lib/wait-process.h: New file, from GNU gettext.
40820         * lib/wait-process.c: New file, from GNU gettext.
40821
40822 2003-10-19  Jim Meyering  <jim@meyering.net>
40823
40824         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
40825         HPUX 10.20.
40826
40827 2003-10-18  Karl Berry  <karl@gnu.org>
40828
40829         * config/config.guess: update from config.
40830
40831 2003-10-16  Paul Eggert  <eggert@twinsun.com>
40832
40833         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
40834         (getgroups): First arg is int, not size_t.
40835         Don't let 'free' mangle errno.
40836
40837 2003-10-16  Paul Eggert  <eggert@twinsun.com>
40838
40839         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
40840
40841 2003-10-16  Karl Berry  <karl@gnu.org>
40842
40843         * config/config.{guess,sub}: update from config.
40844
40845 2003-10-16  Jim Meyering  <jim@meyering.net>
40846
40847         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
40848         memcpy.
40849
40850 2003-10-15  Paul Eggert  <eggert@twinsun.com>
40851
40852         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
40853         (SIZE_MAX): Remove.
40854         (new_exclude, add_exclude_file): Initial size no longer needs to
40855         be a power of 2.
40856         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
40857         our own address arithmetic overflow checking.
40858
40859         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
40860         (fnmatch): Do not alloca more than 2000 wide characters;
40861         instead, use malloc for large buffers.
40862         Check for address arithmetic overflow, and return -1
40863         with errno set to ENOMEM in that case.
40864         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
40865         (NEW_PATTERN): Do not alloca more than 8000 bytes;
40866         instead, return -1.  Check for address arithmetic overflow.
40867
40868 2003-10-14  Paul Eggert  <eggert@twinsun.com>
40869
40870         Handle invalid suffixes and overflow independently, so that
40871         callers can treat them independently as needed.  Fix some bugs in
40872         suffix handling, e.g., "100k@" was not diagnosed as an invalid
40873         suffix for a human-readable blocksize.  The major caller-visible
40874         change is the addition of a new
40875         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
40876         that both overflow and suffix chars were found.
40877
40878         * lib/human.c (humblock): Don't check separately for invalid suffix
40879         char; that is xstrtoumax's job (now that its bug is fixed).
40880         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
40881         INTMAX_MAX]: New macros.
40882         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
40883         TYPE_MAXIMUM): New macros.
40884         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
40885         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
40886         if overflow occurs, as it's what __strtol does and it's more useful
40887         in practice.
40888         (__xstrtol): If __strtol reports some error other than ERANGE,
40889         reflect it to the caller as LONGINT_INVALID.  If it reports
40890         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
40891         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
40892         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
40893         value.
40894         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
40895         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
40896         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
40897         [defined UINTMAX_MAX]: New macros.
40898
40899 2003-10-14  Bruno Haible  <bruno@clisp.org>
40900
40901         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
40902
40903 2003-10-14  Bruno Haible  <bruno@clisp.org>
40904
40905         * m4/sig_atomic_t: New file, from GNU gettext.
40906         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
40907
40908 2003-10-14  Bruno Haible  <bruno@clisp.org>
40909
40910         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
40911         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
40912         Also use volatile where needed.
40913
40914 2003-10-12  Paul Eggert  <eggert@twinsun.com>
40915
40916         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
40917         Change maintainer from Bruno Haible to 'all'.
40918
40919 2003-10-12  Paul Eggert  <eggert@twinsun.com>
40920
40921         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
40922
40923 2003-10-12  Paul Eggert  <eggert@twinsun.com>
40924
40925         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
40926         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
40927         and define in terms of the other primitives.
40928         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
40929         (SIZE_MAX): Define if not already defined.
40930         (array_size_overflow): New function.
40931         (xalloc_die): Abort instead of exiting if 'error' returns.
40932         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
40933         (xmalloc, xrealloc): Use them.
40934         (xcalloc): Check for address arithmetic overflow.
40935         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
40936         a bit faster than strcpy.
40937
40938 2003-10-10  Simon Josefsson  <jas@extundo.com>
40939
40940         * modules/argp (Depends-on): Add restrict and strcase.
40941
40942 2003-10-10  Simon Josefsson  <jas@extundo.com>
40943
40944         * m4/argp.m4: Add AC_C_INLINE.
40945
40946 2003-10-08  Paul Eggert  <eggert@twinsun.com>
40947
40948         Merge getpass from libc, plus a few fixes.
40949
40950         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
40951         Include <stdbool.h>.
40952         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
40953         __fsetlocking to empty.
40954         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
40955         do include <bits/libc-lock.h>.
40956         Do not include <fcntl.h>; not needed.
40957         [_LIBC]: Include <wchar.h>.
40958         (NOTCANCEL_MODE): New macro.
40959         (flockfile, funlockfile) [_LIBC]: New macros.
40960         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
40961         [!_LIBC]: New macros.
40962         (call_fclose): New function.
40963         (getpass): Use it.  Save tty stream separately; this simplifies the
40964         code and makes it more reliable if stdin happens to equal stdout.
40965         Invoke __fsetlocking on tty.
40966         Handle thread cancellation if needed.
40967         Namespace cleanup (use __tcgetattr, __getline).
40968         Use bool for Booleans.
40969         [USE_IN_LIBIO]: Handle wide streams.
40970         [!_LIBC]: Unconditionally do the fseek, since we don't know what
40971         stream might go where.
40972
40973         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
40974         doesn't have to include <stdio.h> before us.
40975         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
40976         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
40977         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
40978         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
40979         if not declared, so that we can use getpass.c code from libc without
40980         rewriting it.
40981         (flockfile, ftrylockfile, funlockfile): New macros.
40982
40983 2003-10-08  Paul Eggert  <eggert@twinsun.com>
40984
40985         * modules/getpass: Depend on stdbool.
40986
40987 2003-10-08  Paul Eggert  <eggert@twinsun.com>
40988
40989         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
40990
40991 2003-10-07  Karl Berry  <karl@gnu.org>
40992
40993         * config/config.{guess,sub}: update from config.
40994
40995 2003-10-06  Jim Meyering  <jim@meyering.net>
40996             Bruno Haible  <bruno@clisp.org>
40997
40998         This lets translators provide better translations for the
40999         "Written by ..." part of --version output.
41000         * lib/version-etc.h: Include stdarg.h.
41001         (version_etc_copyright): Declare as readonly.
41002         (version_etc): Make this function variadic with a NULL-terminated list
41003         of author name strings.
41004         (version_etc_va): New declaration.
41005         * lib/version-etc.c: Include stdarg.h, stdlib.h.
41006         (version_etc_copyright): Declare as readonly.
41007         (version_etc_va): New function. Provide a different translatable string
41008         for each possible number of authors < 10. Abbreviate when there are 10
41009         authors or more.
41010         (version_etc): Make this function variadic. Call version_etc_va.
41011         Suggestion from Gary V. Vaughan.
41012
41013         * lib/long-options.h (parse_long_options): Change prototype: the
41014         authors string is moved to the end and becomes variadic.
41015         * lib/long-options.c: Include stdarg.h.
41016         (parse_long_options): Make this function variadic, too.
41017         Call version_etc_va, not version_etc.
41018
41019 2003-10-06  Bruno Haible  <bruno@clisp.org>
41020
41021         * modules/version-etc-2: Remove file.
41022         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
41023
41024 2003-10-06  Bruno Haible  <bruno@clisp.org>
41025
41026         * modules/fatal-signal: New file.
41027         * MODULES.html.sh (func_all_modules): Add fatal-signal.
41028
41029 2003-10-06  Bruno Haible  <bruno@clisp.org>
41030
41031         * m4/fatal-signal.m4: New file.
41032         * m4/signalblocking.m4: New file, from GNU gettext.
41033
41034 2003-10-06  Bruno Haible  <bruno@clisp.org>
41035
41036         * lib/version-etc-2.h: Remove file.
41037         * lib/version-etc-2.c: Remove file.
41038
41039 2003-10-06  Bruno Haible  <bruno@clisp.org>
41040
41041         * lib/fatal-signal.h: New file, from GNU gettext.
41042         * lib/fatal-signal.c: New file, from GNU gettext.
41043
41044 2003-10-05  Paul Eggert  <eggert@twinsun.com>
41045
41046         * README: Rework advice for preventing empty .o files.
41047         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
41048         not <sys/types.h>.
41049
41050 2003-10-04  Karl Berry  <karl@gnu.org>
41051
41052         * lib/argp*: update from libc.
41053
41054 2003-10-04  Karl Berry  <karl@gnu.org>
41055
41056         * config/config.{guess,sub}: update from config.
41057
41058 2003-10-02  Bruno Haible  <bruno@clisp.org>
41059
41060         * modules/lchown (Include): Add lchown.h.
41061         * modules/time_r (Include): Use "..." syntax.
41062         * modules/xgetdomainname (Include): Add xgetdomainname.h.
41063
41064 2003-10-01  Simon Josefsson  <jas@extundo.com>
41065
41066         * MODULES.html.sh (func_all_modules): Move gethostname from section
41067         'based on' to section 'lacking' POSIX:2001.
41068
41069 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
41070
41071         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
41072         to output mode on the same stream.
41073
41074 2003-09-29  Paul Eggert  <eggert@twinsun.com>
41075
41076         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
41077         Fix arg typo in previous patch.
41078
41079 2003-09-28  Jim Meyering  <jim@meyering.net>
41080
41081         * lib/error.c: Correct cpp indentation.
41082
41083 2003-09-27  Paul Eggert  <eggert@twinsun.com>
41084
41085         * modules/free: New file.
41086
41087 2003-09-27  Paul Eggert  <eggert@twinsun.com>
41088
41089         * m4/free.m4: New file.
41090
41091 2003-09-27  Paul Eggert  <eggert@twinsun.com>
41092
41093         * lib/minmax.h (MIN, MAX)
41094         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
41095         Omit the special code that used __typeof__, since we worry that
41096         it could be more trouble than it's worth.  See:
41097         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
41098         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
41099
41100         * lib/free.c: New file.
41101
41102 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
41103
41104         Trivial fixes to Makefile.am parts of module listings.
41105         * modules/strstr: Append strstr.h to lib_SOURCES.
41106         * modules/strcase: Likewise, for strcase.h.
41107
41108 2003-09-27  Karl Berry  <karl@gnu.org>
41109
41110         * config/mkinstalldirs: update from automake.
41111
41112 2003-09-26  Paul Eggert  <eggert@twinsun.com>
41113
41114         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
41115         (error_tail): Do not loop, reallocating temporary buffer, since
41116         the output cannot contain more wide characters than the input
41117         contains bytes, the size must be big enough already.  This avoids
41118         one potential size overflow calculation.  Check for size overflow
41119         when calculating temporary buffer size.  Free temporary buffer
41120         when done, if it was allocated with malloc; this plugs a memory
41121         leak.  Remove casts from void * to pointers, that are no longer
41122         needed now that we're assuming C89 or better.
41123
41124         Merge error changes from glibc.
41125
41126         * lib/error.c, error.h: Update copyright notice header to match glibc.
41127         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
41128         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
41129         Disable cancellation while printing error.
41130         * lib/error.h: Prepend __ to parameter names.
41131
41132 2003-09-26  Jim Meyering  <jim@meyering.net>
41133
41134         * lib/error.c (error_tail): Move some declarations
41135         into inner scope where the local variables are used.
41136
41137 2003-09-26  Bruno Haible  <bruno@clisp.org>
41138
41139         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
41140         stpncpy().
41141         Don't define stpncpy through config.h; it's now done through stpncpy.h.
41142
41143 2003-09-26  Bruno Haible  <bruno@clisp.org>
41144
41145         * lib/stpncpy.h (gnu_stpncpy): New declaration.
41146         (stpncpy): Define as alias for gnu_stpncpy.
41147         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
41148
41149 2003-09-25  Simon Josefsson  <jas@extundo.com>
41150
41151         * lib/xgetdomainname.h: New file.
41152         * lib/xgetdomainname.c: New file.
41153
41154 2003-09-25  Simon Josefsson  <jas@extundo.com>
41155             Bruno Haible  <bruno@clisp.org>
41156
41157         * modules/getdomainname: New file.
41158         * modules/xgetdomainname: New file.
41159         * MODULES.html.sh (func_all_modules): Add getdomainname,
41160         xgetdomainname.
41161
41162 2003-09-25  Simon Josefsson  <jas@extundo.com>
41163             Bruno Haible  <bruno@clisp.org>
41164
41165         * m4/getdomainname.m4: New file.
41166
41167 2003-09-25  Simon Josefsson  <jas@extundo.com>
41168             Bruno Haible  <bruno@clisp.org>
41169
41170         * lib/getdomainname.h: New file.
41171         * lib/getdomainname.c: New file.
41172
41173 2003-09-25  Karl Berry  <karl@gnu.org>
41174
41175         * lib/argp-fmtstream.c, argp-help.c: update from libc.
41176
41177 2003-09-25  Karl Berry  <karl@gnu.org>
41178
41179         * config/install-sh: update from automake.
41180
41181 2003-09-25  Bruno Haible  <bruno@clisp.org>
41182
41183         * modules/version-etc-2: New file, from modules/version-etc with
41184         modifications.
41185         * MODULES.html.sh (func_all_modules): Add version-etc-2.
41186
41187 2003-09-25  Bruno Haible  <bruno@clisp.org>
41188
41189         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
41190         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
41191
41192 2003-09-24  Simon Josefsson  <jas@extundo.com>
41193
41194         * modules/xgethostname: Add xgethostname.h.
41195
41196 2003-09-24  Paul Eggert  <eggert@twinsun.com>
41197
41198         * lib/linebuffer.c (freebuffer): Don't free the argument, just
41199         the buffer associated with the argument.  Bug reported by
41200         Simon Josefsson.
41201
41202 2003-09-24  Paul Eggert  <eggert@twinsun.com>
41203
41204         * README: Document assumptions that 'int' is at least 32 bits
41205         wide, that integer arithmetic is 2's complement without overflow,
41206         that there are no holes in integer values, that adding sizes of
41207         two nonoverlapping objects can't overflow, and that all-bits-zero
41208         yields scalar zero.  Fix spelling and capitalization typos.
41209
41210 2003-09-19  Karl Berry  <karl@gnu.org>
41211
41212         * lib/argp.h: update from libc.
41213
41214 2003-09-17  Paul Eggert  <eggert@twinsun.com>
41215
41216         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
41217         to avoid spurious warnings like "AC_RUN_IFELSE was called before
41218         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
41219
41220 2003-09-17  Paul Eggert  <eggert@twinsun.com>
41221
41222         * gnulib-tool: Use "test -h", not "test -L", for portability
41223         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
41224         (tags_regexp): Remove, since \| doesn't conform to POSIX.
41225         (sed_extract_prog): Issue s commands one-by-one, rather than
41226         using \| in one s command.
41227
41228 2003-09-16  Paul Eggert  <eggert@twinsun.com>
41229
41230         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
41231         input error, instead of returning NULL the next time we are called
41232         (and therefore losing track of errno).
41233
41234 2003-09-16  Bruno Haible  <bruno@clisp.org>
41235
41236         * gnulib-tool (func_create_testdir): Warn about duplicated
41237         dependencies.
41238
41239 2003-09-15  Paul Eggert  <eggert@twinsun.com>
41240
41241         * modules/argmatch, modules/fatal, modules/obstack,
41242         modules/xalloc, modules/xgethostname: Sort dependencies by
41243         importance, not alphabetically.
41244
41245 2003-09-15  Paul Eggert  <eggert@twinsun.com>
41246
41247         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
41248         fails, so that the caller gets the proper errno.
41249
41250         * lib/readutmp.c (read_utmp): Likewise.
41251         Check for fstat error.  Close stream and free storage
41252         when failing.
41253
41254 2003-09-14  Karl Berry  <karl@gnu.org>
41255
41256         * config/srclist.txt (strdup.c): disable for c89 changes.
41257
41258 2003-09-14  Jim Meyering  <jim@meyering.net>
41259
41260         * lib/getloadavg.c: Correct cpp indentation.
41261         * lib/strdup.c: Likewise.
41262         * lib/vasnprintf.c: Likewise.
41263
41264 2003-09-14  Bruno Haible  <bruno@clisp.org>
41265
41266         * modules/fwriteerror: New file.
41267         * MODULES.html.sh (func_all_modules): Add fwriteerror.
41268
41269 2003-09-14  Bruno Haible  <bruno@clisp.org>
41270
41271         * lib/fwriteerror.h: New file.
41272         * lib/fwriteerror.c: New file.
41273
41274 2003-09-12  Paul Eggert  <eggert@twinsun.com>
41275
41276         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
41277         modules/xgethostname, modules/xalloc: Depend on exit.
41278
41279 2003-09-12  Paul Eggert  <eggert@twinsun.com>
41280
41281         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
41282
41283         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
41284         and AC_MINIX, too, so that their extensions are available.
41285
41286         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
41287         This macro has been superseded by gl_BACKUPFILE.
41288
41289         More patches to assume C89 or better.
41290
41291         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
41292
41293         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
41294         unconditionally.
41295         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
41296         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
41297         Include <string.h>, <stdlib.h> unconditionally.
41298         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
41299         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
41300         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
41301         headers or for string.h.
41302         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
41303         or strtoul.
41304
41305         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
41306         headers.
41307         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
41308         * m4/userspec.m4 (gl_USERSPEC): Likewise.
41309         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
41310         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
41311         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
41312         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
41313         memcpy, memset.
41314         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
41315         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
41316         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
41317         strtol.
41318         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
41319         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
41320         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
41321         strtoul.
41322
41323 2003-09-12  Paul Eggert  <eggert@twinsun.com>
41324
41325         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
41326         * lib/obstack.c [!defined _LIBC]: Likewise.
41327         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
41328         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
41329         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
41330
41331         More changes to assume C89 or better.
41332
41333         * lib/error.c (error_tail): Assume vprintf.
41334
41335         * lib/argmatch.c (getenv): Remove decl.
41336         * lib/progreloc.c (get_full_program_name): Define via prototype.
41337         * lib/setenv.c (clearenv): Likewise.
41338         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
41339         needed.
41340         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
41341         (malloc, memcpy): Remove decls.
41342         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
41343         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
41344         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
41345         (memcpy): Remove macro.
41346         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
41347         (__P): Remove.  All uses removed.
41348         (PTR): Remove.  All uses changed to void *.
41349         (CHAR_BIT, NULL): Remove.
41350         (spaces, zeros, memset_space, memset_zero)
41351         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
41352         Remove.
41353         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
41354         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
41355         Define with prototype.
41356         Remove now-unnecessary prototype decl.
41357         (extra_args_spec): Assume ANSI C.  All uses changed.
41358         (extra_args_spec_iso): Remove.
41359         (my_strftime, emacs_strftimeu): Define via prototype.
41360         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
41361         unconditionally.
41362         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
41363         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
41364         (strtoul, strtol): Remove decls.
41365         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
41366         LONG_MAX): Remove.
41367         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
41368         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
41369         (LOCALE_PARAM_PROTO): New macro.
41370         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
41371         (INTERNAL (strtol), strtol): Define with a prototype.
41372         (PARAMS): Remove.  All uses removed.
41373         * lib/tempname.c: Include <string.h> unconditionally.
41374         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
41375         * lib/xgethostname.c (main): Define with a prototype.
41376         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
41377         Include <stdlib.h> unconditionally.
41378         (calloc, malloc, realloc, free): Remove decls.
41379         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
41380         Include <stdlib.h> unconditionally.  Sort include file names.
41381         (strtod): Remove.
41382         (xstrtod): Define with a prototype.
41383         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
41384         (strtol, strtoul): Remove decls.
41385
41386 2003-09-11  Paul Eggert  <eggert@twinsun.com>
41387
41388         More patches to assume C89 or better.
41389         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
41390         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
41391         string.h, memchr, STDC_HEADERS.
41392
41393 2003-09-11  Paul Eggert  <eggert@twinsun.com>
41394
41395         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
41396         Include <stdlib.h>, <string.h> unconditionally.
41397         Remove now-unnecessary cast to char *.
41398         * lib/strnlen.c: Include <string.h> unconditionally.
41399         * lib/yesno.c (yesno): Define with a prototype.
41400
41401 2003-09-11  Bruno Haible  <bruno@clisp.org>
41402
41403         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
41404
41405 2003-09-10  Jim Meyering  <jim@meyering.net>
41406
41407         * lib/error.c: Correct indentation of cpp directives.
41408
41409 2003-09-10  Bruno Haible  <bruno@clisp.org>
41410
41411         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
41412         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
41413         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
41414         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
41415         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
41416         <stdlib.h> and <string.h> checks.
41417         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
41418         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
41419
41420 2003-09-10  Bruno Haible  <bruno@clisp.org>
41421
41422         * lib/strcspn.c: Include <string.h> unconditionally.
41423         * lib/strpbrk.c: Include <string.h> unconditionally.
41424         * lib/strstr.c: Include <string.h> unconditionally.
41425         * lib/unicodeio.c: Include <string.h> unconditionally.
41426         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
41427         * lib/unsetenv.c: Likewise.
41428         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
41429         * lib/yesno.c: Include <stdlib.h> unconditionally.
41430         (rpmatch): Add prototype.
41431
41432 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41433
41434         More patches to assume C89 or better.
41435         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
41436         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
41437         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
41438         or for string.h.
41439         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
41440         stdlib.h.
41441         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
41442         C headers.
41443         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
41444         string.h.
41445         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
41446         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
41447         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
41448         or for string.h.
41449         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
41450         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
41451         C headers.
41452         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
41453         memcpy.
41454         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
41455         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
41456         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
41457         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
41458         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
41459         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
41460         string.h, free.
41461         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
41462         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
41463         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
41464         C headers, or for string.h.
41465         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
41466         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
41467         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
41468         headers, memory.h, stdlib.h, string.h, strings.h.
41469         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
41470         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
41471         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
41472         strchr.
41473         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
41474         headers, memory.h, string.h.
41475         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
41476         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
41477         free.
41478         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
41479         headers.
41480         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
41481         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
41482         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
41483         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
41484         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
41485
41486 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41487
41488         More K&R removal.
41489
41490         * lib/acosl.c (main): Use a prototype.
41491         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
41492         tanl.c: Likewise.
41493
41494         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
41495
41496         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
41497         (getopt, etopt_long, getopt_long_only, _getopt_internal)
41498         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
41499         with a prototype.
41500         * lib/getopt.c (const): Remove macro.
41501         Include <string.h> unconditionally.
41502         (my_index): Remove; all uses changed to strchr.
41503         (strlen): Remove decl.
41504         (exchange): Remove forward decl; no longer needed.
41505         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
41506         Define with prototype.
41507         * lib/getopt1.c (const): Remove macro.
41508         (getopt_long, getopt_long_only, main): Define with prototype.
41509
41510         * lib/getugroups.c: Include <string.h> unconditionally.
41511
41512         * lib/getusershell.c: Include <stdlib.h> unconditionally.
41513         (getusershell, setusershell, endusershell, readname, main):
41514         Define with prototypes.
41515
41516         * lib/group-member.c: Include group-member.h first.
41517         Include <stdlib.h> unconditionally.
41518
41519         * lib/hard-locale.c: Include hard-locale.h first.
41520         Include <stdlib.h>, <string.h> unconditionally.
41521
41522         * lib/hash.c (free, malloc): Remove decls.
41523         Include <stdlib.h> unconditionally.
41524
41525         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
41526         (getenv): Do not declare.
41527
41528         * lib/idcache.c: Include <string.h> unconditionally.
41529
41530         * lib/long-options.c: Include long-options.h first, to test interface.
41531         Include <stdlib.h> unconditionally.
41532
41533         * lib/makepath.c: Include makepath.h first, to test interface.
41534         Include <stdlib.h> and <string.h> unconditionally.
41535
41536         * lib/linebuffer.c: Include <stdlib.h>.
41537         (free): Remove decl.
41538
41539         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
41540         stddef.h. rpl_malloc returns void *, not char *.
41541         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
41542         prototype.
41543
41544         * lib/md5.h: Include <limits.h> unconditionally.
41545         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
41546         (__P): Remove; all uses removed.
41547         * lib/md5.c: Include "md5.h" first.
41548         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
41549         md5_buffer, md5_process_bytes, md5_process_block):
41550         Define with prototypes.
41551         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
41552         * lib/sha.c: Include "sha.h" first.
41553         Include <stdlib.h>, <string.h> unconditionally.
41554
41555         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
41556         * lib/memcmp.c (__ptr_t): Likewise.
41557         * lib/memrchr.c (__ptr_t): Likewise.
41558         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
41559         Include <string.h> unconditionally.
41560         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
41561         * lib/memchr.c: Include <stdlib.h> unconditionally.
41562         * lib/memchr.c (LONG_MAX): Remove.
41563         * lib/memrchr.c (LONG_MAX): Likewise.
41564         * lib/memchr.c (__memchr): Define via a prototype.
41565         * lib/memrchr.c (__memrchr): Likewise.
41566         * lib/memcmp.c (__P): Remove, and remove all uses.
41567         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
41568         Remove forward decls; no longer needed.
41569         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
41570         Use types required by C89 in prototype.
41571
41572         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
41573         * lib/savedir.c: Likewise.
41574         * lib/mkdir.c (free): Remove decl.
41575         * lib/rmdir.c (rmdir): Define with a prototype.
41576         * lib/savedir.c: Include savedir.h first, to test interface.
41577
41578         * lib/mktime.c (STDC_HEADERS): Remove.
41579         Include <stdlib.h>, <string.h> unconditionally.
41580
41581         * lib/modechange.c: Include <stdlib.h> unconditionally.
41582         (malloc): Remove decl.
41583
41584         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
41585         (free): Remove decl.
41586
41587         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
41588         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
41589         (This type really should be intptr_t, but that's a C99ism.)
41590         (_obstack_memcpy): Remove: all uses changed to memcpy.
41591         Include <string.h> unconditionally.
41592         (struct obstack): Assume __STDC__ for types of members
41593         chunkfun, freefun, extra_arg.
41594         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
41595         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
41596         obstack_begin, obstack_specify_allocation,
41597         obstack_specify_allocation_with_arg, obstack_chunkfun,
41598         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
41599         Remove unprototyped decls and the macros that use them.
41600         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
41601         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
41602         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
41603         (defined __STDC__ && __STDC__)]:
41604         Remove nonprototyped code.
41605         Include <stdlib.h> unconditionally.
41606         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
41607         _obstack_allocated_p, _obstack_free, obstack_free,
41608         _obstack_memory_used, print_and_abort):
41609         Define using prototypes.
41610         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
41611         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
41612         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
41613         obstack_next_free, obstack_object_size, obstack_room) [0]:
41614         Remove unused, unprototyped code.
41615
41616         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
41617
41618         * lib/physmem.c (physmem_total, physmem_available, main): Define
41619         with prototypes.
41620
41621         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
41622         (main): Define with a prototype.
41623
41624         * lib/posixver.c (getenv): Remove decl.
41625
41626         * lib/putenv.c (malloc): Returns void *, not char *.
41627         Include <string.h> unconditionally.
41628         (strchr, memcpy, NULL): Do not define.
41629
41630         * lib/readtokens.c: Include readtokens.h first, to test interface.
41631         Include <stdlib.h>, <string.h> unconditionally.
41632         (init_tokenbuffer): Define with a prototype.
41633
41634         * lib/regex.c (PARAMS): Remove.  All uses removed.
41635         All uses of _RE_ARGS removed, too.
41636         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
41637         unconditionally.
41638         (bzero): Assume memset exists.
41639         (memcmp, memcpy, NULL): Remove.
41640         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
41641         char, or assignments to local vars of type signed char.
41642         (init_syntax_once, PREFIX(extract_number_and_incr),
41643         PREFIX(print_partial_compiled_pattern),
41644         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
41645         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
41646         PREFIX(regex_grow_registers), PREFIX(regex_compile),
41647         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
41648         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
41649         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
41650         wcs_compile_range, byte_compile_range, truncate_wchar,
41651         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
41652         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
41653         count_mbs_length, wcs_re_match_2_internal,
41654         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
41655         PREFIX(alt_match_null_string_p),
41656         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
41657         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
41658         regfree, PREFIX(extract_number)): Define with prototype.  Remove
41659         now-unnecessary declaration, if any.
41660         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
41661         regcomp, regexec):
41662         Remove now-unnecessary casts among pointer types.
41663         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
41664
41665         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
41666         (free): Remove decl.
41667
41668         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
41669
41670         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
41671         (free): Remove decl.
41672
41673         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
41674         * lib/xgetcwd.c: Likewise.
41675
41676         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
41677         (free): Remove decl.
41678
41679         * lib/strchrnul.c (strchrnul): Define with a prototype.
41680         Fix bug: c_in was not converted to char before searching.
41681
41682         The following changes are not K&R related:
41683
41684         * lib/group-member.h: Include <sys/types.h>, so that this file is
41685         self-contained.
41686         * lib/makepath.h: Likewise.
41687
41688         * lib/getusershell.c (readname, default_index, line_size, readname):
41689         Use size_t, not int, for sizes.
41690         (readname): If the size overflows, report an error instead of
41691         looping forever.
41692
41693 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41694
41695         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
41696         libc.
41697
41698 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41699
41700         * README: New section: portability guidelines.
41701
41702 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
41703
41704         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
41705         C89 spec.
41706
41707 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
41708
41709         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
41710
41711 2003-09-08  Paul Eggert  <eggert@twinsun.com>
41712
41713         Assume C89 or better; remove K&R cruft.
41714         A few of these changes were first proposed by Derek Robert Price
41715         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
41716
41717         * lib/addext.c: Include <string.h> unconditionally.
41718         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
41719         Don't declare getenv or malloc.
41720
41721         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
41722         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
41723         (NULL): Remove.
41724         (find_stack_direction, alloca): Use prototypes.
41725
41726         * lib/atexit.c (atexit): Define using a prototype.
41727
41728         * lib/basename.c, dirname.c, stripslash.c:
41729         Include <string.h> unconditionally.
41730
41731         * lib/bcopy.c: Include <stddef.h>.
41732         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
41733
41734         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
41735
41736         * lib/error.h (error, error_at_line, error_print_progname)
41737         [! (defined (__STDC__) && __STDC__)]: Remove decls.
41738         * lib/error.c: Include error.h first, to check interface.
41739         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
41740         (VA_START): Remove; all uses changeed to va_start.
41741         (exit, strerror): Remove decls.
41742         (error_print_progname): Prototype uncondionally.
41743         Don't include <errno.h>; no longer needed.
41744         (private_strerror): Remove.
41745         (error_tail): Always define.
41746         (error, error_at_line): Assume C89 or better; always use prototypes.
41747         * lib/fatal.c: Include "fatal.h" first, to test interface.
41748         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
41749         (VA_START): Remove; all uses changed to va_start.
41750         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
41751         this case.
41752         (exit): Remove decl.
41753         (fatal): Prototype unconditionally.  Assume va_start works.
41754         Abort at end, to pacify gcc.
41755
41756         * lib/euidaccess.c (main): Define with a prototype.
41757
41758         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
41759
41760         * lib/exitfail.c: Include <stdlib.h> unconditionally.
41761
41762         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
41763         prototypes.
41764         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
41765         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
41766         (getenv): Remove decl.
41767         (fnmatch): Define using a prototype.
41768         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
41769         (FCT): Define using a prototype.
41770
41771         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
41772
41773         * lib/gethostname.c: Include <stddef.h>.
41774         (gethostname): Define with prototype.  Length is size_t, not int.
41775
41776 2003-09-08  Paul Eggert  <eggert@twinsun.com>
41777
41778         Assume C89 or better; remove K&R cruft.
41779         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
41780         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
41781         string.h, getenv, malloc.
41782         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
41783         headers.
41784         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
41785         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
41786         do not check for strerror.
41787         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
41788         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
41789         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
41790         do not check for doprnt or vprintf.
41791         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
41792         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
41793
41794 2003-09-08  Paul Eggert  <eggert@twinsun.com>
41795
41796         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
41797         getversion.c should have been removed then, but was accidentally
41798         preserved.
41799
41800         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
41801         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
41802
41803 2003-09-08  Karl Berry  <karl@gnu.org>
41804
41805         * config/config.sub, config.guess, srclistvars.sh: update from savannah
41806                 config, forget about prep.
41807
41808         * config/depcomp, missing: update from automake.
41809
41810 2003-09-07  Paul Eggert  <eggert@twinsun.com>
41811
41812         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
41813         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
41814
41815 2003-09-07  Paul Eggert  <eggert@twinsun.com>
41816
41817         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
41818         copy_tm_result.  Bug reported by Simon Josefsson in
41819         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
41820
41821 2003-09-06  Paul Eggert  <eggert@twinsun.com>
41822
41823         * m4/time_r.m4: New file.
41824         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
41825         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
41826         is. Check for timegm declaration.
41827         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
41828         Do not check for gmtime_r.
41829         Replace mktime if __mktime_internal does not exist and if mktime
41830         hasn't been replaced already.
41831
41832 2003-09-06  Paul Eggert  <eggert@twinsun.com>
41833
41834         * lib/time_r.c, lib/time_r.h: New files.
41835
41836         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
41837         __localtime_r.
41838         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
41839         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
41840
41841         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
41842         __gmtime_r.
41843         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
41844         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
41845         Include <time_r.h>.
41846
41847         * lib/timegm.c: Switch to glibc implementation, with the following
41848         changes:
41849         [defined HAVE_CONFIG_H]: Include <config.h>.
41850         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
41851         (__mktime_internal) [!defined _LIBC]: New decl.
41852         (__gmtime_r) [!defined _LIBC]: New macro and function.
41853         (timegm): Use a prototype, since gnulib assumes C89.
41854         Do not bother declaring tmp to be const, as it's not really usefu.
41855         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
41856         (timegm): Declare only if HAVE_DECL_TIMEGM.
41857
41858 2003-09-06  Paul Eggert  <eggert@twinsun.com>
41859
41860         * MODULES.html.sh (func_all_modules): Add time_r.
41861         * modules/time_r: New file.
41862         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
41863         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
41864
41865 2003-09-03  Paul Eggert  <eggert@twinsun.com>
41866
41867         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
41868         Bug reported by Lute Kamstra in
41869         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
41870
41871         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
41872         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
41873         course with correspondingly smaller numbers for tomorrow and
41874         yesterday.  From Tadayoshi Funaba.  Originally installed into
41875         sh-utils on 1999-08-07, but the patch got lost (I guess during the
41876         coreutils merge?).
41877
41878 2003-08-31  Simon Josefsson  <jas@extundo.com>
41879
41880         * modules/timegm: New file.
41881         * MODULES.html.sh (func_all_modules): Add timegm.
41882
41883 2003-08-31  Simon Josefsson  <jas@extundo.com>
41884
41885         * m4/timegm.m4: New file.
41886
41887 2003-08-31  Simon Josefsson  <jas@extundo.com>
41888
41889         * lib/timegm.h: New file.
41890         * lib/timegm.c: New file.  Based on
41891         wget-1.8.2/src/http.c:mktime_from_utc.
41892
41893 2003-08-31  Karl Berry  <karl@gnu.org>
41894
41895         * lib/argp.h: update from libc.
41896
41897 2003-08-28  Bruno Haible  <bruno@clisp.org>
41898
41899         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
41900         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
41901         followed by '#define fnmatch fnmatch_posix' gives an error.
41902
41903 2003-08-28  Bruno Haible  <bruno@clisp.org>
41904
41905         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
41906         warning on QNX, which defines O_BINARY to 000000.
41907
41908 2003-08-27  Jim Meyering  <jim@meyering.net>
41909
41910         * m4/mkstemp.m4: Require that the system mkstemp be able to create
41911         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
41912         would fail after 32.  Reported by Danny Levinson.  Details here:
41913         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
41914
41915 2003-08-24  Bruno Haible  <bruno@clisp.org>
41916
41917         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
41918         MSVC7 <stdio.h> is included later.
41919
41920 2003-08-22  Simon Josefsson  <jas@extundo.com>
41921
41922         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
41923
41924 2003-08-20  Karl Berry  <karl@gnu.org>
41925
41926         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
41927
41928 2003-08-20  Bruno Haible  <bruno@clisp.org>
41929
41930         * modules/progname: New file.
41931         * MODULES.html.sh (func_all_modules): Add progname.
41932
41933 2003-08-20  Bruno Haible  <bruno@clisp.org>
41934
41935         * lib/progname.h: New file, from GNU gettext.
41936         * lib/progname.c: New file, from GNU gettext.
41937         * lib/progreloc.c: New file, from GNU gettext.
41938
41939 2003-08-19  Jim Meyering  <jim@meyering.net>
41940
41941         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
41942         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
41943
41944 2003-08-19  Bruno Haible  <bruno@clisp.org>
41945
41946         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
41947         more.
41948
41949 2003-08-19  Bruno Haible  <bruno@clisp.org>
41950
41951         * lib/xstrdup.c: Assume <string.h> exists.
41952
41953 2003-08-18  Paul Eggert  <eggert@twinsun.com>
41954
41955         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
41956         in makefile rules.
41957
41958 2003-08-18  Jim Meyering  <jim@meyering.net>
41959
41960         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
41961         * m4/lib-ld.m4: Likewise.
41962
41963 2003-08-18  Jim Meyering  <jim@meyering.net>
41964
41965         * lib/setenv.h: Indent nested cpp directive.
41966         * lib/vasnprintf.c: Remove trailing blanks.
41967
41968 2003-08-17  Simon Josefsson  <jas@extundo.com>
41969
41970         * modules/xstrndup: New file.
41971         * MODULES.html.sh (func_all_modules): Add xstrndup.
41972
41973 2003-08-17  Simon Josefsson  <jas@extundo.com>
41974
41975         * modules/argp: Fix autoconf macro name. Add more dependencies.
41976
41977 2003-08-17  Simon Josefsson  <jas@extundo.com>
41978
41979         * m4/xstrndup.m4: New file.
41980
41981 2003-08-17  Simon Josefsson  <jas@extundo.com>
41982
41983         * m4/argp.m4: New file.
41984
41985 2003-08-17  Simon Josefsson  <jas@extundo.com>
41986             Bruno Haible  <bruno@clisp.org>
41987
41988         * lib/xstrndup.h: New file.
41989         * lib/xstrndup.c: New file.
41990
41991 2003-08-17  Bruno Haible  <bruno@clisp.org>
41992
41993         * modules/strndup (Files, Include): Add lib/strndup.h.
41994
41995 2003-08-17  Bruno Haible  <bruno@clisp.org>
41996
41997         * modules/euidaccess (Files): Add lib/euidaccess.h.
41998
41999 2003-08-17  Bruno Haible  <bruno@clisp.org>
42000
42001         * lib/strndup.h: New file.
42002
42003 2003-08-17  Bruno Haible  <bruno@clisp.org>
42004
42005         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
42006         like AC_GNU_SOURCE.
42007         * modules/extensions (configure.ac): Comment out the invocation of
42008         gl_USE_SYSTEM_EXTENSIONS.
42009
42010 2003-08-16  Paul Eggert  <eggert@twinsun.com>
42011
42012         Merges from coreutils, etc.
42013         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
42014         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
42015         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
42016         fixing a typo.
42017         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
42018         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
42019
42020 2003-08-16  Paul Eggert  <eggert@twinsun.com>
42021
42022         Document merge from coreutils.
42023         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
42024         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
42025         * modules/utime: Add m4/utimes-null.m4.
42026
42027 2003-08-16  Paul Eggert  <eggert@twinsun.com>
42028
42029         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
42030         space, undoing this 2003-08-12 change:
42031         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
42032
42033 2003-08-16  Paul Eggert  <eggert@twinsun.com>
42034
42035         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
42036         strtoul.c from libc, undoing this 2003-08-12 change:
42037         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
42038
42039 2003-08-16  Jim Meyering  <jim@meyering.net>
42040
42041         Merges from coreutils.
42042         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
42043         prefix.  Adjust cache variables similarly.  Create 500 rather than
42044         just 300 files, to exercise bug on Darwin6.5, too.
42045         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
42046         $missing_dir.
42047         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
42048         AM_SYS_POSIX_TERMIOS.
42049         Reported by mkc@mathdogs.com.
42050         Also change use of $am_cv_sys_posix_termios
42051         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
42052         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
42053         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
42054         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
42055         in /proc/mounts until it finds one with matching device number.  This
42056         is unnecessary when the FILE argument *is* a mount point.  No stat call
42057         is necessary in that case.  So, disable the statvfs-testing code on
42058         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
42059         as RedHat bug# 84846.
42060         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
42061         to 1MB, so as not to render systems with no stack size limit (e.g.,
42062         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
42063         Include <unistd.h>.  On some systems,
42064         it is required for the definition of _SC_PAGESIZE.
42065
42066 2003-08-16  Jim Meyering  <jim@meyering.net>
42067
42068         Merge from coreutils.
42069         * lib/xstrtoimax.c: #else #if -> #elif.
42070         * lib/xstrtoumax.c: Likewise.
42071
42072 2003-08-16  Jim Meyering  <jim@meyering.net>
42073
42074         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
42075         * m4/utimes.m4: Removed.
42076         * m4/utimes-null.m4: Renamed from utimes.m4.
42077
42078         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
42079         to 1MB, so as not to render systems with no stack size limit (e.g.,
42080         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
42081         Include <unistd.h>.  On some systems,
42082         it is required for the definition of _SC_PAGESIZE.
42083
42084 2003-08-16  Jim Meyering  <jim@meyering.net>
42085         and Paul Eggert  <eggert@cs.ucla.edu>
42086
42087         Merges from coreutils, etc.
42088
42089         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
42090         using the latest version from cvs.  This avoids problems with #line
42091         directives using a vendor (Sun) compiler.
42092         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
42093         Don't set GETGROUPS_LIB here; now it's
42094         done via getgroups.m4's wrapper function.
42095         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
42096         rather than just in sh-util/configure.in, so that the
42097         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
42098         same.
42099         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
42100         AC_FUNC_GETLOADAVG where to find getloadavg.c.
42101         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
42102         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
42103         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
42104         Remove code that is now done by the newly-required macros.
42105         Append $(EXEEXT) to DF_PROG.
42106         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
42107         Do not invoke or require the following here,
42108         since prereq.m4 or some gnulib .m4 now does this for us:
42109         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
42110         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
42111         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
42112         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
42113         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
42114         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
42115         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
42116         AC_FUNC_OBSTACK.
42117         Do not replace the following functions, as this is now the job
42118         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
42119         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
42120         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
42121         atexit getpass, strdup, getpagesize.
42122         Replace 'raise'.
42123         Do not check for the following functions, as this is now the job
42124         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
42125         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
42126         setregid.
42127         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
42128         Check for sys/sysctl.h.
42129         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
42130         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
42131         of checking for ssize_t ourselves.
42132
42133         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
42134         Require every macro that gnulib/modules/* suggests for us.
42135         (jm_PREREQ_ADDEXT): New macro.
42136         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
42137         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
42138
42139         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
42140         (gl_PHYSMEM): Use it.
42141         Also check for `table' function.
42142         Check for new headers and functions.
42143         Add check for sys/sysmp.h.
42144         With suggestions from Kaveh Ghazi.
42145         Ignore headers that are present but cannot be compiled.  This
42146         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
42147         C 5.4.
42148
42149 2003-08-15  Paul Eggert  <eggert@twinsun.com>
42150
42151         Document merge from coreutils.
42152         * modules/userspec: Depend on posixver.
42153         * modules/strftime: Depend on tzset.
42154
42155 2003-08-15  Paul Eggert  <eggert@twinsun.com>
42156
42157         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
42158         rather than tab, after '#' in shell-script copyright notices.
42159         Suggested by Bruno Haible.
42160
42161 2003-08-15  Paul Eggert  <eggert@twinsun.com>
42162
42163         * config/srclist-update: Use three spaces, rather than tab, after '#'
42164         in shell-script copyright notices.  Suggested by Bruno Haible.
42165         Remove unnecessary parenthesization in regular expression.
42166
42167 2003-08-15  Jim Meyering  <jim@meyering.net>
42168
42169         Merge from coreutils.
42170         * lib/xgethostname.c: Include <stdlib.h>.
42171         (xghostname): Don't exit for anything other than memory-related
42172         failure; just return NULL.
42173         * lib/userspec.c: Include "posixver.h".
42174         (parse_user_spec): Accept `.' as a separator only
42175         in pre-POSIX-200112 mode.
42176         * lib/strtoimax.c: Use #elif rather than #else #if.
42177         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
42178         Remove function, now that we can rely on a working tzset function.
42179         [!_LIBC]: Ensure that the required autoconf test has been run.
42180         [!defined _NL_CURRENT && HAVE_STRFTIME]:
42181         Use underlying_strftime for %r.
42182         * lib/sha.c: Merge in some clean-up and optimization changes from
42183         glibc.
42184         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
42185         Ensure that it is a multiple of 64.
42186         Rearrange loop exit tests so as to avoid performing an
42187         additional fread after encountering an error or EOF.
42188         * lib/realloc.c: Update copyright date.
42189
42190 2003-08-15  Jim Meyering  <jim@meyering.net>
42191         and Paul Eggert  <eggert@twinsun.com>
42192
42193         Merge from coreutils.
42194         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
42195         member but strut utmpx does not.  Needed for AIX 4.3.3.
42196         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
42197
42198 2003-08-15  Jim Meyering  <jim@meyering.net>
42199         and Paul Eggert  <eggert@cs.ucla.edu>
42200
42201         Merges from coreutils, etc.
42202         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
42203         Require gl_FUNC_TZSET_CLOBBER.
42204         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
42205         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
42206         members.
42207
42208 2003-08-14  Paul Eggert  <eggert@twinsun.com>
42209
42210         Help the merge from coreutils.
42211         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
42212         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
42213         * m4/tzset.m4: Use it too.
42214
42215 2003-08-14  Paul Eggert  <eggert@twinsun.com>
42216
42217         * modules/tzset: New file.
42218
42219 2003-08-14  Jim Meyering  <jim@meyering.net>
42220
42221         Merges from coreutils.
42222         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
42223         variable names, rather than @FNMATCH_H@.
42224         * modules/alloca: Likewise for $(ALLOCA_H).
42225
42226         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
42227         the three copies of the literal target, `fnmatch.h'.
42228         * modules/alloca (alloca.h): Likewise.
42229
42230 2003-08-14  Jim Meyering  <jim@meyering.net>
42231
42232         Merge from coreutils.
42233         * m4/tzset.m4: New file.
42234         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
42235         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
42236         otherwise, AIX 5.1 systems would end up using the latter.
42237         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
42238         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
42239         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
42240         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
42241
42242 2003-08-14  Jim Meyering  <jim@meyering.net>
42243
42244         Merge from coreutils.
42245         * lib/obstack.h: Whitespace changes.
42246         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
42247         and xcalloc return values.
42248         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
42249         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
42250         hang on OSF/1 5.1 for DIR on both local and remote file systems.
42251         Reported by (and fix confirmed by) Nelson H. F. Beebe.
42252         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
42253         error from mntctl.
42254         Use mntctl's return value to drive the entry-processing loop, since
42255         we can't rely on the value of the vmt_length member in the last
42256         entry.  On some systems doing so could result in exhausting
42257         virtual memory.  Based in part on a patch from Mike Jetzer.
42258
42259 2003-08-14  Jim Meyering  <jim@meyering.net>
42260         and Paul Eggert  <eggert@twinsun.com>
42261
42262         Merges from coreutils, plus other fixes.
42263         * lib/physmem.c: Merge in portability changes from gcc/libiberty
42264         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
42265         for credits and details.  Thanks to Kaveh Ghazi for helping
42266         to keep these files in sync.
42267         (ARRAY_SIZE): Define it.
42268         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
42269         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
42270         (memcasecmp): Don't assume size_t fits in unsigned int.
42271         Remove casts and duplicate code.
42272         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
42273         (memcpy): Remove definition.
42274         Merge in some clean-up and optimization changes from glibc.
42275         [BLOCKSIZE]: Move definition to top of file.
42276         Ensure that it is a multiple of 64.
42277         Rearrange loop exit tests so as to avoid performing an
42278         additional fread after encountering an error or EOF.
42279         * lib/md5.h (md5_uintptr): Define.
42280         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
42281         return to the initial working directory.  Preserve errno
42282         for caller.
42283         * lib/idcache.c: Include "xalloc.h".
42284         (xmalloc, xrealloc): Remove decls.
42285         (getuser): Remove casts no longer required in C89.
42286         * lib/human.c: Include stdio.h, for sprintf.
42287         * lib/group-member.c: Include "xalloc.h".
42288         (xmalloc, xrealloc): Remove decls.
42289         (get_group_info): Remove casts no longer required in C89.
42290         * lib/getusershell.c (readname): Remove casts no longer required in
42291         C89.
42292         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
42293         * lib/getline.c: Whitespace fix, from coreutils.
42294
42295 2003-08-13  Paul Eggert  <eggert@twinsun.com>
42296
42297         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
42298         Check for isascii.
42299
42300         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
42301         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
42302         Undo previous (whitespace-only) change.
42303
42304 2003-08-13  Paul Eggert  <eggert@twinsun.com>
42305
42306         * lib/exclude.c: Include <ctype.h>
42307         (IN_CTYPE_DOMAIN): New macro.
42308         (is_space): New fn.
42309         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
42310         and empty lines.
42311
42312         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
42313         Undo previous (whitespace-only) change.
42314
42315 2003-08-13  Paul Eggert  <eggert@twinsun.com>
42316
42317         * config/srclist-update: Change update back to the old behavior,
42318         leaving whitespace alone.  Use one 'sed' command rather than a
42319         pipeline.
42320         (fixlicense): Now a variable, not a function.
42321         (remove_trailing_blanks): Remove.
42322         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
42323         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
42324         Undo previous (whitespace-only) change.
42325
42326 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42327
42328         Merge from coreutils.
42329         * modules/euidaccess: Add lib_SOURCES, include for new
42330         file euidaccess.h
42331
42332 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42333
42334         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
42335         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
42336         Normalize leading white space and remove trailing white space.
42337
42338         Merge from coreutils
42339         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
42340
42341         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
42342         0.12.1.  These files are now being upgraded automatically by
42343         ../config/srclist-update.
42344
42345 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42346
42347         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
42348         Normalize leading white space and remove trailing white space.
42349         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
42350         notice, as per ../config/srclist-update.
42351
42352         Merge from coreutils.
42353         * lib/euidaccess.h: New file.
42354         * lib/euidaccess.c: Include it.
42355         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
42356         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
42357         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
42358
42359 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42360
42361         * config/srclist-update: Add copyright notice.
42362         (remove_id_lines, remove_trailing_blanks): New constants.
42363         (fixfile): Use them to normalize spacing a bit in copied files.
42364         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
42365         Normalize leading white space and remove trailing white space.
42366
42367         * config/texinfo.tex: Sync with texinfo.
42368
42369         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
42370         strtoul.c from libc, to merge coreutils whitespace changes.
42371
42372         * config/srclist.txt: Get the following m4 files from gettext:
42373         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
42374         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
42375         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
42376         wint_t.m4.
42377
42378 2003-08-12  Karl Berry  <karl@gnu.org>
42379
42380         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
42381         been made.
42382
42383 2003-08-11  Paul Eggert  <eggert@twinsun.com>
42384
42385         * modules/gnu-source, m4/gnu-source.m4:
42386         Remove; we're assuming Autoconf 2.54 or later now.
42387         Suggested by Bruno Haible.
42388         * MODULES.html.sh (func_all_modules): Remove gnu-source.
42389
42390 2003-08-11  Bruno Haible  <bruno@clisp.org>
42391
42392         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
42393
42394 2003-08-11  Bruno Haible  <bruno@clisp.org>
42395
42396         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
42397         (vasnprintf): Use it instead of wcslen.
42398
42399 2003-08-11  Bruno Haible  <bruno@clisp.org>
42400
42401         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
42402         value to ensure that _Bool promotes to int. Use #define for _Bool when
42403         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
42404
42405 2003-08-10  Karl Berry  <karl@gnu.org>
42406
42407         * lib/regex.h: update from libc (whitespace fix).
42408
42409 2003-08-09  Paul Eggert  <eggert@twinsun.com>
42410
42411         Merge some files from coreutils.  These changes were
42412         originally made by Jim Meyering.
42413         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
42414         many older Unixes require this.
42415         * lib/alloca.c (alloca): Remove cast to argument of free;
42416         no longer needed in C89.
42417         * lib/alloca_.h, regex.h: Fix white space to match
42418         what GNU indent does.
42419
42420 2003-08-09  Paul Eggert  <eggert@twinsun.com>
42421
42422         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
42423         apparently Emacs's Unicode mode got confused before my 2003-08-05
42424         checkin.
42425
42426 2003-08-08  Paul Eggert  <eggert@twinsun.com>
42427
42428         * m4/extensions.m4: New file.
42429         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
42430         Require gl_USE_SYSTEM_EXTENSIONS.
42431         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
42432         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
42433
42434 2003-08-08  Paul Eggert  <eggert@twinsun.com>
42435
42436         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
42437         * modules/extensions, modules/gnu-source: New files.
42438         * modules/timespec, modules/unlocked-io: Depend on extensions.
42439
42440 2003-08-07  Paul Eggert  <eggert@twinsun.com>
42441
42442         * modules/restrict: New file.
42443         * MODULES.html.sh (func_all_modules): Add restrict.
42444         * modules/regex: Depend on restrict.
42445
42446 2003-08-07  Paul Eggert  <eggert@twinsun.com>
42447
42448         * m4/restrict.m4: New file.
42449         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
42450
42451 2003-08-07  Bruno Haible  <bruno@clisp.org>
42452
42453         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
42454         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
42455
42456 2003-08-07  Bruno Haible  <bruno@clisp.org>
42457
42458         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
42459         makes the module 'getndelim2' compatible with the module 'getline'.
42460
42461 2003-08-05  Paul Eggert  <eggert@twinsun.com>
42462
42463         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
42464         byte with "\201" to avoid glitches when editing that source file
42465         with multi-gnome-terminal.
42466
42467 2003-08-05  Paul Eggert  <eggert@twinsun.com>
42468
42469         * lib/bumpalloc.h: Remove.
42470
42471 2003-08-05  Paul Eggert  <eggert@twinsun.com>
42472
42473         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
42474         * modules/bumpalloc: Remove.
42475
42476 2003-08-04  Paul Eggert  <eggert@twinsun.com>
42477
42478         * lib/getloadavg.c: Change copyright notice and spacing to conform to
42479         GNU coding style.
42480
42481         Merge from coreutils.
42482         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
42483         1. From glibc.
42484         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
42485         from Karl Berry, implemented by Jim Meyering.
42486         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
42487         from Dmitry V. Levin.
42488         Remove anachronistic cast of xrealloc.
42489         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
42490         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
42491         type. Otherwise, it wouldn't compile with at least /bin/cc on
42492         ymp-cray-unicos9.0.2.X.
42493         Combine two mostly-identical uses of alloca into one.
42494         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
42495
42496 2003-08-04  Dave Love  <d.love@dl.ac.uk>
42497
42498         [From Emacs.]
42499
42500         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
42501         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
42502         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
42503         obsolete NLIST_NAME_UNION.
42504         [__GNU__]: Undef BSD and FSCALE.
42505         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
42506
42507 2003-08-03  Paul Eggert  <eggert@twinsun.com>
42508
42509         * lib/stdbool_.h (_Bool): Make it signed char, instead of
42510         an enum type, so that it's guaranteed to promote to int.  See:
42511         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
42512
42513 2003-08-03  Karl Berry  <karl@gnu.org>
42514
42515         * config/depcomp: update from automake.
42516
42517 2003-07-31  Paul Eggert  <eggert@twinsun.com>
42518
42519         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
42520         (strerror): Don't assume that a printable int fits in 14 bytes.
42521
42522 2003-07-31  Bruno Haible  <bruno@clisp.org>
42523
42524         * modules/getpass-gnu: New file.
42525         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
42526
42527 2003-07-31  Bruno Haible  <bruno@clisp.org>
42528
42529         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
42530
42531 2003-07-24  Karl Berry  <karl@gnu.org>
42532
42533         * config/missing: update from automake.
42534
42535 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
42536             Bruno Haible  <bruno@clisp.org>
42537
42538         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
42539         * lib/getline.c (getline, getdelim): Likewise.
42540         Remove _GNU_SOURCE define; now it's defined in config.h through
42541         m4/getline.m4.
42542
42543 2003-07-23  Karl Berry  <karl@gnu.org>
42544
42545         * config/config.sub: update from prep.
42546
42547 2003-07-22  Paul Eggert  <eggert@twinsun.com>
42548
42549         * modules/xalloc (Depends-on): Add exitfail.
42550         * modules/xmemcoll: Likewise.
42551
42552 2003-07-22  Paul Eggert  <eggert@twinsun.com>
42553
42554         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
42555         over-parenthesization in macros.
42556
42557         Sync with coreutils.
42558
42559         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
42560         required by C99.
42561
42562         Use `exit_failure' for xalloc and xmemcoll instead of their own
42563         private exit-failure variables.
42564         * lib/xalloc.h (xalloc_exit_failure): Remove.
42565         * lib/xmalloc.c: Likewise.  Include exitfail.h.
42566         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
42567         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
42568         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
42569         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
42570
42571 2003-07-20  Jim Meyering  <jim@meyering.net>
42572
42573         * modules/closeout (Depends-on): Add exitfail.
42574         Suggestion from Bruno Haible.
42575
42576 2003-07-19  Karl Berry  <karl@gnu.org>
42577
42578         * config/config.sub: update from prep.
42579
42580 2003-07-18  Paul Eggert  <eggert@twinsun.com>
42581
42582         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
42583         Remove.
42584         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
42585         to test that it can stand by itself.  Include "exitfail.h".
42586         Clients should set exit_failure instead.
42587         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
42588
42589 2003-07-18  Bruno Haible  <bruno@clisp.org>
42590
42591         * modules/getndelim2: New file.
42592         * modules/getline: Share files with module getndelim2.
42593         * modules/getnline: Depend on getndelim2 instead of sharing files with
42594         it. Add getnline.c to lib_SOURCES.
42595         * MODULES.html.sh (func_all_modules): Add getndelim2.
42596
42597 2003-07-18  Bruno Haible  <bruno@clisp.org>
42598
42599         * m4/getndelim2.m4: New file.
42600         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
42601         invoke gl_PREREQ_GETNDELIM2.
42602         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
42603         gl_PREREQ_GETNDELIM2.
42604         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
42605         gl_GETNDELIM2.
42606
42607 2003-07-18  Bruno Haible  <bruno@clisp.org>
42608
42609         * lib/getndelim2.h: New file.
42610         * lib/getndelim2.c: Make into a module of its own. Include config.h,
42611         getndelim2.h.
42612         (getndelim2): Make non-static. Change return type to ssize_t.
42613         * lib/getline.h: Change argument names.
42614         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
42615         * lib/getnline.c: Include getndelim2.h.
42616
42617 2003-07-18  Andreas Schwab  <schwab@suse.de>
42618
42619         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
42620
42621 2003-07-17  Karl Berry  <karl@gnu.org>
42622
42623         * config/config.sub: update from prep.
42624
42625 2003-07-17  Bruno Haible  <bruno@clisp.org>
42626
42627         * modules/getnline: New file.
42628         * modules/getline: Add lib/getndelim2.c to source file list.
42629         * MODULES.html.sh (func_all_modules): Add getnline.
42630
42631 2003-07-17  Bruno Haible  <bruno@clisp.org>
42632
42633         * m4/getnline.m4: New file.
42634
42635 2003-07-17  Bruno Haible  <bruno@clisp.org>
42636
42637         * m4/Makefile.am.in: Remove file.
42638         * m4/Makefile.am: Remove file.
42639         * m4/Makefile.in: Remove file.
42640
42641 2003-07-17  Bruno Haible  <bruno@clisp.org>
42642
42643         * lib/getnline.h: New file.
42644         * lib/getnline.c: New file.
42645         * lib/getndelim2.c: New file, extracted from getline.c.
42646         (getndelim2): Renamed from getdelim2, with added nmax argument.
42647         * lib/getline.c: Include getndelim2.c.
42648         (getdelim2): Moved out to getndelim2.c.
42649         (getline, getdelim): Update.
42650
42651 2003-07-17  Bruno Haible  <bruno@clisp.org>
42652
42653         * lib/Makefile.am: Remove file.
42654         * lib/Makefile.in: Remove file.
42655
42656 2003-07-17  Bruno Haible  <bruno@clisp.org>
42657
42658         * configure.in: Remove file.
42659         * Makefile.in: Remove file.
42660
42661 2003-07-17  Bruno Haible  <bruno@clisp.org>
42662
42663         * MODULES.html.sh: Put the </BODY> right before </HTML>.
42664
42665 2003-07-16  Karl Berry  <karl@gnu.org>
42666
42667         * config/srclist-update: was running fixlicense twice, which caused
42668                 texinfo.tex to be nullified for some reason.  Simplify,
42669                 $gplsrc is no longer needed as far as I can see?
42670
42671 2003-07-16  Jim Meyering  <jim@meyering.net>
42672
42673         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
42674
42675 2003-07-15  Paul Eggert  <eggert@twinsun.com>
42676
42677         * config/srclist.txt: Get the following files from gettext-runtime/intl
42678         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
42679         ref-del.sin.  From Bruno Haible.
42680         * config/srclist-update (fixfile): Change grep pattern again, since the
42681         previous fix didn't work (there was another trailing $).  Use
42682         '[$]' to escape the $s.
42683
42684 2003-07-15  Karl Berry  <karl@gnu.org>
42685
42686         * lib/vasnprintf.c: update from gettext.
42687
42688 2003-07-15  Karl Berry  <karl@gnu.org>
42689
42690         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
42691         gets expanded when surrounded by '$'.
42692
42693 2003-07-15  Jim Meyering  <jim@meyering.net>
42694
42695         * modules/save-cwd: Don't depend on error.  From Derek Price.
42696
42697 2003-07-15  Jim Meyering  <jim@meyering.net>
42698
42699         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
42700
42701 2003-07-14  Simon Josefsson  <jas@extundo.com>
42702
42703         * modules/mempcpy: New file.
42704         * MODULES.html.sh (func_all_modules): Add mempcpy.
42705
42706 2003-07-14  Simon Josefsson  <jas@extundo.com>
42707
42708         * m4/mempcpy.m4: New file.
42709
42710 2003-07-14  Simon Josefsson  <jas@extundo.com>
42711
42712         * lib/mempcpy.h: New file.
42713         * lib/mempcpy.c: New file.
42714
42715 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42716
42717         * modules/getdate, modules/posixtm: Depend on mktime.
42718
42719 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42720
42721         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
42722         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
42723         unicodeio.c, unicodeio.h, unlocked-io.h:
42724         Switch from LGPL to GPL.
42725
42726 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42727
42728         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
42729         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
42730         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
42731         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
42732         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
42733         updated automatically by ../config/srclist-update.  This changes
42734         their license from LPGL to GPL.
42735
42736 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42737
42738         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
42739         assumed to refer to the root of the most recent stable gettext version.
42740         * config/srclistvars.sh: Add defaults for eggert.
42741         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
42742         Match "This program" as well as "The program".  This is needed
42743         for gettext.
42744
42745 2003-07-14  Jim Meyering  <jim@meyering.net>
42746
42747         Don't emit diagnostics.  Let callers do that.
42748         * lib/save-cwd.c: Don't include "error.h".
42749         (save_cwd): Don't call error.  Ensure that errno is valid
42750         when returning nonzero.
42751
42752         * lib/save-cwd.h (restore_cwd): Update prototype.
42753         * lib/save-cwd.c (restore_cwd): Remove two parameters.
42754         Simplify.  Don't call error upon failure.  Let callers do that.
42755         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
42756         when auditing is enabled.  But don't bother updating the #if.
42757
42758 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
42759
42760         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
42761         it breaks C++ compilation.
42762         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
42763
42764 2003-07-10  Simon Josefsson  <jas@extundo.com>
42765
42766         * modules/strchrnul (Makefile.am): Add strchrnul.h.
42767
42768 2003-07-10  Jim Meyering  <jim@meyering.net>
42769
42770         * m4/clock_time.m4: Remove trailing blank.
42771         * m4/intmax_t.m4: Likewise.
42772
42773 2003-07-10  Jim Meyering  <jim@meyering.net>
42774
42775         * lib/vasnprintf.c: Remove trailing blanks.
42776         Make cpp indentation consistent.
42777
42778 2003-07-09  Paul Eggert  <eggert@twinsun.com>
42779
42780         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
42781         posixver.c, strftime.c, strnlen.c, strverscmp.c:
42782         Switch from LGPL to GPL.
42783
42784 2003-07-09  Paul Eggert  <eggert@twinsun.com>
42785
42786         * config/srclist.txt: Sort sublists.  Add
42787         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
42788         that differ from gnulib for one reason or another; we'd like this list
42789         to be smaller but for now let's document what we have.
42790
42791 2003-07-08  Paul Eggert  <eggert@twinsun.com>
42792
42793         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
42794         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
42795         and sweeter "eval x=$x".
42796         * config/srclist.txt: Get lib/argp* from glibc.
42797
42798 2003-07-07  Paul Eggert  <eggert@twinsun.com>
42799
42800         * lib/mktime.c: Fix some boundary cases and remove need for floating
42801         point.
42802
42803         Issue a compile-time diagnostic if time_t is floating point, or if
42804         two's complement arithmetic is not in effect, or if arithmetic
42805         right shift does not propagate the sign.  These assumptions were
42806         all in the original code but they weren't checked.
42807
42808         (TIME_T_MIDPOINT, verify): New macros.
42809         (__isleap): Remove; it has integer overflow problems.
42810         (leapyear): New function, without those problems.
42811         (ydhms_tm_diff): Remove; splitting into two parts.
42812         (ydhms_diff): New function, containing the arithmetic part of
42813         the old ydhms_tm_diff function.  Issue a compile-time
42814         diagnostic if we are not using C99 integer division.
42815         Avoid casts when possible.
42816         (guess_time_tm): New function, containing the checking part of
42817         the old ydhms_tm_diff function.  Return the new value, rather than
42818         the difference between it and the old.  Accept a new argument T
42819         so that *T specifies the old value.  Check for overflow in the result.
42820
42821         (__mktime_internal): Use a time_t offset, not a long int offset.
42822         This undoes the 2003-06-04 change, which is no longer needed now
42823         that we have better overflow checking.
42824         (localtime_offset): Likewise.
42825
42826         (__mktime_internal): Avoid harmful overflow on hosts where time_t
42827         and long are 64-bit but int is only 32-bit.
42828         (ydhms_diff): Use long int to store year1 and yday1.
42829         Issue a compile-time diagnostic if long int is not wide enough.
42830
42831         (__mktime_internal): Use long int to store adjusted year and yday.
42832         Use plain C rather than preprocessor commands, if that doesn't
42833         affect efficiency.
42834         Check for overflow (and try to repair) after each probe
42835         rather than checking only at the very end.  This avoids some bugs
42836         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
42837         does not equal GMT offset at maximum time).
42838         Use integer to check for overflow rather than floating point; this
42839         is more portable to non-IEEE hosts, and is a tad faster.
42840         When we detect that we are oscillating between two values,
42841         don't check whether tm_isdst has the requested value, since
42842         we already know the answer.  When tm_isdst has the wrong value,
42843         use a different heuristic to find the right one, based on the
42844         extreme values actually observed in practice in tz2003a,
42845         rather than the (overly optimistic) "previous 3 calendar quarters".
42846
42847         (not_equal_tm, print_tm, check_result): Use "const T" rather than
42848         "T const" to accommodate glibc style.
42849         (check_result): Use less-confusing report format.  "long" -> "long int.
42850         (main): Likewise.
42851         Don't loop if the iteration overflows time_t.
42852         Allow a negative step in the iteration.
42853
42854 2003-07-06  Karl Berry  <karl@gnu.org>
42855
42856         * config/depcomp: update from automake.
42857         * config/config.sub: update from prep.
42858
42859 2003-07-03  Karl Berry  <karl@gnu.org>
42860
42861         * config/config.guess: update from prep.
42862
42863 2003-07-01  Paul Eggert  <eggert@twinsun.com>
42864
42865         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
42866         xreadlink.c now includes it unconditionally.
42867
42868 2003-07-01  Paul Eggert  <eggert@twinsun.com>
42869
42870         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
42871         having it depend on HAVE_SYS_TYPES_H.
42872
42873 2003-07-01  Bruno Haible  <bruno@clisp.org>
42874
42875         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
42876         <sys/types.h> should be sufficient.
42877         Reported by Paul Eggert.
42878
42879 2003-06-26  Karl Berry  <karl@gnu.org>
42880
42881         * config/depcomp: update from automake.
42882
42883 2003-06-26  Bruno Haible  <bruno@clisp.org>
42884
42885         * modules/human: Depend on module stdbool.
42886
42887 2003-06-25  Bruno Haible  <bruno@clisp.org>
42888
42889         * modules/readlink: New file.
42890         * modules/xreadlink: Depend on it.
42891         * MODULES.html.sh (func_all_modules): Add readlink.
42892
42893 2003-06-25  Bruno Haible  <bruno@clisp.org>
42894
42895         * m4/readlink.m4: New file.
42896
42897 2003-06-25  Bruno Haible  <bruno@clisp.org>
42898
42899         * lib/readlink.c: New file.
42900
42901 2003-06-22  Karl Berry  <karl@gnu.org>
42902
42903         * config/srclist.txt: update mkinstalldirs from automake.
42904         * config/mkinstalldirs: update.
42905
42906 2003-06-22  Bruno Haible  <bruno@clisp.org>
42907
42908         Portability to mingw32.
42909         * m4/ssize_t.m4: New file, from GNU gettext.
42910         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
42911         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
42912
42913 2003-06-22  Bruno Haible  <bruno@clisp.org>
42914
42915         * modules/safe-read: Add m4/ssize_t.m4.
42916         * modules/xreadlink: Add m4/ssize_t.m4.
42917
42918 2003-06-20  Bruno Haible  <bruno@clisp.org>
42919
42920         Assume C89, so PARAMS isn't needed.
42921         * lib/unicodeio.h (PARAMS): Remove.
42922         * lib/unicodeio.c: Don't use PARAMS.
42923
42924 2003-06-18  Karl Berry  <karl@gnu.org>
42925
42926         * config/config.{guess,sub}: update from prep.
42927
42928 2003-06-18  Jim Meyering  <jim@meyering.net>
42929
42930         Merge changes from coreutils.
42931         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
42932         Remove explicit declarations of xmalloc and realloc.
42933         Include xalloc.h.
42934         (read_utmp): Remove anachronistic cast of xmalloc.
42935
42936 2003-06-17  Paul Eggert  <eggert@twinsun.com>
42937
42938         Assume C89, so PARAMS isn't needed.
42939         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
42940         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
42941         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
42942         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
42943         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
42944         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
42945         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
42946         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
42947         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
42948         lib/xstrtod.h, lib/xstrtol.h: Likewise.
42949         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
42950         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
42951         no longer needed. Anyway, config.h should always be included before any
42952         other file.
42953
42954 2003-06-11  Simon Josefsson  <jas@extundo.com>
42955
42956         * modules/sysexits: New file.
42957         * MODULES.html.sh (func_all_modules): Add sysexits.
42958
42959 2003-06-11  Simon Josefsson  <jas@extundo.com>
42960
42961         * lib/sysexit_.h: New file.
42962
42963 2003-06-11  Derek Price  <derek@ximbiot.com>
42964
42965         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
42966         necessary.
42967
42968 2003-06-11  Bruno Haible  <bruno@clisp.org>
42969
42970         * m4/sysexits.m4: New file.
42971
42972 2003-06-10  Simon Josefsson  <jas@extundo.com>
42973
42974         * lib/argp.h: New file, from glibc.
42975         * lib/argp-ba.c: New file, from glibc.
42976         * lib/argp-eexst.c: New file, from glibc.
42977         * lib/argp-fmtstream.c: New file, from glibc.
42978         * lib/argp-fmtstream.h: New file, from glibc.
42979         * lib/argp-fs-xinl.c: New file, from glibc.
42980         * lib/argp-help.c: New file, from glibc.
42981         * lib/argp-namefrob.h: New file, from glibc.
42982         * lib/argp-parse.c: New file, from glibc.
42983         * lib/argp-pv.c: New file, from glibc.
42984         * lib/argp-pvh.c: New file, from glibc.
42985         * lib/argp-xinl.c: New file, from glibc.
42986
42987 2003-06-10  Simon Josefsson  <jas@extundo.com>
42988
42989         * modules/strchrnul: New file.
42990
42991 2003-06-10  Simon Josefsson  <jas@extundo.com>
42992
42993         * modules/argp: New file.
42994
42995 2003-06-10  Simon Josefsson  <jas@extundo.com>
42996
42997         * m4/strchrnul.m4: New file.
42998
42999 2003-06-10  Simon Josefsson  <jas@extundo.com>
43000
43001         * lib/strchrnul.h: New file.
43002         * lib/strchrnul.c: New file.
43003
43004 2003-06-10  Bruno Haible  <bruno@clisp.org>
43005
43006         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
43007
43008 2003-06-07  Karl Berry  <karl@gnu.org>
43009
43010         * config/config.{guess,sub}: update from prep.
43011
43012 2003-06-07  Jim Meyering  <jim@meyering.net>
43013
43014         * modules/strtod: Use $(...) notation, not @...@ for
43015         AC_REPLACE'd variables.
43016         * modules/localcharset: Likewise.
43017
43018 2003-06-07  Jim Meyering  <jim@meyering.net>
43019
43020         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
43021         in place of my name in the copyright comment.
43022         Remove definition and uses of __P.
43023
43024         From coreutils.
43025         * lib/stat.c: Don't declare xmalloc explicitly.
43026         Instead, include "xalloc.h".
43027         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
43028         xrealloc, and xcalloc return values.
43029         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
43030         Improve comment.
43031         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
43032
43033 2003-06-07  Bruno Haible  <bruno@clisp.org>
43034
43035         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
43036         avoid AC_CONFIG_LINKS.
43037         * modules/fnmatch (Makefile.am): Use explicit creation rule for
43038         fnmatch.h, to avoid AC_CONFIG_LINKS.
43039         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
43040
43041 2003-06-07  Bruno Haible  <bruno@clisp.org>
43042
43043         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
43044         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
43045         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
43046         directory.
43047         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
43048         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
43049         directory.
43050
43051 2003-06-06  Jim Meyering  <jim@meyering.net>
43052
43053         Merge from coreutils.
43054         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
43055         Consolidate declarations and initializations of *_base* locals.
43056
43057         Merge from coreutils.
43058         This avoids a core dump on systems without GNU putenv,
43059         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
43060         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
43061         (unsetenv): New static function, from GNU libc.
43062         (rpl_putenv): Use it.
43063
43064         * lib/modechange.c: Remove trailing blanks.
43065
43066         Merge from coreutils.
43067         * lib/fsusage.c: Remove declaration of statfs.
43068         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
43069
43070         * lib/posixtm.c: Include <stdbool.h> unconditionally.
43071
43072 2003-06-06  Jim Meyering  <jim@meyering.net>
43073
43074         * lib/stdbool_.h: Renamed from stdbool.h.in.
43075
43076 2003-06-06  Jim Meyering  <jim@meyering.net>
43077             Bruno Haible  <bruno@clisp.org>
43078
43079         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
43080         Adjust Makefile.am snippet not to redirect directly to target.
43081         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
43082
43083 2003-06-05  Paul Eggert  <eggert@twinsun.com>
43084
43085         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
43086         mismatch, look in future quarters as well as past.  This fixes a
43087         bug when processing fall-backwards gaps immediately after a long
43088         period of daylight-saving time.
43089
43090         * lib/mktime.c: Assume freestanding C89 or better.
43091         (HAVE_LIMITS_H): Remove.  Assume it's 1.
43092         (__P): Remove; not used.
43093         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
43094         (mktime, not_equal_tm, print_tm, check_result,
43095         main): Use prototypes.  Use const * where appropriate.
43096         (main): Fix typo in testing code that uncovered by above changes.
43097         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
43098
43099 2003-06-04  Paul Eggert  <eggert@twinsun.com>
43100
43101         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
43102         locale.h, localeconv.  This merges changes from coreutils.
43103
43104         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
43105         It can be removed after the next Autoconf is released.
43106         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
43107         needed.
43108
43109 2003-06-04  Paul Eggert  <eggert@twinsun.com>
43110
43111         * lib/mktime.c: Fix Debian bug 177940
43112         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
43113         (localtime_offset): Now long int, not time_t, because we want it
43114         to be guaranteed to be signed.  All uses changed.
43115         (__mktime_internal): If overflow would occur when adding offset,
43116         don't add it.
43117
43118         Merge 'human' changes from coreutils.  Rewrite to support
43119         locale-specific notations like thousands separators.
43120         * lib/human.c: Simplify authorship notice.
43121         Include human.h immediately after config.h.
43122         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
43123         <limits.h>: Do not include, since human.h does.
43124         (SIZE_MAX, UINTMAX_MAX): New macros.
43125         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
43126         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
43127         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
43128         (power_letter): Renamed from suffixes.
43129         (generate_suffix_backwards): Remove.
43130         (adjust_value): Now takes int style (because of human.h changes)
43131         and long double value (for greater precision on some platforms).
43132         (group_number): New function.
43133         (human_readable): Use it.  Use integer options, not enum.
43134         Put the options before the sizes in the arg list.
43135         Support all the new options.
43136         The old human_readable function has been removed;
43137         use inttostr.h instead.
43138         (human_readable, default_block_size, humblock):
43139         Use uintmax_t, not int, for block sizes.
43140         (human_readable_inexact, block_size_types): Remove.
43141         (block_size_opts): New constant.
43142         (human_options): Renamed from human_block_size, with new signature
43143         that allows block sizes up to UINTMAX_MAX.  All callers changed.
43144         * lib/human.h: Add copyright and authorship notice.
43145         Include <limits.h> and <stdbool.h> unconditionally.
43146         (PARAMS): Remove.  All uses removed.
43147         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
43148         (enum human_inexact_style): Remove tag; now a nameless enum.
43149         (human_floor, human_ceiling, human_round_to_even): Now have
43150         values 2, 0, 1 rather than -1, 1, 0.
43151         (human_group_digits, human_suppress_point_zero, human_autoscale,
43152         human_base_1024, human_SI, human_B): New constants.
43153         (human_readable_inexact, human_block_size): Remove.
43154         (human_readable): Size args are now uintmax_t, not int.
43155         (human_options): New decl.
43156
43157         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
43158         unnecessary now that we assume C89 or better.  This change
43159         imported from coreutils.
43160
43161         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
43162         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
43163         in the 2003-05-30 sync from glibc.
43164
43165         .h files should stand alone, but we shouldn't include <sys/types.h>
43166         if we can get away with just <stddef.h>.
43167
43168         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
43169         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
43170         rather than <sys/types.h>, as we merely need size_t.
43171         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
43172         to get size_t.
43173         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
43174         Include <stdio.h>, to get FILE.
43175         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
43176         memcasecmp.h has included <stddef.h> and all we need is size_t.
43177         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
43178         our interface, instead of including <sys/types.h>
43179
43180 2003-06-04  Paul Eggert  <eggert@twinsun.com>
43181
43182         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
43183         now, as glibc mktime is buggy on non-glibc systems.
43184
43185 2003-06-03  Karl Berry  <karl@gnu.org>
43186
43187         * config/config.sub: update from prep.
43188
43189 2003-06-02  Paul Eggert  <eggert@twinsun.com>
43190
43191         [from coreutils]
43192         Fix some minor time-related bugs with POSIX time arguments.
43193         Some valid time stamps were being rejected (notably -1, and
43194         time stamps before 1900 on 64-bit hosts).  And some invalid
43195         time stamps were being accepted, e.g. September 31.
43196
43197         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
43198         that we can return (time_t) -1 successfully.
43199         * lib/posixtm.c: Likewise.
43200         [HAVE_STDBOOL_H]: Include <stdbool.h>.
43201         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
43202         (t): Remove static var.
43203         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
43204         of static var.  All uses changed.
43205         (year): Do not reject years before 1900; they can occur with
43206         64-bit time_t.
43207         (posix_time_parse): Do not check for out-of-range components;
43208         that is now the caller's responsibility, since our checks were
43209         only approximations.
43210         (posixtime): Use mktime to check for out-of-range components,
43211         since it knows them exactly.
43212         If mktime returns (time_t) -1, check whether an error actually occurred
43213         by invoking localtime on -1.
43214         (main) [TEST_POSIXTIME]: Check for input data errors, and report
43215         posixtime failures better.
43216         Improve the test data (in comments only).
43217
43218 2003-06-02  Karl Berry  <karl@gnu.org>
43219
43220         * config/mkinstalldirs (version): new variable.
43221         (--version): new option.
43222         (usage): improve message.
43223
43224 2003-05-30  Karl Berry  <karl@gnu.org>
43225
43226         * lib/mktime.c: update from libc.
43227
43228 2003-05-30  Bruno Haible  <bruno@clisp.org>
43229
43230         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
43231         * config/config.rpath: Upgrade to gettext-0.12.1.
43232
43233 2003-05-30  Bruno Haible  <bruno@clisp.org>
43234
43235         * m4/gettext.m4: Upgrade to gettext-0.12.1.
43236         * m4/nls.m4: New file, from gettext-0.12.1.
43237         * m4/po.m4: New file, from gettext-0.12.1.
43238         * m4/progtest.m4: Upgrade to gettext-0.12.1.
43239
43240 2003-05-30  Bruno Haible  <bruno@clisp.org>
43241
43242         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
43243         * lib/localcharset.h: Likewise.
43244         * lib/localcharset.c: Likewise.
43245
43246 2003-05-29  Karl Berry  <karl@gnu.org>
43247
43248         * config/config.rpath: update from gettext.
43249
43250 2003-05-28  Paul Eggert  <eggert@twinsun.com>
43251
43252         Assume the headers required for C89 freestanding compilers.
43253         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
43254         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
43255         * m4/human.m4 (gl_HUMAN): Likewise.
43256         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
43257         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
43258         * m4/userspec.m4 (gl_USERSPEC): Likewise.
43259         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
43260         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
43261         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
43262
43263 2003-05-28  Paul Eggert  <eggert@twinsun.com>
43264
43265         Assume the headers required for C89 freestanding compilers.
43266         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
43267         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
43268         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
43269         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
43270         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
43271         define, since <limits.h> is guaranteed to do that.
43272         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
43273         * lib/exclude.c: Include <stdbool.h> unconditionally.
43274         * lib/tempname.c: Include <stddef.h> unconditionally.
43275         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
43276         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
43277         <stddef.h> does that.
43278         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
43279         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
43280         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
43281         needed.
43282         * lib/xstrtol.c: Likewise.
43283         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
43284         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
43285
43286         * lib/addext.c (addext): Use assignment rather than cast, to avoid
43287         warnings on some platforms.
43288
43289         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
43290         arbitrarily.
43291
43292 2003-05-26  Jim Meyering  <jim@meyering.net>
43293
43294         Merge in a change from coreutils:
43295         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
43296         that is guaranteed to be `no'.  Use `no_such_member' to indicate
43297         that condition, rather than `-1' which is slightly misleading.
43298         Change the name of the cache variable to have the gl_ prefix.
43299         Prompted by a patch from Richard Dawe for DJGPP.
43300
43301 2003-05-24  Karl Berry  <karl@gnu.org>
43302
43303         * config/config.guess: update from prep.
43304
43305 2003-05-22  Karl Berry  <karl@gnu.org>
43306
43307         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
43308
43309 2003-05-20  Karl Berry  <karl@gnu.org>
43310
43311         * config/config.guess: update from prep.
43312
43313 2003-05-18  Karl Berry  <karl@gnu.org>
43314
43315         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
43316         might actually be set by the user.
43317
43318         * config/depcomp, install-sh, mdate-sh: update from automake.
43319
43320 2003-05-17  Bruno Haible  <bruno@clisp.org>
43321
43322         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
43323         invalid expansion for AC_EGREP_CPP.
43324         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
43325         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
43326         Suggested by Akim Demaille <akim@epita.fr> in
43327         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
43328
43329 2003-05-12  Jim Meyering  <jim@meyering.net>
43330
43331         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
43332         the space-padded-by-default conversion specifiers, %e, %k, %l.
43333
43334 2003-05-12  Bruno Haible  <bruno@clisp.org>
43335
43336         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
43337         the string is longer than 4 KB.
43338
43339 2003-05-11  Karl Berry  <karl@gnu.org>
43340
43341         * config/config.{guess,sub}: update from prep.
43342
43343 2003-05-09  Bruno Haible  <bruno@clisp.org>
43344
43345         * modules/error: Add m4/strerror_r.m4 to file list.
43346
43347 2003-05-03  Bruno Haible  <bruno@clisp.org>
43348
43349         Upgrade to Unicode-4.0.
43350         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
43351         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
43352         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
43353         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
43354         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
43355         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
43356         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
43357         Change width of U+E0100..U+E01EF from 1 to 0.
43358
43359 2003-04-25  Jim Meyering  <jim@meyering.net>
43360
43361         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
43362         of type size_t, not int.
43363
43364 2003-04-25  Bruno Haible  <bruno@clisp.org>
43365
43366         * lib/copy-file.c: Include <stddef.h>, for size_t.
43367
43368 2003-04-21  Paul Eggert  <eggert@twinsun.com>
43369
43370         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
43371         code which expansion is under static control.  Patch imported from
43372         Akim Demaille's patch to Bison; see
43373         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
43374
43375 2003-04-14  Bruno Haible  <bruno@clisp.org>
43376
43377         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
43378
43379 2003-04-11  Jim Meyering  <jim@meyering.net>
43380
43381         Merge changes from Coreutils.
43382
43383         2003-03-22  Jim Meyering  <jim@meyering.net>
43384
43385         * lib/strftime.c (widen): Cast alloca return value to proper type.
43386
43387         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
43388
43389         From GNU libc.
43390         * lib/strftime.c (my_strftime): Handle very large width
43391         specifications for numeric values correctly.  Improve checks for
43392         overflow.
43393
43394         2003-01-19  Jim Meyering  <jim@meyering.net>
43395
43396         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
43397         definitions.
43398         (nl_get_alt_digit) [! defined my_strftime]: Define.
43399         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
43400         _nl_get_alt_digit and _nl_get_walt_digit.
43401
43402         * lib/strftime.c (my_strftime): Merge in locale-related changes from
43403         libc. These changes have no effect outside of _LIBC.
43404
43405 2003-04-10  Bruno Haible  <bruno@clisp.org>
43406
43407         * modules/findprog: New file.
43408         * MODULES.html.sh (func_all_modules): Add it.
43409
43410 2003-04-10  Bruno Haible  <bruno@clisp.org>
43411
43412         * m4/findprog.m4: New file.
43413         * m4/eaccess.m4: New file.
43414
43415 2003-04-10  Bruno Haible  <bruno@clisp.org>
43416
43417         * lib/findprog.h: New file, from GNU gettext.
43418         * lib/findprog.c: New file, from GNU gettext.
43419
43420 2003-04-05  Jim Meyering  <jim@meyering.net>
43421
43422         Merge changes from Coreutils.
43423
43424         * lib/exclude.h (PARAMS): Remove definition and uses.
43425         * lib/exclude.c: Remove uses of `PARAMS'.
43426
43427         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
43428         Add test-cases for DOS filenames. Declare program_name.
43429         (main): Set up program_name.  Patch by Rich Dawe.
43430
43431         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
43432         error from mntctl.
43433         Use mntctl's return value to drive the entry-processing loop, since
43434         we can't rely on the value of the vmt_length member in the last
43435         entry.  On some systems doing so could result in exhausting
43436         virtual memory.  Based in part on a patch from Mike Jetzer.
43437
43438 2003-04-04  Bruno Haible  <bruno@clisp.org>
43439
43440         * modules/linebreak: New file.
43441         * MODULES.html.sh (func_all_modules): Add it.
43442
43443 2003-04-04  Bruno Haible  <bruno@clisp.org>
43444
43445         * m4/linebreak.m4: New file.
43446
43447 2003-04-04  Bruno Haible  <bruno@clisp.org>
43448
43449         * lib/linebreak.h: New file, from GNU gettext.
43450         * lib/linebreak.c: New file, from GNU gettext with slight
43451         modifications.
43452         * lib/lbrkprop.h: New file, from GNU gettext.
43453
43454 2003-04-03  Bruno Haible  <bruno@clisp.org>
43455
43456         * modules/utf8-ucs4: New file.
43457         * modules/utf16-ucs4: New file.
43458         * modules/ucs4-utf8: New file.
43459         * modules/ucs4-utf16: New file.
43460         * MODULES.html.sh (func_all_modules): Add them.
43461
43462 2003-04-03  Bruno Haible  <bruno@clisp.org>
43463
43464         * m4/utf-ucs4.m4: New file.
43465         * m4/ucs4-utf.m4: New file.
43466
43467 2003-04-03  Bruno Haible  <bruno@clisp.org>
43468
43469         * lib/utf8-ucs4.h: New file, from GNU gettext.
43470         * lib/utf16-ucs4.h: New file, from GNU gettext.
43471         * lib/ucs4-utf8.h: New file, from GNU gettext.
43472         * lib/ucs4-utf16.h: New file, from GNU gettext.
43473
43474 2003-04-02  Bruno Haible  <bruno@clisp.org>
43475
43476         * modules/binary-io: New file.
43477         * MODULES.html.sh (func_all_modules): Add it.
43478
43479 2003-04-02  Bruno Haible  <bruno@clisp.org>
43480
43481         * lib/binary-io.h: New file, from GNU gettext.
43482
43483 2003-04-01  Bruno Haible  <bruno@clisp.org>
43484
43485         * modules/pathname: New file.
43486         * MODULES.html.sh (func_all_modules): Add it.
43487
43488 2003-04-01  Bruno Haible  <bruno@clisp.org>
43489
43490         * lib/pathname.h: New file, from GNU gettext.
43491         * lib/concatpath.c: New file, from GNU gettext.
43492
43493 2003-03-30  Bruno Haible  <bruno@clisp.org>
43494
43495         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
43496
43497 2003-03-30  Bruno Haible  <bruno@clisp.org>
43498
43499         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
43500         function chown() doesn't exist.
43501
43502 2003-03-28  Bruno Haible  <bruno@clisp.org>
43503
43504         * modules/copy-file: New file.
43505         * MODULES.html.sh (func_all_modules): Add it.
43506
43507 2003-03-28  Bruno Haible  <bruno@clisp.org>
43508
43509         * m4/copy-file.m4: New file.
43510
43511 2003-03-28  Bruno Haible  <bruno@clisp.org>
43512
43513         * lib/copy-file.h: New file, from GNU gettext.
43514         * lib/copy-file.c: New file, from GNU gettext.
43515
43516 2003-03-18  Jim Meyering  <jim@meyering.net>
43517
43518         * lib/quote.c (quote_n): Fix typo in comment.
43519
43520 2003-03-18  Bruno Haible  <bruno@clisp.org>
43521
43522         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
43523         checking.
43524         * m4/onceonly_2_57.m4: Likewise.
43525
43526 2003-03-17  Bruno Haible  <bruno@clisp.org>
43527
43528         * m4/onceonly.m4: Require autoconf 2.54 or newer.
43529         (m4_quote): Remove macro.
43530         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
43531
43532 2003-03-14  Jim Meyering  <jim@meyering.net>
43533
43534         Merge changes from Coreutils.
43535         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
43536         to be const, in order to avoid warnings.
43537         (obstack_room): Likewise.
43538         (obstack_empty_p): Likewise.
43539
43540 2003-03-14  Bruno Haible  <bruno@clisp.org>
43541
43542         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
43543         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
43544
43545 2003-03-13  Paul Eggert  <eggert@twinsun.com>
43546
43547         Merge changes from Bison.
43548         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
43549         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
43550         when compiling Bison 1.875's `bitset bset = obstack_alloc
43551         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
43552         * lib/hash.c: Include <stdbool.h> unconditionally.
43553
43554 2003-03-13  Paul Eggert  <eggert@twinsun.com>
43555
43556         * m4/onceonly.m4 (m4_quote): New macro.
43557         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
43558         Quote AC_FOREACH variable-expansions properly.
43559
43560 2003-03-13  Paul Eggert  <eggert@twinsun.com>
43561
43562         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
43563
43564 2003-03-09  Paul Eggert  <eggert@twinsun.com>
43565
43566         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
43567         Reported by Bruce Becker; see:
43568         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
43569
43570 2003-03-03  Paul Eggert  <eggert@twinsun.com>
43571             Bruno Haible  <bruno@clisp.org>
43572
43573         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
43574         Reported by John Hughes, see
43575         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
43576
43577 2003-02-20  Bruno Haible  <bruno@clisp.org>
43578
43579         * MODULES.html.sh (func_all_modules): Add poll.
43580
43581 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
43582
43583         * modules/poll: New file.
43584
43585 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
43586
43587         * lib/poll_.h: New file.
43588         * lib/poll.c: New file.
43589
43590 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
43591
43592         * m4/poll.m4: New file.
43593
43594 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
43595
43596         * modules/mathl: New file.
43597
43598 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
43599
43600         * lib/mathl.h: New file.
43601         * lib/acosl.c: New file.
43602         * lib/asinl.c: New file.
43603         * lib/atanl.c: New file.
43604         * lib/ceill.c: New file.
43605         * lib/cosl.c: New file.
43606         * lib/expl.c: New file.
43607         * lib/floorl.c: New file.
43608         * lib/frexpl.c: New file.
43609         * lib/ldexpl.c: New file.
43610         * lib/logl.c: New file.
43611         * lib/sincosl.c: New file.
43612         * lib/sinl.c: New file.
43613         * lib/sqrtl.c: New file.
43614         * lib/tanl.c: New file.
43615         * lib/trigl.c: New file.
43616         * lib/trigl.h: New file.
43617
43618 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
43619
43620         * m4/mathl.m4: New file.
43621
43622 2003-02-18  Bruno Haible  <bruno@clisp.org>
43623
43624         * MODULES.html.sh (func_all_modules): Add mathl.
43625
43626 2003-02-17  Bruno Haible  <bruno@clisp.org>
43627
43628         * modules/mkdtemp: New module.
43629         * MODULES.html.sh (func_all_modules): Add it.
43630
43631 2003-02-17  Bruno Haible  <bruno@clisp.org>
43632
43633         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
43634
43635 2003-02-17  Bruno Haible  <bruno@clisp.org>
43636
43637         * lib/mkdtemp.h: New file, from GNU gettext.
43638         * lib/mkdtemp.c: New file, from GNU gettext.
43639
43640 2003-02-02  Jim Meyering  <jim@meyering.net>
43641
43642         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
43643         e.g. glibc-2.2.93.
43644
43645 2003-01-31  Bruno Haible  <bruno@clisp.org>
43646
43647         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
43648         'rpl_rename'.
43649         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
43650         'rpl_strnlen'.
43651         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
43652         'rpl_strtod'.
43653         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
43654         'rpl_utime'.
43655
43656 2003-01-31  Bruno Haible  <bruno@clisp.org>
43657
43658         * lib/rename.c: #undef rename before defining rpl_rename.
43659         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
43660
43661 2003-01-30  Bruno Haible  <bruno@clisp.org>
43662
43663         * modules/vasnprintf, modules/vasprintf: New modules.
43664         * MODULES.html.sh (func_all_modules): Add them.
43665
43666 2003-01-30  Bruno Haible  <bruno@clisp.org>
43667
43668         * m4/signed.m4: New file, from GNU gettext.
43669         * m4/longdouble.m4: New file, from GNU gettext.
43670         * m4/wchar_t.m4: New file, from GNU gettext.
43671         * m4/wint_t.m4: New file, from GNU gettext.
43672         * m4/vasnprintf.m4: New file.
43673         * m4/vasprintf.m4: New file.
43674
43675 2003-01-30  Bruno Haible  <bruno@clisp.org>
43676
43677         * lib/printf-args.h: New file, from GNU gettext.
43678         * lib/printf-args.c: New file, from GNU gettext.
43679         * lib/printf-parse.h: New file, from GNU gettext.
43680         * lib/printf-parse.c: New file, from GNU gettext.
43681         * lib/vasnprintf.h: New file, from GNU gettext.
43682         * lib/vasnprintf.c: New file, from GNU gettext.
43683         * lib/asnprintf.c: New file, from GNU gettext.
43684         * lib/vasprintf.h: New file, from GNU gettext with modifications.
43685         * lib/vasprintf.c: New file, from GNU gettext.
43686         * lib/asprintf.c: New file, from GNU gettext.
43687
43688 2003-01-29  Bruno Haible  <bruno@clisp.org>
43689
43690         * modules/stpncpy: New module.
43691         * MODULES.html.sh (func_all_modules): Add it.
43692
43693 2003-01-29  Bruno Haible  <bruno@clisp.org>
43694
43695         * m4/stpncpy.m4: New file.
43696
43697 2003-01-29  Bruno Haible  <bruno@clisp.org>
43698
43699         * lib/stpncpy.h: New file, from GNU gettext with modifications.
43700         * lib/stpncpy.c: New file, from GNU gettext with modifications.
43701
43702 2003-01-28  Bruno Haible  <bruno@clisp.org>
43703
43704         * modules/c-ctype: New module.
43705         * MODULES.html.sh (func_all_modules): Add it.
43706
43707 2003-01-28  Bruno Haible  <bruno@clisp.org>
43708
43709         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
43710         Paul Eggert.
43711         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
43712         Paul Eggert.
43713
43714 2003-01-27  Bruno Haible  <bruno@clisp.org>
43715
43716         * modules/xsetenv: New module.
43717         * MODULES.html.sh (func_all_modules): Add it.
43718
43719 2003-01-27  Bruno Haible  <bruno@clisp.org>
43720
43721         * lib/xsetenv.h: New file, from GNU gettext.
43722         * lib/xsetenv.c: New file, from GNU gettext.
43723
43724 2003-01-23  Jim Meyering  <jim@meyering.net>
43725
43726         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
43727         from working on systems without dirfd (at least Irix and OSF1/Tru64).
43728
43729 2003-01-23  Bruno Haible  <bruno@clisp.org>
43730
43731         * modules/minmax: New module.
43732         * MODULES.html.sh (func_all_modules): Add it.
43733
43734 2003-01-23  Bruno Haible  <bruno@clisp.org>
43735
43736         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
43737         Eggert.
43738
43739 2003-01-22  Bruno Haible  <bruno@clisp.org>
43740
43741         * modules/exit: New module.
43742         * MODULES.html.sh (func_all_modules): Add it.
43743
43744 2003-01-22  Bruno Haible  <bruno@clisp.org>
43745
43746         * lib/exit.h: New file, from GNU gettext.
43747
43748 2003-01-19  Bruno Haible  <bruno@clisp.org>
43749
43750         * gnulib-tool: Recognize option --extract-maintainer.
43751         (func_get_maintainer): New function.
43752         * modules/*: Add Maintainer entry.
43753
43754 2003-01-16  Jim Meyering  <jim@meyering.net>
43755
43756         * m4/regex.m4: The `regex' struct is both input and output.
43757         Initialize it before each use.  Patch by Tim Waugh.
43758
43759 2003-01-16  Bruno Haible  <bruno@clisp.org>
43760
43761         * MODULES.html.sh: Add a table of contents. Add the module name as
43762         leftmost column. Add hyperlinks.
43763
43764 2003-01-15  Bruno Haible  <bruno@clisp.org>
43765
43766         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
43767
43768 2003-01-15  Bruno Haible  <bruno@clisp.org>
43769
43770         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
43771         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
43772         suffix.
43773
43774 2003-01-15  Bruno Haible  <bruno@clisp.org>
43775
43776         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
43777
43778 2003-01-15  Bruno Haible  <bruno@clisp.org>
43779
43780         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
43781         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
43782
43783 2003-01-14  Jim Meyering  <jim@meyering.net>
43784
43785         * lib/same.c (same_name): Tweak a comment.
43786
43787 2003-01-14  Bruno Haible  <bruno@clisp.org>
43788
43789         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
43790         when a string comparison is sufficient.
43791
43792 2003-01-14  Bruno Haible  <bruno@clisp.org>
43793
43794         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
43795         'unsigned int'.
43796
43797 2003-01-14  Bruno Haible  <bruno@clisp.org>
43798
43799         * lib/hash-pjw.c: Add comment about low quality of this function.
43800
43801 2003-01-13  Bruno Haible  <bruno@clisp.org>
43802
43803         * modules/stpcpy: Distribute lib/stpcpy.h.
43804         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
43805
43806 2003-01-13  Bruno Haible  <bruno@clisp.org>
43807
43808         * modules/*: Add a description.
43809         * modules/strpbrk: Fix Makefile.am snippet.
43810         * modules/strtoimax: Fix dependencies.
43811         * modules/strtoumax: Likewise.
43812
43813 2003-01-13  Bruno Haible  <bruno@clisp.org>
43814
43815         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
43816         * modules/alloca (Makefile.am): All object files depend on alloca.h.
43817         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
43818
43819 2003-01-13  Bruno Haible  <bruno@clisp.org>
43820
43821         * gnulib-tool (func_create_testdir): Store config/* files in the main
43822         directory.
43823         * config.rpath: Move to ...
43824         * config/config.rpath: ... here.
43825         * modules/gettext: Contains config/config.rpath, not config.rpath.
43826         * modules/iconv: Likewise.
43827
43828 2003-01-12  Paul Eggert  <eggert@twinsun.com>
43829
43830         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
43831         to avoid collisions with libcurses and libreadline.
43832
43833         * m4/getstr.m4: Remove.
43834         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
43835
43836 2003-01-12  Paul Eggert  <eggert@twinsun.com>
43837
43838         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
43839         to avoid collisions with libcurses and libreadline.
43840
43841         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
43842         * lib/getstr.h, getstr.c: Remove.
43843         * lib/getline.c: Include "getline.h", to check interface.
43844         Move body of old getstr.c here: this defines MIN_CHUNK and
43845         declares getdelim2, which is renamed from getstr.
43846         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
43847
43848         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
43849         All uses changed.
43850         * lib/linebuffer.h: Likewise.
43851         (readline): Remove backward-compatibility macro.
43852
43853 2003-01-12  Paul Eggert  <eggert@twinsun.com>
43854
43855         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
43856         to avoid collisions with libcurses and libreadline.
43857         * getstr: Remove.
43858         * MODULES.html.sh: Remove getstr.
43859         * modules/getline: Depend on unlocked-io, not getstr.
43860
43861 2003-01-12  Jim Meyering  <jim@meyering.net>
43862
43863         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
43864
43865 2003-01-10  Bruno Haible  <bruno@clisp.org>
43866
43867         * modules/alloca: Change Makefile.am requirements. Simplify Include
43868         requirements. Add lib/alloca_.h to file list.
43869
43870 2003-01-10  Bruno Haible  <bruno@clisp.org>
43871
43872         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
43873
43874 2003-01-10  Bruno Haible  <bruno@clisp.org>
43875
43876         * lib/alloca_.h: New file.
43877         * lib/getdate.y: Unconditionally include alloca.h.
43878         * lib/makepath.c: Likewise.
43879         * lib/setenv.c: Likewise.
43880         * lib/userspec.c: Likewise.
43881
43882 2003-01-09  Karl Berry  <karl@gnu.org>
43883
43884         * MODULES.html.sh: include `dirname $0` in PATH, to find
43885         gnulib-tool.
43886
43887 2003-01-09  Bruno Haible  <bruno@clisp.org>
43888
43889         * modules/stdbool: Change configure.ac, Makefile.am requirements.
43890         Simplify Include requirements. Add lib/stdbool.h.in to file list.
43891
43892 2003-01-09  Bruno Haible  <bruno@clisp.org>
43893
43894         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
43895
43896 2003-01-09  Bruno Haible  <bruno@clisp.org>
43897
43898         * lib/stdbool.h.in: New file.
43899
43900 2003-01-09  Bruno Haible  <bruno@clisp.org>
43901
43902         * gnulib-tool (func_all_modules): Ignore files ending in ~.
43903         * MODULES.html.sh: Likewise.
43904
43905 2003-01-08  Jim Meyering  <jim@meyering.net>
43906
43907         * lib/full-write.c: Undefine and define-away `const' after inclusion
43908         of errno.h, not before.  Suggestion from Bruno Haible.
43909
43910 2003-01-08  Bruno Haible  <bruno@clisp.org>
43911
43912         * modules/full-read: Depend on full-write.
43913
43914 2003-01-08  Bruno Haible  <bruno@clisp.org>
43915
43916         * lib/safe-read.c: Include specification header first, to ensure its
43917         selfcontainedness.
43918         * lib/full-write.c: Likewise.
43919
43920 2003-01-07  Jim Meyering  <jim@meyering.net>
43921
43922         * lib/full-write.c: Rework so that it may serve to define full_read,
43923         too.
43924         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
43925
43926 2003-01-07  Bruno Haible  <bruno@clisp.org>
43927
43928         * lib/strtoimax.c: Include <stdint.h> as an alternative to
43929         <inttypes.h>.
43930         * lib/xstrtol.h: Likewise.
43931         * lib/xstrtoimax.c: Likewise.
43932         * lib/xstrtoumax.c: Likewise.
43933         * lib/human.h: Likewise.
43934
43935         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
43936         on systems that have <inttypes.h> but not <stdint.h>.
43937
43938 2003-01-07  Bruno Haible  <bruno@clisp.org>
43939
43940         * MODULES.html.sh: Add copyright notice.
43941         (missed_files): Omit CVS directory entries.
43942         (func_module): Make it work with sed-3.02.
43943         * MODULES.txt: Remove file.
43944
43945 2003-01-06  Jim Meyering  <jim@meyering.net>
43946
43947         * lib/version-etc.c: Update year in translatable copyright string.
43948
43949 2003-01-03  Karl Berry  <karl@gnu.org>
43950
43951         * config/config.{guess,sub}: update from prep.
43952
43953 2003-01-02  Karl Berry  <karl@gnu.org>
43954
43955         * doc/COPYING.DOC: belatedly updated to 1.2.
43956
43957 2003-01-01  Karl Berry  <karl@gnu.org>
43958
43959         * gnulib-tool (func_verify_module): report module name $module in
43960         error message, not $1.
43961         * gnulib-tool (create-testdir): don't complain if destdir couldn't
43962         be created, only if it doesn't exist.
43963         * gnulib-tool (last_checkin_date): don't expand the $Date here.
43964
43965 2002-12-31  Paul Eggert  <eggert@twinsun.com>
43966
43967         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
43968
43969 2002-12-31  Paul Eggert  <eggert@twinsun.com>
43970
43971         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
43972         memcmp if strcoll doesn't work.
43973
43974 2002-12-31  Bruno Haible  <bruno@clisp.org>
43975
43976         * lib/utime.c (utime_null): No need to call ftruncate if the file was
43977         nonempty.
43978
43979 2002-12-31  Bruno Haible  <bruno@clisp.org>
43980
43981         * lib/memcoll.c (STRCOLL): New macro.
43982         (memcoll): Use it.
43983
43984 2002-12-31  Bruno Haible  <bruno@clisp.org>
43985
43986         * lib/localcharset.h: New file.
43987         * lib/localcharset.c: Include it.
43988         * lib/unicodeio.c: Likewise.
43989
43990 2002-12-31  Bruno Haible  <bruno@clisp.org>
43991
43992         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
43993         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
43994
43995 2002-12-31  Bruno Haible  <bruno@clisp.org>
43996
43997         * lib/getline.h: Include <stddef.h>, for size_t.
43998
43999         * lib/unicodeio.h: Include <stddef.h>, for size_t.
44000         * lib/unicodeio.c: Don't include <stddef.h>.
44001
44002 2002-12-31  Bruno Haible  <bruno@clisp.org>
44003
44004         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
44005         HAVE_TM_ZONE.
44006
44007 2002-12-24  Karl Berry  <karl@gnu.org>
44008
44009         * config/config.guess: update from prep.
44010
44011 2002-12-24  Bruno Haible  <bruno@clisp.org>
44012
44013         General infrasructure.
44014         * m4/README: Rewritten.
44015         * m4/onceonly.m4: New file.
44016         * m4/onceonly_2_57.m4: New file.
44017
44018         Module atexit.
44019         * m4/atexit.m4: New file.
44020
44021         Module strtod.
44022         * m4/strtod.m4: New file.
44023
44024         Module strtol.
44025         * m4/strtol.m4: New file.
44026
44027         Module strtoul.
44028         * m4/strtoul.m4: New file.
44029
44030         Module memchr.
44031         * m4/memchr.m4: New file.
44032
44033         Module memcmp.
44034         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
44035         (jm_FUNC_MEMCMP): Invoke it.
44036
44037         Module memcpy.
44038         * m4/memcpy.m4: New file.
44039
44040         Module memmove.
44041         * m4/memmove.m4: New file.
44042
44043         Module memset.
44044         * m4/memset.m4: New file.
44045
44046         Module strcspn.
44047         * m4/strcspn.m4: New file.
44048
44049         Module strpbrk.
44050         * m4/strpbrk.m4: New file.
44051
44052         Module strstr.
44053         * m4/strstr.m4: New file.
44054
44055         Module strerror.
44056         * m4/strerror.m4: New file.
44057
44058         Module mktime.
44059         * m4/mktime.m4: Renamed from jm-mktime.m4.
44060         (gl_PREREQ_MKTIME): New macro.
44061         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
44062
44063         Module malloc.
44064         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
44065         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
44066         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
44067
44068         Module realloc.
44069         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
44070         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
44071         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
44072
44073         Module strftime.
44074         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
44075         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
44076         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
44077         gl_TM_GMTOFF.
44078         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
44079
44080         Module xalloc.
44081         * m4/xalloc.m4: New file.
44082
44083         Module alloca.
44084         * m4/alloca.m4: New file.
44085
44086         Module putenv.
44087         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
44088         (jm_FUNC_PUTENV): Invoke it.
44089
44090         Module setenv.
44091         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
44092         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
44093         when invoked twice.
44094         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
44095         gt_FUNC_SETENV.
44096
44097         Module memrchr.
44098         * m4/memrchr.m4: New file.
44099
44100         Module stpcpy.
44101         * m4/stpcpy.m4: New file.
44102
44103         Module strcase.
44104         * m4/strcase.m4: New file.
44105
44106         Module strdup.
44107         * m4/strdup.m4: New file.
44108
44109         Module strnlen.
44110         * m4/strnlen.m4: New file.
44111
44112         Module strndup.
44113         * m4/strndup.m4: New file.
44114
44115         Module xstrtod.
44116         * m4/xstrtod.m4: New file.
44117
44118         Module xstrtol.
44119         * m4/xstrtol.m4: New file.
44120
44121         Module getdate.
44122         * m4/getdate.m4: New file.
44123
44124         Module unlocked-io.
44125         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
44126         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
44127         * m4/jm-glibc-io.m4n: Remove file.
44128
44129         Module long-options.
44130         * m4/long-options.m4: New file.
44131
44132         Module md5.
44133         * m4/md5.m4: New file.
44134
44135         Module sha.
44136         * m4/sha.m4: New file.
44137
44138         Module getstr.
44139         * m4/getstr.m4: New file.
44140
44141         Module getline.
44142         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
44143         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
44144         <sys/types.h>, for size_t. Use the function name gnu_getline, not
44145         simply getline. Infoke gl_PREREQ_GETLINE.
44146
44147         Module obstack.
44148         * m4/obstack.m4: New file.
44149
44150         Module hash.
44151         * m4/hash.m4: New file.
44152
44153         Module readtokens.
44154         * m4/readtokens.m4: New file.
44155
44156         Module strverscmp.
44157         * m4/strverscmp.m4: New file.
44158
44159         Module stdbool.
44160         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
44161         OSF/1.
44162
44163         Module strtoll.
44164         * m4/strtoll.m4: New file.
44165
44166         Module strtoull.
44167         * m4/strtoull.m4: New file.
44168
44169         Module strtoimax.
44170         * m4/strtoimax.m4: New file.
44171
44172         Module strtoumax.
44173         * m4/strtoumax.m4: New file.
44174
44175         Module xstrtoimax.
44176         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
44177         jm_AC_PREREQ_XSTRTOIMAX.
44178         Moved the strtol prerequisites to strtol.m4.
44179         Moved the strtoll prerequisites to strtoll.m4.
44180         Moved the strtoimax prerequisites to strtoimax.m4.
44181
44182         Module xstrtoumax.
44183         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
44184         jm_AC_PREREQ_XSTRTOUMAX.
44185         Moved the strtoul prerequisites to strtoul.m4.
44186         Moved the strtoull prerequisites to strtoull.m4.
44187         Moved the strtoumax prerequisites to strtoumax.m4.
44188
44189         Module chown.
44190         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
44191         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
44192
44193         Module dup2.
44194         * m4/dup2.m4: New file.
44195
44196         Module ftruncate.
44197         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
44198         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
44199
44200         Module getgroups.
44201         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
44202         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
44203
44204         Module gettimeofday.
44205         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
44206         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
44207         gl_PREREQ_GETTIMEOFDAY.
44208
44209         Module mkdir.
44210         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
44211         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
44212
44213         Module mkstemp.
44214         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
44215         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
44216         jm_AC_TYPE_UINTMAX_T.
44217         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
44218
44219         Module stat.
44220         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
44221         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
44222
44223         Module lstat.
44224         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
44225         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
44226
44227         Module timespec.
44228         * m4/timespec.m4 (gl_TIMESPEC): New macro.
44229         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
44230         * m4/st_mtim.m4: Indentation.
44231
44232         Module nanosleep.
44233         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
44234         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
44235         gl_PREREQ_NANOSLEEP.
44236
44237         Module regex.
44238         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
44239         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
44240         (gl_REGEX): New macro.
44241
44242         Module rename.
44243         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
44244         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
44245
44246         Module rmdir.
44247         * m4/rmdir.m4: New file.
44248
44249         Module utime.
44250         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
44251         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
44252         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
44253
44254         Module dirname.
44255         * m4/dirname.m4: New file.
44256
44257         Module getopt.
44258         * m4/getopt.m4: New file.
44259
44260         Module unistd-safer.
44261         * m4/unistd-safer.m4: New file.
44262
44263         Module fnmatch.
44264         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
44265         declaration.
44266         (gl_PREREQ_FNMATCH_EXTRA): New macro.
44267         (gl_FUNC_FNMATCH_POSIX): New macro.
44268         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
44269         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
44270         simply fnmatch.
44271
44272         Module exclude.
44273         * m4/exclude.m4: New file.
44274
44275         Module human.
44276         * m4/human.m4: New file.
44277
44278         Module acl.
44279         * m4/acl.m4: Nop.
44280
44281         Module backupfile.
44282         * m4/backupfile.m4: New file.
44283         * m4/d-ino.m4: Indentation.
44284
44285         Module fsusage.
44286         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
44287         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
44288         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
44289
44290         Module dirfd.
44291         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
44292         requirements.
44293
44294         Module euidaccess.
44295         * m4/euidaccess.m4: New file.
44296
44297         Module file-type.
44298         * m4/file-type.m4: New file.
44299
44300         Module fileblocks.
44301         * m4/fileblocks.m4: New file.
44302
44303         Module filemode.
44304         * m4/filemode.m4: New file.
44305
44306         Module isdir.
44307         * m4/isdir.m4: New file.
44308
44309         Module lchown.
44310         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
44311         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
44312
44313         Module makepath.
44314         * m4/makepath.m4: New file.
44315
44316         Module modechange.
44317         * m4/modechange.m4: New file.
44318
44319         Module mountlist.
44320         * m4/mountlist.m4: New file.
44321         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
44322         Indentation.
44323
44324         Module path-concat.
44325         * m4/path-concat.m4: New file.
44326
44327         Module pathmax.
44328         * m4/pathmax.m4: New file.
44329
44330         Module same.
44331         * m4/same.m4: New file.
44332
44333         Module save-cwd.
44334         * m4/save-cwd.m4: New file.
44335
44336         Module savedir.
44337         * m4/savedir.m4: New file.
44338
44339         Module xgetcwd.
44340         * m4/xgetcwd.m4: New file.
44341         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
44342
44343         Module xreadlink.
44344         * m4/xreadlink.m4: New file.
44345
44346         Module safe-read.
44347         * m4/safe-read.m4: New file.
44348
44349         Module safe-write.
44350         * m4/safe-write.m4: New file.
44351
44352         Module closeout.
44353         * m4/closeout.m4: New file.
44354
44355         Module stdio-safer.
44356         * m4/stdio-safer.m4: New file.
44357
44358         Module getpass.
44359         * m4/getpass.m4: New file.
44360
44361         Module getugroups.
44362         * m4/getugroups.m4: New file.
44363
44364         Module group-member.
44365         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
44366         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
44367
44368         Module idcache.
44369         * m4/idcache.m4: New file.
44370
44371         Module userspec.
44372         * m4/userspec.m4: New file.
44373
44374         Module gettime.
44375         * m4/clock_time.m4: New file.
44376         * m4/gettime.m4: New file.
44377
44378         Module settime.
44379         * m4/settime.m4: New file.
44380
44381         Module posixtm.
44382         * m4/posixtm.m4: New file.
44383
44384         Module gethostname.
44385         * m4/gethostname.m4: New file.
44386
44387         Module canon-host.
44388         * m4/canon-host.m4: New file.
44389
44390         Module gettext.
44391         * m4/codeset.m4: New file, from gettext-0.11.5.
44392         * m4/gettext.m4: New file, from gettext-0.11.5.
44393         * m4/glibc21.m4: New file, from gettext-0.11.5.
44394         * m4/iconv.m4: New file, from gettext-0.11.5.
44395         * m4/intdiv0.m4: New file, from gettext-0.11.5.
44396         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
44397         * m4/inttypes.m4: New file, from gettext-0.11.5.
44398         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
44399         * m4/isc-posix.m4: New file, from gettext-0.11.5.
44400         * m4/lcmessage.m4: New file, from gettext-0.11.5.
44401         * m4/lib-ld.m4: New file, from gettext-0.11.5.
44402         * m4/lib-link.m4: New file, from gettext-0.11.5.
44403         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
44404         * m4/progtest.m4: New file, from gettext-0.11.5.
44405         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
44406         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
44407         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
44408
44409         Module localcharset.
44410         * m4/localcharset.m4: New file.
44411
44412         Module hard-locale.
44413         * m4/hard-locale.m4: New file.
44414
44415         Module mbswidth.
44416         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
44417         onceonly macros.
44418         * m4/mbrtowc.m4: Add comment.
44419
44420         Module memcasecmp.
44421         * m4/memcasecmp.m4: New file.
44422
44423         Module memcoll.
44424         * m4/memcoll.m4: New file.
44425
44426         Module unicodeio.
44427         * m4/unicodeio.m4: New file.
44428
44429         Module rpmatch.
44430         * m4/rpmatch.m4: New file.
44431
44432         Module yesno.
44433         * m4/yesno.m4: New file.
44434
44435         Module exitfail.
44436         * m4/exitfail.m4: New file.
44437
44438         Module c-stack.
44439         * m4/c-stack.m4 (gl_C_STACK): New macro.
44440         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
44441
44442         Module error.
44443         * m4/error.m4 (gl_ERROR): New macro.
44444         (jm_PREREQ_ERROR): Use onceonly macros.
44445
44446         Module fatal.
44447         * m4/fatal.m4: New file.
44448
44449         Module getloadavg.
44450         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
44451         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
44452
44453         Module getpagesize.
44454         * m4/getpagesize.m4: New file.
44455
44456         Module getusershell.
44457         * m4/getusershell.m4: New file.
44458
44459         Module physmem.
44460         * m4/physmem.m4: New file.
44461
44462         Module posixver.
44463         * m4/posixver.m4: New file.
44464
44465         Module quotearg.
44466         * m4/quotearg.m4: New file.
44467
44468         Module quote.
44469         * m4/quote.m4: New file.
44470
44471         Module readutmp.
44472         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
44473
44474         Module sig2str.
44475         * m4/sig2str.m4: New file.
44476
44477         Other.
44478         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
44479         ulonglong.m4.
44480         * m4/intmax_t.m4: New file.
44481         * m4/d-type.m4: Indentation.
44482         * m4/jm-macros.m4: Update.
44483         * m4/prereq.m4 (jm_PREREQ): Update.
44484         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
44485         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
44486         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
44487         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
44488         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
44489         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
44490         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
44491         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
44492         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
44493         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
44494         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
44495         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
44496         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
44497         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
44498         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
44499         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
44500         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
44501         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
44502         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
44503
44504 2002-12-24  Bruno Haible  <bruno@clisp.org>
44505
44506         * MODULES.txt: Update according to m4/ changes.
44507
44508         Module gettext.
44509         * config.rpath: New file, from gettext-0.11.5.
44510
44511         * modules/*: New module descriptions.
44512         * gnulib-tool: New file.
44513         * MODULES.html.sh: New file.
44514
44515 2002-12-21  Karl Berry  <karl@gnu.org>
44516
44517         * doc/fdl.texi: update to version 1.2.
44518
44519 2002-12-19  Karl Berry  <karl@gnu.org>
44520
44521         * config/config.guess: update from prep.
44522
44523 2002-12-18  Bruno Haible  <bruno@clisp.org>
44524
44525         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
44526         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
44527
44528 2002-12-17  Bruno Haible  <bruno@clisp.org>
44529
44530         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
44531         stdlib.h, string.h.
44532
44533 2002-12-17  Bruno Haible  <bruno@clisp.org>
44534
44535         * lib/canon-host.c (strdup): Remove unused declaration.
44536
44537         * lib/fsusage.c: Include full_read.h.
44538         (get_fs_usage): Use full_read instead of safe_read.
44539
44540         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
44541
44542 2002-12-12  Karl Berry  <karl@gnu.org>
44543
44544         * config/config.guess: update from prep.
44545
44546 2002-12-11  Bruno Haible  <bruno@clisp.org>
44547
44548         * m4/setenv.m4: New file, from gettext-0.11.5.
44549
44550 2002-12-11  Bruno Haible  <bruno@clisp.org>
44551
44552         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
44553         not unsetenv().
44554         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
44555         modifications:
44556
44557         2002-12-11  Bruno Haible  <bruno@clisp.org>
44558
44559                 * setenv.c (alloca): Fall back to malloc.
44560                 (freea): New macro.
44561                 (setenv): Use freea() to free memory allocated with alloca().
44562
44563         2002-11-13  Bruno Haible  <bruno@clisp.org>
44564
44565                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
44566                 function declarations.
44567                 * unsetenv.c (unsetenv): Likewise.
44568
44569         2002-03-04  Bruno Haible  <bruno@clisp.org>
44570
44571                 Portability to AIX 4.3.3.
44572                 * unsetenv.c: New file, extracted from setenv.c.
44573                 * setenv.c: Move the unsetenv() function to unsetenv.c.
44574
44575         2001-12-20  Bruno Haible  <bruno@clisp.org>
44576
44577                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
44578                 use malloc instead. For SunOS 4.
44579
44580         2001-12-11  Bruno Haible  <bruno@clisp.org>
44581
44582                 * setenv.c: Declare alloca.
44583                 (compar_fn_t): New typedef.
44584                 (KNOWN_VALUE, STORE_VALUE): Use it.
44585
44586         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
44587         setenv.h.
44588
44589 2002-12-10  Paul Eggert  <eggert@twinsun.com>
44590
44591         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
44592         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
44593         Choose values that are less likely to collide with system fnmatch
44594         options.
44595         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
44596         defined (e.g., a pure POSIX system).
44597         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
44598         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
44599
44600 2002-12-06  Paul Eggert  <eggert@twinsun.com>
44601
44602         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
44603         a pain in practice to deal with generated m4 files.  This change
44604         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
44605
44606         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
44607         and jm-glibc-io.m4, as they are no longer a special case.
44608         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
44609         kludge and the auto-generation stuff.  Check only whether the
44610         functions are declared, not whether they exist, since older hosts
44611         that don't declare the functions can't use the optimization anyway.
44612
44613 2002-12-06  Jim Meyering  <jim@meyering.net>
44614
44615         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
44616
44617         Merge in changes from libc's misc/error.c, in preparation
44618         for the merge of gnulib's changes back into libc.
44619
44620         * lib/error.c (_): Define only if not already defined.
44621         Move definition to follow all #include directives.
44622         Include unlocked-io.h only if !_LIBC.
44623         [_LIBC]: Include <libio/libioP.h>.
44624         [USE_IN_LIBIO]: Include <libio/iolibio.h>
44625         (fflush): Tweak definition to use INTUSE.
44626         (putc): Define.
44627
44628 2002-12-05  Paul Eggert  <eggert@twinsun.com>
44629
44630         * lib/alloca.c [defined emacs]: Include "lisp.h".
44631         (xalloc_die) [defined emacs]: New macro.
44632         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
44633         [! defined emacs]: Include <xalloc.h>.
44634         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
44635         (pointer): Typedef to POINTER_TYPE *.
44636         (malloc): Remove decl; we now always use xmalloc.
44637         (alloca): Use old-style definition, since Emacs needs this.
44638         Check for arithmetic overflow when computing combined size.
44639
44640 2002-12-04  Paul Eggert  <eggert@twinsun.com>
44641
44642         Do not generate unlocked-io.h automatically, since it's easier to
44643         maintain it by hand.
44644
44645         * lib/unlocked-io.h: New file, from GNU diffutils,
44646         but with proper copyright notice and attribution.
44647         * lib/gen-uio: Remove.
44648         * lib/Makefile.am: Add copyright notice.
44649         (libfetish_a_SOURCES): Add unlocked-io.h.
44650         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
44651         (DISTCLEANFILES, io_functions): Remove macros.
44652         (EXTRA_DIST): Remove gen_uio.
44653         (unlocked-io.h): Remove rule.
44654
44655 2002-12-04  Jim Meyering  <jim@meyering.net>
44656
44657         Reflect the fact that stat.c and lstat.c are no longer generated.
44658         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
44659         (DISTCLEANFILES): Likewise.
44660         (EXTRA_DIST): Likewise.
44661         (all_local): Don't depend on stat.c or lstat.c.
44662         (stat.c, lstat.c): Remove rules.
44663         (EXTRA_DIST): Remove xstat.in.
44664
44665         * lib/xstat.in: Remove file.  Contents moved into stat.c.
44666         * lib/stat.c: New file.  Contents mostly from xstat.in.
44667         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
44668         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
44669
44670         * lib/safe-read.c: Rework so that it may serve to define safe_write,
44671         too.
44672         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
44673
44674 2002-12-03  Jim Meyering  <jim@meyering.net>
44675
44676         * lib/safe-read.c, safe-write.c: Change variable names and comments,
44677         but not semantics, to minimize the differences between these two files.
44678         (safe_read): Change comment to mention SAFE_READ_ERROR.
44679
44680         * lib/safe-read.c (IS_EINTR): Define.
44681         (safe_read): Use IS_EINTR in place of in-function cpp directives.
44682
44683 2002-12-02  Jim Meyering  <jim@meyering.net>
44684
44685         * lib/safe-read.c (EINTR): Define.
44686         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
44687         (INT_MAX): Provide fallback.
44688         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
44689
44690         * lib/safe-read.h (SAFE_READ_ERROR): Define.
44691
44692 2002-12-02  Bruno Haible  <bruno@clisp.org>
44693
44694         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
44695         Define, taken from safe-read.c.
44696         (INT_MAX): Provide fallback.
44697         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
44698         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
44699
44700         * lib/safe-read.c (EINTR): Remove definition.
44701         (safe_read): Don't use EINTR if it is absent.
44702
44703 2002-12-01  Jim Meyering  <jim@meyering.net>
44704
44705         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
44706         zero.
44707         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
44708
44709 2002-11-27  Paul Eggert  <eggert@twinsun.com>
44710
44711         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
44712         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
44713         with `if (! (value < limit)) abort ();', for readability.
44714
44715 2002-11-26  Karl Berry  <karl@gnu.org>
44716
44717         * lib/strdup.c: copy from libc again, with jim's ok.
44718         * lib/.cppi-disable: re-add strdup.c
44719
44720 2002-11-25  Karl Berry  <karl@gnu.org>
44721
44722         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
44723         instead of "strtol.c".
44724
44725 2002-11-25  Karl Berry  <karl@gnu.org>
44726
44727         * config/install-sh: update from automake for variable quoting, $0 in
44728         error msgs, etc.
44729
44730         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
44731         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
44732         entry.
44733
44734 2002-11-25  Jim Meyering  <jim@meyering.net>
44735
44736         * lib/mktime.c: Sync from libc, now that it has the latest fix.
44737
44738 2002-11-24  Karl Berry  <karl@gnu.org>
44739
44740         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
44741         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
44742
44743 2002-11-24  Jim Meyering  <jim@meyering.net>
44744
44745         Update from coreutils:
44746
44747         * lib/mktime.c: Merge in changes from libc.
44748
44749         Avoid a link-time failure on some Linux systems.
44750         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
44751         (otherwise).
44752         (__mon_yday): Declare with the STATIC attribute.
44753         (__mktime_internal): Likewise.
44754         Based on a report from Greg Schafer.
44755
44756 2002-11-23  Jim Meyering  <jim@meyering.net>
44757
44758         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
44759         Use `unsigned', not `int', as type of index.
44760
44761         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
44762
44763         * lib/fsusage.c: Remove unneeded parentheses around operands of
44764         `defined'.
44765
44766 2002-11-22  Paul Eggert  <eggert@twinsun.com>
44767
44768         * lib/quotearg.h: Allow multiple inclusion by surrounding with
44769         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
44770         so that we can be included first.
44771         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
44772         * lib/quotearg.c: Include quotearg.h immediately after config.h.
44773         No need to include stddef.h or sys/types.h any more.
44774         Surround local include files with "", not "<>".
44775         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
44776         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
44777         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
44778         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
44779         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
44780         (ISPRINT): Remove; no longer needed now that we assume C89.
44781
44782         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
44783         Preserve errno.
44784
44785         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
44786         quotearg_char): Use SIZE_MAX rather than
44787         (size_t) -1 when we are talking about "infinity".
44788
44789         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
44790
44791 2002-11-22  Paul Eggert  <eggert@twinsun.com>
44792
44793         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
44794         hint that one should use `if (! x) abort ();' rather than `assert
44795         (x);', and anyway it's one less thing to worry about configuring.
44796         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
44797         hash_rehash, hash_insert): Use abort rather than assert.
44798
44799 2002-11-22  Bruno Haible  <bruno@clisp.org>
44800
44801         * lib/safe-read.h: Assume C89. Add comments.
44802         (safe_read): Change return type to size_t.
44803         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
44804         byte counts > SSIZE_MAX correctly.
44805         * lib/safe-write.h: New file.
44806         * lib/safe-write.c: New file.
44807         * lib/full-read.h: New file.
44808         * lib/full-read.c: New file.
44809         * lib/full-write.h: Assume C89. Add comments.
44810         * lib/full-write.c: Include safe-write.h.
44811         (full_write): Rewritten to use safe_write.
44812         Suggested by Jim Meyering and Paul Eggert.
44813
44814 2002-11-21  Jim Meyering  <jim@meyering.net>
44815
44816         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
44817
44818         Merge in changes from the coreutils.
44819
44820         2002-09-25  Paul Eggert  <eggert@twinsun.com>
44821         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
44822         <stdint.h>.
44823         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
44824         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
44825         int.  Work more efficiently if X is the same width as uintmax_t.
44826         Do not compare X to -1, to avoid bogus compiler warning.
44827         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
44828         Don't assume that f_frsize and f_bsize are the same type.
44829
44830         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
44831         warning on FreeBSD.
44832
44833         * lib/makepath.c (make_path): Restore umask *before* creating the final
44834         component.
44835         (make_path): Minor reformatting.
44836
44837         * lib/xmalloc.c: Adjust to work with new autoconf macros,
44838         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
44839         HAVE_MALLOC/HAVE_REALLOC.
44840
44841         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
44842         dummy ones.  At least on GNU/Linux systems, `auto' means something
44843         else.
44844         From Michael Stone.
44845
44846 2002-11-21  Bruno Haible  <bruno@clisp.org>
44847
44848         Remove case insensitive option matching.
44849         * lib/argmatch.h (argcasematch): Remove declaration.
44850         (ARGCASEMATCH): Remove macro.
44851         (__xargmatch_internal): Remove case_sensitive argument.
44852         (XARGMATCH): Update.
44853         (XARGCASEMATCH): Remove macro.
44854         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
44855         case_sensitive argument.
44856         (argcasematch): Remove function.
44857         (__xargmatch_internal): Remove case_sensitive argument.
44858         (main): Use XARGMATCH instead of XARGCASEMATCH.
44859
44860         * lib/xmalloc.c: Change compile-time error message. Add comment about
44861         required autoconf version.
44862
44863 2002-11-20  Paul Eggert  <eggert@twinsun.com>
44864
44865         Merge argmatch cleanups from Bison.  Assume C89.
44866
44867         * lib/argmatch.c: Include config.h here, not in argmatch.h.
44868         Include stdlib.h, for EXIT_FAILURE.
44869         Always include <string.h>, since we assume C89.
44870         (EXIT_FAILURE): Remove pre-C89 bug workaround.
44871         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
44872         Include <stddef.h> instead, since it's all we need for size_t.
44873         (PARAMS): Remove.  All uses removed.
44874         (ARRAY_CARDINALITY): Do not bother to #undef.
44875         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
44876         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
44877         Remove unnecessary parentheses.
44878         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
44879         Insert necessary parentheses.
44880         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
44881         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
44882
44883 2002-11-19  Bruno Haible  <bruno@clisp.org>
44884
44885         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
44886         * lib/mbswidth.h: Include <stddef.h>, for size_t.
44887
44888         * lib/mbswidth.h (PARAMS): Remove macro.
44889         (mbswidth, mbsnwidth): Use ANSI C function declarations.
44890         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
44891
44892         * lib/gcd.h (PARAMS): Remove macro.
44893         (gcd): Use ANSI C function declarations.
44894         * lib/gcd.c (gcd): Likewise.
44895
44896 2002-11-15  Bruno Haible  <bruno@clisp.org>
44897
44898         * lib/strcspn.c: Include <stddef.h>.
44899         (strcspn): Use ANSI C function declaration. Change return type to
44900         size_t. Use NULL.
44901         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
44902         (strpbrk): Use NULL.
44903         * lib/strpbrk.h (PARAMS): Remove macro.
44904         (strpbrk): Use ANSI C function declaration.
44905         * lib/strstr.c: Don't include <sys/types.h>.
44906         * lib/strstr.h (PARAMS): Remove macro.
44907         (strstr): Use ANSI C function declarations.
44908
44909 2002-11-14  Karl Berry  <karl@gnu.org>
44910
44911         * config/mkinstalldirs: `do' on separate line, instead of
44912         `for var; do'.
44913
44914 2002-11-06  Bruno Haible  <bruno@clisp.org>
44915
44916         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
44917         * lib/gcd.c (gcd): Likewise.
44918
44919 2002-11-05  Bruno Haible  <bruno@clisp.org>
44920
44921         * lib/gcd.h: New file, from gettext-0.11.5.
44922         * lib/gcd.c: New file, from gettext-0.11.5.
44923
44924 2002-11-05  Bruno Haible  <bruno@clisp.org>
44925
44926         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
44927         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
44928         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
44929         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
44930
44931         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
44932         <libintl.h>.
44933         * lib/makepath.c: Include gettext.h instead of <locale.h> and
44934         <libintl.h>.
44935
44936         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
44937         * lib/human.c: Include gettext.h instead of <libintl.h>.
44938         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
44939         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
44940         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
44941         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
44942         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
44943         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
44944         (textdomain): Remove definition.
44945         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
44946
44947         * lib/long-options.c: Remove include of <libintl.h> and definition of
44948         _.
44949         * lib/same.c: Remove include of <libintl.h> and definition of _.
44950
44951 2002-11-04  Owen Taylor  <otaylor@redhat.com>
44952
44953         * lib/config.charset: A few additions for Solaris.
44954
44955 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
44956
44957         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
44958         * lib/localcharset.c (locale_charset): Declare as extern "C".
44959
44960 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
44961
44962         * lib/config.charset: msdos in uk_UA uses CP1125.
44963
44964 2002-11-04  Bruno Haible  <bruno@clisp.org>
44965
44966         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
44967         * lib/strcase.h: New file, from GNU gettext-0.11.5.
44968         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
44969         * lib/strstr.h: New file, from GNU gettext-0.11.5.
44970         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
44971
44972 2002-11-04  Bruno Haible  <bruno@clisp.org>
44973
44974         * lib/localcharset.c (locale_charset): Don't return an empty string.
44975
44976 2002-11-04  Bruno Haible  <bruno@clisp.org>
44977
44978         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
44979         aliases.
44980
44981 2002-11-04  Bruno Haible  <bruno@clisp.org>
44982
44983         * lib/config.charset: Update for newest glibc. Add canonical names
44984         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
44985
44986 2002-11-04  Bruno Haible  <bruno@clisp.org>
44987
44988         * lib/config.charset: Add support for NetBSD.
44989
44990 2002-11-04  Bruno Haible  <bruno@clisp.org>
44991
44992         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
44993
44994 2002-11-01  Bruno Haible  <bruno@clisp.org>
44995
44996         * configure.in: Add AC_CONFIG_AUX_DIR call.
44997         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
44998         test/Makefile.
44999         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
45000
45001 2002-09-28  Karl Berry  <karl@gnu.org>
45002
45003         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
45004         installed automake until the next release, since changes have been
45005         made.
45006
45007 2002-09-25  Karl Berry  <karl@gnu.org>
45008
45009         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
45010         * lib/getopt*: copy from libc/posix.
45011         * lib/gettext.h: copy from gettext.
45012         * lib/.cppi-disable: add strdup.c, gettext.h.
45013
45014 2002-09-25  Karl Berry  <karl@gnu.org>
45015
45016         * config/srclist.txt: enable gettext.h check.
45017         * config/config.{guess,sub}: update from prep.
45018         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
45019                 from automake 1.6.3.
45020         See srclist*.
45021
45022 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
45023
45024         * regex.c (PATFETCH): Remove the translating fetch.
45025         (PATFETCH_RAW): Rename to PATFETCH.
45026         (set_image_of_range): New fun.
45027         (SET_RANGE_TABLE_WORK_AREA): Use it.
45028         (regex_compile): Don't translate the pattern chars so eagerly.
45029         Only do it when inserting an `exactn' bytecode or when handling
45030         a char-range.
45031         (mutually_exclusive_p): Avoid empty statement.
45032
45033 2002-07-06  Jim Meyering  <meyering@lucent.com>
45034
45035         * m4/README: Don't mention Makefile.am.in.
45036         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
45037
45038 2002-07-01  Jim Meyering  <meyering@lucent.com>
45039
45040         * lib/c-stack.c: Include sys/time.h.
45041         From Volker Borchert.
45042
45043 2002-06-26  Paul Eggert  <eggert@twinsun.com>
45044
45045         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
45046
45047 2002-06-26  Paul Eggert  <eggert@twinsun.com>
45048
45049         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
45050         New macro.  Use it uniformly instead of
45051         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
45052         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
45053         reported by Vin Shelton.
45054
45055 2002-06-22  Paul Eggert  <eggert@twinsun.com>
45056
45057         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
45058         Do not assume SA_SIGINFO behavior.
45059         Bug reported by Jim Meyering on NetBSD 1.5.2.
45060
45061 2002-06-22  Jim Meyering  <meyering@lucent.com>
45062
45063         * m4/c-stack.m4: New file, from diffutils-2.8.2.
45064         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
45065
45066         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
45067         now that configure.ac uses AC_GNU_SOURCE.
45068         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
45069         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
45070
45071         Update to latest tools.  Suggestions from Paul Eggert.
45072         * m4/stdbool.m4: New file, from diffutils-2.8.2.
45073         * m4/gnu-source.m4: Update from diffutils-2.8.2.
45074         * m4/fnmatch.m4: Likewise.
45075         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
45076         to AC_HEADER_STDBOOL
45077
45078 2002-06-22  Jim Meyering  <meyering@lucent.com>
45079
45080         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
45081         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
45082
45083 2002-06-22  Jim Meyering  <meyering@lucent.com>
45084
45085         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
45086
45087         * lib/exitfail.c, exitfail.h: Likewise.
45088         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
45089
45090         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
45091         of fnmatch.h.
45092         (EXTRA_DIST): Add fnmatch_loop.c.
45093         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
45094
45095         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
45096         * lib/fnmatch.c: Update from diffutils-2.8.2.
45097         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
45098         * lib/fnmatch.h: Remove file.
45099
45100 2002-06-21  Jim Meyering  <meyering@lucent.com>
45101
45102         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
45103         * m4/mbrtowc.m4: Likewise.
45104
45105         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
45106         * m4/mbswidth.m4: Reflect name change:
45107         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
45108         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
45109
45110         * m4/lib-link.m4: Update from gettext-0.11.2.
45111         * m4/gettext.m4: Likewise.
45112
45113         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
45114         From Alfred M. Szmidt.
45115
45116 2002-06-18  Paul Eggert  <eggert@twinsun.com>
45117
45118         * lib/file-type.h: Report an error if neither S_ISREG nor
45119         S_IFREG is defined, instead of using a test specific to glibc
45120         2.2.  This should be safe, since POSIX requires S_ISREG and
45121         Unix Version 7 had S_IFREG.  We don't need to check for
45122         <sys/types.h> since we don't use any symbols that it defines.
45123
45124 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
45125
45126         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
45127         $@-t, so that each temporary file name is unique and valid in the first
45128         8 characters, for operation under DOS.
45129
45130 2002-06-15  Paul Eggert  <eggert@twinsun.com>
45131
45132         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
45133
45134 2002-06-15  Jim Meyering  <meyering@lucent.com>
45135
45136         Work even with DJGPP 2.03, which lacks support for symlinks.
45137         From Richard Dawe.
45138         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
45139         is defined.
45140         * lib/lchown.c (S_ISLNK): Likewise.
45141
45142 2002-06-15  Jim Meyering  <meyering@lucent.com>
45143
45144         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
45145         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
45146         have been included before this file.
45147
45148 2002-06-14  Jim Meyering  <meyering@lucent.com>
45149
45150         * lib/file-type.h: Use the version from diffutils-2.8.2.
45151         * lib/file-type.c: Likewise.
45152
45153 2002-06-07  Jim Meyering  <meyering@lucent.com>
45154
45155         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
45156         They're needed at least for NetBSD 1.5.2.
45157         ($statxfs_includes): Include those same headers.
45158         ($statxfs_includes): Include sys/vfs.h if available.
45159         ($statxfs_includes): Likewise for sys/statvfs.h.
45160         Check for the following members in both structs statfs and statvfs:
45161         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
45162
45163 2002-06-01  Jim Meyering  <meyering@lucent.com>
45164
45165         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
45166         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
45167
45168 2002-05-28  Jim Meyering  <meyering@lucent.com>
45169
45170         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
45171         Reported by Volker Borchert.
45172
45173 2002-05-27  Jim Meyering  <meyering@lucent.com>
45174
45175         Fix a problem seen only on nonconforming systems whereby ls.c's
45176         use of localtime, and then of gettimeofday would cause trouble:
45177         the localtime call used to initialize rpl_gettimeofday's save
45178         mechanism would clobber ls's current local time information so
45179         that in any long listing the first file would always be listed
45180         with date 1970-01-01.  Analysis by Volker Borchert.
45181
45182         * lib/gettimeofday.c (localtime): Undefine.
45183         (rpl_localtime): New function.
45184
45185 2002-05-27  Jim Meyering  <meyering@lucent.com>
45186
45187         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
45188         localtime.
45189
45190         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
45191         use the replacement function; it wouldn't resolve at link time.
45192         Reported by Volker Borchert.
45193
45194 2002-05-22  Jim Meyering  <meyering@lucent.com>
45195
45196         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
45197         file-type.h.
45198         * lib/file-type.h: New file.
45199         * lib/file-type.c (file_type): New file/function.  Extracted from
45200         diffutils.
45201
45202 2002-04-30  Jim Meyering  <meyering@lucent.com>
45203
45204         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
45205
45206 2002-04-29  Paul Eggert  <eggert@twinsun.com>
45207
45208         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
45209
45210 2002-04-29  Paul Eggert  <eggert@twinsun.com>
45211
45212         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
45213         Do not check for alloca.h (no longer used) or stdbool.h (was never
45214         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
45215
45216 2002-04-29  Paul Eggert  <eggert@twinsun.com>
45217
45218         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
45219
45220 2002-04-29  Jim Meyering  <meyering@lucent.com>
45221
45222         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
45223         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
45224         Use AC_FUNC_STRNLEN here instead.
45225
45226         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
45227         With autoconf-2.53a, it's part of AC_PROG_CC.
45228
45229 2002-04-28  Paul Eggert  <eggert@twinsun.com>
45230
45231         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
45232         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
45233
45234 2002-04-28  Paul Eggert  <eggert@twinsun.com>
45235
45236         * lib/sig2str.h, lib/sig2str.c: New files.
45237         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
45238
45239 2002-04-28  Paul Eggert  <eggert@twinsun.com>
45240
45241         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
45242         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
45243         of 127, since 64 is the largest conceivable number for ancient
45244         nonstandard hosts.
45245         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
45246
45247 2002-04-28  Jim Meyering  <meyering@lucent.com>
45248
45249         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
45250
45251 2002-04-24  Jim Meyering  <meyering@lucent.com>
45252
45253         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
45254         (jm_PREREQ): Use it.
45255
45256         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
45257         mach/mach.h fcntl.h.
45258         Check for this function: setlocale.
45259
45260 2002-04-24  Jim Meyering  <meyering@lucent.com>
45261
45262         * lib/gettext.h: New file, from Gettext.
45263         * lib/Makefile.am (INCLUDES): Remove -I../intl.
45264         (libfetish_a_SOURCES): Add gettext.h.
45265
45266 2002-04-16  Jim Meyering  <meyering@lucent.com>
45267
45268         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
45269         ut_pid, ut_id, ut_exit.
45270
45271 2002-04-16  Jim Meyering  <meyering@lucent.com>
45272
45273         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
45274         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
45275         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
45276
45277 2002-04-12  Jim Meyering  <meyering@lucent.com>
45278
45279         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
45280         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
45281         existence of the getmntinfo function.  Needed for Darwin 5.3.
45282
45283         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
45284         This is necessary at least on Darwin 5.3.
45285
45286         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
45287         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
45288         strnlen.o in the library, and that makes some versions of ranlib
45289         object.
45290
45291 2002-04-12  Jim Meyering  <meyering@lucent.com>
45292
45293         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
45294
45295 2002-04-09  Jim Meyering  <meyering@lucent.com>
45296
45297         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
45298         to be more precise.  Rather than saying we're checking whether the
45299         function `works', say what we're testing.
45300         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
45301         Reported by Bruno Haible.
45302
45303 2002-03-10  Jim Meyering  <meyering@lucent.com>
45304
45305         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
45306         Suggestion from Santiago Vila.
45307
45308 2002-03-08  Jim Meyering  <meyering@lucent.com>
45309
45310         * lib/rename.c: Mention that this wrapper is needed also on
45311         mips-dec-ultrix4.4 systems.
45312
45313 2002-03-02  Jim Meyering  <meyering@lucent.com>
45314
45315         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
45316         not HAVE_CLOCK_SETTIME.
45317
45318 2002-02-27  Paul Eggert  <eggert@twinsun.com>
45319
45320         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
45321         Check for clock_settime.
45322
45323 2002-02-27  Paul Eggert  <eggert@twinsun.com>
45324
45325         * lib/nanosleep.h: Rename to....
45326         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
45327
45328         * lib/gettime.c: New file.
45329         * lib/settime.c: New file.
45330         * lib/stime.c: Remove.
45331
45332         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
45333         timespec.h.  Remove nanosleep.h.
45334
45335 2002-02-25  Paul Eggert  <eggert@twinsun.com>
45336
45337         * m4/acl.m4: New file.
45338         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
45339         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
45340
45341 2002-02-25  Paul Eggert  <eggert@twinsun.com>
45342
45343         * lib/acl.c, lib/acl.h: New files.
45344         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
45345
45346 2002-02-24  Jim Meyering  <meyering@lucent.com>
45347
45348         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
45349         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
45350         cause trouble.  Reported by Nelson Beebe.
45351
45352 2002-02-23  Paul Eggert  <eggert@twinsun.com>
45353
45354         * lib/path-concat.c (xpath_concat): Reorder code to pacify
45355         compilers that don't know that xalloc_die never returns.
45356
45357 2002-02-20  Jim Meyering  <meyering@lucent.com>
45358
45359         * lib/getdate.c: Regenerate using bison-1.33.
45360
45361 2002-02-17  Jim Meyering  <meyering@lucent.com>
45362
45363         * config/config.guess (main): Don't use `head -1'; it's no longer
45364         portable. Use `sed 1q' instead.
45365
45366 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
45367
45368         * m4/codeset.m4: Upgrade to gettext-0.11.
45369         * m4/gettext.m4: Upgrade to gettext-0.11.
45370         * m4/glibc21.m4: Upgrade to gettext-0.11.
45371         * m4/iconv.m4: Upgrade to gettext-0.11.
45372         * m4/isc-posix.m4: Upgrade to gettext-0.11.
45373         * m4/lcmessage.m4: Upgrade to gettext-0.11.
45374         * m4/lib-ld.m4: New file, from gettext-0.11.
45375         * m4/lib-link.m4: New file, from gettext-0.11.
45376         * m4/lib-prefix.m4: New file, from gettext-0.11.
45377         * m4/progtest.m4: Upgrade to gettext-0.11.
45378
45379 2002-02-15  Paul Eggert  <eggert@twinsun.com>
45380
45381         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
45382         (jm_PREREQ): Use it.
45383
45384 2002-02-15  Paul Eggert  <eggert@twinsun.com>
45385
45386         * lib/posixver.c, lib/posixver.h: New files.
45387         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
45388
45389 2002-02-02  Paul Eggert  <eggert@twinsun.com>
45390             Bruno Haible  <bruno@clisp.org>
45391
45392         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
45393         (fwrite_success_callback): New declaration.
45394         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
45395         print_unicode_char. Call failure callback instead of error.
45396         (fwrite_success_callback): New function.
45397         (exit_failure_callback): New function.
45398         (fallback_failure_callback): New function.
45399         (print_unicode_char): Call unicode_to_mb.
45400
45401 2002-01-26  Jim Meyering  <meyering@lucent.com>
45402
45403         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
45404         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
45405
45406 2002-01-26  Jim Meyering  <meyering@lucent.com>
45407
45408         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
45409
45410 2002-01-22  Paul Eggert  <eggert@twinsun.com>
45411
45412         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
45413
45414 2002-01-22  Jim Meyering  <meyering@lucent.com>
45415
45416         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
45417         Otherwise, some versions of automake would omit the rule that makes
45418         Makefile from Makefile.in.
45419
45420 2002-01-21  Paul Eggert  <eggert@twinsun.com>
45421
45422         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
45423         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
45424         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
45425         (memcoll): Set errno to zero if there is no error.
45426
45427         * lib/quotearg.c (quotearg_buffer_restyled):
45428         Fix bug with quoting buffers containing NUL when backslashing escapes.
45429         This bug was exposed by the other changes in this patch.
45430         (quotearg_n_options): New arg ARGSIZE.
45431         All callers changed.
45432         (quoting_options_from_style): New function.
45433         (quotearg_n_style): Use it.
45434         (quotearg_n_style_mem): New function.
45435
45436         * lib/quotearg.h (quotearg_n_style_mem): New function.
45437
45438 2002-01-19  Jim Meyering  <meyering@lucent.com>
45439
45440         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
45441         Remove useless quotes: DF_PROG="df".
45442         * m4/strnlen.m4: New file.
45443
45444 2002-01-16  Paul Eggert  <eggert@twinsun.com>
45445
45446         * lib/backupfile.c (ISDIGIT): Comment fix.
45447         * lib/getdate.y (ISDIGIT): Likewise.
45448         * lib/posixtm.c (ISDIGIT, year): Likewise.
45449         * lib/strverscmp.c (ISDIGIT): Likewise.
45450         * lib/userspec.c (ISDIGIT): Likewise.
45451
45452 2002-01-16  Jim Meyering  <meyering@lucent.com>
45453
45454         * lib/getdate.y: Add three semicolons, each just before a closing
45455         brace. Bison (as of version 1.31) no longer papers over that mistake.
45456
45457 2002-01-05  Jim Meyering  <meyering@lucent.com>
45458
45459         * lib/version-etc.c (version_etc_copyright): Update copyright year.
45460
45461 2001-12-19  Paul Eggert  <eggert@twinsun.com>
45462
45463         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
45464         not silently exit merely because the output buffer happens to
45465         have nothing pending.
45466
45467 2001-12-18  Paul Eggert  <eggert@twinsun.com>
45468
45469         See the big note in ../ChangeLog.
45470         * lib/human.c (suffixes): Prefer K to k for 1024.
45471         (generate_suffix_backwards): New function.
45472         (human_readable_inexact): Use it.
45473         * lib/xstrtol.c (__xstrtol): If there is no number but there
45474         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
45475         Accept 'K' as well as 'k'.
45476
45477 2001-12-15  Jim Meyering  <meyering@lucent.com>
45478
45479         * lib/regex.h (__restrict_arr): Update from libc.
45480
45481         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
45482         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
45483         (STREQ): Define.
45484
45485 2001-12-14  Jim Meyering  <meyering@lucent.com>
45486
45487         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
45488         Suggestion from Bruno Haible.
45489
45490 2001-12-10  Jim Meyering  <meyering@lucent.com>
45491
45492         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
45493         xrealloc, Instead, include "xalloc.h".
45494         (initbuffer): Don't cast xmalloc return value to char*.
45495         (readline): Reword comment.
45496         Don't cast xrealloc return value to char*
45497         Return NULL, not 0.
45498
45499 2001-12-09  Jim Meyering  <meyering@lucent.com>
45500
45501         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
45502         about `signed and unsigned type in conditional expression'.
45503         * lib/posixtm.c (posix_time_parse): Likewise.
45504
45505         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
45506
45507         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
45508         to avoid a pedantic warning.
45509
45510         * lib/getstr.c: Don't include assert.h.
45511         (getstr): Remove warning-evoking assertions.
45512         Return -1 if offset parameter is out of bounds.
45513         Change the type of a local from int to size_t.
45514
45515         * lib/strftime.c (my_strftime_localtime_r): Include this function
45516         definition in the `#if ! HAVE_TM_GMTOFF' block.
45517
45518         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
45519         Include xalloc.h instead.
45520
45521 2001-12-02  Jim Meyering  <meyering@lucent.com>
45522
45523         * lib/tempname.c: Don't declare getenv, thus reverting the change of
45524         2001-11-18.  It's no longer necessary, now that stdlib.h is always
45525         included.
45526
45527         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
45528         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
45529
45530 2001-11-30  Akim Demaille  <akim@epita.fr>
45531
45532         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
45533         before being defined.
45534
45535 2001-11-27  Paul Eggert  <eggert@twinsun.com>
45536
45537         * lib/quotearg.h (quotearg_n, quotearg_n_style):
45538         First arg is int, not unsigned.
45539         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
45540         (SIZE_MAX, UINT_MAX): New macros.
45541         (quotearg_n_options): Abort if N is negative.
45542         Avoid overflow check on hosts where size_t is 64 bits and int
45543         is 32 bits, as overflow is impossible there.
45544         Fix off-by-one typo that caused unnecessary reallocation.
45545
45546 2001-11-27  Jim Meyering  <meyering@lucent.com>
45547
45548         * lib/tempname.c: Merge with version from libc.
45549         * lib/regex.c: Likewise.
45550
45551         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
45552         systems for which STDC_HEADERS is 0, it was not included, resulting in
45553         a warning about an integer-to-pointer conversion problem with getenv.
45554         Reported by Volker Borchert.
45555
45556 2001-11-26  Jim Meyering  <meyering@lucent.com>
45557
45558         * lib/gtod.h: Remove file.
45559         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
45560         * lib/gettimeofday.c: Don't include gtod.h.
45561         (GTOD_init): Remove function.
45562         (rpl_gettimeofday): Do its job here instead, rather than aborting.
45563         Suggestion from Volker Borchert.
45564
45565 2001-11-23  Jim Meyering  <meyering@lucent.com>
45566
45567         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
45568         it.
45569         * lib/hash.c (struct hash_table): Define it here instead.
45570
45571 2001-11-22  Jim Meyering  <meyering@lucent.com>
45572
45573         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
45574
45575 2001-11-20  Jim Meyering  <meyering@lucent.com>
45576
45577         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
45578         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
45579
45580 2001-11-19  Jim Meyering  <meyering@lucent.com>
45581
45582         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
45583         directory.  Use "conftestXXXXXX" as the template.
45584         Suggestion from Paul Eggert.
45585
45586         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
45587         immediately, so the test doesn't mistakenly hit the max-open-files
45588         limit.
45589
45590 2001-11-18  Paul Eggert  <eggert@twinsun.com>
45591
45592         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
45593         (TEMPORARIES): New macro.
45594         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
45595         removes an artificial limitation (e.g. HP-UX 10.20, where
45596         TMP_MAX is 17576).
45597
45598 2001-11-18  Jim Meyering  <meyering@lucent.com>
45599
45600         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
45601
45602 2001-11-18  Jim Meyering  <meyering@lucent.com>
45603
45604         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
45605         on SunOS 4.
45606
45607         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
45608         files will be created before anything else.
45609
45610 2001-11-17  Paul Eggert  <eggert@twinsun.com>
45611
45612         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
45613         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
45614
45615 2001-11-17  Jim Meyering  <meyering@lucent.com>
45616
45617         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
45618         Prompted by a report from Bob Proulx.
45619
45620         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
45621         Instead, require UTILS_FUNC_MKSTEMP.
45622
45623 2001-11-17  Jim Meyering  <meyering@lucent.com>
45624
45625         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
45626         Now, that's done as part of AC_FUNC_STRTOD.
45627
45628 2001-11-17  Jim Meyering  <meyering@lucent.com>
45629
45630         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
45631         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
45632         rather than group writable.  Patch by Juan F. Codagnone.
45633
45634         * lib/readtokens.c: Remove explicit declarations of xmalloc and
45635         xrealloc, Instead, include "xalloc.h".
45636
45637         * lib/mountlist.c: Include unlocked-io.h after all system headers.
45638         Remove explicit declarations of xmalloc, xrealloc,
45639         and xstrdup.  Instead, include "xalloc.h".
45640
45641         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
45642         unlocked-io.h.
45643         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
45644         Likewise.
45645         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
45646
45647         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
45648         Reported by Padraig Brady.
45649
45650         * lib/mkstemp.c: #undef mkstemp.
45651         Include config.h.
45652         (rpl_mkstemp): Rename from mkstemp.
45653         Protoize.
45654
45655 2001-11-16  Jim Meyering  <meyering@lucent.com>
45656
45657         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
45658         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
45659         determine the amount of total physical memory, use pstat_getstatic.
45660         HPUX-11 doesn't define _SC_PHYS_PAGES.
45661         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
45662         If sysconf couldn't be used to determine the amount of available
45663         physical memory, use both pstat_getstatic and pstat_getdynamic.
45664         Based on a patch from Bob Proulx.
45665
45666 2001-11-10  Jim Meyering  <meyering@lucent.com>
45667
45668         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
45669         (jm_PREREQ): Use it.
45670
45671 2001-11-09  Jim Meyering  <meyering@lucent.com>
45672
45673         * m4/jm-macros.m4: Require autoconf-2.52f.
45674         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
45675         Use these AC_-prefixed names, not the AM_-prefixed ones.
45676
45677         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
45678
45679 2001-11-05  Jim Meyering  <meyering@lucent.com>
45680
45681         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
45682
45683 2001-11-04  Jim Meyering  <meyering@lucent.com>
45684
45685         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
45686         $DEFS.
45687
45688 2001-11-03  Jim Meyering  <meyering@lucent.com>
45689
45690         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
45691         of AC_DEFUN.
45692
45693         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
45694         know the name of the variable in the macro definition.
45695
45696 2001-11-03  Jim Meyering  <meyering@lucent.com>
45697
45698         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
45699         in argmatch_to_argument call.
45700
45701         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
45702         argument.
45703
45704         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
45705         e.g., a fault due to an attempt to free a NULL pointer.
45706
45707 2001-11-01  Jim Meyering  <meyering@lucent.com>
45708
45709         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
45710         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
45711
45712 2001-11-01  Jim Meyering  <meyering@lucent.com>
45713
45714         * lib/dirfd.c, lib/dirfd.h: New files.
45715         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
45716
45717         * lib/hash.c (hash_print) [TESTING]: Clean up.
45718
45719 2001-10-22  Paul Eggert  <eggert@twinsun.com>
45720
45721         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
45722         to avoid a warning if -Wall.
45723
45724 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
45725
45726         * README: New file
45727         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
45728         (per RMS's instructions, this is now the canonical source)
45729         * lgpl/, gpl/: New directories.
45730
45731 2001-10-21  Paul Eggert  <eggert@twinsun.com>
45732
45733         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
45734
45735 2001-10-21  Jim Meyering  <meyering@lucent.com>
45736
45737         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
45738         this code would end up calling gettext even in packages built
45739         with --disable-nls.
45740         * lib/getopt.c (_): Likewise.
45741         * lib/regex.c (_): Likewise.
45742
45743 2001-10-20  Paul Eggert  <eggert@twinsun.com>
45744
45745         * m4/error.m4 (jm_PREREQ_ERROR):
45746         Do not invoke AC_CHECK_FUNCS with strerror_r, as
45747         AC_FUNC_STRERROR_R does that.
45748         Check for strerror declaration.
45749
45750         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
45751         are supposed to have them these days.
45752         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
45753         Merge changes from latest Autoconf CVS.
45754         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
45755         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
45756         POSIX decided to standardize on the int flavor of strerror_r.
45757
45758 2001-10-20  Paul Eggert  <eggert@twinsun.com>
45759
45760         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
45761         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
45762         Use strerror_r that is only a macro, even if it is not a function.
45763         (strerror): Check for HAVE_DECL_STRERROR before declaring.
45764         (private_strerror): Use prototypes, not old-style function definition.
45765         (print_errno_message): New function.
45766         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
45767         char*-flavored one.
45768         (error_tail, error, error_at_line): Use it.
45769
45770 2001-10-11  Jim Meyering  <meyering@lucent.com>
45771
45772         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
45773         and quote_n (1, ... to avoid clobbering a buffer.
45774
45775 2001-10-05  Jim Meyering  <meyering@lucent.com>
45776
45777         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
45778         hash-pjw.h.
45779         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
45780         * lib/hash-pjw.h: New file.
45781
45782 2001-09-30  Jim Meyering  <meyering@lucent.com>
45783
45784         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
45785         `struct fsstat' has the `f_fstypename' member.
45786         Use that to define FS_TYPE, which is now used to make
45787         the getfsstat link test tighter.
45788
45789 2001-09-30  Jim Meyering  <meyering@lucent.com>
45790
45791         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
45792         Include <sys/ucred.h>, for Apple Darwin.
45793         Include sys/mount.h and sys/fs_types.h only if available.
45794         (FS_TYPE): Define.
45795         (read_filesystem_list): Use FS_TYPE.
45796
45797 2001-09-29  Paul Eggert  <eggert@twinsun.com>
45798
45799         * lib/exclude.c (excluded_filename): 0 -> false, since it's
45800         a boolean context.
45801
45802 2001-09-29  Jim Meyering  <meyering@lucent.com>
45803
45804         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
45805         [one-argument getmntent function]): Include stdio.h before mntent.h.
45806         SunOS 4.1.x needs it for the declaration of `FILE'.
45807         Patch by Volker Borchert.
45808
45809         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
45810         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
45811         sys/fs_types.h, and make the link-test for getfsstat guard #include
45812         directives with appropriate #if HAVE_*_H tests so that we can
45813         detect getfsstat on Apple Darwin1.3.7 systems.
45814         Reported by Nelson Beebe.
45815         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
45816
45817 2001-09-28  Paul Eggert  <eggert@twinsun.com>
45818
45819         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
45820         #defines strtoimax.  Also treat the other strto* functions
45821         like strtoimax.
45822
45823         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
45824         Check for strtoul and strtoumax,
45825         as those declarations are made even in the signed case.
45826         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
45827         Likewise, for strtol and strtoimax.
45828
45829 2001-09-28  Paul Eggert  <eggert@twinsun.com>
45830
45831         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
45832         #defines strtoimax.  Also treat the other strto* functions
45833         like strtoimax.
45834
45835         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
45836         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
45837         (strtoimax, strtoumax): Do not declare if already defined as a macro.
45838
45839 2001-09-26  Jim Meyering  <meyering@lucent.com>
45840
45841         Most macros in unlocked-io.h had the wrong number of arguments.
45842         * lib/gen-uio: New script.
45843         (USE_UNLOCKED_IO): Define to 1 if not already defined.
45844         * lib/unlocked-io.hin: Remove file.
45845         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
45846         rather than trying to embed it here.
45847         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
45848         Reported by Padraig Brady.
45849
45850 2001-09-25  Volker Borchert  <bt@teknon.de>
45851
45852         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
45853         `result'.
45854
45855 2001-09-24  Jim Meyering  <meyering@lucent.com>
45856
45857         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
45858
45859 2001-09-23  Jim Meyering  <meyering@lucent.com>
45860
45861         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
45862         instead of the mere test for existence of mntent.h.  The latter
45863         would get a false-positive on AIX 3.4 systems.
45864         In the outer getmntent if-block, don't die if neither of the getmntent
45865         tests succeeds.  Instead, just fall through and continue with the
45866         remaining tests.
45867
45868 2001-09-23  Jim Meyering  <meyering@lucent.com>
45869
45870         * lib/mountlist.c: Remove useless parentheses in #if directives.
45871         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
45872         the deprecated MOUNTED symbol is no longer defined in mntent.h.
45873
45874 2001-09-22  Jim Meyering  <meyering@lucent.com>
45875
45876         * m4/gettext.m4: New file.  From gettext.
45877         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
45878         * m4/progtest.m4: Likewise
45879         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
45880         * m4/glibc21.m4: Likewise.
45881
45882         * m4/libintl.m4: Remove.  No longer used.
45883
45884 2001-09-22  Jim Meyering  <meyering@lucent.com>
45885
45886         * lib/localcharset.c: Update from latest gettext.
45887         * lib/config.charset: Likewise.
45888
45889 2001-09-20  Jim Meyering  <meyering@lucent.com>
45890
45891         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
45892         strtoimax.
45893         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
45894         strtoumax.
45895
45896 2001-09-20  Jim Meyering  <meyering@lucent.com>
45897
45898         * lib/xstrtol.c (strtoimax): Guard declaration with
45899         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
45900         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
45901         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
45902         (strtoumax): Likewise, for completeness (it wasn't necessary).
45903
45904 2001-09-17  Paul Eggert  <eggert@twinsun.com>
45905
45906         * lib/strtoimax.c (HAVE_LONG_LONG):
45907         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
45908         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
45909         to work around bug in IBM C compiler.
45910
45911 2001-09-17  Jim Meyering  <meyering@lucent.com>
45912
45913         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
45914         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
45915         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
45916         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
45917         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
45918         whenever the right hand side need not be expanded by the shell.
45919
45920 2001-09-16  Paul Eggert  <eggert@twinsun.com>
45921
45922         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
45923         library.  It's not correct, as some older glibcs are buggy.
45924         fnmatch wasn't fixed until glibc 2.2.
45925
45926         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
45927         special shell magic here.
45928
45929 2001-09-16  Jim Meyering  <meyering@lucent.com>
45930
45931         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
45932         * m4/jm-macros.m4: Require it.
45933
45934 2001-09-16  Jim Meyering  <meyering@lucent.com>
45935
45936         * lib/mkdir.c: New file.
45937
45938 2001-09-15  Jim Meyering  <meyering@lucent.com>
45939
45940         * m4/jm-macros.m4: Check for help2man.
45941
45942 2001-09-11  Jim Meyering  <meyering@lucent.com>
45943
45944         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
45945         The body, by Paul Eggert, was moved here from configure.in.
45946         * m4/jm-macros.m4: Require UTILS_HOST_OS.
45947
45948 2001-09-04  Paul Eggert  <eggert@twinsun.com>
45949
45950         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
45951         (jm_PREREQ): Use it.
45952
45953 2001-09-04  Paul Eggert  <eggert@twinsun.com>
45954
45955         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
45956         Use ssize_t, not int, to store result of readlink.
45957         Check for ssize_t overflow as well as size_t overflow,
45958         as POSIX says the result of readlink is implementation-defined
45959         when ssize_t overflows.
45960         Remove unnecessary cast to char*.
45961         Use free+malloc instead of realloc, as the storage doesn't need
45962         to be preserved and it's clearer and can be more efficient that way.
45963         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
45964         * lib/xreadlink.h (xreadlink): Update prototype.
45965
45966 2001-09-04  Paul Eggert  <eggert@twinsun.com>
45967
45968         * lib/xgetcwd.c: Revert some of the previous change; intead,
45969         fix the HAVE_GETCWD_NULL code to behave more like the
45970         !HAVE_GETCWD_NULL code used to.
45971
45972         Include "xalloc.h".
45973         (xgetcwd): Do not return NULL when memory is exhausted; instead,
45974         invoke xalloc_die.
45975
45976 2001-09-03  Paul Eggert  <eggert@twinsun.com>
45977
45978         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
45979         sys/param.h, as pathmax.h includes them.
45980
45981 2001-09-03  Paul Eggert  <eggert@twinsun.com>
45982
45983         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
45984         (jm_PREREQ_XGETCWD): New macro.
45985
45986         * m4/getcwd.m4: New file.
45987
45988 2001-09-03  Paul Eggert  <eggert@twinsun.com>
45989
45990         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
45991         like the HAVE_GETCWD_NULL code.
45992         Include pathmax.h if not HAVE_GETCWD.
45993         Do not include xalloc.h.
45994         (INITIAL_BUFFER_SIZE): New symbol.
45995         Do not use xmalloc / xrealloc, since the caller is responsible for
45996         handling errors.  Preserve errno around `free' during failure.
45997         Do not overrun buffer when using getwd.
45998
45999 2001-09-03  Paul Eggert  <eggert@twinsun.com>
46000
46001         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
46002         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
46003         getcwd (NULL, 0).
46004
46005 2001-09-03  Paul Eggert  <eggert@twinsun.com>
46006
46007         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
46008         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
46009         spotted by Jim Meyering.
46010
46011 2001-09-03  Jim Meyering  <meyering@lucent.com>
46012
46013         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
46014         failure.
46015
46016 2001-09-02  Jim Meyering  <meyering@lucent.com>
46017
46018         * lib/error.c: Update from GNU libc.
46019
46020 2001-09-01  Jim Meyering  <meyering@lucent.com>
46021
46022         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
46023         Used by df.
46024
46025 2001-09-01  Jim Meyering  <meyering@lucent.com>
46026
46027         * lib/xreadlink.c: New file.
46028         * lib/xreadlink.h: New file.
46029         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
46030         xreadlink.h.
46031
46032         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
46033         doesn't conflict with sparc Solaris 7's definition in
46034         /usr/include/sys/int_types.h.
46035
46036         * lib/exclude.c: Use `""', not `<>' to #include non-system header
46037         files.
46038         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
46039         and strncasecmp as r-values.  Unixware didn't have declarations.
46040
46041 2001-08-31  Paul Eggert  <eggert@twinsun.com>
46042
46043         * lib/xstrtol.h: Add copyright notice.
46044         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
46045         LONGINT_INVALID_SUFFIX_CHAR.
46046
46047 2001-08-31  Paul Eggert  <eggert@twinsun.com>
46048
46049         * lib/xstrtol.c (strtoimax): New decl.
46050
46051 2001-08-31  Paul Eggert  <eggert@twinsun.com>
46052
46053         * lib/xgetcwd.c: Don't include pathmax.h.
46054         Include stdlib.h and unistd.h if available.
46055         Include xalloc.h.
46056         (xmalloc, xstrdup, free): Remove decls.
46057         (xgetcwd): Don't assume sizes fit in unsigned.
46058         Check for overflow when computing sizes.
46059         Simplify reallocation code.
46060
46061 2001-08-31  Paul Eggert  <eggert@twinsun.com>
46062
46063         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
46064         a directory's st_size can have an arbitrary value, so the old
46065         usage could waste an arbitrary amount of memory.  All uses
46066         changed.
46067         * lib/savedir.h: Update prototype.
46068
46069 2001-08-31  Paul Eggert  <eggert@twinsun.com>
46070
46071         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
46072
46073         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
46074         old strtoimax.c.
46075
46076         Also, make the following further changes to make this file's
46077         configuration more similar to that of strtol.c:
46078         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
46079         (strtoumax, uintmax_t, strtoull, strtol): Remove.
46080         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
46081         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
46082         changed to signed values.
46083
46084         And make the following changes as well:
46085         Fix copyright notice, as 1999 was missing.
46086         (verify): New macro.
46087         (strtoimax): Check sizes at compile-time, not run-time.
46088         Prefer strtol to strtoll if both work.
46089         (main): Remove; it was not that useful and was a pain to maintain.
46090
46091         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
46092
46093 2001-08-31  Jim Meyering  <meyering@lucent.com>
46094
46095         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
46096         Use an initial, malloc'd, buffer of length 128 rather than
46097         a statically allocated one of length 1024.
46098
46099 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46100
46101         Simplify code, partly by assuming autoconf 2.52 semantics.
46102
46103         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
46104
46105         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
46106         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
46107         All uses removed.
46108         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
46109         Move AC_REQUIRE to next-to-top level, to avoid confusion.
46110         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
46111         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
46112         jm_AC_HEADER_INTTYPES_H.
46113         * m4/jm-macros.m4 (jm_MACROS): Likewise.
46114
46115         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
46116
46117         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
46118         Quote first arg of AC_DEFUN.
46119         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
46120         since they are needed to parse the include file even if we need
46121         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
46122         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
46123         but with opposite signedness.
46124
46125 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46126
46127         Merge 'exclude' changes from tar 1.13.22.
46128         This fixes one or two unlikely storage allocation overflow bugs,
46129         but doesn't change user-visible behavior otherwise.
46130
46131 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46132
46133         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
46134         (jm_PREREQ_EXCLUDE): New macro.
46135
46136 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46137
46138         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
46139         tm to be declared.
46140
46141 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46142
46143         * lib/hash.c: Remove '2001' from copyright notice.
46144
46145 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46146
46147         * lib/full-write.h: New file.
46148         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
46149         * lib/full-write.c: Correct credits, as cccp.c no longer
46150         exists and anyway it was so heavily changed from the old cccp
46151         code as to be unrecognizable.  Include full-write.h.
46152         (full_write) Return size_t, with short writes meaning failure.
46153         All callers changed.  This fixes a bug with large buffers
46154         on 64-bit hosts.
46155         * lib/utime.c: Include full-write.h.
46156
46157 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46158
46159         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
46160         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
46161         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
46162         Include if available.
46163         (<xalloc.h>): Include
46164         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
46165         (verify): New macro.  Use it to verify that EXCLUDE macros do not
46166         collide with FNM macros.
46167         (struct patopts): New struct.
46168         (struct exclude): Use it, as exclude patterns now come with options.
46169         (new_exclude): Support above changes.
46170         (new_exclude, add_exclude_file):
46171         Initial size must now be a power of two to simplify overflow checking.
46172         (free_exclude, fnmatch_no_wildcards): New function.
46173         (excluded_filename): No longer requires options arg, as the options
46174         are determined by add_exclude.  Now returns bool, not int.
46175         (excluded_filename, add_exclude):
46176         Add support for the fancy new exclusion options.
46177         (add_exclude, add_exclude_file): Now takes int options arg.
46178         Check for arithmetic overflow when computing sizes.
46179         (add_exclude_file): xrealloc might modify errno, so don't
46180         realloc until after errno might be used.
46181
46182         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
46183         New macros.
46184         (free_exclude): New decl.
46185         (add_exclude, add_exclude_file): Now takes int options arg.
46186         (excluded_filename): No longer requires options arg, as the options
46187         are determined by add_exclude.  Now returns bool, not int.
46188
46189 2001-08-30  Paul Eggert  <eggert@twinsun.com>
46190
46191         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
46192
46193 2001-08-27  Jim Meyering  <meyering@lucent.com>
46194
46195         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
46196
46197         * lib/version-etc.c (N_): Remove definition.
46198         Revert most of last change.
46199         Instead, simply don't mark the `Copyright...' string for translation.
46200         Based on advice from Paul Eggert.
46201
46202         * lib/strtoxmax.c: Tweak comment.
46203
46204 2001-08-26  Jim Meyering  <meyering@lucent.com>
46205
46206         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
46207
46208         * m4/xstrtoimax.m4: New file.
46209         * m4/xstrtoumax.m4: Add comments explaining why we
46210         AC_REPLACE_FUNCS(strtol).
46211
46212 2001-08-26  Jim Meyering  <meyering@lucent.com>
46213
46214         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
46215         of copyright with `%s' so translators don't get an untranslated
46216         message in 2002.
46217         (COPYRIGHT_YEAR): Define.
46218         (version_etc): Use fprintf rather than fputs.
46219         Suggestion from Ulrich Drepper.
46220
46221         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
46222
46223         * lib/strtoll.c: New file, from GNU libc.
46224         * lib/xstrtoimax.c: New file.
46225
46226         * lib/xstrtol.h: Add xstrtoimax.
46227         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
46228         * lib/strtoimax.c: New file.  Likewise, but first define
46229         STRTOUXMAX_SIGNED.
46230
46231         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
46232         ...
46233         * lib/strtoxmax.c: ... then renamed to this.
46234
46235 2001-08-18  Paul Eggert  <eggert@twinsun.com>
46236
46237         * m4/inttypes.m4: Add AC_PREREQ(2.13).
46238         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
46239         (jm_AC_TYPE_INTMAX_T): New macro.
46240         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
46241
46242         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
46243
46244         * m4/longlong.m4: Renamed from ulonglong.m4.
46245         * m4/inttypes.m4: Renamed from inttypes_h.m4.
46246         * m4/uintmax_t.m4: Removed.
46247
46248 2001-08-13  Paul Eggert  <eggert@twinsun.com>
46249
46250         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
46251         Port to Solaris 8, where 'sed' requires a space after the 'r'
46252         command, and where sh dislikes "$/".  Clean up the spacing a bit.
46253         Redirect output to $tmp just once.
46254
46255 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
46256
46257         * lib/addext.c (<errno.h>): Include.
46258         (errno): Declare if not defined.
46259         (addext): Work correctly when pathconf returns -1 and leaves
46260         errno alone because there is no limit.  Also, work even if
46261         pathconf returns a value greater than SIZE_MAX.
46262
46263 2001-08-12  Jim Meyering  <meyering@lucent.com>
46264
46265         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
46266         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
46267         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
46268         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
46269         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
46270         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
46271         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
46272         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
46273         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
46274         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
46275         utime.m4, utimes.m4, xstrtoumax.m4:
46276         Quote the first argument in each use of AC_DEFUN.
46277
46278 2001-08-12  Jim Meyering  <meyering@lucent.com>
46279
46280         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
46281         Simply `return getcwd (NULL, 0);'.
46282         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
46283         Use 1300 as initial value for length, not PATH_MAX.
46284
46285         * lib/pathmax.h: Clean up cpp syntax.
46286
46287 2001-08-12  Jim Meyering  <meyering@lucent.com>
46288
46289         * lib/gettimeofday.c: New file.
46290         * lib/gtod.h: New file.
46291         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
46292
46293 2001-08-05  Jim Meyering  <meyering@lucent.com>
46294
46295         * m4/jm-macros.m4: Require autoconf-2.52.
46296
46297 2001-08-04  Jim Meyering  <meyering@lucent.com>
46298
46299         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
46300         stmt, to get in sync with glibc.
46301
46302 2001-08-03  Paul Eggert  <eggert@twinsun.com>
46303
46304         The following changes are from gettext 0.10.39 as maintained by
46305         Bruno Haible.
46306
46307         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
46308         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
46309         with inverted sense.  All uses changed.
46310
46311         * lib/mbswidth.c: Don't include <limits.h>.
46312         Include <stdlib.h> and <string.h> unconditionally.
46313         (iswcntrl, mbsinit, ISCNTRL): New macros.
46314         (mbsnwidth): Use K&R style function declarations.
46315         Don't bother checking for MB_LEN_MAX == 1, since the compiler
46316         can optimize it when MB_CUR_MAX == 1.
46317         The width of control characters is zero, not 1.
46318
46319 2001-08-03  Paul Eggert  <eggert@twinsun.com>
46320
46321         The following changes are from gettext 0.10.39 as maintained by
46322         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
46323
46324         * m4/codeset.m4: Upgrade to serial AM1.
46325         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
46326         all uses changed.  Quote first arg of AC_DEFUN.
46327         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
46328
46329         * m4/iconv.m4: Upgrade to serial AM2.
46330         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
46331         Add --with-libconv-prefix.
46332         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
46333         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
46334         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
46335         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
46336         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
46337
46338         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
46339         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
46340         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
46341         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
46342         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
46343         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
46344         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
46345         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
46346         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
46347
46348         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
46349         string.h any more.
46350
46351         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
46352         not the default value.
46353
46354         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
46355         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
46356         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
46357         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
46358         Also check for iswcntrl, used for wcwidth fallback.
46359         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
46360         to Autoconf 2.13.
46361
46362 2001-08-03  Jim Meyering  <meyering@lucent.com>
46363
46364         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
46365         as it was in the original.  Reported by Paul Eggert.
46366
46367 2001-07-16  Jim Meyering  <meyering@lucent.com>
46368
46369         * m4/gettimeofday.m4: New file.
46370         Prompted by a report from Bernhard Baehr.
46371
46372 2001-07-15  Jim Meyering  <meyering@lucent.com>
46373
46374         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
46375         stuff. Now it's in ../Makefile.cfg.
46376
46377 2001-07-15  Jim Meyering  <meyering@lucent.com>
46378
46379         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
46380         (BUILT_SOURCES): Add unlocked-io.h.
46381         (io_functions): Define.
46382         (unlocked-io.h): New rule.
46383         (DISTCLEANFILES): Add unlocked-io.h.
46384         (all-local): Depend on unlocked-io.h, to ensure it is created.
46385
46386         * lib/unlocked-io.hin: New file
46387
46388         * lib/regex.c: Update from glibc.
46389
46390 2001-07-05  Jim Meyering  <meyering@lucent.com>
46391
46392         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
46393         recommendation.
46394         (libfetish_a_SOURCES): Put all .h files here instead.
46395         Remove a thus-exposed (better checks in automake) duplicate and
46396         two unnecessary .h files.
46397
46398 2001-07-04  Jim Meyering  <meyering@lucent.com>
46399
46400         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
46401         that generates jm-glibc-io.m4 so that it doesn't trigger any make
46402         distcheck failure.
46403
46404 2001-07-02  Jim Meyering  <meyering@lucent.com>
46405
46406         The following changes were prompted by suggestions from Bruno Haible.
46407
46408         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
46409         is now generated.
46410         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
46411         definition of EXTRA_DIST.
46412         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
46413         ensure that the generated file is created/updated whenever the list
46414         of $(unlocked_functions) is changed.
46415         (jm-glibc-io.m4): New rule.
46416         (unlocked-io.h): New rule -- currently unused.
46417
46418 2001-06-24  Jim Meyering  <meyering@lucent.com>
46419
46420         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
46421         unmatched right bracket, rather than kludging it with an extra,
46422         falsely-matching quote in a comment.  Patch by Akim Demaille.
46423
46424 2001-06-11  Jim Meyering  <meyering@lucent.com>
46425
46426         * lib/regex.c: Update from GNU libc.
46427
46428 2001-05-27  Jim Meyering  <meyering@lucent.com>
46429
46430         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
46431         Check for ut_type in struct utmp.
46432
46433 2001-05-27  Jim Meyering  <meyering@lucent.com>
46434
46435         * lib/readutmp.h (UT_TYPE): Define.
46436
46437 2001-05-24  Jim Meyering  <meyering@lucent.com>
46438
46439         * lib/argmatch.c: Include "quote.h".
46440         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
46441         quote function.  Reported by Göran Uddeborg.
46442
46443 2001-05-22  Jim Meyering  <meyering@lucent.com>
46444
46445         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
46446         now that we use the package-supplied version unconditionally.
46447         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
46448
46449 2001-05-21  Jim Meyering  <meyering@lucent.com>
46450
46451         * m4/regex.m4: Change a couple backticks to single quotes to avoid
46452         shell syntax errors.
46453
46454 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
46455
46456         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
46457
46458 2001-05-20  Paul Eggert  <eggert@twinsun.com>
46459
46460         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
46461         Don't bother to check library strftime, since
46462         we'll be using our own my_strftime function anyway.
46463         Define my_strftime instead of strftime.
46464
46465 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
46466
46467         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
46468         which is not yet declared.
46469
46470 2001-05-15  Jim Meyering  <meyering@lucent.com>
46471
46472         * m4/regex.m4: Use proper quoting so brackets appear in the test
46473         program.
46474         Reported by, and with help from, Bruno Haible.
46475
46476 2001-05-13  Jim Meyering  <meyering@lucent.com>
46477
46478         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
46479         undefined.
46480
46481 2001-05-11  Paul Eggert  <eggert@twinsun.com>
46482
46483         dirname code cleanup.  base_name now behaves more compatibly
46484         with POSIX basename when given file names that have trailing
46485         slashes, and similarly for dir_name.  Add new primitives
46486         base_len and dir_len.  Put the directory-name-related decls
46487         into dirname.h.
46488
46489         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
46490         * lib/backupfile.c (base_name): Likewise.
46491         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
46492         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
46493         * lib/makepath.c (strip_trailing_slashes): Likewise.
46494         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
46495         ISSLASH): Likewise.
46496         * lib/rename.c (strip_trailing_slashes): Likewise.
46497         * lib/same.c (base_name): Likewise.
46498         * lib/stripslash.c (ISSLASH): Likewise.
46499
46500         * lib/addext.c: Include <dirname.h> after size_t is defined.
46501         * lib/backupfile.c: Likewise.
46502
46503         * lib/addext.c (addext): Use base_len to trim redundant
46504         trailing slashes instead of doing it ourselves.
46505         But do not trim the last slash if it is not redundant.
46506
46507         * lib/backupfile.c (find_backup_file_name,
46508         max_backup_version): Use base_len instead of rolling it ourselves.
46509         Handle the case of "" and (on DOS) "C:" correctly.
46510
46511         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
46512         needed. Include <string.h>, <dirname.h>.
46513         (base_name): Allow file names ending in slashes, other than names
46514         that are all slashes.  In this case, return the basename followed
46515         by the slashes.  This is more general, and can be used in places
46516         where the original base_name purposely had an assertion failure.
46517         (base_len): New function.
46518
46519         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
46520         Do not include <assert.h>; no longer needed.
46521         Include xalloc.h.
46522         (memrchr): Remove decl.
46523         (dir_name_r): Remove.
46524         (dir_len): Renamed from dirlen.  All callers changed.
46525         Rewrite in terms of base_name, for simplicity and consistency.
46526         (dir_name): Never return NULL.  All callers changed.
46527         Do not include <stdlib.h> in test program; no longer needed.
46528         return 0; is fine for test program.
46529
46530         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
46531         New macros.
46532         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
46533
46534         * lib/path-concat.c (path_concat): Use base_len to compute
46535         base length, not strlen; this means we cannot rely on memcpy
46536         to null-terminate.
46537
46538         * lib/same.c (STREQ): Remove.
46539         (same_name): Handle the case where the basename ends in trailing '/'.
46540
46541         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
46542         a slash was stripped.  Do not strip the last slash after a
46543         file system prefix.
46544
46545 2001-05-11  Paul Eggert  <eggert@twinsun.com>
46546
46547         * lib/Makefile.am (libfetish_a_SOURCES):
46548         Add strftime.c, since we now compile it on all hosts.
46549
46550         * lib/strftime.c (my_strftime):
46551         Define to nstrftime if emacs, but only if my_strftime is not defined.
46552         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
46553         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
46554         Add one more extra argument: a nanoseconds value.
46555         All uses changed.
46556         (ns): New macro.
46557         (my_strftime function): Add %N format.
46558         (emacs_strftimeu): Renamed from emacs_strftime,
46559         with extra ut argument.
46560
46561 2001-05-09  Paul Eggert  <eggert@twinsun.com>
46562
46563         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
46564
46565 2001-04-21  Jim Meyering  <meyering@lucent.com>
46566
46567         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
46568         doesn't interfere.
46569
46570 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
46571
46572         * m4/ftruncate.m4: Check for chsize.
46573         Link with ftruncate.o unconditionally if ftruncate is missing.
46574         This was required when cross-compiling to i586-mingw32msvc.
46575
46576 2001-04-08  Jim Meyering  <meyering@lucent.com>
46577
46578         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
46579         recomputed; that's necessary when the offset spans a DST transition.
46580         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
46581
46582 2001-04-02  Jim Meyering  <meyering@lucent.com>
46583
46584         * lib/regex.h, regex.c: Update from GNU libc.
46585
46586 2001-03-24  Jim Meyering  <meyering@lucent.com>
46587
46588         * m4/jm-macros.m4: Require autoconf-2.49d.
46589
46590 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
46591
46592         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
46593
46594 2001-03-19  Paul Eggert  <eggert@twinsun.com>
46595
46596         * lib/version-etc.c (version_etc_copyright): Update to 2001.
46597
46598 2001-03-17  Jim Meyering  <meyering@lucent.com>
46599
46600         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
46601         now that the version in autoconf is equivalent.
46602         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
46603
46604         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
46605         Suggestion from Akim Demaille.
46606
46607         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
46608         (jm_PREREQ_TEMPNAME): New function.
46609
46610 2001-03-16  Paul Eggert  <eggert@twinsun.com>
46611
46612         * lib/tempname.c (uint64_t): Define to uintmax_t if
46613         not defined, and if UINT64_MAX is not defined.
46614         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
46615         Reported by John David Anglin.
46616
46617 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
46618
46619         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
46620         resolve alias if codeset is empty.
46621         * lib/config.charset (BeOS): Use wildcard syntax.
46622
46623 2001-03-13  Jim Meyering  <meyering@lucent.com>
46624
46625         * lib/path-concat.c (path_concat)
46626         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
46627         concatenating e.g., `C:' and `foo'.
46628         From Bruno Haible.
46629
46630 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
46631
46632         * lib/localcharset.c (locale_charset): Don't use
46633         setlocale(LC_CTYPE,NULL). Don't return NULL.
46634         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
46635
46636 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
46637
46638         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
46639         support for DOS/DJGPP.
46640
46641 2001-03-01  Paul Eggert  <eggert@twinsun.com>
46642
46643         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
46644         lacks mkstemp.  Compile our own tempname.c if we compile our own
46645         mkstemp.c, as mkstemp relies on tempname.
46646
46647 2001-03-01  Jim Meyering  <meyering@lucent.com>
46648
46649         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
46650         AH_VERBATIM really does output its argument verbatim.
46651
46652 2001-02-28  Paul Eggert  <eggert@twinsun.com>
46653
46654         * lib/Makefile.am (libfetish_a_SOURCES):
46655         Add dup-safer.c, fopen-safer.c.
46656         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
46657
46658         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
46659         * lib/unistd-safer.h: New files.
46660
46661 2001-02-25  Paul Eggert  <eggert@twinsun.com>
46662
46663         The mkstemp replacement is taken from glibc 2.2.2, with some
46664         portability fixes for use outside glibc, as follows:
46665
46666         * lib/tempname.c (struct_stat64): New macro.
46667         (direxists, __gen_tempname): Use it.
46668         This avoids a portability problem with Solaris 8.
46669
46670         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
46671         (<stddef.h>, <stdint.h>, <string.h>):
46672         Include only if STDC_HEADERS || _LIBC.
46673         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
46674         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
46675         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
46676         (__set_errno): Define this macro if <errno.h> doesn't.
46677         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
46678         Define these macros if <stdio.h> doesn't.
46679         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
46680         Define these macros if <sys/stat.h>
46681         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
46682         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
46683         __xstat64): Define if not _LIBC.
46684         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
46685         (__gen_tempname): Invoke gettimeofday only if
46686         HAVE_GETTIMEOFDAY || _LIBC;
46687         otherwise, fall back on plain "time".
46688         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
46689
46690         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
46691
46692         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
46693
46694 2001-02-18  Paul Eggert  <eggert@twinsun.com>
46695
46696         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
46697
46698 2001-02-17  Paul Eggert  <eggert@twinsun.com>
46699
46700         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
46701         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
46702         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
46703         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
46704
46705 2001-02-17  Paul Eggert  <eggert@twinsun.com>
46706
46707         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
46708         Remove workaround macros for hosts that have mbrtowc but not
46709         mbstate_t, as we now insist on proper declarations for both
46710         before using mbrtowc.
46711
46712 2001-02-17  Jim Meyering  <meyering@lucent.com>
46713
46714         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
46715         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
46716         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
46717         UnixWare 7.1.1.
46718
46719         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
46720         rather than AC_CACHE_VAL.
46721
46722 2001-02-17  Jim Meyering  <meyering@lucent.com>
46723
46724         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
46725         around included file name.
46726
46727         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
46728
46729         * lib/strftime.c: Update from GNU libc (the only changes were to
46730         comments).
46731
46732 2001-02-17  Jim Meyering  <meyering@lucent.com>
46733
46734         * lib/regex.c: Update from libc.
46735
46736 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
46737
46738         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
46739         clash.
46740
46741 2001-02-16  Paul Eggert  <eggert@twinsun.com>
46742
46743         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
46744         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
46745         Reported by Mark Hounschell via Paul Eggert.
46746
46747 2001-02-07  Jim Meyering  <meyering@lucent.com>
46748
46749         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
46750
46751 2001-02-05  Jim Meyering  <meyering@lucent.com>
46752
46753         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
46754         it includes the patch required for `large file' support with at least
46755         HP-UX's 10.20 /bin/cc.
46756
46757 2001-02-03  Jim Meyering  <meyering@lucent.com>
46758
46759         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
46760         AS_IF, now that it works once again (mysteriously).
46761         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
46762
46763 2001-01-30  Jim Meyering  <meyering@lucent.com>
46764
46765         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
46766         * m4/chown.m4: Rename conftestchown to conftest.chown.
46767         * m4/rename.m4: s/conftestdir/conftest.d1/ and
46768         s/conftestdir2/conftest.d2/.
46769         * m4/utimes.m4: s/conftestdata/conftest.data/
46770         Inspired by Pavel Roskin's change in autoconf.
46771
46772 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
46773
46774         * lib/config.charset: Update for FreeBSD 4.2.
46775
46776 2001-01-27  Jim Meyering  <meyering@lucent.com>
46777
46778         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
46779         a use of AS_IF.
46780         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
46781
46782 2001-01-26  Jim Meyering  <meyering@lucent.com>
46783
46784         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
46785         quotearg.c includes it.
46786
46787 2001-01-26  Jim Meyering  <meyering@lucent.com>
46788
46789         * lib/quotearg.c: Include stddef.h.
46790         * lib/quote.c: Include stddef.h.
46791         Reported by Axel Kittenberger.
46792
46793         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
46794         line in double quotes so that it evokes a better diagnostic.
46795         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
46796         Reported by Axel Kittenberger.
46797
46798 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
46799
46800         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
46801         as if it was a `charset'.
46802
46803 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
46804
46805         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
46806         has const.
46807
46808 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
46809
46810         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
46811         to avoid a warning.  Add back 'const' to inptr.
46812
46813 2001-01-20  Jim Meyering  <meyering@lucent.com>
46814
46815         Be sure that headers are checked before used in code compiled
46816         for the type checks.
46817         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
46818         In place of that, invoke jm_CHECK_ALL_TYPES.
46819         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
46820         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
46821         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
46822         The check for ssize_t was mistakenly run before the test for unistd.h.
46823
46824         The configure-time check for stdbool.h was missing.
46825         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
46826         (jm_PREREQ_HASH): New function.
46827
46828 2001-01-17  Jim Meyering  <meyering@lucent.com>
46829
46830         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
46831         for autoconf-2.49c.
46832         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
46833
46834 2001-01-16  Jim Meyering  <meyering@lucent.com>
46835
46836         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
46837         From Bruno Haible.
46838
46839 2001-01-14  Jim Meyering  <meyering@lucent.com>
46840
46841         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
46842         foo and bar.  Create conftestdir/ in the script, not in the C code.
46843         Remove directories in the script, not in the C code.
46844         Remove conftestdir{,2} before trying to create the directory.
46845         Make the entire configure script fail if the mkdir fails.
46846
46847 2001-01-14  Jim Meyering  <meyering@lucent.com>
46848
46849         * lib/rename.c: New file.  From Volker Borchert.
46850         Include stdlib.h, string.h or strings.h, and xalloc.h.
46851         Use strip_trailing_slashes rather than open-coding it.
46852
46853 2001-01-03  Paul Eggert  <eggert@twinsun.com>
46854
46855         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
46856
46857 2001-01-03  Jim Meyering  <meyering@lucent.com>
46858
46859         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
46860         of local `inptr' to avoid warning with some system declarations of
46861         iconv.
46862
46863 2001-01-02  Volker Borchert  <bt@teknon.de>
46864
46865         * m4/rename.m4: New file.
46866         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
46867
46868 2001-01-01  Jim Meyering  <meyering@lucent.com>
46869
46870         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
46871         even on systems with utmpx.h.  It's necessary for the declaration of
46872         utmp's ut_user member.  Reported by Andreas Jaeger.
46873
46874         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
46875         available. They are required for the declarations of getgrgid and
46876         getpwuid resp.
46877         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
46878         Reported by Andreas Jaeger.
46879
46880 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
46881
46882         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
46883         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
46884         so `make install' also works in VPATH builds.
46885
46886 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
46887
46888         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
46889         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
46890         can be used in subdirectories.
46891
46892 2000-12-29  Paul Eggert  <eggert@twinsun.com>
46893
46894         * lib/modechange.c: Do not assume that mode_t uses the
46895         traditional octal encoding.  E.g. "chmod 1 FOO" should set
46896         the other-execute bit of FOO even if S_IXOTH != 1.
46897
46898         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
46899         WOTH, XOTH, ALLM): New macros.
46900         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
46901          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
46902         Use them.
46903         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
46904         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
46905         (mode_compile):
46906         No need to use uintmax_t; unsigned long is long enough.
46907         Don't bother to get suffix since we don't use it.
46908
46909 2000-12-26  Jim Meyering  <meyering@lucent.com>
46910
46911         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
46912         better with autoheader.
46913
46914 2000-12-24  Jim Meyering  <meyering@lucent.com>
46915
46916         * lib/hash.c (is_prime): Return explicit boolean values.
46917         (hash_get_first): Return NULL to appease Irix5.6's 89.
46918         Reported by Nelson Beebe.
46919
46920 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
46921
46922         * lib/localcharset.c (locale_charset): Add support for Win32.
46923
46924 2000-12-18  Paul Eggert  <eggert@twinsun.com>
46925
46926         * lib/physmem.h, lib/physmem.c: New files.
46927
46928         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
46929         (noinst_HEADERS): Add physmem.h.
46930
46931         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
46932         't' for compatibility with Solaris 8 sort.
46933
46934 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
46935
46936         * lib/config.charset: Add support for BeOS.
46937
46938 2000-12-17  Jim Meyering  <meyering@lucent.com>
46939
46940         * m4/dos.m4 (jm_AC_DOS): New file and macro.
46941         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
46942
46943 2000-12-16  Jim Meyering  <meyering@lucent.com>
46944
46945         This bug had a serious impact on chown: `chown N:M FILE' (for integer
46946         N and M) would have treated it like `chown N:N FILE'.
46947
46948         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
46949
46950 2000-12-16  Jim Meyering  <meyering@lucent.com>
46951
46952         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
46953         SHELLS_FILE to a file name that's useful on djgpp systems.
46954         Include stdlib.h.
46955         (ADDITIONAL_DEFAULT_SHELLS): Define.
46956         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
46957         Based mostly on a patch from Prashant TR.
46958
46959 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
46960
46961         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
46962         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
46963         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
46964
46965 2000-12-08  Andreas Schwab  <schwab@suse.de>
46966
46967         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
46968         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
46969
46970 2000-12-07  Jim Meyering  <meyering@lucent.com>
46971
46972         * lib/stripslash.c (ISSLASH): Define.
46973         (strip_trailing_slashes): Use ISSLASH rather than comparing against
46974         `/'.
46975         From Prashant TR.
46976
46977         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
46978         (dir_name_r): Declare this function as static.
46979         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
46980         manifest itself on a name containing a mix of slashes and
46981         backslashes.
46982         Make this function work with names starting with a DOS-style
46983         drive letter and colon prefix.
46984         (dir_name): Append `.' if necessary.
46985         Based mostly on patches from Prashant TR and Eli Zaretskii.
46986
46987         * lib/dirname.h (dir_name_r): Remove prototype.
46988
46989 2000-12-06  Paul Eggert  <eggert@twinsun.com>
46990
46991         * m4/off_t-format.m4: Remove this file.
46992         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
46993
46994 2000-12-06  Jim Meyering  <meyering@lucent.com>
46995
46996         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
46997         replacement strtoull, we may well need the replacement strtoul, too.
46998         Check for declarations of strtoul and strtoull.
46999         Check for strtol.  Mainly as a cue to cause automake to include
47000         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
47001         Check for limits.h -- strtol.c needs it.
47002
47003 2000-12-05  Jim Meyering  <meyering@lucent.com>
47004
47005         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
47006
47007 2000-12-04  Jim Meyering  <meyering@lucent.com>
47008
47009         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
47010         Also include memory.h, stdlib.h, unistd.h if appropriate.
47011         Reported by Andreas Jaeger (conflicting declaration of malloc).
47012
47013 2000-12-02  Jim Meyering  <meyering@lucent.com>
47014
47015         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
47016         * m4/jm-macros.m4 (jm_MACROS): require it.
47017
47018 2000-12-02  Jim Meyering  <meyering@lucent.com>
47019
47020         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
47021
47022 2000-12-01  Paul Eggert  <eggert@twinsun.com>
47023
47024         * lib/memrchr.c: Include <config.h> before any system include file.
47025
47026 2000-11-30  Jim Meyering  <meyering@lucent.com>
47027
47028         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
47029
47030 2000-11-30  Jim Meyering  <meyering@lucent.com>
47031
47032         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
47033
47034 2000-11-29  Paul Eggert  <eggert@twinsun.com>
47035
47036         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
47037
47038 2000-11-26  Jim Meyering  <meyering@lucent.com>
47039
47040         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
47041
47042 2000-11-22  Paul Eggert  <eggert@twinsun.com>
47043
47044         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
47045         size of (size_t) -1; it's not portable.
47046
47047 2000-11-17  Jim Meyering  <meyering@lucent.com>
47048
47049         * lib/strstr.c: Update from GNU libc.
47050
47051 2000-11-17  Akim Demaille  <akim@epita.fr>
47052
47053         * lib/obstack.h: Formatting changes.
47054         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
47055         prevent type checking.
47056         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
47057         cast the value to (void *): assigning a `foo *' to a `void *'
47058         variable is valid.
47059         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
47060
47061 2000-11-16  Jim Meyering  <meyering@lucent.com>
47062
47063         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
47064
47065 2000-11-11  Jim Meyering  <meyering@lucent.com>
47066
47067         * lib/error.c: Add a couple #includes, merging from GNU libc version.
47068
47069 2000-11-10  Jim Meyering  <meyering@lucent.com>
47070
47071         * lib/obstack.h: Update from GNU libc.
47072         * lib/obstack.c: Likewise.
47073
47074 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
47075
47076         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
47077
47078 2000-11-06  Paul Eggert  <eggert@twinsun.com>
47079
47080         * lib/getusershell.c (setusershell): Use rewind rather than
47081         fseek/fseeko, to avoid configuration hassles with fseeko.
47082         Don't bother opening SHELLS_FILE if shellstream is NULL;
47083         it's not necessary.
47084
47085 2000-11-05  Jim Meyering  <meyering@lucent.com>
47086
47087         * lib/makepath.h (make_dir): Declare.
47088         * lib/makepath.c (make_dir): Remove `static' attribute.
47089         Tweak a comment.
47090
47091 2000-11-04  Jim Meyering  <meyering@lucent.com>
47092
47093         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
47094
47095 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
47096
47097         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
47098         last one in a bucket, advance to the next bucket.
47099
47100 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
47101
47102         * lib/fnmatch.c: Do not comment out all the code if we are using
47103         the GNU C library, because in some cases we are replacing buggy
47104         code in the GNU C library itself.
47105
47106 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
47107
47108         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
47109         (regex_compile): Catch bogus \(\1\).
47110
47111 2000-10-30  Paul Eggert  <eggert@twinsun.com>
47112
47113         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
47114         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
47115         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
47116
47117 2000-10-30  Paul Eggert  <eggert@twinsun.com>
47118
47119         * lib/error.h, getline.h, modechange.h:
47120         Remove "2000" from Copyright line, as the file hasn't been
47121         changed this year other than in the copyright notice.
47122
47123         * lib/xalloc.h: Add "2000" to Copyright line, as this file
47124         was changed this year.
47125
47126 2000-10-29  Jim Meyering  <meyering@lucent.com>
47127
47128         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
47129         renaming.
47130         * m4/ls-mntd-fs.m4: Likewise
47131
47132 2000-10-29  Jim Meyering  <meyering@lucent.com>
47133
47134         * lib/xstat.in: Fix grammar in comment.
47135
47136 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
47137
47138         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
47139         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
47140         doesn't define __restrict_arr.
47141
47142 2000-10-28  Jim Meyering  <meyering@lucent.com>
47143
47144         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
47145         (jm_PREREQ_MEMCHR): New function.
47146
47147 2000-10-28  Jim Meyering  <meyering@lucent.com>
47148
47149         * lib/memchr.c: Update from libc.
47150         Adjust for portability:
47151         [HAVE_STDLIB_H]: Include stdlib.h.
47152         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
47153         Undef __memchr, too.
47154         [!weak_alias]: Define __memchr to memchr.
47155
47156         * lib/regex.c: Update from libc.
47157         * lib/regex.h: Likewise.
47158         * lib/getopt1.c: Likewise.
47159         * lib/memcmp.c: Likewise.
47160
47161         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
47162         Avoid using fseek, when possible -- it's broken by design.
47163         Patch by Ulrich Drepper.
47164
47165 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
47166
47167         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
47168         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
47169         Giving in to popular pressure to shut up the compiler with casts.
47170
47171 2000-10-26  Jim Meyering  <meyering@lucent.com>
47172
47173         * lib/strftime.c: Update from libc.
47174
47175 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
47176
47177         * regex.c: More `unsigned char' -> `re_char' changes.
47178         Also change several `int' into `re_wchar_t'.
47179         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
47180         (PUSH_FAILURE_POINTER): Don't cast any more.
47181         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
47182         We want GCC to complain, since this piece of code makes
47183         re_match non-reentrant, which *should* be fixed.
47184         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
47185         (EXTEND_BUFFER): Use RETALLOC.
47186         (SET_LIST_BIT): Don't cast.
47187         (re_wchar_t): New type.
47188         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
47189         that those two functions will always properly return.
47190         (IMMEDIATE_QUIT_CHECK): Cast to void.
47191         (analyse_first): Use recursion rather than an explicit stack.
47192         (re_compile_fastmap): Can't fail anymore.
47193         (re_search_2): Don't check re_compile_fastmap for failure.
47194         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
47195         Now also sets the new value (passed in a new argument).
47196         (re_match_2_internal): Use it.
47197         Also, use a new var `reg' of type size_t when looping through regs
47198         rather than reuse the inappropriate `mcnt'.
47199
47200 2000-10-25  Jim Meyering  <meyering@lucent.com>
47201
47202         * lib/obstack.c: Update from libc.
47203
47204 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
47205
47206         * regex.c (regex_compile): Change the way of handling a range from
47207         a char less than 256 to a char not less than 256.
47208
47209 2000-10-24  Andrew Innes  <andrewi@gnu.org>
47210
47211         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
47212         NT-Emacs only.
47213         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
47214         so that re_search functions only quit when callers expect them to.
47215
47216 2000-10-23  Jim Meyering  <meyering@lucent.com>
47217
47218         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
47219         wrong.  That set_locale call must not have any side effects.
47220         From Paul Eggert.
47221
47222 2000-10-22  Jim Meyering  <meyering@lucent.com>
47223
47224         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
47225         [CYCLIC]: Remove now-unused definition.
47226
47227         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
47228         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
47229         Suggestion from Ulrich Drepper.
47230
47231 2000-10-21  Jim Meyering  <meyering@lucent.com>
47232
47233         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
47234         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
47235         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
47236
47237 2000-10-21  Jim Meyering  <meyering@lucent.com>
47238
47239         * lib/dirname.c (memrchr): Declare if necessary.
47240         (dir_name): Remove the restriction that there be no
47241         trailing slashes.  Now, this code skips past them, effectively
47242         ignoring them.
47243         [TEST_DIRNAME] (main): New unit tests.
47244
47245         * lib/memrchr.c: New file from GNU libc.
47246         Undef __memrchr, too.
47247         [!weak_alias]: Define __memrchr to memrchr.
47248         Guard weak_alias use with `#ifdef weak_alias'.
47249
47250 2000-10-21  Jim Meyering  <meyering@lucent.com>
47251
47252         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
47253         (dir_name): Use dir_name_r.
47254         * lib/dirname.h (dir_name_r): Declare it.
47255
47256 2000-10-17  Jim Meyering  <meyering@lucent.com>
47257
47258         * lib/quote.h (PARAMS): Define and use.
47259         Reported by Akim Demaille.
47260
47261         * lib/getopt.c: Update from libc.
47262
47263 2000-10-16  Jim Meyering  <meyering@lucent.com>
47264
47265         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
47266         setlocale.
47267         From Jan Fedak.
47268
47269 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
47270
47271         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
47272
47273 2000-09-25  Jim Meyering  <meyering@lucent.com>
47274
47275         * lib/md5.h (rol): Define (from GnuPG).
47276
47277         * lib/sha.c: Give credit (GnuPG) where due.
47278         (M): Use rol rather than open-coding it.
47279         Add a FIXME comment.
47280
47281 2000-09-21  Jim Meyering  <meyering@lucent.com>
47282
47283         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
47284         Reported by Michael Stone.
47285
47286 2000-09-20  Jim Meyering  <meyering@lucent.com>
47287
47288         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
47289         (noinst_HEADERS): Add sha.h.
47290         Based on code from Scott G. Miller and from GnuPG.
47291
47292 2000-09-18  Jim Meyering  <meyering@lucent.com>
47293
47294         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
47295         LIBS. Otherwise, everyone ends up linking with -lelf for some
47296         configurations.
47297         Reported by Mike Stone.
47298
47299 2000-09-15  Jim Meyering  <meyering@lucent.com>
47300
47301         * lib/regex.c: Update from libc.
47302
47303 2000-09-10  Jim Meyering  <meyering@lucent.com>
47304
47305         * lib/getopt.c (_getopt_internal): Update from glibc.
47306
47307 2000-09-09  Jim Meyering  <meyering@lucent.com>
47308
47309         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
47310         think it should be used as a general replacement for isascii.
47311         * lib/fnmatch.c: Likewise.
47312         * lib/mbswidth.c: Likewise
47313         * lib/regex.c: Likewise.
47314
47315         Don't use atoi.
47316         * lib/userspec.c: Include sys/param.h and limits.h.
47317         Include xstrtol.h.
47318         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
47319         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
47320         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
47321         UID, GID.  Check range.
47322
47323 2000-09-06  Jim Meyering  <meyering@lucent.com>
47324
47325         * lib/getopt.c (_getopt_internal): Update from glibc.
47326
47327 2000-08-30  Jim Meyering  <meyering@lucent.com>
47328
47329         * lib/strftime.c: Merge in changes from GNU libc.
47330
47331 2000-08-26  Jim Meyering  <meyering@lucent.com>
47332
47333         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
47334         * m4/fpending.m4: New file.
47335
47336 2000-08-26  Jim Meyering  <meyering@lucent.com>
47337
47338         * lib/closeout.c: Include "__fpending.h".
47339         (close_stdout_status): Return right away if there's nothing to flush.
47340
47341         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
47342         * lib/__fpending.c: New file.
47343         * lib/__fpending.h: New file.
47344
47345 2000-08-20  Jim Meyering  <meyering@lucent.com>
47346
47347         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
47348         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
47349         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
47350
47351 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
47352
47353         Improve fileutils installation on systems where running
47354         programs (like install) can't be unlinked.
47355         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
47356         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
47357
47358 2000-08-07  Paul Eggert  <eggert@twinsun.com>
47359
47360         Standardize on "memory exhausted" instead of "Memory exhausted"
47361         or "virtual memory exhausted".
47362         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
47363         "virtual memory exhausted".
47364         * lib/same.c (same_name): Invoke xalloc_die instead of printing
47365         our own message.
47366         * lib/userspec.c (parse_user_spec): Likewise.
47367         * lib/bumpalloc.h: comment fix
47368         * lib/same.c, userspec.c: Include xalloc.h.
47369
47370         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
47371         not char *const and pointing to a constant array.
47372         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
47373         (xrealloc): Comment fix.
47374
47375         * lib/userspec.c (parse_user_spec):
47376         Don't translate a message until just before returning,
47377         to avoid unnecessary translation.
47378
47379 2000-08-07  Jim Meyering  <meyering@lucent.com>
47380
47381         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
47382         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
47383         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
47384         getgroups.c, gethostname.c, getopt.h, group-member.c,
47385         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
47386         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
47387         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
47388         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
47389         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
47390         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
47391         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
47392         yesno.c: Back out Copyright date changes for each file with no change
47393         this year.  This eases coordination with other programs using the same
47394         source code modules.  From Paul Eggert.
47395
47396 2000-08-06  Paul Eggert  <eggert@twinsun.com>
47397
47398         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
47399         not char, for compatibility with glibc 2.1.3 strftime.c.
47400
47401 2000-08-03  Greg McGary  <greg@mcgary.org>
47402
47403         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
47404         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
47405         (EXTEND_BUFFER): Use them.
47406
47407 2000-08-01  Jim Meyering  <meyering@lucent.com>
47408
47409         * lib/dirname.c (ISSLASH): Define.
47410         (BACKSLASH_IS_PATH_SEPARATOR): Define.
47411         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
47412         both `\' and `/' may be use as path separators.
47413         Based on a patch from Prashant TR.
47414
47415 2000-07-31  Paul Eggert  <eggert@twinsun.com>
47416
47417         * lib/quotearg.c (quotearg_n_options): Don't make the initial
47418         slot vector a constant, since it might get modified.
47419
47420 2000-07-31  Jim Meyering  <meyering@lucent.com>
47421
47422         * lib/xmalloc.c: Use `virtual memory exhausted', not
47423         `Memory exhausted'.
47424         * lib/obstack.c (print_and_abort): Likewise.
47425
47426 2000-07-30  Paul Eggert  <eggert@twinsun.com>
47427
47428         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
47429         buffer, so that the caller can always quote one small
47430         component of a "memory exhausted" message in slot 0.
47431         From a suggestion by Jim Meyering.
47432
47433 2000-07-30  Jim Meyering  <meyering@lucent.com>
47434
47435         * lib/makepath.c (make_path): Quote the other instance, too.
47436
47437         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
47438         (STATIC_BUF_SIZE): Define.
47439         (quotearg_n_options): Use only statically allocated storage when
47440         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
47441         than STATIC_BUF_SIZE.
47442
47443 2000-07-29  Jim Meyering  <meyering@lucent.com>
47444
47445         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
47446         * lib/dirname.c (dir_name): Likewise.
47447
47448         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
47449         `/'.
47450
47451         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
47452         (dir_name): Assert that there are no trailing slashes.
47453
47454 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
47455
47456         * lib/mbswidth.h (mbswidth): Add a flags argument.
47457         (mbswidth): New declaration.
47458         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
47459         * lib/mbswidth.c (mbswidth): Add a flags argument.
47460         (mbsnwidth): New function.
47461
47462 2000-07-24  Jim Meyering  <meyering@lucent.com>
47463
47464         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
47465
47466 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47467
47468         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
47469
47470 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47471
47472         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
47473         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
47474         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
47475         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
47476         invoke multibyte primitives.
47477
47478 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47479
47480         * lib/quotearg.c:
47481         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
47482         so that mbstate_t is always defined.
47483
47484         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
47485         be 1 in at least one GCC installation, and this configuration
47486         error is likely to be common.  Ignoring MB_LEN_MAX hurts
47487         performance on hosts that have mbrtowc but have only unibyte
47488         locales, but I assume these hosts are rare.
47489
47490 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47491
47492         * lib/mbswidth.c (_XOPEN_SOURCE):
47493         Don't define; this causes problems on Solaris 7.
47494         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
47495
47496 2000-07-23  Jim Meyering  <meyering@lucent.com>
47497
47498         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
47499         too: getgrgid, getpwuid, getuid.
47500
47501 2000-07-23  Jim Meyering  <meyering@lucent.com>
47502
47503         * lib/basename.c (base_name): Add an assertion.
47504
47505 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
47506
47507         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
47508         shadow its mbsinit function.
47509
47510 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
47511
47512         * lib/mbswidth.h: New file.
47513         * lib/mbswidth.c: New file.
47514         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
47515         (noinst_HEADERS): Add mbswidth.h.
47516
47517 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
47518
47519         * lib/config.charset: Add support for FreeBSD. Improve support for
47520         HP-UX and IRIX 6.
47521
47522 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
47523
47524         * m4/mbswidth.m4: New file.
47525         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
47526
47527 2000-07-15  Jim Meyering  <meyering@lucent.com>
47528
47529         * lib/makepath.c: Include quote.h.
47530         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
47531         corresponding argument in a `quote (...)' call.
47532         Give better diagnostics.
47533
47534         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
47535         (noinst_HEADERS): Add quote.h.
47536
47537         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
47538         from tar's src/misc.c.
47539         * lib/quote.h: New file.  Prototypes for same.
47540
47541 2000-07-14  Paul Eggert  <eggert@twinsun.com>
47542
47543         From a suggestion by Bruno Haible.
47544         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
47545         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
47546         to decide whether to define the BeOS workaround macro;
47547         this adjusts to the change to AC_MBSTATE_T.
47548
47549 2000-07-14  Jim Meyering  <meyering@lucent.com>
47550
47551         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
47552         jm_AC_TYPE_UINTMAX_T.
47553
47554 2000-07-13  Paul Eggert  <eggert@twinsun.com>
47555
47556         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
47557
47558         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
47559         quotearg_buffer_restyled): Add support for
47560         clocale_quoting_style.  Undo previous change to
47561         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
47562         and "{RIGHT QUOTATION MARK}" msgids.
47563
47564 2000-07-10  Paul Eggert  <eggert@twinsun.com>
47565
47566         From a suggestion by Bruno Haible.
47567         * m4/mbstate_t.m4 (AC_MBSTATE_T):
47568         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
47569         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
47570         and mbstate_t, to a single-part test that simply defines mbstate_t.
47571         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
47572         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
47573
47574 2000-07-10  Jim Meyering  <meyering@lucent.com>
47575
47576         * m4/strerror_r.m4: Mirror the correction made in autoconf.
47577
47578         * m4/gnu-source.m4: Output to confdefs.h directly.
47579         Suggestion from Akim Demaille.
47580
47581 2000-07-09  Paul Eggert  <eggert@twinsun.com>
47582
47583         The old behavior of quoting `like this' doesn't look good with
47584         newer, ISO-style fonts.  See:
47585         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
47586
47587         Instead, quote "like this" by default.  Let the translator
47588         tailor the locale-specific quoting behavior by providing
47589         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
47590
47591         * lib/quotearg.c (N_): New macro.
47592         (gettext_default): New function.
47593         (quotearg_buffer_restyled): Use
47594         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
47595         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
47596
47597 2000-07-09  Jim Meyering  <meyering@lucent.com>
47598
47599         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
47600         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
47601
47602         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
47603         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
47604
47605 2000-07-09  Jim Meyering  <meyering@lucent.com>
47606
47607         * lib/Most files: Update copyright dates to include 2000.
47608
47609 2000-07-08  Jim Meyering  <meyering@lucent.com>
47610
47611         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
47612         if not defined.
47613         (xgethostname): Remove now-unnecessary #ifdef.
47614         Move declaration of `err' into loop where it's used.
47615
47616 2000-07-05  Paul Eggert  <eggert@twinsun.com>
47617         and Bruno Haible  <haible@clisp.cons.org>
47618
47619         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
47620         only if the test for an object-type mbstate_t fails.  This
47621         prevents us from mistakenly reporting that mbstate_t is a
47622         system object type after we "#define mbstate_t int" to work
47623         around its lack.
47624
47625 2000-07-05  Paul Eggert  <eggert@twinsun.com>
47626         and Bruno Haible  <haible@clisp.cons.org>
47627
47628         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
47629
47630 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
47631
47632         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
47633         to strerror_r.
47634         Include <ctype.h> for use of isalpha.
47635
47636 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
47637
47638         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
47639         by allocating a larger buffer. Test the gethostname return value for
47640         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
47641         returns an error and ENAMETOOLONG isn't defined.
47642
47643 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
47644
47645         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
47646         dimension.
47647
47648 2000-07-04  Jim Meyering  <meyering@lucent.com>
47649
47650         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
47651         of the deprecated AC_CHECKING.
47652
47653 2000-07-04  Jim Meyering  <meyering@lucent.com>
47654
47655         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
47656         Reported by Bruno Haible.
47657
47658 2000-07-04  Jim Meyering  <meyering@lucent.com>
47659
47660         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
47661         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
47662         lacks mbrtowc.
47663
47664 2000-07-03  Paul Eggert  <eggert@twinsun.com>
47665
47666         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
47667         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
47668
47669 2000-07-03  Paul Eggert  <eggert@twinsun.com>
47670         and Bruno Haible  <haible@clisp.cons.org>
47671
47672         * lib/quotearg.c (mbrtowc):
47673         Assign to *pwc, and return 1 only if result is nonzero.
47674         (iswprint): Use ISPRINT when substituting our own mbrtowc.
47675
47676 2000-07-03  Jim Meyering  <meyering@lucent.com>
47677
47678         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
47679
47680 2000-07-03  Jim Meyering  <meyering@lucent.com>
47681
47682         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
47683         This is necessary to get a definition of e.g., UTMP_FILE on
47684         HP-UX 10.20.
47685         From Bob Proulx.
47686
47687 2000-07-02  Jim Meyering  <meyering@lucent.com>
47688
47689         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
47690
47691         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
47692         AC_LIBOBJ(function_name).
47693         * m4/chown.m4: Likewise.
47694         * m4/fnmatch.m4: Likewise.
47695         * m4/ftruncate.m4: Likewise.
47696         * m4/getgroups.m4: Likewise.
47697         * m4/getline.m4: Likewise.
47698         * m4/group-member.m4: Likewise.
47699         * m4/jm-macros.m4: Likewise.
47700         * m4/lstat.m4: Likewise.
47701         * m4/malloc.m4: Likewise.
47702         * m4/memcmp.m4: Likewise.
47703         * m4/nanosleep.m4: Likewise.
47704         * m4/putenv.m4: Likewise.
47705         * m4/realloc.m4: Likewise.
47706         * m4/regex.m4: Likewise.
47707         * m4/stat.m4: Likewise.
47708         * m4/strftime.m4: Likewise.
47709
47710 2000-07-02  Jim Meyering  <meyering@lucent.com>
47711
47712         * lib/quotearg.c (mbstate_t): Don't define here.
47713
47714 2000-07-02  Jim Meyering  <meyering@lucent.com>
47715
47716         * lib/nanosleep.c (SIGCONT): Define if not already defined.
47717
47718 2000-07-01  Jim Meyering  <meyering@lucent.com>
47719
47720         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
47721
47722 2000-07-01  Jim Meyering  <meyering@lucent.com>
47723
47724         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
47725         problem.
47726
47727 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
47728
47729         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
47730         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
47731
47732 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
47733
47734         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
47735         per change in ../m4/ls-mntd-fs.m4.
47736         (read_filesystem_list): Ignore symbolic links.
47737
47738 2000-06-29  Jim Meyering  <meyering@lucent.com>
47739
47740         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
47741         for declaration of strcmp.
47742
47743         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
47744
47745         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
47746         Avoid warning by casting result to `char *' to remove `const'.
47747
47748 2000-06-28  Jim Meyering  <meyering@lucent.com>
47749
47750         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
47751         included by quotearg.c, for which we perform this test.  From
47752         Bruno Haible.
47753
47754 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
47755
47756         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
47757         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
47758         <utmpx.h> exists, put readutmp.o into LIBOBJS.
47759
47760 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
47761
47762         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
47763
47764 2000-06-26  Paul Eggert  <eggert@twinsun.com>
47765
47766         savedir now sets errno on failure and invokes xmalloc to get memory.
47767         Fix a couple of other minor bugs while we're at it.
47768
47769         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
47770         (NAMLEN): Remove macro.
47771         (malloc, realloc): Remove decls.
47772         (stpcpy): Likewise.
47773         ("xalloc.h"): Include.
47774         (NAME_SIZE_DEFAULT): New macro.
47775         (savedir): Use xmalloc / xrealloc to allocate memory.
47776         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
47777         Skip "" directory entries.
47778         Use strlen to calculate directory entry length, since the old method
47779         is rarely used these days and isn't worth supporting.
47780         Don't use a pointer after freeing it.
47781         Check for integer overflow when calculating allocation size.
47782         Use memcpy to copy entries, instead of stpcpy.
47783         Set errno properly when returning NULL.
47784         Check for readdir error.
47785
47786 2000-06-26  Jim Meyering  <meyering@lucent.com>
47787
47788         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
47789
47790 2000-06-25  Jim Meyering  <meyering@lucent.com>
47791
47792         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
47793         Linux header bug when _XOPEN_SOURCE is defined to 500.
47794
47795 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
47796
47797         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
47798         deficiency.
47799
47800 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
47801
47802         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
47803         Include xalloc.h.
47804         Don't include <stdlib.h>.  Don't declare malloc, realloc.
47805
47806 2000-06-24  Jim Meyering  <meyering@lucent.com>
47807
47808         * m4/strerror_r.m4: Revive this file -- to try out an experimental
47809         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
47810         for which strerror does return char*, but which lacks a conveniently
47811         accessible declaration of the function.  If the compile-test says
47812         strerror_r doesn't work, then resort to a `run'-test that works on
47813         BeOS and segfaults on DEC Unix.
47814
47815 2000-06-24  Jim Meyering  <meyering@lucent.com>
47816
47817         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
47818
47819 2000-06-23  Paul Eggert  <eggert@twinsun.com>
47820
47821         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
47822         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
47823
47824 2000-06-23  Paul Eggert  <eggert@twinsun.com>
47825
47826         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
47827         (mbrtowc, mbstate_t): Define substitutes if
47828         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
47829         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
47830         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
47831
47832 2000-06-23  Jim Meyering  <meyering@lucent.com>
47833
47834         * m4/afs.m4: Add missing AC_MSG_RESULT.
47835         Reported by Bruno Haible.
47836
47837         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
47838         Suggestion from Bruno Haible.
47839
47840 2000-06-23  Jim Meyering  <meyering@lucent.com>
47841
47842         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
47843
47844 2000-06-21  Jim Meyering  <meyering@lucent.com>
47845
47846         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
47847
47848 2000-06-21  Jim Meyering  <meyering@lucent.com>
47849
47850         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
47851         (noinst_HEADERS): Add getstr.h.
47852
47853         * lib/getline.c (getstr): Move into a separate file.
47854         * lib/getstr.c (getstr): New file, extracted from getline.c, with
47855         the following changes: new parameter, delim2; both delim[12]
47856         parameters have type `int', not `char'.  The latter would lose
47857         with 8-bit delimiters.
47858         * lib/getstr.h: New file.
47859
47860 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
47861
47862         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
47863         than 1024, return a memory chunk of least possible size, instead
47864         of size PATH_MAX + 2. In the loop, increment the size proportionally.
47865         Use free/xmalloc instead of xrealloc to avoid copying for very long
47866         paths.
47867
47868 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
47869
47870         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
47871         the empty string.
47872
47873 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
47874
47875         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
47876         address, not strdup.  Include <stdlib.h> and don't declare free().
47877
47878 2000-06-19  Jim Meyering  <meyering@lucent.com>
47879
47880         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
47881
47882 2000-06-18  Jim Meyering  <meyering@lucent.com>
47883
47884         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
47885
47886         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
47887         `checking whether...' message to be consistent with that of the
47888         lstat test.
47889
47890 2000-06-18  Jim Meyering  <meyering@lucent.com>
47891
47892         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
47893         Besides, these days every porting target provides a mkdir function.
47894
47895         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
47896         needed. (this snippet comes from src/system.h).
47897
47898 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
47899
47900         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
47901
47902 2000-06-15  Paul Eggert  <eggert@twinsun.com>
47903
47904         * lib/human.c (adjust_value): New function.
47905         (human_readable_inexact): Apply rounding style even when
47906         printing approximate values.
47907
47908 2000-06-14  Paul Eggert  <eggert@twinsun.com>
47909
47910         * lib/human.c (human_readable_inexact): Allow an input block
47911         size that is not a multiple of the output block size, and vice versa.
47912         Reported by Piergiorgio Sartor.
47913
47914 2000-06-14  Paul Eggert  <eggert@twinsun.com>
47915
47916         * lib/getdate.y (get_date): Apply relative times after time
47917         zone indicator, not before.  Reported by Todd A. Jacobs.
47918
47919 2000-06-13  Jim Meyering  <meyering@lucent.com>
47920
47921         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
47922
47923         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
47924
47925 2000-06-12  Paul Eggert  <eggert@twinsun.com>
47926
47927         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
47928
47929 2000-06-12  Jim Meyering  <meyering@lucent.com>
47930
47931         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
47932         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
47933         optional argument.
47934         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
47935         the optional argument, `lib'.
47936
47937 2000-06-08  Jim Meyering  <meyering@lucent.com>
47938
47939         * m4/largefile.m4: Remove file (now that it's part of autoconf).
47940
47941 2000-06-04  Paul Eggert  <eggert@twinsun.com>
47942
47943         Rewrite largefile configuration so that we don't need to run
47944         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
47945         AC_CANONICAL_HOST in configure.in -- jmm]
47946
47947         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
47948         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
47949         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
47950         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
47951         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
47952         All uses changed.
47953         Instead of inspecting the output of getconf, try to compile the
47954         test program without and with the macro definition.
47955         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
47956         for getconf.  Instead, check for the needed flags by compiling
47957         test programs.
47958
47959 2000-06-04  Paul Eggert  <eggert@twinsun.com>
47960
47961         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
47962
47963 2000-06-04  Jim Meyering  <meyering@lucent.com>
47964
47965         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
47966         SunOS 4.1.4 for which gid_t is an unsigned type.
47967
47968 2000-06-03  Jim Meyering  <meyering@lucent.com>
47969
47970         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
47971         now that autoconf requires that.
47972
47973         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
47974         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
47975         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
47976
47977 2000-06-03  Jim Meyering  <meyering@lucent.com>
47978
47979         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
47980
47981 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
47982
47983         * m4/glibc21.m4: New file.
47984         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
47985
47986 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
47987
47988         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
47989         newer, don't install charset.alias.
47990         * lib/config.charset: Change the Linux/glibc rules so they become empty
47991         on glibc-2.1 or newer.
47992
47993 2000-06-02  Jim Meyering  <meyering@lucent.com>
47994
47995         * lib/mountlist.c: Back out last change.  Instead, do this...
47996         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
47997         me_dummy member using the same `ignore'-testing code.
47998         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
47999         fs_type strings.
48000         From Mark D. Roth.
48001
48002 2000-05-29  Jim Meyering  <meyering@lucent.com>
48003
48004         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
48005         mounts with the `ignore' attribute.  Based on a patch from
48006         Mark D. Roth.
48007
48008 2000-05-28  Jim Meyering  <meyering@lucent.com>
48009
48010         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
48011         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
48012         * m4/stat.m4: Likewise.
48013         * m4/lstat.m4: Likewise.
48014         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
48015
48016         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
48017         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
48018
48019 2000-05-26  Jim Meyering  <meyering@lucent.com>
48020
48021         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
48022
48023 2000-05-24  Jim Meyering  <meyering@lucent.com>
48024
48025         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
48026         autoconf requires that.
48027         * m4/lib-check.m4: Likewise.
48028         * m4/jm-macros.m4: Likewise.
48029         * m4/strftime.m4: Likewise.
48030
48031         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
48032         AC_CHECK_DECLS, now that autoconf requires that.
48033
48034 2000-05-22  Jim Meyering  <meyering@lucent.com>
48035
48036         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
48037         * m4/lstat.m4: Likewise.
48038
48039 2000-05-22  Jim Meyering  <meyering@lucent.com>
48040
48041         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
48042
48043 2000-05-20  Jim Meyering  <meyering@lucent.com>
48044
48045         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
48046         (jm_PREREQ): Use it.
48047
48048 2000-05-18  Jim Meyering  <meyering@lucent.com>
48049
48050         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
48051         back, too, since it may have been modified by allocate_entry.
48052         (hash_delete): Rewrite to use neither the assignment operator
48053         nor the comma operator in an if-expression.
48054
48055 2000-05-15  Paul Eggert  <eggert@twinsun.com>
48056
48057         * lib/closeout.c:
48058         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
48059         Remove; no longer needed.
48060         "quotearg.h": Add include.
48061         (file_name): Do not bother to explicitly initialize to NULL; it's less
48062         efficient on some hosts.
48063         (close_stdout_status): Remove test as to whether stdout was already
48064         closed; it breaks for the case "echo x | sort >&-".
48065         Quote file name colons.
48066         Do not assume that _("write error") lacks format strings.
48067
48068 2000-05-15  Jim Meyering  <meyering@lucent.com>
48069
48070         * lib/version-etc.c (version_etc_copyright): Update the copyright
48071         string used in all --version output.
48072
48073 2000-05-14  Jim Meyering  <meyering@lucent.com>
48074
48075         * lib/closeout.c (close_stdout_set_file_name): New function.
48076         (close_stdout_status): Use new file-scoped global.
48077         Return right away if fstat says the stdout file descriptor is invalid.
48078         * lib/closeout.h (close_stdout_set_file_name): Declare.
48079
48080 2000-05-10  Jim Meyering  <meyering@lucent.com>
48081
48082         * lib/closeout.c [default_exit_status]: New file-scoped variable.
48083         (close_stdout_set_status): New function.
48084         * lib/closeout.h (close_stdout_set_status): Declare.
48085
48086 2000-05-09  Jim Meyering  <meyering@lucent.com>
48087
48088         * m4/gettext.m4: Rename this...
48089         * m4/libintl.m4: ...to this.
48090
48091 2000-05-08  Jim Meyering  <meyering@lucent.com>
48092
48093         * lib/long-options.c: Don't include closeout.h.
48094         (parse_long_options): Don't call close_stdout for --version.
48095
48096 2000-05-06  Paul Eggert  <eggert@twinsun.com>
48097
48098         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
48099         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
48100         2.1.3 bug.  This avoids a clash when files like regex.c define
48101         _GNU_SOURCE.
48102
48103 2000-05-06  Jim Meyering  <meyering@lucent.com>
48104
48105         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
48106         (AC_REPLACE_FUNCS): Add strnlen.
48107
48108         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
48109         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
48110
48111         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
48112         AC_SEARCH_LIBS call for nanosleep.
48113         (LIB_NANOSLEEP): Set and AC_SUBST.
48114
48115 2000-05-06  Jim Meyering  <meyering@lucent.com>
48116
48117         * lib/strnlen.c: Undefine __strnlen and strnlen.
48118         [!weak_alias]: Define __strnlen to strnlen.
48119
48120         * lib/atexit.c: New file, from libiberty.
48121
48122 2000-05-06  Jim Meyering  <meyering@lucent.com>
48123
48124         * lib/closeout.c (close_stdout_status): Also check for errors on the
48125         stderr stream.
48126
48127 2000-05-05  Jim Meyering  <meyering@lucent.com>
48128
48129         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
48130         AC_SEARCH_LIBS call for clock_gettime.
48131         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
48132
48133         * m4/search-libs.m4: Update from autoconf.
48134
48135         su doesn't work on Solaris 2.6.
48136         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
48137         <shadow.h>.  Reported by Dragos Harabor.
48138
48139 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
48140
48141         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
48142         memcpy instead of xmalloc, xrealloc, path_concat.
48143         (locale_charset): Treat empty environment variables as absent.
48144         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
48145
48146 2000-05-04  Jim Meyering  <meyering@lucent.com>
48147
48148         * lib/getopt.c: Update from glibc.
48149         * lib/obstack.c: Likewise.
48150         * lib/obstack.h: Likewise.
48151         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
48152         file
48153
48154         * lib/regex.h: Likewise.
48155         * lib/strndup.c: Likewise.
48156         * lib/strnlen.c: New file, from glibc.
48157
48158 2000-05-03  Jim Meyering  <meyering@lucent.com>
48159
48160         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
48161
48162 2000-05-02  Paul Eggert  <eggert@twinsun.com>
48163
48164         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
48165         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
48166         compile-time test, rather than inspecting host and OS, to
48167         decide whether to define _LARGEFILE_SOURCE.
48168
48169 2000-05-01  Jim Meyering  <meyering@lucent.com>
48170
48171         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
48172
48173         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
48174         Based on a patch from Bruno Haible.
48175
48176 2000-05-01  Jim Meyering  <meyering@lucent.com>
48177
48178         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
48179
48180 2000-04-29  Jim Meyering  <meyering@lucent.com>
48181
48182         * lib/path-concat.c: Declare strdup only if it's not defined.
48183         * lib/canon-host.c: Likewise.
48184
48185 2000-04-28  Jim Meyering  <meyering@lucent.com>
48186
48187         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
48188         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
48189         is included first, then limits.h is included by locale.h by libintl.h.
48190         From John David Anglin.
48191
48192 2000-04-25  Jim Meyering  <meyering@lucent.com>
48193
48194         * lib/makepath.c (S_IRWXUGO): Define.
48195         (make_path): Always perform explicit chmod if MODE specifies any
48196         of the `special' permission bits.  Prompted by a bug report against
48197         install from Mate Wierdl and Joost van Baal.
48198
48199 2000-04-18  Jim Meyering  <meyering@lucent.com>
48200
48201         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
48202         (jm_PREREQ): Use it.
48203
48204 2000-04-18  Jim Meyering  <meyering@lucent.com>
48205
48206         * lib/README: New file.
48207
48208         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
48209         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
48210
48211 2000-04-17  Jim Meyering  <meyering@lucent.com>
48212
48213         Get it right :-)
48214         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
48215         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
48216         Suggestion from Akim Demaille.
48217
48218 2000-04-17  Jim Meyering  <meyering@lucent.com>
48219
48220         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
48221         the definition of it to rpl_strftime also defined-away the system's
48222         declaration.
48223
48224 2000-04-15  Jim Meyering  <meyering@lucent.com>
48225
48226         Use `C' to denote so-called `contiguous' files, the same way
48227         that tar does.
48228         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
48229         (ftypelet): Use S_ISCTG.
48230         From Michael Deutschmann.
48231
48232 2000-04-14  Jim Meyering  <meyering@lucent.com>
48233
48234         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
48235         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
48236         clobbered.
48237
48238 2000-04-14  Jim Meyering  <meyering@lucent.com>
48239
48240         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
48241
48242 2000-04-13  Jim Meyering  <meyering@lucent.com>
48243
48244         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
48245         AH_VERBATIM to insert required #ifndef into config.h.in.
48246         Suggestion from Akim Demaille.
48247
48248 2000-04-12  Jim Meyering  <meyering@lucent.com>
48249
48250         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
48251         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
48252         Christian Krackowizer.
48253
48254         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
48255         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
48256         (AC_SYS_LARGEFILE): Require.
48257         (AM_C_PROTOTYPES): Require.
48258
48259 2000-04-08  Jim Meyering  <meyering@lucent.com>
48260
48261         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
48262         names don't conflict.  Reported by Eli Zaretskii.
48263
48264 2000-04-07  Jim Meyering  <meyering@lucent.com>
48265
48266         * lib/putenv.c: Move inclusion of errno.h so it follows that of
48267         sys/types.h, to work around system header problems on AIX 3.2.5.
48268         From Bruno Haible.
48269
48270 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
48271
48272         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
48273         bug.  Deal with the different error behavior of Irix iconv.
48274
48275 2000-04-05  Paul Eggert  <eggert@twinsun.com>
48276
48277         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
48278         IRIX if the installer said otherwise.
48279
48280 2000-04-05  Jim Meyering  <meyering@lucent.com>
48281
48282         Portability tweaks required for ultrix4.3.
48283         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
48284         (jm_CHECK_DECLS): Add getutent to the list of functions.
48285         (_jm_DECL_HEADERS): Add utmpx.h.
48286         From John David Anglin.
48287
48288         * m4/strftime.m4: Back out the 2000-04-02 change.
48289         Instead of that change, simply undefine putenv in the test program.
48290
48291 2000-04-05  Jim Meyering  <meyering@lucent.com>
48292
48293         Portability tweaks required for ultrix4.3.
48294         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
48295         getutent.
48296         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
48297         * lib/canon-host.c: Declare strdup.
48298         * lib/path-concat.c: Likewise.
48299         From John David Anglin.
48300
48301 2000-04-04  Jim Meyering  <meyering@lucent.com>
48302
48303         Be more DOS 8.3-friendly.
48304         * lib/ref-add.sin: Renamed from ref-add.sed.in.
48305         * lib/ref-del.sin: Renamed from ref-del.sed.in.
48306         * lib/Makefile.am: Reflect renaming.
48307         Reported by Eli Zaretskii.
48308
48309         Use a temporary file name that won't clash with `charset.alias'
48310         in the DOS 8.3 name space.
48311         * lib/Makefile.am (charset_tmp): Define.
48312         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
48313         (uninstall-local): Likewise.
48314         Reported by Eli Zaretskii.
48315
48316 2000-04-03  Jim Meyering  <meyering@lucent.com>
48317
48318         * m4/gettext.m4: Fix typo in comment.
48319
48320         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
48321         textutils/configure.in).  Suggestion from Paul Eggert.
48322         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
48323
48324 2000-04-02  Paul Eggert  <eggert@twinsun.com>
48325
48326         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
48327         variable in the shell rather than using putenv, which isn't
48328         portable.  This avoids the configure-time inter-test dependency
48329         on the potentially-renamed putenv function.
48330
48331 2000-03-30  Paul Eggert  <eggert@twinsun.com>
48332
48333         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
48334         before checking struct stat.st_blksize, so that
48335         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
48336
48337 2000-03-29  Paul Eggert  <eggert@twinsun.com>
48338
48339         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
48340         since strftime.c uses HAVE_STRFTIME to decide whether to use
48341         the underlying strftime.
48342
48343 2000-03-29  Paul Eggert  <eggert@twinsun.com>
48344
48345         * lib/time/strftime.c (my_strftime): Make sure we call the system
48346         strftime, not ourselves, when invoking the underlying strftime.
48347
48348 2000-03-24  Jim Meyering  <meyering@lucent.com>
48349
48350         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
48351         (charset_alias): Define.
48352         (install-exec-local): Factor out common code.
48353         (uninstall-local): Split lines longer than 80.
48354         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
48355         (SUFFIXES): Define.
48356         (.sed.in.sed): New rule.  Don't redirect directly to $@.
48357         (CLEANFILES): Add ref-add.sed and ref-del.sed.
48358
48359 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
48360
48361         * lib/config.charset: Output a line containing "Packages using this
48362         file".
48363         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
48364         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
48365         ref-del.sed): New rules.
48366
48367 2000-03-17  Jim Meyering  <meyering@lucent.com>
48368
48369         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
48370         Otherwise, include <strings.h>
48371
48372 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
48373
48374         * lib/unicodeio.c (utf8_wctomb): New function.
48375         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
48376         format instead of in UCS-4 with platform dependent endianness.
48377
48378 2000-03-10  Jim Meyering  <meyering@lucent.com>
48379
48380         * m4/lib-check.m4: Look for getspnam in -lgen, too.
48381         From Marco Franzen.
48382
48383 2000-03-07  Paul Eggert  <eggert@twinsun.com>
48384
48385         * lib/savedir.c (savedir): Work even if directory size is
48386         negative; this can happen with some screwy NFS configurations.
48387
48388 2000-03-06  Jim Meyering  <meyering@lucent.com>
48389
48390         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
48391         if it's NULL (because we ran out of memory).  From Bruno Haible.
48392
48393 2000-03-05  Jim Meyering  <meyering@lucent.com>
48394
48395         * lib/localcharset.c ("path-concat.h"): Include.
48396         (get_charset_aliases): Use path_concat instead of ANSI string
48397         concatenation.
48398
48399         * lib/unicodeio.h (PARAMS): Define.
48400         Use it to guard prototype.
48401
48402 2000-03-04  Jim Meyering  <meyering@lucent.com>
48403
48404         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
48405         for lib/localcharset.c.
48406
48407 2000-03-04  Jim Meyering  <meyering@lucent.com>
48408
48409         * lib/Makefile.am (install-exec-local): Create $(libdir) before
48410         installing into it.
48411         (uninstall-local): Uncomment this rule so `make distcheck' works
48412         once again.
48413
48414         * lib/unicodeio.c (<errno.h>): Include it.
48415         (errno): Declare if not defined.
48416
48417         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
48418
48419         * lib/config.charset: New version, incorporating remarks from a linux
48420         i18n mailing list.  From Bruno Haible.
48421
48422 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
48423
48424         * m4/codeset.m4: New file.
48425         * m4/iconv.m4: New file.
48426         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
48427
48428 2000-03-03  Jim Meyering  <meyering@lucent.com>
48429
48430         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
48431
48432 2000-03-02  Jim Meyering  <meyering@lucent.com>
48433
48434         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
48435         the messages come out on separate lines.
48436
48437         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
48438         rather than jm_CHECK_DECLARATIONS.
48439         * m4/decl.m4: Remove now-unused file.
48440
48441         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
48442         geteuid.
48443
48444 2000-03-02  Jim Meyering  <meyering@lucent.com>
48445
48446         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
48447
48448 2000-03-01  Jim Meyering  <meyering@lucent.com>
48449
48450         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
48451         * lib/unicodeio.c: Likewise.
48452
48453 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
48454
48455         * lib/config.charset: New file.
48456         * lib/localcharset.c: New file.
48457         * lib/unicodeio.h, lib/unicodeio.c: New files.
48458         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
48459         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
48460         (noinst_HEADERS): Add unicodeio.h.
48461         (all-local, install-exec-local, charset.alias): New targets.
48462
48463 2000-02-28  Paul Eggert  <eggert@twinsun.com>
48464
48465         * lib/quotearg.c (ALERT_CHAR): New macro.
48466         (quotearg_buffer_restyled): Use it.
48467
48468 2000-02-27  Jim Meyering  <meyering@lucent.com>
48469
48470         * m4/check-decl.m4: Add getenv to the list.
48471
48472 2000-02-27  Jim Meyering  <meyering@lucent.com>
48473
48474         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
48475         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
48476
48477         * lib/backupfile.c: Guard inclusion of stdlib.h with
48478         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
48479         Declare malloc if needed.
48480
48481         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
48482         `#ifndef HAVE_DECL..'
48483         now that autoconf always defines the HAVE_DECL_ symbols.
48484         * lib/human.c: Likewise.
48485         * lib/same.c: Likewise.
48486         * lib/strtoumax.c: Likewise.
48487
48488         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
48489         declaration check was not run.
48490         * lib/hash.c: Likewise.
48491         * lib/human.c: Likewise.
48492         * lib/same.c: Likewise.
48493         * lib/strtoumax.c: Likewise.
48494
48495         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
48496         `.', then first look up the entire `.'-containing string as a login
48497         name.
48498
48499 2000-02-23  Jim Meyering  <meyering@lucent.com>
48500
48501         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
48502         in place of my hack.
48503
48504 2000-02-18  Paul Eggert  <eggert@twinsun.com>
48505
48506         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
48507         (textint): New typedef.
48508         (parser_control): Member year changed from int to textint.
48509         All uses changed.
48510         (YYSTYPE): Removed; replaced by %union with int and textint members.
48511         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
48512         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
48513         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
48514         (tSNUMBER, tUNUMBER): Now of type <textintval>.
48515         (date, number, to_year): Use width of number in digits, not its value,
48516         to determine whether it's a 2-digit year, or a 2-digit time.
48517         (yylex): Store number of digits of numeric tokens.
48518         Reported by John Kendall.
48519
48520         (parser_control): Changed from struct parser_control to typedef (for
48521         consistency).  All uses changed.
48522
48523         (tID): Removed; not used.
48524         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
48525
48526 2000-02-14  Paul Eggert  <eggert@twinsun.com>
48527
48528         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
48529         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
48530
48531 2000-02-12  Jim Meyering  <meyering@lucent.com>
48532
48533         * lib/userspec.c (ISDIGIT): Define it.
48534         (isdigit): Remove definition.
48535         (is_number): Use ISDIGIT, not isdigit.
48536         <libintl.h>: Include.
48537         (_ and N_): Define.
48538         (parse_user_spec): Mark translatable strings.
48539
48540 2000-02-10  Jim Meyering  <meyering@lucent.com>
48541
48542         With these changes, nanosleep.[ch] are finally enough like the other
48543         lib/* replacement files to compile on a few more losing systems.
48544
48545         * lib/nanosleep.h: Don't include config.h.
48546         Remove prototype from declaration of nanosleep.
48547         (PARAMS): Remove now-unneeded definition.
48548         * lib/nanosleep.c: #undef nanosleep.
48549         (rpl_nanosleep): Rename from nanosleep.
48550
48551 2000-02-10  Jim Meyering  <meyering@lucent.com>
48552
48553         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
48554         gnu_nanosleep to rpl_nanosleep.
48555
48556 2000-02-09  Jim Meyering  <meyering@lucent.com>
48557
48558         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
48559         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
48560
48561 2000-02-08  Akim Demaille  <akim@epita.fr>
48562
48563         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
48564         `[' and `]' and remove uses of `changequote'.
48565         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
48566         (AC_SYS_LARGEFILE): Likewise.
48567         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
48568         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
48569         of changequote.
48570         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
48571         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
48572         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
48573         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
48574
48575 2000-02-05  Jim Meyering  <meyering@lucent.com>
48576
48577         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
48578         Remove explicit use of AC_HEADER_TIME.  It is required by
48579         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
48580         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
48581         in autoconf whereby the expansion of the latter ended up preceding
48582         the expansion of its prerequisite, AC_HEADER_TIME.
48583         Reported by Volker Borchert.
48584
48585 2000-02-03  Jim Meyering  <meyering@lucent.com>
48586
48587         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
48588
48589 2000-02-03  Jim Meyering  <meyering@lucent.com>
48590
48591         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
48592         rather than with `#if HAVE_UTMPNAME'.
48593
48594 2000-02-02  Jim Meyering  <meyering@lucent.com>
48595
48596         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
48597         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
48598         Reported by Eli Zaretskii.
48599
48600 2000-02-01  Jim Meyering  <meyering@lucent.com>
48601
48602         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
48603
48604 2000-01-31  Jim Meyering  <meyering@lucent.com>
48605
48606         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
48607         functions.  Add the time.h and sys/time.h headers along with the
48608         AC_REQUIRE'ment of AC_HEADER_TIME.
48609
48610 2000-01-31  Jim Meyering  <meyering@lucent.com>
48611
48612         * lib/nanosleep.h (nanosleep): Guard declaration with
48613         `#if ! HAVE_DECL_NANOSLEEP'.
48614         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
48615         the declaration in that vendor's sys/timers.h.
48616         Reported by Christian Krackowizer.
48617
48618         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
48619         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
48620         (ISPRINT): Likewise.
48621         Reported by Tom Tromey.
48622
48623 2000-01-30  Jim Meyering  <meyering@lucent.com>
48624
48625         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
48626
48627         * m4/prereq.m4 (utmp_includes): Define.
48628         Check for ut_user and ut_name members in both struct utmpx
48629         and struct utmp.
48630
48631 2000-01-30  Jim Meyering  <meyering@lucent.com>
48632
48633         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
48634         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
48635         header files where only utmpx.ut_user is declared.
48636
48637         * lib/readutmp.h (UT_USER): Define.
48638
48639 2000-01-29  Jim Meyering  <meyering@lucent.com>
48640
48641         * m4/lib-check.m4: New file containing library-related checks from
48642         fileutils and sh-utils (textutils had none).
48643
48644 2000-01-28  Jim Meyering  <meyering@lucent.com>
48645
48646         * m4/perl.m4: Change format of warning message to look more like that
48647         from the missing script.  Suggestion from François Pinard.
48648
48649 2000-01-25  Jim Meyering  <meyering@lucent.com>
48650
48651         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
48652         well as time.h in the compile check.
48653         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
48654         Fix typo in cross-compiling case: s/yes/no/.
48655
48656 2000-01-23  Jim Meyering  <meyering@lucent.com>
48657
48658         * m4/jm-macros.m4: Move df-related tests here from
48659         fileutils/configure.in
48660
48661         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
48662         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
48663
48664         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
48665         s/space/ac_fsusage_space/.
48666         (jm_FILE_SYSTEM_USAGE): Take two parameters.
48667
48668         * m4/ftruncate.m4: New file (derived from part of
48669         fileutils/configure.in).
48670         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
48671         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
48672
48673         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
48674         AC_SUBST these here, rather than just in sh-util/configure.in, so
48675         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
48676         all the same.
48677         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
48678         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
48679         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
48680         (AC_SUBST(POW_LIBM)): Likewise.
48681         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
48682
48683 2000-01-23  Jim Meyering  <meyering@lucent.com>
48684
48685         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
48686         obstack.c.
48687
48688 2000-01-22  Jim Meyering  <meyering@lucent.com>
48689
48690         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
48691
48692         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
48693
48694         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
48695         configure.in
48696         (AC_CHECK_HEADERS): Likewise for sh-utils.
48697         (AC_CHECK_HEADERS): Likewise for textutils.
48698         Merge the three lists of headers.
48699
48700         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
48701         from fileutils' configure.in.
48702
48703         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
48704         code. Moved tests into their own function (_jm_DECL_HEADERS) in
48705         check-decl.m4.
48706
48707         * m4/check-decl.m4: Use #if rather than #ifdef.
48708         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
48709         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
48710         (_jm_DECL_HEADERS): Define new function.
48711         (jm_CHECK_DECLARATIONS): Require it.
48712
48713 2000-01-22  Jim Meyering  <meyering@lucent.com>
48714
48715         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
48716         [! HAVE_DECL_STRTOULL]: Declare strtoull.
48717         Required for some AIX systems.  Reported by Christian Krackowizer.
48718         [TESTING] (main): New function.
48719
48720         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
48721         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
48722         letters.
48723
48724         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
48725         iswprint.
48726
48727         * lib/strverscmp.c (ISDIGIT): Define.
48728         (strverscmp): Use ISDIGIT, not isdigit.
48729
48730 2000-01-19  Jim Meyering  <meyering@lucent.com>
48731
48732         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
48733         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
48734         defines `struct timespec' in <sys/time.h>
48735
48736         * m4/c-bs-a.m4: Remove uses of changequote altogether.
48737         Thanks to Akim for explaining.
48738
48739 2000-01-17  Paul Eggert  <eggert@twinsun.com>
48740
48741         * lib/nanosleep.c (nanosleep):
48742         Don't use SA_INTERRUPT to decide whether to call sigaction, as
48743         POSIX.1 doesn't require SA_INTERRUPT and some systems
48744         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
48745         it's been part of POSIX.1 since day 1 (in 1988).
48746
48747 2000-01-17  Jim Meyering  <meyering@lucent.com>
48748
48749         * lib/interlock: Remove unused file.  Reported by François Pinard.
48750
48751 2000-01-16  Paul Eggert  <eggert@twinsun.com>
48752
48753         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
48754         alert, backslash, formfeed, and vertical tab unnecessarily in
48755         shell quoting style.
48756
48757 2000-01-16  Jim Meyering  <meyering@lucent.com>
48758
48759         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
48760         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
48761         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
48762         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
48763
48764 2000-01-16  Jim Meyering  <meyering@lucent.com>
48765
48766         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
48767         because the latter didn't work.
48768
48769 2000-01-15  Jim Meyering  <meyering@lucent.com>
48770
48771         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
48772         (AC_REPLACE_FUNCS): Add memcpy and memset.
48773         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
48774         Add strpbrk.
48775         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
48776
48777 2000-01-12  Jim Meyering  <meyering@lucent.com>
48778
48779         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
48780         (jm_PREREQ): Use it.
48781         (jm_PREREQ_READUTMP): New macro.
48782         (jm_PREREQ): Use it.
48783
48784 2000-01-11  Paul Eggert  <eggert@twinsun.com>
48785
48786         Quote multibyte characters correctly.
48787         * m4/c-bs-a.m4: New file.
48788         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
48789         (jm_PREREQ): Use it.
48790
48791 2000-01-11  Paul Eggert  <eggert@twinsun.com>
48792
48793         * m4/uintmax_t.m4: Port to autoconf 2.13.
48794
48795 2000-01-08  Jim Meyering  <meyering@ascend.com>
48796
48797         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
48798         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
48799
48800 2000-01-04  Jim Meyering  <meyering@ascend.com>
48801
48802         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
48803         jm_STRUCT_DIRENT_D_TYPE.
48804         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
48805         jm_STRUCT_DIRENT_D_INO.
48806         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
48807         jm_STRUCT_UTIMBUF.
48808         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
48809         renamings.
48810         * m4/utime.m4: Likewise.
48811
48812         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
48813         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
48814
48815 2000-01-03  Paul Eggert  <eggert@twinsun.com>
48816
48817         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
48818         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
48819
48820 2000-01-02  Jim Meyering  <meyering@ascend.com>
48821
48822         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
48823         remember if this is necessary.
48824
48825 1999-12-26  Jim Meyering  <meyering@ascend.com>
48826
48827         * m4/jm-macros.m4: Use it here.
48828         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
48829
48830 1999-12-23  Jim Meyering  <meyering@ascend.com>
48831
48832         * m4/jm-macros.m4: Check for clock_gettime (moved from
48833         fileutils/configure.in)
48834         Check for gettimeofday.
48835
48836 1999-12-20  Jim Meyering  <meyering@ascend.com>
48837
48838         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
48839         autoconf-2.14a-1999-12-20.
48840
48841 1999-12-19  Jim Meyering  <meyering@ascend.com>
48842
48843         * m4/lstat-slash.m4: New file.
48844         * m4/jm-macros.m4: Use the new macro:
48845         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
48846
48847 1999-12-07  Jim Meyering  <meyering@ascend.com>
48848
48849         * m4/perl.m4: Require that File::Compare be available, too.
48850         Too many systems seem to lack it.
48851
48852         * m4/strftime.m4: Add checks for most of the cpp macros tested in
48853         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
48854
48855 1999-11-18  Paul Eggert  <eggert@twinsun.com>
48856
48857         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
48858         problem with the QNX 4.25 shell, which doesn't propagate exit
48859         status of failed commands inside shell assignments.
48860
48861 1999-11-17  Jim Meyering  <meyering@ascend.com>
48862
48863         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
48864
48865 1999-11-07  Jim Meyering  <meyering@ascend.com>
48866
48867         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
48868
48869 1999-11-06  Jim Meyering  <meyering@ascend.com>
48870
48871         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
48872         * m4/jm-macros.m4 (jm_MACROS): Use it here.
48873
48874 1999-11-05  Jim Meyering  <meyering@ascend.com>
48875
48876         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
48877         configure.in of textutils, fileutils, and sh-utils into this one
48878         (shared between those packages) file.
48879         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
48880         AC_STRUCT_ST_BLKSIZE.
48881
48882 1999-11-03  Jim Meyering  <meyering@ascend.com>
48883
48884         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
48885         of AC_CHECK_TYPE checks includes unistd.h.
48886         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
48887         Suggestion from Akim Demaille.
48888
48889 1999-10-30  Jim Meyering  <meyering@ascend.com>
48890
48891         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
48892         m4-quoted string.
48893         * m4/ls-mntd-fs.m4: Likewise.
48894         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
48895         * m4/jm-winsz1.m4: Likewise.
48896
48897         * m4/const.m4: Remove file, since the fix made it into the experimental
48898         version of autoconf.
48899         * m4/mktime.m4: Likewise.
48900
48901         * m4/check-type.m4: Remove file, now that the latest version of
48902         AC_CHECK_TYPE takes a third arg to specify additional #includes.
48903
48904         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
48905         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
48906         AC_CHECK_TYPE.
48907
48908 1999-10-04  Jim Meyering  <meyering@ascend.com>
48909
48910         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
48911
48912 1999-09-22  Paul Eggert  <eggert@twinsun.com>
48913
48914         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
48915         2.95.1 bug with HP-UX 10.20.
48916
48917 1999-09-17  Jim Meyering  <meyering@ascend.com>
48918
48919         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
48920         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
48921         due to missing strdup (against sh-utils-2.0).
48922
48923 1999-08-29  Jim Meyering  <meyering@ascend.com>
48924
48925         * m4/jm-macros.m4: Require jm_BISON.
48926         * m4/bison.m4: New file.
48927
48928 1999-08-17  Paul Eggert  <eggert@twinsun.com>
48929
48930         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
48931         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
48932
48933 1999-08-05  Jim Meyering  <meyering@ascend.com>
48934
48935         * m4/getline.m4: Rename test file from conftestdata to conftest.data
48936         to avoid conflicts with `conftest' on 8+3 filesystems.
48937         Suggestion from Eli Zaretskii.
48938
48939 1999-08-04  Jim Meyering  <meyering@ascend.com>
48940
48941         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
48942         fileutils and sh-utils (textutils's getline test was inadequate).
48943         (AM_FUNC_GETLINE): Run this test.
48944         (AC_CHECK_FUNCS): Check for getdelim.
48945         Reported by Bob Proulx.
48946
48947 1999-08-02  Jim Meyering  <meyering@ascend.com>
48948
48949         * m4/jm-macros.m4: Add a comment.
48950
48951 1999-08-01  Paul Eggert  <eggert@twinsun.com>
48952
48953         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
48954         <inttypes.h> defines strtoumax as a macro (and not as a
48955         function).
48956
48957 1999-08-01  Paul Eggert  <eggert@twinsun.com>
48958
48959         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
48960         that we can shift, multiply and divide unsigned long long
48961         values; Ultrix cc can't do it.
48962
48963 1999-08-01  Paul Eggert  <eggert@twinsun.com>
48964
48965         * m4/mktime.m4: New file, which is a preview of what should appear
48966         in the next public autoconf release.
48967
48968 1999-08-01  Paul Eggert  <eggert@twinsun.com>
48969
48970         * m4/lfs.m4: Remove this file.
48971         * m4/largefile.m4: New file.  It contains the old contents of
48972         lfs.m4, except that all names with prefix AC_LFS have been
48973         changed to use the prefix AC_SYS_LARGEFILE instead, to be
48974         compatible with future autoconf versions.  Also, some minor m4
48975         quoting problems have been fixed.
48976
48977 1999-08-01  Paul Eggert  <eggert@twinsun.com>
48978
48979         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
48980         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
48981         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
48982         and simplify the shell code.
48983
48984 1999-08-01  Jim Meyering  <meyering@ascend.com>
48985
48986         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
48987         m4.
48988
48989 1999-07-20  Jim Meyering  <meyering@ascend.com>
48990
48991         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
48992
48993 1999-07-15  Jim Meyering  <meyering@ascend.com>
48994
48995         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
48996
48997 1999-05-22  Jim Meyering  <meyering@ascend.com>
48998
48999         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
49000
49001 1999-05-20  Jim Meyering  <meyering@ascend.com>
49002
49003         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
49004         Add a colon after each `then' in case $4 is empty.
49005
49006 1999-05-16  Jim Meyering  <meyering@ascend.com>
49007
49008         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
49009
49010 1999-05-10  Jim Meyering  <meyering@ascend.com>
49011
49012         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
49013
49014         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
49015         AC_FUNC_MKTIME.
49016
49017 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
49018
49019         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
49020
49021 1999-05-04  Paul Eggert  <eggert@twinsun.com>
49022
49023         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
49024         not CPPFLAGS, so that linking works correctly in IRIX.
49025
49026 1999-04-30  Paul Eggert  <eggert@twinsun.com>
49027
49028         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
49029
49030 1999-04-20  Paul Eggert  <eggert@twinsun.com>
49031
49032         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
49033         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
49034         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
49035         jm_AC_TYPE_UNSIGNED_LONG_LONG.
49036         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
49037
49038         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
49039
49040 1999-04-20  Jim Meyering  <meyering@ascend.com>
49041
49042         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
49043         AC_REPLACE xstroull if necessary.  From Paul Eggert.
49044         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
49045
49046 1999-04-18  Jim Meyering  <meyering@ascend.com>
49047
49048         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
49049         * m4/jm-macros.m4: Use it.
49050
49051 1999-04-06  Jim Meyering  <meyering@ascend.com>
49052
49053         * m4/strftime.m4: Remove test for %f.
49054
49055 1999-03-29  Jim Meyering  <meyering@ascend.com>
49056
49057         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
49058         superset of the AC_TYPE_* checks in the textutils, fileutils,
49059         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
49060         AC_TYPE_PID_T.
49061
49062 1999-03-28  Jim Meyering  <meyering@ascend.com>
49063
49064         * m4/jm-macros.m4: Define GNU_PACKAGE here.
49065         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
49066         replaced e.g., in the *.sh files of the sh-utils.
49067
49068 1999-03-20  Jim Meyering  <meyering@ascend.com>
49069
49070         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
49071         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
49072         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
49073
49074 1999-03-19  Jim Meyering  <meyering@ascend.com>
49075
49076         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
49077
49078 1999-03-12  Jim Meyering  <meyering@ascend.com>
49079
49080         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
49081
49082 1999-03-07  Jim Meyering  <meyering@ascend.com>
49083
49084         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
49085         declared.
49086
49087 1999-02-17  Jim Meyering  <meyering@ascend.com>
49088
49089         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
49090         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
49091
49092 1999-02-07  Jim Meyering  <meyering@ascend.com>
49093
49094         * m4/group-member.m4: New file -- extracted from sh-utils'
49095         configure.in.
49096
49097         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
49098         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
49099
49100 1999-02-06  Jim Meyering  <meyering@ascend.com>
49101
49102         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
49103         * m4/fnmatch.m4: Likewise.
49104         * m4/getgroups.m4: Likewise.
49105         * m4/lstat.m4: Likewise.
49106         * m4/malloc.m4: Likewise.
49107         * m4/putenv.m4: Likewise.
49108         * m4/realloc.m4: Likewise.
49109         * m4/regex.m4: Likewise.
49110         * m4/stat.m4: Likewise.
49111         * m4/strftime.m4: Likewise.
49112         Suggestion from Alain Magloire.
49113
49114         * m4/chown.m4: Use `.$ac_objext', not `.o'.
49115         * m4/fnmatch.m4: Likewise.
49116         * m4/getgroups.m4: Likewise.
49117         * m4/getline.m4: Likewise.
49118         * m4/lstat.m4: Likewise.
49119         * m4/malloc.m4: Likewise.
49120         * m4/memcmp.m4: Likewise.
49121         * m4/putenv.m4: Likewise.
49122         * m4/realloc.m4: Likewise.
49123         * m4/regex.m4: Likewise.
49124         * m4/stat.m4: Likewise.
49125         * m4/strftime.m4: Likewise.
49126         Suggestion from Alain Magloire.
49127
49128         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
49129         an argument.
49130
49131         * m4/regex.m4: Add a run-time Test for proper operation of
49132         re_compile_pattern.
49133
49134 1999-01-31  Jim Meyering  <meyering@ascend.com>
49135
49136         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
49137
49138 1999-01-30  Jim Meyering  <meyering@ascend.com>
49139
49140         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
49141
49142         * m4/jm-mktime.m4: Make this a wrapper around the official
49143         AM_FUNC_MKTIME rather than my private copy, now that the official one
49144         is up to date.
49145         * m4/mktime.m4: Remove file.
49146
49147         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
49148         * m4/uptime.m4: Likewise.
49149         * m4/uintmax_t.m4: Likewise.
49150
49151 1999-01-28  Jim Meyering  <meyering@ascend.com>
49152
49153         * m4/jm-macros.m4: Use jm_AFS.
49154         * m4/afs.m4: New file (from fileutils' configure.in).
49155
49156         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
49157         * m4/chown.m4: Likewise.
49158         * m4/d-ino.m4: Likewise.
49159         * m4/d-type.m4: Likewise.
49160         * m4/fnmatch.m4: Likewise.
49161         * m4/getgroups.m4: Likewise.
49162         * m4/gettext.m4: Likewise.
49163         * m4/jm-mktime.m4: Likewise.
49164         * m4/jm-winsz2.m4: Likewise.
49165         * m4/lcmessage.m4: Likewise.
49166         * m4/ls-mntd-fs.m4: Likewise.
49167         * m4/malloc.m4: Likewise.
49168         * m4/memcmp.m4: Likewise.
49169         * m4/putenv.m4: Likewise.
49170         * m4/realloc.m4: Likewise.
49171         * m4/st_mtim.m4: Likewise.
49172         * m4/strftime.m4: Likewise.
49173
49174 1999-01-16  Jim Meyering  <meyering@ascend.com>
49175
49176         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
49177         (ARGMATCH_DIE_DECL): Define.
49178
49179 1999-01-12  Jim Meyering  <meyering@ascend.com>
49180
49181         * m4/Makefile.am.in: Rewrite to avoid using fmt.
49182         Reported by Lars Hecking.
49183
49184 1999-01-10  Jim Meyering  <meyering@ascend.com>
49185
49186         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
49187         gross kludge.
49188         * m4/inttypes_h.m4: Likewise.
49189         * m4/lstat.m4: Likewise.
49190         * m4/malloc.m4: Likewise.
49191         * m4/readdir.m4: Likewise.
49192         * m4/realloc.m4: Likewise.
49193         * m4/st_dm_mode.m4: Likewise.
49194         * m4/stat.m4: Likewise.
49195         * m4/utimbuf.m4: Likewise.
49196         * m4/utimes.m4: Likewise.
49197
49198         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
49199         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
49200         comments in config.h.in are meaningful.
49201
49202         * m4/jm-macros.m4: Require autoconf-2.13 here.
49203
49204         * m4/regex.m4: By default, don't use the included regex.c on systems
49205         with glibc 2.  Suggestion from Uli Drepper.
49206
49207 1999-01-02  Jim Meyering  <meyering@ascend.com>
49208
49209         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
49210
49211 1998-12-18  Jim Meyering  <meyering@ascend.com>
49212
49213         * m4/Makefile.am.in (Makefile.am): Simplify rule.
49214         Based on a suggestion from Lars Hecking.
49215
49216 1998-11-16  Paul Eggert  <eggert@twinsun.com>
49217
49218         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
49219
49220 1998-11-16  Jim Meyering  <meyering@ascend.com>
49221
49222         * m4/lfs.m4: Double-quote the `uname...` expression.
49223
49224 1998-11-14  Jim Meyering  <meyering@ascend.com>
49225
49226         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
49227         * m4/stat.m4: Likewise.
49228
49229 1998-11-03  Jim Meyering  <meyering@ascend.com>
49230
49231         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
49232         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
49233
49234 1998-10-18  Jim Meyering  <meyering@ascend.com>
49235
49236         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
49237
49238 1998-10-17  Jim Meyering  <meyering@ascend.com>
49239
49240         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
49241         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
49242         calls for those previously hard-coded headers.  Instead, take a new
49243         parameter.
49244         (jm_CHECK_DECLARATIONS): Reflect interface change.
49245         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
49246         (jm_CHECK_DECL_LOCALTIME_R): New macro.
49247
49248         * m4/mktime.m4: Test for spring-forward gap before long-running test.
49249
49250 1998-10-14  Jim Meyering  <meyering@ascend.com>
49251
49252         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
49253         instead of "TZ=America/Vancouver".  From Paul Eggert.
49254
49255 1998-10-11  Jim Meyering  <meyering@ascend.com>
49256
49257         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
49258         This adds a test for a recently added compatibility fix for mktime.c.
49259         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
49260
49261 1998-09-27  Jim Meyering  <meyering@ascend.com>
49262
49263         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
49264
49265         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
49266         ../configure.in, including a change from Gordon Matzigkeit to allow
49267         cross-compiling for the Hurd.
49268
49269         * m4/glibc.m4: New file/macro to test for the GNU C Library
49270         versions 1 and 2.  From Gordon Matzigkeit.
49271         Indent.
49272
49273 1998-09-21  Jim Meyering  <meyering@ascend.com>
49274
49275         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
49276
49277 1998-08-18  Paul Eggert  <eggert@twinsun.com>
49278
49279         Port nanosecond-resolution times to UnixWare 2.1.2 and
49280         pedantic Solaris 2.6.
49281
49282         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
49283         AC_STRUCT_ST_MTIM.
49284         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
49285         Generate name of ns member, instead of just 1 or undef.
49286         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
49287
49288 1998-08-15  Jim Meyering  <meyering@ascend.com>
49289
49290         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
49291         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
49292         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
49293         instead of jm_TYPE_SSIZE_T.
49294
49295 1998-08-12  Jim Meyering  <meyering@ascend.com>
49296
49297         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
49298
49299 1998-08-02  Jim Meyering  <meyering@ascend.com>
49300
49301         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
49302         in acconfig.h manually.
49303
49304 1998-07-31  Paul Eggert  <eggert@twinsun.com>
49305
49306         * m4/st_mtim.m4: New file.
49307
49308 1998-07-28  Jim Meyering  <meyering@ascend.com>
49309
49310         * m4/utimes.m4: Undef stat.
49311
49312 1998-07-25  Jim Meyering  <meyering@ascend.com>
49313
49314         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
49315         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
49316
49317 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
49318
49319         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
49320         uid and gid actually remain unchanged.
49321
49322 1998-07-07  Jim Meyering  <meyering@ascend.com>
49323
49324         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
49325
49326 1998-07-04  Jim Meyering  <meyering@ascend.com>
49327
49328         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
49329         to prove that this macro can be used in packages without regex.c.
49330
49331 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
49332
49333         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
49334         is to be used.
49335
49336 1998-07-03  Jim Meyering  <meyering@ascend.com>
49337
49338         * m4/gettext.m4: Add -lintl if it's found to be necessary.
49339
49340         * m4/gettext.m4: New file -- from gettext-0.10.35.
49341         * m4/lcmessage.m4: Likewise.
49342         * m4/progtest.m4: Likewise.
49343
49344         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
49345         * m4/jm-macros.m4: Require the new macro.
49346
49347 1998-06-29  Jim Meyering  <meyering@ascend.com>
49348
49349         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
49350         for the definition of NGROUPS (used in a system header included
49351         by sys/mount.h).
49352
49353 1998-06-28  Jim Meyering  <meyering@ascend.com>
49354
49355         * m4/ls-mntd-fs.m4: New file.
49356         * m4/fstypename.m4: New file.
49357
49358         * m4/jm-macros.m4: Require the new macro.
49359         * m4/jm-glibc-io.m4: New file.
49360
49361 1998-05-19  Jim Meyering  <meyering@ascend.com>
49362
49363         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
49364         * m4/lchown.m4: New file.
49365
49366         * m4/Makefile.am.in: New file.
49367         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
49368
49369 1998-05-14  Jim Meyering  <meyering@ascend.com>
49370
49371         * m4/Makefile.am (EXTRA_DIST): Add them.
49372         * m4/jm-macros.m4: New file.
49373         * m4/utimbuf.m4: New file.
49374
49375 1998-05-12  Jim Meyering  <meyering@ascend.com>
49376
49377         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
49378
49379 1998-05-11  Jim Meyering  <meyering@ascend.com>
49380
49381         * m4/isc-posix.m4: New file.
49382
49383 1998-05-10  Jim Meyering  <meyering@ascend.com>
49384
49385         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
49386
49387 1998-05-09  Jim Meyering  <meyering@ascend.com>
49388
49389         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
49390         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
49391         with automake.
49392
49393         * m4/ssize_t.m4: New file.
49394         * m4/mktime.m4: Remove file -- the new automake has this now.
49395
49396 1998-04-26  Jim Meyering  <meyering@ascend.com>
49397
49398         * m4/assert.m4: New file.
49399         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
49400
49401 1998-04-05  Jim Meyering  <meyering@ascend.com>
49402
49403         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
49404         (jm_PREREQ): Use it here.
49405
49406 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
49407
49408         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
49409         in acconfig.h.
49410
49411 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
49412
49413         * m4/prereq.m4: New file.
49414         * m4/error.m4: New file.
49415         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
49416
49417 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
49418
49419         * m4/getline.m4: Don't set am_cv_func_working_getline before the
49420         cache-check for the same variable -- that defeated the purpose of
49421         the test; the test program was never run.  This was a problem only
49422         on systems with losing getline functions -- HP-UX 10.20 is one.
49423         Reported by Bjorn Helgaas.
49424
49425 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
49426
49427         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
49428
49429 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
49430
49431         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
49432
49433         * m4/const.m4: New file.  Use an initializer in this declaration
49434         typedef int charset[2]; const charset x;
49435         Reported by Bob Glickstein.
49436
49437 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
49438
49439         * m4/chown.m4: Fix reversed types on -1 args to chown.
49440         From Kaveh Ghazi.
49441
49442 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
49443
49444         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
49445         Add lseek and memchr.
49446
49447         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
49448         T.E.Dickey <dickey@clark.net> said that some older preprocessors
49449         have a 20-character limit on names.
49450
49451 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
49452
49453         * m4/inttypes_h.m4: New file.
49454         * m4/uintmax_t.m4: New file.
49455         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
49456
49457
49458         -----
49459
49460         Local Variables:
49461         coding: utf-8
49462         End:
49463
49464         Copyright (C) 1997-2009 Free Software Foundation, Inc.
49465
49466         Copying and distribution of this file, with or without
49467         modification, are permitted provided the copyright notice
49468         and this notice are preserved.