be8067f224daa3fafc3639e7d85c5818e61ba189
[gnulib.git] / ChangeLog
1 2008-01-08  Jim Meyering  <meyering@redhat.com>
2             Bruno Haible  <bruno@clisp.org>
3
4         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
5         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
6         Reported by Peter Fales in
7         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
8
9 2008-01-08  Bruno Haible  <bruno@clisp.org>
10
11         * modules/unictype/category-of (Depends-on): Add
12         unictype/category-none.
13         * modules/unictype/category-and-tests (Depends-on): Add
14         unictype/category-{L,N,Lu,Nd}.
15         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
16         * modules/unictype/category-or-tests (Depends-on): Add
17         unictype/category-{L,N}.
18         * modules/unictype/category-name-tests (Depends-on): Add
19         unictype/category-{Z,Nl}.
20         Reported by Simon Josefsson.
21
22 2008-01-08  Bruno Haible  <bruno@clisp.org>
23
24         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
25         convention better.
26         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
27         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
28         Reported by Peter Miller <millerp@canb.auug.org.au>.
29
30 2008-01-08  Bruno Haible  <bruno@clisp.org>
31
32         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test also U+3000. Needed to
33         detect bug on OpenBSD 4.0.
34         * doc/functions/wcwidth.texi: Document the OpenBSD bug.
35
36 2008-01-08  Eric Blake  <ebb9@byu.net>
37
38         Rewrite memmem to guarantee linear complexity without malloc.
39         * lib/memmem.c (memmem): Use Two-Way rather than
40         Knuth-Morris-Pratt, to allow O(1) space usage.
41         (critical_factorization, two_way_short_needle)
42         (two_way_long_needle): New functions.
43         (knuth_morris_pratt): Delete.
44         * modules/memmem (Depends-on): No longer need malloca or stdbool.
45         Add stdint.
46         * tests/test-memmem.c (main): Add tests for periodic needle and
47         sublinear performance.
48         * doc/functions/memmem.texi (memmem): Document other deficiencies
49         in cygwin and older glibc.
50
51 2008-01-08  Bruno Haible  <bruno@clisp.org>
52
53         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
54         augmentation.
55
56 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
57
58         Add a configure time option: --disable-acl.
59         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
60         AC_ARG_ENABLE(acl).
61
62 2008-01-06  Simon Josefsson  <simon@josefsson.org>
63
64         * tests/test-localename.c: Don't include obsolete "setenv.h".
65
66         * modules/localename-tests (Depends-on): Need unsetenv.
67
68 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
69
70         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
71
72 2008-01-06  Colin Watson  <cjwatson@debian.org>
73
74         * users.txt: Add man-db.
75
76 2008-01-07  Bruno Haible  <bruno@clisp.org>
77
78         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
79         previous section name.
80
81 2008-01-07  Bruno Haible  <bruno@clisp.org>
82
83         * lib/progname.c (set_program_name): Don't strip off a leading
84         "lt-" prefix outside a .libs directory.
85         Suggested by Paul Eggert.
86
87 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
88             Bruno Haible  <bruno@clisp.org>
89
90         Improve memory cleanup in 'relocatable' module.
91         * lib/relocatable.h (compute_curr_prefix): Change return type to
92         'char *'.
93         * lib/relocatable.c (compute_curr_prefix): Change return type to
94         'char *'. Free curr_installdir after use.
95         (relocate): Free curr_prefix_better after use.
96         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
97
98 2008-01-01  Bruno Haible  <bruno@clisp.org>
99
100         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
101         failure on older glibc systems.
102         Reported by Peter Fales <psfales@alcatel-lucent.com>.
103
104 2008-01-05  Eric Blake  <ebb9@byu.net>
105
106         Avoid quadratic system memmem.
107         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
108         Reported by Ralf Wildenhues.
109
110         Fix memmem test for mingw.
111         * modules/memmem-tests (configure.ac): Check for alarm.
112         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
113         it.
114         * doc/functions/memmem.texi: New file.
115         * doc/gnulib.texi (Function Substitutes): Add memmem.
116         Reported by Bruno Haible.
117
118 2008-01-04  Bruno Haible  <bruno@clisp.org>
119
120         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
121         Require gl_HEADER_STRINGS_H_DEFAULTS, not
122         gl_HEADER_STRING_H_DEFAULTS.
123
124 2008-01-04  Eric Blake  <ebb9@byu.net>
125
126         Shorten duration of memmem test.
127         * tests/test-memmem.c (main): Use alarm to declare failure if test
128         is taking too long.
129         Reported by Ralf Wildenhues.
130
131 2007-12-21  Simon Josefsson  <simon@josefsson.org>
132
133         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
134         string, needed by strerror.
135
136 2008-01-03  Colin Watson  <cjwatson@debian.org>
137             Bruno Haible  <bruno@clisp.org>
138
139         * doc/gnulib-tool.texi (Localization): New section.
140
141 2008-01-02  Bruno Haible  <bruno@clisp.org>
142
143         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
144         variables to 'unsigned char *' type.
145         Reported by Paul Eggert.
146
147 2008-01-02  Jim Meyering  <jim@meyering.net>
148
149         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
150
151 2007-12-31  Jim Meyering  <jim@meyering.net>
152
153         Avoid use of private FTS type name.
154         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
155
156 2007-12-30  Karl Berry  <karl@gnu.org>
157
158         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
159         work around defect in Texinfo and/or the standalone Info browser.
160
161 2007-12-30  Bruno Haible  <bruno@clisp.org>
162
163         Unify 5 copies of the KMP code.
164         * lib/str-kmp.h: New file.
165         * lib/c-strcasestr.c: Include str-kmp.h.
166         (knuth_morris_pratt): Remove function.
167         (c_strcasestr): Update.
168         * lib/c-strstr.c: Include str-kmp.h.
169         (knuth_morris_pratt): Remove function.
170         (c_strcasestr): Update.
171         * lib/mbscasestr.c: Include str-kmp.h.
172         (knuth_morris_pratt_unibyte): Remove function.
173         * lib/mbsstr.c: Include str-kmp.h.
174         (knuth_morris_pratt_unibyte): Remove function.
175         * lib/strcasestr.c: Include str-kmp.h.
176         (knuth_morris_pratt): Remove function.
177         (strcasestr): Update.
178         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
179         * modules/c-strstr (Files): Likewise.
180         * modules/mbscasestr (Files): Likewise.
181         * modules/mbsstr (Files): Likewise.
182         * modules/strcasestr (Files): Likewise.
183         Suggested by Paul Eggert.
184
185 2007-12-30  Bruno Haible  <bruno@clisp.org>
186
187         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
188         defined.
189
190 2007-12-30  Bruno Haible  <bruno@clisp.org>
191
192         * lib/xmalloca.h: Include xalloc.h.
193         (xnmalloca): New macro.
194
195 2007-12-30  Bruno Haible  <bruno@clisp.org>
196
197         * lib/malloca.h (nmalloca): New macro.
198         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
199         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
200         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
201         knuth_morris_pratt_multibyte): Likewise.
202         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
203         knuth_morris_pratt_multibyte): Likewise.
204         * lib/memmem.c (knuth_morris_pratt): Likewise.
205         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
206
207 2007-12-25  Bruno Haible  <bruno@clisp.org>
208
209         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
210         * lib/glob.c: Don't include openat.h.
211         (link_exists2_p): Add back the code that deals with the
212         !GLOB_ALTDIRFUNC case.
213         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
214         let it do the filename concatenation.
215         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
216         * modules/glob (Depends-on): Remove openat.
217
218 2007-12-31  Bruno Haible  <bruno@clisp.org>
219
220         * modules/dirfd (License): Change to LGPLv2+.
221         Approved by Jim Meyering.
222
223 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
224
225         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
226         when multiplying M by sizeof (size_t).
227
228 2007-12-10  Martin Lambers  <marlam@marlam.de>
229
230         Override getpagesize on mingw.
231         * lib/getpagesize.c: New file.
232         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
233         * modules/getpagesize (Files): Add lib/getpagesize.c.
234         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
235         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
236         REPLACE_GETPAGESIZE.
237         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
238
239 2007-12-25  Bruno Haible  <bruno@clisp.org>
240
241         * modules/localcharset (Notice): New field.
242         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
243         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
244
245 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
246             Bruno Haible  <bruno@clisp.org>
247
248         Avoid using the syntax symbol() in formatted documentation.
249         * MODULES.html.sh (func_module): When replacing symbol() with a
250         hyperlink, remove the parentheses. Show an error if some remain.
251         Recognize and render the '...' syntax.
252         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
253         Rework. Add paragraph about GCC's inlining.
254         * doc/alloca.texi: Likewise.
255         * doc/error.texi: Remove parentheses from symbol reference.
256         * doc/gnulib-intro.texi: Likewise.
257         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
258         * modules/fnmatch (Description): Reword to say "the ... function".
259         * modules/full-read (Description): Likewise.
260         * modules/full-write (Description): Likewise.
261         * modules/safe-read (Description): Likewise.
262         * modules/safe-write (Description): Likewise.
263         * modules/strchrnul (Description): Likewise.
264         * modules/trim (Description): Likewise.
265         * modules/error (Description): Remove parentheses from symbol
266         references.
267         * modules/verror (Description): Likewise.
268         Reported by Karl Berry.
269
270 2007-12-25  Bruno Haible  <bruno@clisp.org>
271
272         Fixup after 2007-10-16 commit.
273         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
274
275 2007-12-24  Bruno Haible  <bruno@clisp.org>
276
277         Make --enable-relocatable work with DESTDIR.
278         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
279         to compute installdir from destprog.
280         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
281         also set the RELOC_DESTDIR variable.
282         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
283
284 2007-12-24  Bruno Haible  <bruno@clisp.org>
285
286         Fix link error due to xalloc_die().
287         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
288         of xreadlink.
289         * lib/relocwrapper.c: Update comments.
290         * build-aux/install-reloc: Remove xreadlink.c from file list.
291         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
292         xreadlink.c.
293         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
294
295 2007-12-24  Bruno Haible  <bruno@clisp.org>
296
297         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
298         * lib/setenv.h: Remove file.
299         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
300         lib/setenv.h.
301         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
302         (Depends-on): Add stdlib.
303         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
304         gl_FUNC_UNSETENV.
305         (Include): Replace setenv.h with <stdlib.h>.
306         * modules/unsetenv: New file.
307         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
308         * lib/unsetenv.c: Include <stdlib.h> first.
309         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
310         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
311         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
312         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
313         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
314         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
315         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
316         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
317         * doc/functions/unsetenv.texi: Update.
318         * modules/xsetenv (Depends-on): Add unsetenv.
319         * modules/getdate (Depends-on): Likewise.
320         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
321         * lib/xsetenv.c: Don't include setenv.h.
322         * lib/getdate.y: Likewise.
323         * lib/relocwrapper.c: Likewise.
324         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
325         (Depends-on): Add stdlib.
326         * NEWS: Mention the changes.
327         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
328
329 2007-12-23  Bruno Haible  <bruno@clisp.org>
330
331         * lib/memmem.c (memmem): Use lowercase variable names. Tab
332         indentation.
333
334 2007-12-23  Bruno Haible  <bruno@clisp.org>
335
336         * lib/c-strcasestr.c: Add more comments.
337         * lib/c-strstr.c: Likewise.
338         * lib/mbscasestr.c: Likewise.
339         * lib/mbsstr.c: Likewise.
340         * lib/strcasestr.c: Likewise.
341         * lib/memmem.c: Likewise.
342
343 2007-12-23  Bruno Haible  <bruno@clisp.org>
344
345         * tests/test-memmem.c: Include <string.h> first.
346
347 2007-12-22  Bruno Haible  <bruno@clisp.org>
348
349         * gnulib-tool (func_create_testdir): Change $auxdir while generating
350         the contents of $testsbase.
351         Reported by Ralf Wildenhues.
352
353 2007-12-22  Bruno Haible  <bruno@clisp.org>
354
355         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
356         two variables local_ldadd_before, local_ldadd_last.
357
358 2007-12-20  Eric Blake  <ebb9@byu.net>
359
360         Work around circular library issue when cross-compiling.
361         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
362         that progname.o does not need to pull in rpl_memcmp.
363
364 2007-12-19  Eric Blake  <ebb9@byu.net>
365
366         Fix memmem to avoid O(n^2) worst-case complexity.
367         * lib/memmem.c (knuth_morris_pratt): New function.
368         (memmem): Use it if first few naive iterations fail.
369         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
370         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
371         * modules/memchr (License): Likewise.
372         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
373         malloca.
374         * tests/test-memmem.c: Rewrite, borrowing ideas from
375         test-mbsstr1.c; the old version wouldn't even compile!
376         * modules/memmem-tests: New file.
377         * lib/string.in.h (rpl_memmem): Add declaration.
378         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
379         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
380         REPLACE_MEMMEM.
381
382 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
383
384         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
385         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
386         before any system include files, and undef after them all.  This
387         should fix a problem on VMS reported by John E. Malmberg in
388         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
389
390 2007-12-17  Eric Blake  <ebb9@byu.net>
391
392         Revert addition of verify, for BSD/OS.
393         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
394         can't handle large files, for the sake of obsolete platforms.
395         * modules/fseeko (Depends-on): Remove verify.
396         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
397         * doc/functions/ftello.texi (ftello): Likewise.
398         * doc/functions/fgetpos.texi (fgetpos): Likewise.
399         Reported by Larry Jones.
400
401 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
402
403         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
404         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
405
406 2007-12-17  Jim Meyering  <meyering@redhat.com>
407
408         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
409         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
410         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
411         * modules/getcwd (Depends-on): Add openat.
412         Reported by Petr Salinger.
413
414 2007-12-17  Bruno Haible  <bruno@clisp.org>
415
416         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
417         avoid a segmentation fault of the configure test on x86_64 systems.
418
419 2007-12-15  Jim Meyering  <meyering@redhat.com>
420
421         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
422
423 2007-12-13  Eric Blake  <ebb9@byu.net>
424
425         Another fseek test.
426         * tests/test-fseek.c (main): Also test ungetc handling.
427         * tests/test-fseeko.c (main): Likewise.
428         * modules/fseeko (Depends-on): Add verify.
429         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
430         large.
431         Reported by Larry Jones.
432
433         Fix fseeko on mingw.
434         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
435         seek.
436
437         Beef up fseek tests.
438         * tests/test-fseek.c (main): Also test eof handling.
439         * tests/test-fseeko.c (main): Likewise.
440         Reported by Larry Jones.
441
442 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
443
444         Fix fseeko on BSD-based platforms.
445         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
446         successful seek.
447
448 2007-12-12  Eric Blake  <ebb9@byu.net>
449
450         Allow circular dependency of separate libtests.a
451         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
452         when use_libtests.
453
454 2007-12-11  Eric Blake  <ebb9@byu.net>
455
456         Fix bug with -0.0L in previous patch.
457         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
458         * tests/test-isnan.c (main): Also test on zeroes.
459         * tests/test-isnanf.c (main): Likewise.
460         * tests/test-isnanl.h (main): Likewise.
461
462         Detect pseudo-denormals on x86 even when cross-compiling.
463         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
464         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
465         invalid bit patterns that happen to satisfy ==.
466
467         Avoid link failures with separate libtests.a.
468         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
469         last, to satisfy circular dependencies.
470
471 2007-12-11  Eric Blake  <ebb9@byu.net>
472         and Bruno Haible  <bruno@clisp.org>
473
474         Fix OpenBSD 4.0 <float.h> handling of long double.
475         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
476         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
477         * doc/headers/float.texi (float.h): Document OpenBSD bug.
478
479 2007-12-11  Jim Meyering  <meyering@redhat.com>
480
481         * users.txt: Add libvirt.
482
483         Support versions of autoconf prior to 2.59c.
484         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
485         if it is not already defined.
486
487 2007-12-09  Bruno Haible  <bruno@clisp.org>
488
489         Let 'gnulib-tool --import' collect sources needed for the tests in
490         tests/ rather than in lib/.
491         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
492         argument. If true, add rules to generate libtests.a, and put libtests.a
493         into $(LDADD). Consider source files in subdirectories and set
494         uses_subdirs.
495         (func_emit_initmacro_start, func_emit_initmacro_end,
496         func_emit_initmacro_done): Pass all arguments explicitly.
497         (func_import): Determine two module lists main_modules,
498         testsrelated_modules. Determine use_libtests. Determine two variables
499         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
500         instead of just sed_transform_lib_file. Determine two variables
501         main_files and testsrelated_files. Compute 'files' as the union of
502         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
503         func_add_or_update. In the generated gnulib-comp.m4, collect the
504         object files for tests/ in different variables than those for lib/.
505         Substitute LIBTESTS_LIBDEPS.
506         (func_create_testdir): Combine the uses_subdirs results from
507         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
508
509 2007-12-09  Bruno Haible  <bruno@clisp.org>
510
511         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
512         the build-aux directory.
513
514 2007-12-09  Bruno Haible  <bruno@clisp.org>
515
516         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
517         introduced on 2006-09-09.
518
519 2007-12-07  Jim Meyering  <meyering@redhat.com>
520
521         Let these macros work also with autoconf-2.59.
522         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
523         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
524         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
525
526 2007-12-06  Jim Meyering  <meyering@redhat.com>
527
528         Avoid a configure-time syntax error in gl_FUNC_ACL.
529         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
530         function in each branch, before testing the cache variable.
531
532 2007-12-04  Eric Blake  <ebb9@byu.net>
533
534         Make scripts executable.
535         * build-aux/config.guess: Add execute permissions.
536         * build-aux/config.sub: Likewise.
537         * build-aux/gendocs.sh: Likewise.
538
539         Fix frexp on mingw.
540         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
541         cross-compiling.
542         * doc/functions/frexp.texi (frexp): Document the bug.
543
544         Make cygwin fseeko check more reliable.
545         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
546         version numbers, rather than unrelated feature check.
547         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
548         * doc/functions/ftello.texi (ftello): Likewise.
549         Reported by Bruno Haible.
550
551         * m4/strerror.m4: Bump version number.
552
553 2007-12-03  Bruno Haible  <bruno@clisp.org>
554
555         * doc/functions/mprotect.texi: Mention the mingw problem.
556
557 2007-12-03  Eric Blake  <ebb9@byu.net>
558
559         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
560         REPLACE_STRERROR is initialized before this macro.
561
562 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
563
564         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
565         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
566         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
567         put -lsec in even for programs other than 'ls'.  This fixes a problem
568         for gettext reported by Bruno Haible in
569         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
570         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
571         Add support for Solaris 10.  This isn't efficient, but should get the
572         job done for now.
573
574 2007-12-03  James Youngman  <jay@gnu.org>
575
576         * doc/regexprops-generic.texi: change "an close-group" to "a
577         close-group" and "illegal" to "not allowed".
578
579 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
580
581         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
582         pr_byname.h. Needed for the rare case when the maintainer has done
583         "make maintainer-clean" in the source directory and then attempts a
584         build outside the source directory.
585         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
586         scripts_byname.h.
587
588 2007-12-02  Martin Lambers <marlam@marlam.de>
589             Bruno Haible  <bruno@clisp.org>
590
591         * lib/getpagesize.h: Remove file.
592         * lib/unistd.in.h: Include declaration of getpagesize here.
593         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
594         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
595         HAVE_SYS_PARAM_H.
596         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
597         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
598         * modules/getpagesize (Files): Remove lib/getpagesize.h.
599         (Depends-on): Add unistd.
600         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
601         (Include): Use <unistd.h> instead of getpagesize.h.
602         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
603         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
604         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
605         gl_GETPAGESIZE invocation, already handled by module dependency.
606         * lib/pagealign_alloc.c: Don't include getpagesize.h.
607
608 2007-12-02  Bruno Haible  <bruno@clisp.org>
609
610         * modules/strings-tests: New file.
611         * tests/test-strings.c: New file.
612
613         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
614         * lib/strings.in.h: New file.
615         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
616         * m4/strings_h.m4: New file.
617         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
618         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
619         * modules/strings: New file.
620         * modules/string (Makefile.am): Update.
621         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
622         Reported by Karl Berry.
623
624 2007-12-01  Eric Blake  <ebb9@byu.net>
625
626         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
627         accomodate fix in cygwin 1.5.25.
628
629 2007-12-01  Jim Meyering  <meyering@redhat.com>
630
631         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
632         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
633         that would inhibit utf8-optimization of a regexp containing line-
634         or buffer-anchors, e.g., `^', `$'.
635
636 2007-11-30  Bruno Haible  <bruno@clisp.org>
637
638         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
639         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
640         glthread_recursive_lock_init.
641         * lib/lock.c (glthread_recursive_lock_init)
642         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
643         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
644
645 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
646
647         New function qset_acl, like set_acl but with syscall semantics.
648         * lib/acl.h (qset_acl): New decl.
649         * lib/acl.c (qset_acl): New function.
650         (set_acl): Use new function.  Use more-consistent diagnostics.
651
652 2007-11-28  Jim Meyering  <meyering@redhat.com>
653
654         * modules/physmem (License): Change from GPL to LGPLv2+.
655
656 2007-11-26  Bruno Haible  <bruno@clisp.org>
657
658         * lib/vasnprintf.c (decode_long_double): Don't abort if the
659         'long double' type has excess precision.
660         Reported by Jim Meyering in
661         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
662
663 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
664
665         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
666         Sync from <http://gnu.org/licenses>.
667         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
668         with license text from same location.
669         * doc/maintain.texi, doc/standards.texi:  Sync from
670         <http://savannah.gnu.org/projects/gnustandards>.
671
672 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
673         and Jim Meyering  <meyering@redhat.com>
674
675         Adjust getdate' grammar to accept a slightly more regular language.
676         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
677         Before, the former was rejected.
678         * lib/getdate.y (digits_to_date_time): New function, factored
679         out of ...
680         (number): ...here.  Just call digits_to_date_time.
681         (hybrid): New non-terminal to handle an <unsigned number,
682         signed relative offset> sequence consistently.
683
684 2007-11-18  Jim Meyering  <meyering@redhat.com>
685
686         Pull my changes from coreutils:
687         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
688         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
689         use of $gnulib_tool_option_extras, so that it's separated from the
690         preceding argument.
691
692         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
693         * build-aux/bootstrap (cp_mark_as_generated): Create any required
694         parent destination directories before copying a file into place.
695
696 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
697
698         bootstrap: work also with 4-argument variant of AC_INIT
699         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
700
701 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
702
703         Port test-getaddrinfo to Solaris.
704         Problem reported by Bruno Haible in
705         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
706         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
707         explanation of setting 'hints'.
708         Don't reject an implementation merely because it returns EAI_SERVICE.
709         (EAI_SERVICE): Define to 0 if not defined.
710
711 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
712
713         The license of gnu-make and posix-shell is now "GPLed build tool".
714         * modules/gnu-make (License): Likewise.
715         * modules/posix-shell (License): Likewise.
716
717         New module posix-shell, for determining a POSIX shell
718         or perhaps something that is close enough to a POSIX shell.
719         * m4/posix-shell.m4: New file.
720         * modules/posix-shell: New file.
721
722         * MODULES.html.sh: Mention new module.
723
724         New module gnu-make, for determining whether we're using GNU Make.
725         * m4/gnu-make.m4: New file.
726         * modules/gnu-make: New file.
727         * MODULES.html.sh: Mention new module.
728
729 2007-11-14  Jim Meyering  <meyering@redhat.com>
730
731         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
732         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
733         use this macro to create a function _definition_.
734         Remove useless "#undef ARGMATCH_DIE".
735
736 2007-11-14  Bruno Haible  <bruno@clisp.org>
737
738         * lib/config.charset: Update for OpenBSD 4.1.
739         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
740
741 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
742
743         Document 64-bit #if problems in stdint.texi.
744         * doc/headers/stdint.texi (stdint.h): Mention problems with
745         64-bit-#if, and how to work around them.
746
747         Don't insist on 'long long int' support in the preprocessor.  It
748         breaks too many things.  For example, PRIdMAX still uses a 'long
749         long int' format with the latest Sun compiler, even though
750         HAVE_LONG_LONG_INT isn't defined due to that compiler's
751         preprocessor problem.  This causes the latest coreutils to dump
752         core on Solaris 10 sparc with the Sun C compiler.
753         Instead, fix the 2007-10-16 problem in a different way, by evaluating
754         the troublesome expressions at configure-time, not at #if-time.
755         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
756         preprocessor.
757         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
758         compile-time C checks, done at 'configure'-time.
759         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
760         * modules/inttypes (Makefile): Substitute the new symbols that
761         gl_INTTYPES_H now generates.
762         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
763
764 2007-11-12  Bruno Haible  <bruno@clisp.org>
765
766         Tests for Unicode character classification functions.
767
768         * modules/unictype/bidicategory-byname-tests: New file.
769         * modules/unictype/bidicategory-name-tests: New file.
770         * modules/unictype/bidicategory-of-tests: New file.
771         * modules/unictype/bidicategory-test-tests: New file.
772         * modules/unictype/block-list-tests: New file.
773         * modules/unictype/block-of-tests: New file.
774         * modules/unictype/block-test-tests: New file.
775         * modules/unictype/category-C-tests: New file.
776         * modules/unictype/category-Cc-tests: New file.
777         * modules/unictype/category-Cf-tests: New file.
778         * modules/unictype/category-Cn-tests: New file.
779         * modules/unictype/category-Co-tests: New file.
780         * modules/unictype/category-Cs-tests: New file.
781         * modules/unictype/category-L-tests: New file.
782         * modules/unictype/category-Ll-tests: New file.
783         * modules/unictype/category-Lm-tests: New file.
784         * modules/unictype/category-Lo-tests: New file.
785         * modules/unictype/category-Lt-tests: New file.
786         * modules/unictype/category-Lu-tests: New file.
787         * modules/unictype/category-M-tests: New file.
788         * modules/unictype/category-Mc-tests: New file.
789         * modules/unictype/category-Me-tests: New file.
790         * modules/unictype/category-Mn-tests: New file.
791         * modules/unictype/category-N-tests: New file.
792         * modules/unictype/category-Nd-tests: New file.
793         * modules/unictype/category-Nl-tests: New file.
794         * modules/unictype/category-No-tests: New file.
795         * modules/unictype/category-P-tests: New file.
796         * modules/unictype/category-Pc-tests: New file.
797         * modules/unictype/category-Pd-tests: New file.
798         * modules/unictype/category-Pe-tests: New file.
799         * modules/unictype/category-Pf-tests: New file.
800         * modules/unictype/category-Pi-tests: New file.
801         * modules/unictype/category-Po-tests: New file.
802         * modules/unictype/category-Ps-tests: New file.
803         * modules/unictype/category-S-tests: New file.
804         * modules/unictype/category-Sc-tests: New file.
805         * modules/unictype/category-Sk-tests: New file.
806         * modules/unictype/category-Sm-tests: New file.
807         * modules/unictype/category-So-tests: New file.
808         * modules/unictype/category-Z-tests: New file.
809         * modules/unictype/category-Zl-tests: New file.
810         * modules/unictype/category-Zp-tests: New file.
811         * modules/unictype/category-Zs-tests: New file.
812         * modules/unictype/category-and-not-tests: New file.
813         * modules/unictype/category-and-tests: New file.
814         * modules/unictype/category-byname-tests: New file.
815         * modules/unictype/category-name-tests: New file.
816         * modules/unictype/category-none-tests: New file.
817         * modules/unictype/category-of-tests: New file.
818         * modules/unictype/category-or-tests: New file.
819         * modules/unictype/category-test-withtable-tests: New file.
820         * modules/unictype/combining-class-tests: New file.
821         * modules/unictype/ctype-alnum-tests: New file.
822         * modules/unictype/ctype-alpha-tests: New file.
823         * modules/unictype/ctype-blank-tests: New file.
824         * modules/unictype/ctype-cntrl-tests: New file.
825         * modules/unictype/ctype-digit-tests: New file.
826         * modules/unictype/ctype-graph-tests: New file.
827         * modules/unictype/ctype-lower-tests: New file.
828         * modules/unictype/ctype-print-tests: New file.
829         * modules/unictype/ctype-punct-tests: New file.
830         * modules/unictype/ctype-space-tests: New file.
831         * modules/unictype/ctype-upper-tests: New file.
832         * modules/unictype/ctype-xdigit-tests: New file.
833         * modules/unictype/decimal-digit-tests: New file.
834         * modules/unictype/digit-tests: New file.
835         * modules/unictype/mirror-tests: New file.
836         * modules/unictype/numeric-tests: New file.
837         * modules/unictype/property-alphabetic-tests: New file.
838         * modules/unictype/property-ascii-hex-digit-tests: New file.
839         * modules/unictype/property-bidi-arabic-digit-tests: New file.
840         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
841         * modules/unictype/property-bidi-block-separator-tests: New file.
842         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
843         * modules/unictype/property-bidi-common-separator-tests: New file.
844         * modules/unictype/property-bidi-control-tests: New file.
845         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
846         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
847         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
848         * modules/unictype/property-bidi-european-digit-tests: New file.
849         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
850         * modules/unictype/property-bidi-left-to-right-tests: New file.
851         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
852         * modules/unictype/property-bidi-other-neutral-tests: New file.
853         * modules/unictype/property-bidi-pdf-tests: New file.
854         * modules/unictype/property-bidi-segment-separator-tests: New file.
855         * modules/unictype/property-bidi-whitespace-tests: New file.
856         * modules/unictype/property-byname-tests: New file.
857         * modules/unictype/property-combining-tests: New file.
858         * modules/unictype/property-composite-tests: New file.
859         * modules/unictype/property-currency-symbol-tests: New file.
860         * modules/unictype/property-dash-tests: New file.
861         * modules/unictype/property-decimal-digit-tests: New file.
862         * modules/unictype/property-default-ignorable-code-point-tests: New file.
863         * modules/unictype/property-deprecated-tests: New file.
864         * modules/unictype/property-diacritic-tests: New file.
865         * modules/unictype/property-extender-tests: New file.
866         * modules/unictype/property-format-control-tests: New file.
867         * modules/unictype/property-grapheme-base-tests: New file.
868         * modules/unictype/property-grapheme-extend-tests: New file.
869         * modules/unictype/property-grapheme-link-tests: New file.
870         * modules/unictype/property-hex-digit-tests: New file.
871         * modules/unictype/property-hyphen-tests: New file.
872         * modules/unictype/property-id-continue-tests: New file.
873         * modules/unictype/property-id-start-tests: New file.
874         * modules/unictype/property-ideographic-tests: New file.
875         * modules/unictype/property-ids-binary-operator-tests: New file.
876         * modules/unictype/property-ids-trinary-operator-tests: New file.
877         * modules/unictype/property-ignorable-control-tests: New file.
878         * modules/unictype/property-iso-control-tests: New file.
879         * modules/unictype/property-join-control-tests: New file.
880         * modules/unictype/property-left-of-pair-tests: New file.
881         * modules/unictype/property-line-separator-tests: New file.
882         * modules/unictype/property-logical-order-exception-tests: New file.
883         * modules/unictype/property-lowercase-tests: New file.
884         * modules/unictype/property-math-tests: New file.
885         * modules/unictype/property-non-break-tests: New file.
886         * modules/unictype/property-not-a-character-tests: New file.
887         * modules/unictype/property-numeric-tests: New file.
888         * modules/unictype/property-other-alphabetic-tests: New file.
889         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
890         * modules/unictype/property-other-grapheme-extend-tests: New file.
891         * modules/unictype/property-other-id-continue-tests: New file.
892         * modules/unictype/property-other-id-start-tests: New file.
893         * modules/unictype/property-other-lowercase-tests: New file.
894         * modules/unictype/property-other-math-tests: New file.
895         * modules/unictype/property-other-uppercase-tests: New file.
896         * modules/unictype/property-paired-punctuation-tests: New file.
897         * modules/unictype/property-paragraph-separator-tests: New file.
898         * modules/unictype/property-pattern-syntax-tests: New file.
899         * modules/unictype/property-pattern-white-space-tests: New file.
900         * modules/unictype/property-private-use-tests: New file.
901         * modules/unictype/property-punctuation-tests: New file.
902         * modules/unictype/property-quotation-mark-tests: New file.
903         * modules/unictype/property-radical-tests: New file.
904         * modules/unictype/property-sentence-terminal-tests: New file.
905         * modules/unictype/property-soft-dotted-tests: New file.
906         * modules/unictype/property-space-tests: New file.
907         * modules/unictype/property-terminal-punctuation-tests: New file.
908         * modules/unictype/property-test-tests: New file.
909         * modules/unictype/property-titlecase-tests: New file.
910         * modules/unictype/property-unassigned-code-value-tests: New file.
911         * modules/unictype/property-unified-ideograph-tests: New file.
912         * modules/unictype/property-uppercase-tests: New file.
913         * modules/unictype/property-variation-selector-tests: New file.
914         * modules/unictype/property-white-space-tests: New file.
915         * modules/unictype/property-xid-continue-tests: New file.
916         * modules/unictype/property-xid-start-tests: New file.
917         * modules/unictype/property-zero-width-tests: New file.
918         * modules/unictype/scripts-tests: New file.
919         * modules/unictype/syntax-c-ident-tests: New file.
920         * modules/unictype/syntax-c-whitespace-tests: New file.
921         * modules/unictype/syntax-java-ident-tests: New file.
922         * modules/unictype/syntax-java-whitespace-tests: New file.
923         * tests/unictype/test-bidi_byname.c: New file.
924         * tests/unictype/test-bidi_name.c: New file.
925         * tests/unictype/test-bidi_of.c: New file.
926         * tests/unictype/test-bidi_test.c: New file.
927         * tests/unictype/test-block_list.c: New file.
928         * tests/unictype/test-block_of.c: New file.
929         * tests/unictype/test-block_test.c: New file.
930         * tests/unictype/test-categ_and.c: New file.
931         * tests/unictype/test-categ_and_not.c: New file.
932         * tests/unictype/test-categ_byname.c: New file.
933         * tests/unictype/test-categ_name.c: New file.
934         * tests/unictype/test-categ_none.c: New file.
935         * tests/unictype/test-categ_of.c: New file.
936         * tests/unictype/test-categ_or.c: New file.
937         * tests/unictype/test-categ_test_withtable.c: New file.
938         * tests/unictype/test-combining.c: New file.
939         * tests/unictype/test-decdigit.c: New file.
940         * tests/unictype/test-digit.c: New file.
941         * tests/unictype/test-mirror.c: New file.
942         * tests/unictype/test-numeric.c: New file.
943         * tests/unictype/test-pr_byname.c: New file.
944         * tests/unictype/test-pr_test.c: New file.
945         * tests/unictype/test-predicate-part1.h: New file.
946         * tests/unictype/test-predicate-part2.h: New file.
947         * tests/unictype/test-scripts.c: New file.
948         * tests/unictype/test-sy_c_ident.c: New file.
949         * tests/unictype/test-sy_java_ident.c: New file.
950
951         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
952         for Unicode 5.0.0.
953         * tests/unictype/test-categ_Cc.c: Likewise.
954         * tests/unictype/test-categ_Cf.c: Likewise.
955         * tests/unictype/test-categ_Cn.c: Likewise.
956         * tests/unictype/test-categ_Co.c: Likewise.
957         * tests/unictype/test-categ_Cs.c: Likewise.
958         * tests/unictype/test-categ_L.c: Likewise.
959         * tests/unictype/test-categ_Ll.c: Likewise.
960         * tests/unictype/test-categ_Lm.c: Likewise.
961         * tests/unictype/test-categ_Lo.c: Likewise.
962         * tests/unictype/test-categ_Lt.c: Likewise.
963         * tests/unictype/test-categ_Lu.c: Likewise.
964         * tests/unictype/test-categ_M.c: Likewise.
965         * tests/unictype/test-categ_Mc.c: Likewise.
966         * tests/unictype/test-categ_Me.c: Likewise.
967         * tests/unictype/test-categ_Mn.c: Likewise.
968         * tests/unictype/test-categ_N.c: Likewise.
969         * tests/unictype/test-categ_Nd.c: Likewise.
970         * tests/unictype/test-categ_Nl.c: Likewise.
971         * tests/unictype/test-categ_No.c: Likewise.
972         * tests/unictype/test-categ_P.c: Likewise.
973         * tests/unictype/test-categ_Pc.c: Likewise.
974         * tests/unictype/test-categ_Pd.c: Likewise.
975         * tests/unictype/test-categ_Pe.c: Likewise.
976         * tests/unictype/test-categ_Pf.c: Likewise.
977         * tests/unictype/test-categ_Pi.c: Likewise.
978         * tests/unictype/test-categ_Po.c: Likewise.
979         * tests/unictype/test-categ_Ps.c: Likewise.
980         * tests/unictype/test-categ_S.c: Likewise.
981         * tests/unictype/test-categ_Sc.c: Likewise.
982         * tests/unictype/test-categ_Sk.c: Likewise.
983         * tests/unictype/test-categ_Sm.c: Likewise.
984         * tests/unictype/test-categ_So.c: Likewise.
985         * tests/unictype/test-categ_Z.c: Likewise.
986         * tests/unictype/test-categ_Zl.c: Likewise.
987         * tests/unictype/test-categ_Zp.c: Likewise.
988         * tests/unictype/test-categ_Zs.c: Likewise.
989         * tests/unictype/test-ctype_alnum.c: Likewise.
990         * tests/unictype/test-ctype_alpha.c: Likewise.
991         * tests/unictype/test-ctype_blank.c: Likewise.
992         * tests/unictype/test-ctype_cntrl.c: Likewise.
993         * tests/unictype/test-ctype_digit.c: Likewise.
994         * tests/unictype/test-ctype_graph.c: Likewise.
995         * tests/unictype/test-ctype_lower.c: Likewise.
996         * tests/unictype/test-ctype_print.c: Likewise.
997         * tests/unictype/test-ctype_punct.c: Likewise.
998         * tests/unictype/test-ctype_space.c: Likewise.
999         * tests/unictype/test-ctype_upper.c: Likewise.
1000         * tests/unictype/test-ctype_xdigit.c: Likewise.
1001         * tests/unictype/test-decdigit.h: Likewise.
1002         * tests/unictype/test-digit.h: Likewise.
1003         * tests/unictype/test-numeric.h: Likewise.
1004         * tests/unictype/test-pr_alphabetic.c: Likewise.
1005         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
1006         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
1007         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
1008         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
1009         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
1010         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
1011         * tests/unictype/test-pr_bidi_control.c: Likewise.
1012         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
1013         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
1014         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
1015         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
1016         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
1017         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
1018         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
1019         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
1020         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
1021         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
1022         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
1023         * tests/unictype/test-pr_combining.c: Likewise.
1024         * tests/unictype/test-pr_composite.c: Likewise.
1025         * tests/unictype/test-pr_currency_symbol.c: Likewise.
1026         * tests/unictype/test-pr_dash.c: Likewise.
1027         * tests/unictype/test-pr_decimal_digit.c: Likewise.
1028         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
1029         * tests/unictype/test-pr_deprecated.c: Likewise.
1030         * tests/unictype/test-pr_diacritic.c: Likewise.
1031         * tests/unictype/test-pr_extender.c: Likewise.
1032         * tests/unictype/test-pr_format_control.c: Likewise.
1033         * tests/unictype/test-pr_grapheme_base.c: Likewise.
1034         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
1035         * tests/unictype/test-pr_grapheme_link.c: Likewise.
1036         * tests/unictype/test-pr_hex_digit.c: Likewise.
1037         * tests/unictype/test-pr_hyphen.c: Likewise.
1038         * tests/unictype/test-pr_id_continue.c: Likewise.
1039         * tests/unictype/test-pr_id_start.c: Likewise.
1040         * tests/unictype/test-pr_ideographic.c: Likewise.
1041         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
1042         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
1043         * tests/unictype/test-pr_ignorable_control.c: Likewise.
1044         * tests/unictype/test-pr_iso_control.c: Likewise.
1045         * tests/unictype/test-pr_join_control.c: Likewise.
1046         * tests/unictype/test-pr_left_of_pair.c: Likewise.
1047         * tests/unictype/test-pr_line_separator.c: Likewise.
1048         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
1049         * tests/unictype/test-pr_lowercase.c: Likewise.
1050         * tests/unictype/test-pr_math.c: Likewise.
1051         * tests/unictype/test-pr_non_break.c: Likewise.
1052         * tests/unictype/test-pr_not_a_character.c: Likewise.
1053         * tests/unictype/test-pr_numeric.c: Likewise.
1054         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
1055         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
1056         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
1057         * tests/unictype/test-pr_other_id_continue.c: Likewise.
1058         * tests/unictype/test-pr_other_id_start.c: Likewise.
1059         * tests/unictype/test-pr_other_lowercase.c: Likewise.
1060         * tests/unictype/test-pr_other_math.c: Likewise.
1061         * tests/unictype/test-pr_other_uppercase.c: Likewise.
1062         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
1063         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
1064         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
1065         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
1066         * tests/unictype/test-pr_private_use.c: Likewise.
1067         * tests/unictype/test-pr_punctuation.c: Likewise.
1068         * tests/unictype/test-pr_quotation_mark.c: Likewise.
1069         * tests/unictype/test-pr_radical.c: Likewise.
1070         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
1071         * tests/unictype/test-pr_soft_dotted.c: Likewise.
1072         * tests/unictype/test-pr_space.c: Likewise.
1073         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
1074         * tests/unictype/test-pr_titlecase.c: Likewise.
1075         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
1076         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
1077         * tests/unictype/test-pr_uppercase.c: Likewise.
1078         * tests/unictype/test-pr_variation_selector.c: Likewise.
1079         * tests/unictype/test-pr_white_space.c: Likewise.
1080         * tests/unictype/test-pr_xid_continue.c: Likewise.
1081         * tests/unictype/test-pr_xid_start.c: Likewise.
1082         * tests/unictype/test-pr_zero_width.c: Likewise.
1083         * tests/unictype/test-sy_c_whitespace.c: Likewise.
1084         * tests/unictype/test-sy_java_whitespace.c: Likewise.
1085
1086 2007-11-12  Bruno Haible  <bruno@clisp.org>
1087
1088         Unicode character classification functions.
1089         * lib/unictype.h: New file.
1090         * modules/unictype/base: New file.
1091         * modules/unictype/category-L: New file.
1092         * modules/unictype/category-Lu: New file.
1093         * modules/unictype/category-Ll: New file.
1094         * modules/unictype/category-Lt: New file.
1095         * modules/unictype/category-Lm: New file.
1096         * modules/unictype/category-Lo: New file.
1097         * modules/unictype/category-M: New file.
1098         * modules/unictype/category-Mn: New file.
1099         * modules/unictype/category-Mc: New file.
1100         * modules/unictype/category-Me: New file.
1101         * modules/unictype/category-N: New file.
1102         * modules/unictype/category-Nd: New file.
1103         * modules/unictype/category-Nl: New file.
1104         * modules/unictype/category-No: New file.
1105         * modules/unictype/category-P: New file.
1106         * modules/unictype/category-Pc: New file.
1107         * modules/unictype/category-Pd: New file.
1108         * modules/unictype/category-Ps: New file.
1109         * modules/unictype/category-Pe: New file.
1110         * modules/unictype/category-Pi: New file.
1111         * modules/unictype/category-Pf: New file.
1112         * modules/unictype/category-Po: New file.
1113         * modules/unictype/category-S: New file.
1114         * modules/unictype/category-Sm: New file.
1115         * modules/unictype/category-Sc: New file.
1116         * modules/unictype/category-Sk: New file.
1117         * modules/unictype/category-So: New file.
1118         * modules/unictype/category-Z: New file.
1119         * modules/unictype/category-Zs: New file.
1120         * modules/unictype/category-Zl: New file.
1121         * modules/unictype/category-Zp: New file.
1122         * modules/unictype/category-C: New file.
1123         * modules/unictype/category-Cc: New file.
1124         * modules/unictype/category-Cf: New file.
1125         * modules/unictype/category-Cs: New file.
1126         * modules/unictype/category-Co: New file.
1127         * modules/unictype/category-Cn: New file.
1128         * modules/unictype/category-or: New file.
1129         * modules/unictype/category-of: New file.
1130         * modules/unictype/category-test: New file.
1131         * modules/unictype/category-test-withtable: New file.
1132         * modules/unictype/category-byname: New file.
1133         * modules/unictype/category-none: New file.
1134         * modules/unictype/category-and: New file.
1135         * modules/unictype/category-and-not: New file.
1136         * modules/unictype/category-name: New file.
1137         * modules/unictype/combining-class: New file.
1138         * modules/unictype/category-all: New file.
1139         * modules/unictype/bidicategory-all: New file.
1140         * modules/unictype/bidicategory-byname: New file.
1141         * modules/unictype/bidicategory-name: New file.
1142         * modules/unictype/bidicategory-of: New file.
1143         * modules/unictype/bidicategory-test: New file.
1144         * modules/unictype/decimal-digit: New file.
1145         * modules/unictype/digit: New file.
1146         * modules/unictype/numeric: New file.
1147         * modules/unictype/mirror: New file.
1148         * modules/unictype/property-white-space: New file.
1149         * modules/unictype/property-alphabetic: New file.
1150         * modules/unictype/property-other-alphabetic: New file.
1151         * modules/unictype/property-not-a-character: New file.
1152         * modules/unictype/property-default-ignorable-code-point: New file.
1153         * modules/unictype/property-other-default-ignorable-code-point: New
1154         file.
1155         * modules/unictype/property-deprecated: New file.
1156         * modules/unictype/property-logical-order-exception: New file.
1157         * modules/unictype/property-variation-selector: New file.
1158         * modules/unictype/property-private-use: New file.
1159         * modules/unictype/property-unassigned-code-value: New file.
1160         * modules/unictype/property-uppercase: New file.
1161         * modules/unictype/property-other-uppercase: New file.
1162         * modules/unictype/property-lowercase: New file.
1163         * modules/unictype/property-other-lowercase: New file.
1164         * modules/unictype/property-titlecase: New file.
1165         * modules/unictype/property-soft-dotted: New file.
1166         * modules/unictype/property-id-start: New file.
1167         * modules/unictype/property-other-id-start: New file.
1168         * modules/unictype/property-id-continue: New file.
1169         * modules/unictype/property-other-id-continue: New file.
1170         * modules/unictype/property-xid-start: New file.
1171         * modules/unictype/property-xid-continue: New file.
1172         * modules/unictype/property-pattern-white-space: New file.
1173         * modules/unictype/property-pattern-syntax: New file.
1174         * modules/unictype/property-join-control: New file.
1175         * modules/unictype/property-grapheme-base: New file.
1176         * modules/unictype/property-grapheme-extend: New file.
1177         * modules/unictype/property-other-grapheme-extend: New file.
1178         * modules/unictype/property-grapheme-link: New file.
1179         * modules/unictype/property-bidi-control: New file.
1180         * modules/unictype/property-bidi-left-to-right: New file.
1181         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
1182         * modules/unictype/property-bidi-arabic-right-to-left: New file.
1183         * modules/unictype/property-bidi-european-digit: New file.
1184         * modules/unictype/property-bidi-eur-num-separator: New file.
1185         * modules/unictype/property-bidi-eur-num-terminator: New file.
1186         * modules/unictype/property-bidi-arabic-digit: New file.
1187         * modules/unictype/property-bidi-common-separator: New file.
1188         * modules/unictype/property-bidi-block-separator: New file.
1189         * modules/unictype/property-bidi-segment-separator: New file.
1190         * modules/unictype/property-bidi-whitespace: New file.
1191         * modules/unictype/property-bidi-non-spacing-mark: New file.
1192         * modules/unictype/property-bidi-boundary-neutral: New file.
1193         * modules/unictype/property-bidi-pdf: New file.
1194         * modules/unictype/property-bidi-embedding-or-override: New file.
1195         * modules/unictype/property-bidi-other-neutral: New file.
1196         * modules/unictype/property-hex-digit: New file.
1197         * modules/unictype/property-ascii-hex-digit: New file.
1198         * modules/unictype/property-ideographic: New file.
1199         * modules/unictype/property-unified-ideograph: New file.
1200         * modules/unictype/property-radical: New file.
1201         * modules/unictype/property-ids-binary-operator: New file.
1202         * modules/unictype/property-ids-trinary-operator: New file.
1203         * modules/unictype/property-zero-width: New file.
1204         * modules/unictype/property-space: New file.
1205         * modules/unictype/property-non-break: New file.
1206         * modules/unictype/property-iso-control: New file.
1207         * modules/unictype/property-format-control: New file.
1208         * modules/unictype/property-dash: New file.
1209         * modules/unictype/property-hyphen: New file.
1210         * modules/unictype/property-punctuation: New file.
1211         * modules/unictype/property-line-separator: New file.
1212         * modules/unictype/property-paragraph-separator: New file.
1213         * modules/unictype/property-quotation-mark: New file.
1214         * modules/unictype/property-sentence-terminal: New file.
1215         * modules/unictype/property-terminal-punctuation: New file.
1216         * modules/unictype/property-currency-symbol: New file.
1217         * modules/unictype/property-math: New file.
1218         * modules/unictype/property-other-math: New file.
1219         * modules/unictype/property-paired-punctuation: New file.
1220         * modules/unictype/property-left-of-pair: New file.
1221         * modules/unictype/property-combining: New file.
1222         * modules/unictype/property-composite: New file.
1223         * modules/unictype/property-decimal-digit: New file.
1224         * modules/unictype/property-numeric: New file.
1225         * modules/unictype/property-diacritic: New file.
1226         * modules/unictype/property-extender: New file.
1227         * modules/unictype/property-ignorable-control: New file.
1228         * modules/unictype/property-test: New file.
1229         * modules/unictype/property-byname: New file.
1230         * modules/unictype/property-all: New file.
1231         * modules/unictype/scripts: New file.
1232         * modules/unictype/scripts-all: New file.
1233         * modules/unictype/block-of: New file.
1234         * modules/unictype/block-test: New file.
1235         * modules/unictype/block-list: New file.
1236         * modules/unictype/block-all: New file.
1237         * modules/unictype/syntax-c-whitespace: New file.
1238         * modules/unictype/syntax-java-whitespace: New file.
1239         * modules/unictype/syntax-c-ident: New file.
1240         * modules/unictype/syntax-java-ident: New file.
1241         * modules/unictype/ctype-alnum: New file.
1242         * modules/unictype/ctype-alpha: New file.
1243         * modules/unictype/ctype-cntrl: New file.
1244         * modules/unictype/ctype-digit: New file.
1245         * modules/unictype/ctype-graph: New file.
1246         * modules/unictype/ctype-lower: New file.
1247         * modules/unictype/ctype-print: New file.
1248         * modules/unictype/ctype-punct: New file.
1249         * modules/unictype/ctype-space: New file.
1250         * modules/unictype/ctype-upper: New file.
1251         * modules/unictype/ctype-xdigit: New file.
1252         * modules/unictype/ctype-blank: New file.
1253         * lib/unictype/bidi_byname.c: New file.
1254         * lib/unictype/bidi_name.c: New file.
1255         * lib/unictype/bidi_of.c: New file.
1256         * lib/unictype/bidi_test.c: New file.
1257         * lib/unictype/bitmap.h: New file.
1258         * lib/unictype/block_test.c: New file.
1259         * lib/unictype/blocks.c: New file.
1260         * lib/unictype/categ_C.c: New file.
1261         * lib/unictype/categ_Cc.c: New file.
1262         * lib/unictype/categ_Cf.c: New file.
1263         * lib/unictype/categ_Cn.c: New file.
1264         * lib/unictype/categ_Co.c: New file.
1265         * lib/unictype/categ_Cs.c: New file.
1266         * lib/unictype/categ_L.c: New file.
1267         * lib/unictype/categ_Ll.c: New file.
1268         * lib/unictype/categ_Lm.c: New file.
1269         * lib/unictype/categ_Lo.c: New file.
1270         * lib/unictype/categ_Lt.c: New file.
1271         * lib/unictype/categ_Lu.c: New file.
1272         * lib/unictype/categ_M.c: New file.
1273         * lib/unictype/categ_Mc.c: New file.
1274         * lib/unictype/categ_Me.c: New file.
1275         * lib/unictype/categ_Mn.c: New file.
1276         * lib/unictype/categ_N.c: New file.
1277         * lib/unictype/categ_Nd.c: New file.
1278         * lib/unictype/categ_Nl.c: New file.
1279         * lib/unictype/categ_No.c: New file.
1280         * lib/unictype/categ_P.c: New file.
1281         * lib/unictype/categ_Pc.c: New file.
1282         * lib/unictype/categ_Pd.c: New file.
1283         * lib/unictype/categ_Pe.c: New file.
1284         * lib/unictype/categ_Pf.c: New file.
1285         * lib/unictype/categ_Pi.c: New file.
1286         * lib/unictype/categ_Po.c: New file.
1287         * lib/unictype/categ_Ps.c: New file.
1288         * lib/unictype/categ_S.c: New file.
1289         * lib/unictype/categ_Sc.c: New file.
1290         * lib/unictype/categ_Sk.c: New file.
1291         * lib/unictype/categ_Sm.c: New file.
1292         * lib/unictype/categ_So.c: New file.
1293         * lib/unictype/categ_Z.c: New file.
1294         * lib/unictype/categ_Zl.c: New file.
1295         * lib/unictype/categ_Zp.c: New file.
1296         * lib/unictype/categ_Zs.c: New file.
1297         * lib/unictype/categ_and.c: New file.
1298         * lib/unictype/categ_and_not.c: New file.
1299         * lib/unictype/categ_byname.c: New file.
1300         * lib/unictype/categ_name.c: New file.
1301         * lib/unictype/categ_none.c: New file.
1302         * lib/unictype/categ_of.c: New file.
1303         * lib/unictype/categ_or.c: New file.
1304         * lib/unictype/categ_test.c: New file.
1305         * lib/unictype/combining.c: New file.
1306         * lib/unictype/ctype_alnum.c: New file.
1307         * lib/unictype/ctype_alpha.c: New file.
1308         * lib/unictype/ctype_blank.c: New file.
1309         * lib/unictype/ctype_cntrl.c: New file.
1310         * lib/unictype/ctype_digit.c: New file.
1311         * lib/unictype/ctype_graph.c: New file.
1312         * lib/unictype/ctype_lower.c: New file.
1313         * lib/unictype/ctype_print.c: New file.
1314         * lib/unictype/ctype_punct.c: New file.
1315         * lib/unictype/ctype_space.c: New file.
1316         * lib/unictype/ctype_upper.c: New file.
1317         * lib/unictype/ctype_xdigit.c: New file.
1318         * lib/unictype/decdigit.c: New file.
1319         * lib/unictype/digit.c: New file.
1320         * lib/unictype/identsyntaxmap.h: New file.
1321         * lib/unictype/mirror.c: New file.
1322         * lib/unictype/numeric.c: New file.
1323         * lib/unictype/pr_alphabetic.c: New file.
1324         * lib/unictype/pr_ascii_hex_digit.c: New file.
1325         * lib/unictype/pr_bidi_arabic_digit.c: New file.
1326         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
1327         * lib/unictype/pr_bidi_block_separator.c: New file.
1328         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
1329         * lib/unictype/pr_bidi_common_separator.c: New file.
1330         * lib/unictype/pr_bidi_control.c: New file.
1331         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
1332         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
1333         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
1334         * lib/unictype/pr_bidi_european_digit.c: New file.
1335         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
1336         * lib/unictype/pr_bidi_left_to_right.c: New file.
1337         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
1338         * lib/unictype/pr_bidi_other_neutral.c: New file.
1339         * lib/unictype/pr_bidi_pdf.c: New file.
1340         * lib/unictype/pr_bidi_segment_separator.c: New file.
1341         * lib/unictype/pr_bidi_whitespace.c: New file.
1342         * lib/unictype/pr_byname.c: New file.
1343         * lib/unictype/pr_byname.gperf: New file.
1344         * lib/unictype/pr_combining.c: New file.
1345         * lib/unictype/pr_composite.c: New file.
1346         * lib/unictype/pr_currency_symbol.c: New file.
1347         * lib/unictype/pr_dash.c: New file.
1348         * lib/unictype/pr_decimal_digit.c: New file.
1349         * lib/unictype/pr_default_ignorable_code_point.c: New file.
1350         * lib/unictype/pr_deprecated.c: New file.
1351         * lib/unictype/pr_diacritic.c: New file.
1352         * lib/unictype/pr_extender.c: New file.
1353         * lib/unictype/pr_format_control.c: New file.
1354         * lib/unictype/pr_grapheme_base.c: New file.
1355         * lib/unictype/pr_grapheme_extend.c: New file.
1356         * lib/unictype/pr_grapheme_link.c: New file.
1357         * lib/unictype/pr_hex_digit.c: New file.
1358         * lib/unictype/pr_hyphen.c: New file.
1359         * lib/unictype/pr_id_continue.c: New file.
1360         * lib/unictype/pr_id_start.c: New file.
1361         * lib/unictype/pr_ideographic.c: New file.
1362         * lib/unictype/pr_ids_binary_operator.c: New file.
1363         * lib/unictype/pr_ids_trinary_operator.c: New file.
1364         * lib/unictype/pr_ignorable_control.c: New file.
1365         * lib/unictype/pr_iso_control.c: New file.
1366         * lib/unictype/pr_join_control.c: New file.
1367         * lib/unictype/pr_left_of_pair.c: New file.
1368         * lib/unictype/pr_line_separator.c: New file.
1369         * lib/unictype/pr_logical_order_exception.c: New file.
1370         * lib/unictype/pr_lowercase.c: New file.
1371         * lib/unictype/pr_math.c: New file.
1372         * lib/unictype/pr_non_break.c: New file.
1373         * lib/unictype/pr_not_a_character.c: New file.
1374         * lib/unictype/pr_numeric.c: New file.
1375         * lib/unictype/pr_other_alphabetic.c: New file.
1376         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
1377         * lib/unictype/pr_other_grapheme_extend.c: New file.
1378         * lib/unictype/pr_other_id_continue.c: New file.
1379         * lib/unictype/pr_other_id_start.c: New file.
1380         * lib/unictype/pr_other_lowercase.c: New file.
1381         * lib/unictype/pr_other_math.c: New file.
1382         * lib/unictype/pr_other_uppercase.c: New file.
1383         * lib/unictype/pr_paired_punctuation.c: New file.
1384         * lib/unictype/pr_paragraph_separator.c: New file.
1385         * lib/unictype/pr_pattern_syntax.c: New file.
1386         * lib/unictype/pr_pattern_white_space.c: New file.
1387         * lib/unictype/pr_private_use.c: New file.
1388         * lib/unictype/pr_punctuation.c: New file.
1389         * lib/unictype/pr_quotation_mark.c: New file.
1390         * lib/unictype/pr_radical.c: New file.
1391         * lib/unictype/pr_sentence_terminal.c: New file.
1392         * lib/unictype/pr_soft_dotted.c: New file.
1393         * lib/unictype/pr_space.c: New file.
1394         * lib/unictype/pr_terminal_punctuation.c: New file.
1395         * lib/unictype/pr_test.c: New file.
1396         * lib/unictype/pr_titlecase.c: New file.
1397         * lib/unictype/pr_unassigned_code_value.c: New file.
1398         * lib/unictype/pr_unified_ideograph.c: New file.
1399         * lib/unictype/pr_uppercase.c: New file.
1400         * lib/unictype/pr_variation_selector.c: New file.
1401         * lib/unictype/pr_white_space.c: New file.
1402         * lib/unictype/pr_xid_continue.c: New file.
1403         * lib/unictype/pr_xid_start.c: New file.
1404         * lib/unictype/pr_zero_width.c: New file.
1405         * lib/unictype/scripts.c: New file.
1406         * lib/unictype/sy_c_ident.c: New file.
1407         * lib/unictype/sy_c_whitespace.c: New file.
1408         * lib/unictype/sy_java_ident.c: New file.
1409         * lib/unictype/sy_java_whitespace.c: New file.
1410
1411         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
1412         Unicode 5.0.0.
1413         * lib/unictype/blocks.h: Likewise.
1414         * lib/unictype/categ_C.h: Likewise.
1415         * lib/unictype/categ_Cc.h: Likewise.
1416         * lib/unictype/categ_Cf.h: Likewise.
1417         * lib/unictype/categ_Cn.h: Likewise.
1418         * lib/unictype/categ_Co.h: Likewise.
1419         * lib/unictype/categ_Cs.h: Likewise.
1420         * lib/unictype/categ_L.h: Likewise.
1421         * lib/unictype/categ_Ll.h: Likewise.
1422         * lib/unictype/categ_Lm.h: Likewise.
1423         * lib/unictype/categ_Lo.h: Likewise.
1424         * lib/unictype/categ_Lt.h: Likewise.
1425         * lib/unictype/categ_Lu.h: Likewise.
1426         * lib/unictype/categ_M.h: Likewise.
1427         * lib/unictype/categ_Mc.h: Likewise.
1428         * lib/unictype/categ_Me.h: Likewise.
1429         * lib/unictype/categ_Mn.h: Likewise.
1430         * lib/unictype/categ_N.h: Likewise.
1431         * lib/unictype/categ_Nd.h: Likewise.
1432         * lib/unictype/categ_Nl.h: Likewise.
1433         * lib/unictype/categ_No.h: Likewise.
1434         * lib/unictype/categ_P.h: Likewise.
1435         * lib/unictype/categ_Pc.h: Likewise.
1436         * lib/unictype/categ_Pd.h: Likewise.
1437         * lib/unictype/categ_Pe.h: Likewise.
1438         * lib/unictype/categ_Pf.h: Likewise.
1439         * lib/unictype/categ_Pi.h: Likewise.
1440         * lib/unictype/categ_Po.h: Likewise.
1441         * lib/unictype/categ_Ps.h: Likewise.
1442         * lib/unictype/categ_S.h: Likewise.
1443         * lib/unictype/categ_Sc.h: Likewise.
1444         * lib/unictype/categ_Sk.h: Likewise.
1445         * lib/unictype/categ_Sm.h: Likewise.
1446         * lib/unictype/categ_So.h: Likewise.
1447         * lib/unictype/categ_Z.h: Likewise.
1448         * lib/unictype/categ_Zl.h: Likewise.
1449         * lib/unictype/categ_Zp.h: Likewise.
1450         * lib/unictype/categ_Zs.h: Likewise.
1451         * lib/unictype/categ_of.h: Likewise.
1452         * lib/unictype/combining.h: Likewise.
1453         * lib/unictype/ctype_alnum.h: Likewise.
1454         * lib/unictype/ctype_alpha.h: Likewise.
1455         * lib/unictype/ctype_blank.h: Likewise.
1456         * lib/unictype/ctype_cntrl.h: Likewise.
1457         * lib/unictype/ctype_digit.h: Likewise.
1458         * lib/unictype/ctype_graph.h: Likewise.
1459         * lib/unictype/ctype_lower.h: Likewise.
1460         * lib/unictype/ctype_print.h: Likewise.
1461         * lib/unictype/ctype_punct.h: Likewise.
1462         * lib/unictype/ctype_space.h: Likewise.
1463         * lib/unictype/ctype_upper.h: Likewise.
1464         * lib/unictype/ctype_xdigit.h: Likewise.
1465         * lib/unictype/decdigit.h: Likewise.
1466         * lib/unictype/digit.h: Likewise.
1467         * lib/unictype/mirror.h: Likewise.
1468         * lib/unictype/numeric.h: Likewise.
1469         * lib/unictype/pr_alphabetic.h: Likewise.
1470         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
1471         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
1472         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
1473         * lib/unictype/pr_bidi_block_separator.h: Likewise.
1474         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
1475         * lib/unictype/pr_bidi_common_separator.h: Likewise.
1476         * lib/unictype/pr_bidi_control.h: Likewise.
1477         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
1478         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
1479         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
1480         * lib/unictype/pr_bidi_european_digit.h: Likewise.
1481         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
1482         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
1483         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
1484         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
1485         * lib/unictype/pr_bidi_pdf.h: Likewise.
1486         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
1487         * lib/unictype/pr_bidi_whitespace.h: Likewise.
1488         * lib/unictype/pr_combining.h: Likewise.
1489         * lib/unictype/pr_composite.h: Likewise.
1490         * lib/unictype/pr_currency_symbol.h: Likewise.
1491         * lib/unictype/pr_dash.h: Likewise.
1492         * lib/unictype/pr_decimal_digit.h: Likewise.
1493         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
1494         * lib/unictype/pr_deprecated.h: Likewise.
1495         * lib/unictype/pr_diacritic.h: Likewise.
1496         * lib/unictype/pr_extender.h: Likewise.
1497         * lib/unictype/pr_format_control.h: Likewise.
1498         * lib/unictype/pr_grapheme_base.h: Likewise.
1499         * lib/unictype/pr_grapheme_extend.h: Likewise.
1500         * lib/unictype/pr_grapheme_link.h: Likewise.
1501         * lib/unictype/pr_hex_digit.h: Likewise.
1502         * lib/unictype/pr_hyphen.h: Likewise.
1503         * lib/unictype/pr_id_continue.h: Likewise.
1504         * lib/unictype/pr_id_start.h: Likewise.
1505         * lib/unictype/pr_ideographic.h: Likewise.
1506         * lib/unictype/pr_ids_binary_operator.h: Likewise.
1507         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
1508         * lib/unictype/pr_ignorable_control.h: Likewise.
1509         * lib/unictype/pr_iso_control.h: Likewise.
1510         * lib/unictype/pr_join_control.h: Likewise.
1511         * lib/unictype/pr_left_of_pair.h: Likewise.
1512         * lib/unictype/pr_line_separator.h: Likewise.
1513         * lib/unictype/pr_logical_order_exception.h: Likewise.
1514         * lib/unictype/pr_lowercase.h: Likewise.
1515         * lib/unictype/pr_math.h: Likewise.
1516         * lib/unictype/pr_non_break.h: Likewise.
1517         * lib/unictype/pr_not_a_character.h: Likewise.
1518         * lib/unictype/pr_numeric.h: Likewise.
1519         * lib/unictype/pr_other_alphabetic.h: Likewise.
1520         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
1521         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
1522         * lib/unictype/pr_other_id_continue.h: Likewise.
1523         * lib/unictype/pr_other_id_start.h: Likewise.
1524         * lib/unictype/pr_other_lowercase.h: Likewise.
1525         * lib/unictype/pr_other_math.h: Likewise.
1526         * lib/unictype/pr_other_uppercase.h: Likewise.
1527         * lib/unictype/pr_paired_punctuation.h: Likewise.
1528         * lib/unictype/pr_paragraph_separator.h: Likewise.
1529         * lib/unictype/pr_pattern_syntax.h: Likewise.
1530         * lib/unictype/pr_pattern_white_space.h: Likewise.
1531         * lib/unictype/pr_private_use.h: Likewise.
1532         * lib/unictype/pr_punctuation.h: Likewise.
1533         * lib/unictype/pr_quotation_mark.h: Likewise.
1534         * lib/unictype/pr_radical.h: Likewise.
1535         * lib/unictype/pr_sentence_terminal.h: Likewise.
1536         * lib/unictype/pr_soft_dotted.h: Likewise.
1537         * lib/unictype/pr_space.h: Likewise.
1538         * lib/unictype/pr_terminal_punctuation.h: Likewise.
1539         * lib/unictype/pr_titlecase.h: Likewise.
1540         * lib/unictype/pr_unassigned_code_value.h: Likewise.
1541         * lib/unictype/pr_unified_ideograph.h: Likewise.
1542         * lib/unictype/pr_uppercase.h: Likewise.
1543         * lib/unictype/pr_variation_selector.h: Likewise.
1544         * lib/unictype/pr_white_space.h: Likewise.
1545         * lib/unictype/pr_xid_continue.h: Likewise.
1546         * lib/unictype/pr_xid_start.h: Likewise.
1547         * lib/unictype/pr_zero_width.h: Likewise.
1548         * lib/unictype/scripts.h: Likewise.
1549         * lib/unictype/scripts_byname.gperf: Likewise.
1550         * lib/unictype/sy_c_ident.h: Likewise.
1551         * lib/unictype/sy_c_whitespace.h: Likewise.
1552         * lib/unictype/sy_java_ident.h: Likewise.
1553         * lib/unictype/sy_java_whitespace.h: Likewise.
1554
1555         * lib/unictype/Makefile: New file.
1556         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
1557         glibc.
1558         * lib/unictype/3level.h: New file, copied from glibc.
1559         * lib/unictype/3levelbit.h: New file.
1560
1561 2007-11-11  Bruno Haible  <bruno@clisp.org>
1562
1563         * modules/gperf: New file.
1564         * modules/iconv_open (Depends-on): Add it.
1565         (Makefile.am): Remove the GPERF definition.
1566
1567 2007-11-11  Bruno Haible  <bruno@clisp.org>
1568
1569         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
1570         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
1571
1572 2007-11-11  Bruno Haible  <bruno@clisp.org>
1573
1574         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
1575         (usage): Remove function.
1576
1577 2007-11-11  Bruno Haible  <bruno@clisp.org>
1578
1579         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
1580         gl_FUNC_CEILF_LIBS.
1581         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
1582         gl_FUNC_CEIL_LIBS.
1583         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
1584         gl_FUNC_CEILL_LIBS.
1585         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
1586         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
1587         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
1588
1589 2007-11-11  Bruno Haible  <bruno@clisp.org>
1590
1591         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
1592         roundf were declared but do not exist on functions.
1593         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
1594         roundl were declared but do not exist on functions.
1595         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
1596         HAVE_FLOORL_AND_CEILL, respectively.
1597         Needed for Sun C on Solaris 10.
1598
1599 2007-11-11  Bruno Haible  <bruno@clisp.org>
1600
1601         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
1602         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
1603         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
1604         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
1605         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
1606         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
1607         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
1608         HAVE_DECL_ROUNDF.
1609         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
1610         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
1611         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
1612         of HAVE_DECL_ROUND*.
1613         * modules/math (Makefile.am): Update.
1614
1615 2007-11-10  Bruno Haible  <bruno@clisp.org>
1616
1617         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
1618         ptrdiff_t as m4/intl.m4.
1619
1620 2007-11-10  Jim Meyering  <meyering@redhat.com>
1621
1622         Avoid link failure for the argmatch test.
1623         * tests/test-argmatch.c (usage): Define function to avoid a link
1624         failure: argmatch_die requires a usage function.
1625
1626 2007-11-09  Bruno Haible  <bruno@clisp.org>
1627
1628         * doc/functions/snprintf.texi: Mention BeOS deficiency.
1629         * doc/functions/vsnprintf.texi: Likewise.
1630         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
1631         with a size argument < 2.
1632
1633 2007-11-09  Bruno Haible  <bruno@clisp.org>
1634
1635         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
1636         buffer. Fixes an inefficiency introduced on 2007-11-03.
1637
1638 2007-11-09  Bruno Haible  <bruno@clisp.org>
1639
1640         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
1641         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
1642
1643 2007-11-08  Jim Meyering  <meyering@redhat.com>
1644
1645         Change cache variable name prefix "jm_" to "gl_" everywhere.
1646         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
1647         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
1648         * m4/uptime.m4: s/gl_/jm_/
1649
1650 2007-11-07  Bruno Haible  <bruno@clisp.org>
1651
1652         Update to GNU gettext 0.17.
1653         * m4/intl.m4: Update to GNU gettext 0.17.
1654         * m4/po.m4: Likewise.
1655         * modules/gettext (Files): Remove m4/ulonglong.m4.
1656         (configure.ac): Require gettext infrastructure from version 0.17.
1657
1658 2007-11-06  Bruno Haible  <bruno@clisp.org>
1659
1660         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
1661         symbolic values are not defined in a public header.
1662         * lib/freadable.c (freadable) [QNX]: Likewise.
1663         * lib/freadahead.c (freadahead) [QNX]: Likewise.
1664         * lib/freading.c (freading) [QNX]: Likewise.
1665         * lib/fseterr.c (fseterr) [QNX]: Likewise.
1666         * lib/fwritable.c (fwritable) [QNX]: Likewise.
1667         * lib/fwriting.c (fwriting) [QNX]: Likewise.
1668         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
1669         Reported by Alain Magloire.
1670
1671         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
1672
1673 2007-11-05  Bruno Haible  <bruno@clisp.org>
1674
1675         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
1676         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
1677         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
1678         Reported by Eric Blake.
1679
1680 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1681             Bruno Haible  <bruno@clisp.org>
1682
1683         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
1684         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
1685         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
1686         (malloc): Undefine also before including <stdlib.h>.
1687         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
1688         Needed on OSF/1 4.0.
1689
1690 2007-11-05  Jim Meyering  <meyering@redhat.com>
1691
1692         git-version-gen: sync from coreutils.
1693         * build-aux/git-version-gen: Add comments.
1694         Change the first '-' to '.' in the snapshot version string,
1695         e.g., 6.9-377-08144 -> 6.9.377-08144
1696         Remove first parameter.
1697         Don't declare a version "-dirty" merely because a time
1698         stamp has changed.
1699
1700 2007-11-04  Bruno Haible  <bruno@clisp.org>
1701
1702         * lib/lock.h: Protect all macro definitions containing an 'if'
1703         statement through a "do { ... } while (0)".
1704         * lib/tls.h: Likewise.
1705
1706 2007-11-04  Bruno Haible  <bruno@clisp.org>
1707
1708         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
1709
1710 2007-11-04  Bruno Haible  <bruno@clisp.org>
1711
1712         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
1713         * modules/fprintf-posix (Depends-on): Add nocrash.
1714         * modules/snprintf-posix (Depends-on): Likewise.
1715         * modules/sprintf-posix (Depends-on): Likewise.
1716         * modules/vasnprintf-posix (Depends-on): Likewise.
1717         * modules/vasprintf-posix (Depends-on): Likewise.
1718         * modules/vfprintf-posix (Depends-on): Likewise.
1719         * modules/vsnprintf-posix (Depends-on): Likewise.
1720         * modules/vsprintf-posix (Depends-on): Likewise.
1721         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
1722         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
1723         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
1724         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
1725         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
1726         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
1727         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
1728
1729 2007-11-04  Bruno Haible  <bruno@clisp.org>
1730
1731         * modules/nocrash: New file.
1732         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
1733         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
1734
1735 2007-11-04  Bruno Haible  <bruno@clisp.org>
1736
1737         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
1738         precision handling.
1739         * tests/test-vasprintf-posix.c (test_function): Likewise.
1740         * tests/test-snprintf-posix.h (test_function): Likewise.
1741         * tests/test-sprintf-posix.h (test_function): Likewise.
1742
1743         Fix *printf behaviour for large precisions on mingw and BeOS.
1744         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
1745         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
1746         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
1747         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
1748         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
1749         gl_PRINTF_PRECISION and test its result. Invoke
1750         gl_PREREQ_VASNPRINTF_PRECISION.
1751         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
1752         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
1753         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
1754         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
1755         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
1756         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
1757         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
1758         * doc/functions/fprintf.texi: Update.
1759         * doc/functions/printf.texi: Update.
1760         * doc/functions/snprintf.texi: Update.
1761         * doc/functions/sprintf.texi: Update.
1762         * doc/functions/vfprintf.texi: Update.
1763         * doc/functions/vprintf.texi: Update.
1764         * doc/functions/vsnprintf.texi: Update.
1765         * doc/functions/vsprintf.texi: Update.
1766
1767 2007-11-04  Bruno Haible  <bruno@clisp.org>
1768
1769         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
1770
1771 2007-11-04  Bruno Haible  <bruno@clisp.org>
1772
1773         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
1774         Reported by Sylvain Beucler <beuc@gnu.org>.
1775
1776 2007-11-03  Bruno Haible  <bruno@clisp.org>
1777
1778         * tests/test-fprintf-posix2.sh: New file.
1779         * tests/test-fprintf-posix2.c: New file.
1780         * modules/fprintf-posix-tests (Files): Add them.
1781         (TESTS): Add test-fprintf-posix2.sh.
1782         (configure.ac): Check for getrlimit and setrlimit.
1783         (check_PROGRAMS): Add test-fprintf-posix2.
1784
1785         * tests/test-printf-posix2.sh: New file.
1786         * tests/test-printf-posix2.c: New file.
1787         * modules/printf-posix-tests (Files): Add them.
1788         (TESTS): Add test-printf-posix2.sh.
1789         (configure.ac): Check for getrlimit and setrlimit.
1790         (check_PROGRAMS): Add test-printf-posix2.
1791
1792         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
1793         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
1794         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
1795         (decode_double): New function, copied from decode_long_double.
1796         (scale10_round_decimal_decoded): New function, extracted from
1797         scale10_round_decimal_long_double.
1798         (scale10_round_decimal_long_double): Use it.
1799         (scale10_round_decimal_double): New function.
1800         (floorlog10): New function.
1801         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
1802         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
1803         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
1804         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
1805         gl_PRINTF_ENOMEM and test its result. Invoke
1806         gl_PREREQ_VASNPRINTF_ENOMEM.
1807         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
1808         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
1809         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
1810         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
1811         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
1812         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
1813         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
1814         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
1815         * modules/snprintf-posix (Depends-on): Likewise.
1816         * modules/sprintf-posix (Depends-on): Likewise.
1817         * modules/vasnprintf-posix (Depends-on): Likewise.
1818         * modules/vasprintf-posix (Depends-on): Likewise.
1819         * modules/vfprintf-posix (Depends-on): Likewise.
1820         * modules/vsnprintf-posix (Depends-on): Likewise.
1821         * modules/vsprintf-posix (Depends-on): Likewise.
1822         * doc/functions/fprintf.texi: Update.
1823         * doc/functions/printf.texi: Update.
1824         * doc/functions/snprintf.texi: Update.
1825         * doc/functions/sprintf.texi: Update.
1826         * doc/functions/vfprintf.texi: Update.
1827         * doc/functions/vprintf.texi: Update.
1828         * doc/functions/vsnprintf.texi: Update.
1829         * doc/functions/vsprintf.texi: Update.
1830
1831 2007-11-03  Bruno Haible  <bruno@clisp.org>
1832
1833         * modules/frexp-nolibm-tests: New file.
1834
1835         * modules/frexp-nolibm: New file.
1836         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
1837
1838 2007-11-03  Bruno Haible  <bruno@clisp.org>
1839
1840         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
1841         value is C99 compliant.
1842         Needed for OSF/1 5.1.
1843
1844 2007-11-03  Bruno Haible  <bruno@clisp.org>
1845
1846         Fix out-of-memory handling of vasnprintf.
1847         * lib/printf-parse.c: Include <errno.h>.
1848         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
1849         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
1850         is already set.
1851
1852 2007-11-02  Eric Blake  <ebb9@byu.net>
1853
1854         Fix tests on cygwin.
1855         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
1856
1857 2007-11-01  Bruno Haible  <bruno@clisp.org>
1858
1859         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
1860         warning.
1861         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
1862         needed for POSIX compatibility.
1863
1864 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
1865
1866         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
1867         for compatibility with GNU.
1868
1869 2007-11-01  Bruno Haible  <bruno@clisp.org>
1870
1871         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
1872         (putenv): Renamed from rpl_putenv. Change argument type from
1873         'const char *' to 'char *'.
1874         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
1875         of defining putenv in config.h, just set REPLACE_PUTENV.
1876         * modules/putenv (Depends-on): Add stdlib.
1877         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
1878         (Include): Use <stdlib.h>.
1879         * lib/stdlib.in.h (putenv): New declaration.
1880         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
1881         REPLACE_PUTENV.
1882         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
1883         REPLACE_PUTENV.
1884         Needed for MacOS X 10.5.0.
1885         Reported by Peter O'Gorman <peter@pogma.com>.
1886
1887 2007-11-01  Jim Meyering  <meyering@redhat.com>
1888
1889         Treat an empty date string exactly like "0".
1890         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
1891         if the remaining date string (to be parsed) is empty, use "0".
1892         Reported by Mischa Molhoek and discussed in this thread:
1893         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
1894
1895 2007-10-31  Bruno Haible  <bruno@clisp.org>
1896
1897         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
1898         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
1899         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
1900         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
1901         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
1902         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
1903
1904 2007-10-31  Bruno Haible  <bruno@clisp.org>
1905
1906         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
1907         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
1908         (AC_TYPE_LONG_LONG_INT): Use it.
1909         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
1910         it as well.
1911         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
1912         to m4/longlong.m4.
1913         * modules/stdint (Files): Remove m4/ulonglong.m4.
1914         * modules/strtoull (Files): Use m4/longlong.m4 instead of
1915         m4/ulonglong.m4.
1916         * modules/strtoumax (Files): Likewise.
1917
1918 2007-10-30  Bruno Haible  <bruno@clisp.org>
1919
1920         * modules/xvasprintf-posix: New file.
1921         Suggested by Eric Blake.
1922
1923 2007-10-30  Bruno Haible  <bruno@clisp.org>
1924
1925         * modules/xprintf-posix-tests: New file.
1926         * tests/test-xprintf-posix.sh: New file.
1927         * tests/test-xprintf-posix.c: New file.
1928         * tests/test-xfprintf-posix.c: New file.
1929
1930         * modules/xprintf-posix: New file.
1931
1932 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1933
1934         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
1935         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
1936         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
1937
1938 2007-10-29  Bruno Haible  <bruno@clisp.org>
1939
1940         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
1941         contain the special marker '_cv_'.
1942         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
1943         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
1944         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
1945         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
1946         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
1947         Reported by Ralf Wildenhues.
1948
1949 2007-10-29  Bruno Haible  <bruno@clisp.org>
1950
1951         * gnulib-tool (func_import): When --lgpl is not specified, set
1952         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
1953         GPLv3.
1954         Reported by Simon Josefsson.
1955
1956 2007-10-28  Bruno Haible  <bruno@clisp.org>
1957
1958         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
1959         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
1960         HAVE_DECL_ISFINITE.
1961         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
1962         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
1963         HAVE_DECL_ISFINITE.
1964
1965 2007-10-28  Bruno Haible  <bruno@clisp.org>
1966
1967         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
1968         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
1969
1970 2007-10-28  Bruno Haible  <bruno@clisp.org>
1971
1972         Fix link errors with Sun C 5.0 on Solaris 10.
1973         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
1974         function is declared but not present in the compiler's libm.
1975         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
1976         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
1977         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
1978         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
1979         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
1980         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
1981         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
1982         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
1983         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
1984         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
1985         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
1986         HAVE_DECL_FLOORL.
1987
1988 2007-10-28  Bruno Haible  <bruno@clisp.org>
1989
1990         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
1991         gl_FUNC_FLOORL. Cache the result.
1992         (gl_FUNC_FLOORL): Use it.
1993         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
1994         gl_FUNC_CEILL. Cache the result.
1995         (gl_FUNC_CEILL): Use it.
1996
1997         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
1998         gl_FUNC_FLOOR. Cache the result.
1999         (gl_FUNC_FLOOR): Use it.
2000         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
2001         gl_FUNC_CEIL. Cache the result.
2002         (gl_FUNC_CEIL): Use it.
2003
2004         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
2005         gl_FUNC_FLOORF. Cache the result.
2006         (gl_FUNC_FLOORF): Use it.
2007         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
2008         gl_FUNC_CEILF. Cache the result.
2009         (gl_FUNC_CEILF): Use it.
2010
2011 2007-10-28  Bruno Haible  <bruno@clisp.org>
2012
2013         * gnulib-tool: Allow specifying the LGPL version number through
2014         --lgpl=2 or --lgpl=3.
2015         (func_usage): Document --lgpl with argument.
2016         Handle --lgpl=... arguments.
2017         (func_import): Recognize also gl_LGPL calls with an argument. When
2018         --lgpl=2 is used and the module's license is just LGPL, report an
2019         error. Set sed_transform_lib_file according to the lgpl variable. In
2020         the generated files, use --lgpl or gl_LGPL invocations with argument,
2021         if necessary.
2022         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
2023         an LGPv2+ license.
2024         * doc/gnulib-tool.texi (Modified imports): Update explanation of
2025         gl_LGPL macro.
2026
2027 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2028             Bruno Haible  <bruno@clisp.org>
2029
2030         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
2031         (u16_uctomb_aux): Likewise.
2032         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
2033         !HAVE_INLINE.
2034         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
2035
2036 2007-10-28  Bruno Haible  <bruno@clisp.org>
2037
2038         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
2039         Invoke AM_GETTEXT_OPTION if it exists.
2040         * modules/vasprintf: Likewise.
2041         * modules/verror: Likewise.
2042         * modules/xprintf: Likewise.
2043         * modules/xvasprintf: Likewise.
2044
2045 2007-10-27  Ben Pfaff  <blp@gnu.org>
2046
2047         * lib/math.in.h: Define isfinite macro and prototypes for
2048         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
2049         implementations.
2050         * m4/math_h.m4: New substitutions for isfinite module.
2051         * lib/isfinite.c: New file.
2052         * m4/isfinite.m4: New file.
2053         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
2054         * modules/isfinite: New file.
2055         * modules/isfinite-tests: New file.
2056         * tests/tests-isfinite.c: New file.
2057         * doc/functions/isfinite.texi: Mention isfinite module.
2058         * MODULES.html.sh: Mention new module.
2059
2060 2007-10-27  Ben Pfaff  <blp@gnu.org>
2061
2062         Ralf Wildenhues reported that Tru64 4.0D declares the round
2063         functions but does not have definitions.
2064         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
2065         cannot be found in any library, set the output variable to
2066         "missing" instead of "".
2067         * m4/round.m4: Also use our substitute if we cannot find round in
2068         any library, even if it is declared.
2069         * m4/roundf.m4: Likewise for roundf.
2070         * m4/roundl.m4: Likewise for roundl.
2071         * lib/math.in.h: Undefine roundf, round, roundl before defining
2072         their replacements, to allow for hypothetical systems where these
2073         may be defined as macros but not available in libraries.
2074
2075 2007-10-27  Bruno Haible  <bruno@clisp.org>
2076
2077         * doc/gnulib.texi: Invoke @firstparagraphindent.
2078         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
2079         changes in gnulib.
2080         (Source changes): New section.
2081
2082 2007-10-26  Bruno Haible  <bruno@clisp.org>
2083
2084         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
2085         borrowed from autoconf.
2086
2087 2007-10-26  Bruno Haible  <bruno@clisp.org>
2088
2089         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
2090         strerror returned the empty string. Needed on HP-UX 11.00.
2091
2092 2007-10-24  Micah Cowan  <micah@cowan.name>
2093
2094         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
2095         * build-aux/bootstrap: Remove support for now-unnecessary option,
2096         --cvs-user, and envvars CVS_USER, CVS_RSH.
2097
2098 2007-10-24  Jim Meyering  <meyering@redhat.com>
2099
2100         Avoid diagnostics from sha1sum when there is no cached checksum.
2101         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
2102         if the po.s1 file hasn't been created yet.
2103
2104         * build-aux/bootstrap: Sync from coreutils:
2105         2007-10-24  Jim Meyering  <meyering@redhat.com>
2106         Get gnulib from the git repository, not from an obsolete cvs one.
2107         * build-aux/bootstrap: Suggestion from Micah Cowan.
2108         2007-10-04  Jim Meyering  <jim@meyering.net>
2109         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
2110         (update_po_files): Work also when there are no .po files in po/.
2111
2112 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
2113
2114         * README: Append ".git" to git and cg examples.
2115         Problem reported by Benoit Sigoure.
2116
2117 2007-10-23  Micah Cowan  <micah@cowan.name>
2118
2119         * users.txt: Add wget.
2120
2121 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2122
2123         Fix linking of some unistdio tests on FreeBSD.
2124         * modules/unistdio/u16-vsnprintf-tests
2125         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
2126         * modules/unistdio/u16-vsprintf-tests
2127         (test_u16_vsnprintf1_LDADD): Likewise.
2128         * modules/unistdio/u32-vsnprintf-tests
2129         (test_u32_vsnprintf1_LDADD): Likewise.
2130         * modules/unistdio/u32-vsprintf-tests
2131         (test_u32_vsprintf1_LDADD): Likewise.
2132         * modules/unistdio/u8-vsnprintf-tests
2133         (test_u8_vsnprintf1_LDADD): Likewise.
2134         * modules/unistdio/u8-vsprintf-tests
2135         (test_u8_vsprintf1_LDADD): Likewise.
2136         * modules/unistdio/ulc-vsnprintf-tests
2137         (test_ulc_vsnprintf1_LDADD): Likewise.
2138         * modules/unistdio/ulc-vsprintf-tests
2139         (test_ulc_vsprintf1_LDADD): Likewise.
2140
2141         Fix linking of some uniconv tests on FreeBSD.
2142         * modules/uniconv/u16-conv-from-enc-tests
2143         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
2144         * modules/uniconv/u16-conv-to-enc-tests
2145         (test_u16_conv_to_enc_LDADD): Likewise.
2146         * modules/uniconv/u16-strconv-from-enc-tests
2147         (test_u16_strconv_from_enc_LDADD): Likewise.
2148         * modules/uniconv/u16-strconv-to-enc-tests
2149         (test_u16_strconv_to_enc_LDADD): Likewise.
2150         * modules/uniconv/u32-conv-from-enc-tests
2151         (test_u32_conv_from_enc_LDADD): Likewise.
2152         * modules/uniconv/u32-conv-to-enc-tests
2153         (test_u32_conv_to_enc_LDADD): Likewise.
2154         * modules/uniconv/u32-strconv-from-enc-tests
2155         (test_u32_strconv_from_enc_LDADD): Likewise.
2156         * modules/uniconv/u32-strconv-to-enc-tests
2157         (test_u32_strconv_to_enc_LDADD): Likewise.
2158         * modules/uniconv/u8-conv-from-enc-tests
2159         (test_u8_conv_from_enc_LDADD): Likewise.
2160         * modules/uniconv/u8-conv-to-enc-tests
2161         (test_u8_conv_to_enc_LDADD): Likewise.
2162         * modules/uniconv/u8-strconv-from-enc-tests
2163         (test_u8_strconv_from_enc_LDADD): Likewise.
2164         * modules/uniconv/u8-strconv-to-enc-tests
2165         (test_u8_strconv_to_enc_LDADD): Likewise.
2166
2167 2007-10-22  Bruno Haible  <bruno@clisp.org>
2168
2169         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
2170         size.
2171
2172 2007-10-22  Eric Blake  <ebb9@byu.net>
2173
2174         Tweak x*printf documentation.
2175         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
2176         variable name and comments.
2177         Suggested by Bruno Haible.
2178
2179 2007-10-22  Bruno Haible  <bruno@clisp.org>
2180
2181         * lib/acl.c (copy_acl): Fix file name in comment.
2182
2183 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
2184
2185         Fix Tru64 problem with stdbool.h.
2186         * lib/stdbool.in.h (false, true):
2187         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
2188         Don't declare as an enum in this situation; it runs afoul of Tru64.
2189         Problem reported by Steven M. Schweda in
2190         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
2191
2192 2007-10-22  Eric Blake  <ebb9@byu.net>
2193
2194         Also wrap vf?printf.
2195         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
2196         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
2197         (xvprintf, xvfprintf): New functions.
2198
2199 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2200
2201         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
2202         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
2203
2204         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
2205         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
2206
2207 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
2208
2209         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
2210         by Bruno Haible.
2211
2212 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2213
2214         * lib/getloadavg.c
2215         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
2216         Undef `sys' after including sys/table.h, for Tru64 4.0D.
2217
2218         * tests/test-i-ring.c: Work for C89.
2219
2220 2007-10-22  Bruno Haible  <bruno@clisp.org>
2221
2222         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
2223         -1u, in preprocessor expression, so that we don't test for the bug
2224         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
2225         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
2226
2227 2007-10-22  Eric Blake  <ebb9@byu.net>
2228
2229         * tests/test-yesno.sh: Silence stderr during test.
2230
2231 2007-10-22  Simon Josefsson  <simon@josefsson.org>
2232
2233         * modules/crypto/gc-camellia: New file.
2234
2235         * m4/gc-camellia.m4: New file.
2236
2237         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
2238
2239         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
2240
2241 2007-10-22  Simon Josefsson  <simon@josefsson.org>
2242
2243         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
2244         --help to stdout.  Reported by sms@antinode.org (Steven
2245         M. Schweda).
2246
2247 2007-10-22  Simon Josefsson  <simon@josefsson.org>
2248
2249         * users.txt: Fix link to libksba.
2250
2251 2007-10-21  Ben Pfaff  <blp@gnu.org>
2252
2253         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
2254         round.c roundf implementation that depends on floorf and ceilf to
2255         be tested unconditionally.
2256
2257 2007-10-21  Ben Pfaff  <blp@gnu.org>
2258
2259         * m4/check-libm-func.m4: Removed.
2260         * m4/check-math-lib.m4: New file.
2261         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
2262         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
2263         definition and lack of AC_LIBOBJ([roundf]).
2264         * m4/roundl.m4: Ditto, and similarly for roundl.
2265         * modules/round: Reference new m4 file.
2266         * modules/roundf: Ditto.
2267         * modules/roundl: Ditto.
2268         * tests/test-round2.c (main): Use ROUND instead of round.
2269         Bug report from Bruno Haible.
2270
2271 2007-10-21  Bruno Haible  <bruno@clisp.org>
2272
2273         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
2274         context.
2275
2276 2007-10-21  Bruno Haible  <bruno@clisp.org>
2277
2278         * tests/test-wcwidth.c (main): Allow negative result for some control
2279         characters.
2280
2281         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
2282         Needed on OSF/1 5.1.
2283
2284 2007-10-21  Bruno Haible  <bruno@clisp.org>
2285
2286         * tests/test-floorf1.c: Include isnanf.h.
2287         (main): Use isnanf() instead of isnan().
2288         * tests/test-ceilf1.c: Include isnanf.h.
2289         (main): Use isnanf() instead of isnan().
2290         * tests/test-truncf1.c: Include isnanf.h.
2291         (main): Use isnanf() instead of isnan().
2292         * tests/test-roundf1.c: Include isnanf.h.
2293         (main): Use isnanf() instead of isnan().
2294
2295 2007-10-21  Eric Blake  <ebb9@byu.net>
2296
2297         * users.txt: Update URL for m4.
2298
2299 2007-10-21  Bruno Haible  <bruno@clisp.org>
2300
2301         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
2302
2303 2007-10-21  Bruno Haible  <bruno@clisp.org>
2304
2305         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
2306         Git's management files if the CVS files are not present.
2307
2308 2007-10-20  Bruno Haible  <bruno@clisp.org>
2309
2310         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
2311         gcc-3.4.x.
2312
2313 2007-10-20  Ben Pfaff  <blp@gnu.org>
2314
2315         * lib/math.in.h: Declare round, roundf, roundl if we are providing
2316         implementations.
2317         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
2318         * lib/round.c: New file.
2319         * lib/roundf.c: New file.
2320         * lib/roundl.c: New file.
2321         * m4/round.m4: New file.
2322         * m4/roundf.m4: New file.
2323         * m4/roundl.m4: New file.
2324         * m4/check-libm-func-m4: New file.
2325         * modules/math: Replace round, roundf, roundl related @VARS@ in
2326         math.in.h.
2327         * modules/round: New file.
2328         * modules/round-tests: New file.
2329         * modules/roundf: New file.
2330         * modules/roundf-tests: New file.
2331         * modules/roundl: New file.
2332         * modules/roundl-tests: New file.
2333         * tests/test-round1.c: New file.
2334         * tests/test-round2.c: New file.
2335         * tests/test-roundf1.c: New file.
2336         * tests/test-roundf2.c: New file.
2337         * tests/test-roundl.c: New file.
2338         * doc/functions/round.texi: Mention round module.
2339         * doc/functions/roundf.texi: Mention roundf module.
2340         * doc/functions/roundl.texi: Mention roundl module.
2341         * MODULES.html.sh: Mention new modules.
2342         Thanks to Bruno Haible for suggestions.
2343
2344 2007-10-20  Jim Meyering  <meyering@redhat.com>
2345
2346         * lib/xprintf.c: Include <config.h> unconditionally.
2347
2348         Change xprintf's license to GPL.
2349         * modules/xprintf (License): s/LGPL/GPL/, since this module
2350         depends on modules (exit and exitfail) which are GPL.
2351         Suggestion from Bruno Haible.
2352
2353         xprintf fixes.
2354         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
2355         Use a clearer diagnostic.
2356         Patch from Bruno Haible.
2357
2358 2007-10-20  Bruno Haible  <bruno@clisp.org>
2359
2360         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
2361         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
2362         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2363
2364 2007-10-20  Bruno Haible  <bruno@clisp.org>
2365
2366         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
2367         precision in the comparison result > x - 1 or similar.
2368         * tests/test-ceilf2.c (correct_result_p): Likewise.
2369         * tests/test-truncf2.c (correct_result_p): Likewise.
2370         * tests/test-trunc2.c (correct_result_p): Likewise.
2371         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2372
2373 2007-10-20  Bruno Haible  <bruno@clisp.org>
2374
2375         * modules/ceil: New file.
2376         * m4/ceil.m4: New file.
2377         * doc/functions/ceil.texi: Mention the 'ceil' module.
2378
2379 2007-10-20  Bruno Haible  <bruno@clisp.org>
2380
2381         * modules/floor: New file.
2382         * m4/floor.m4: New file.
2383         * doc/functions/floor.texi: Mention the 'floor' module.
2384
2385 2007-10-20  Bruno Haible  <bruno@clisp.org>
2386
2387         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
2388         of %a.
2389         * modules/floorf-tests (Depends-on): Likewise.
2390         * modules/truncf-tests (Depends-on): Likewise.
2391         * modules/trunc-tests (Depends-on): Likewise.
2392         Reported by Ben Pfaff.
2393
2394 2007-10-19  Jim Meyering  <meyering@redhat.com>
2395
2396         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
2397         Don't bother testing specific errno values.  Just test ferror.
2398
2399         New module: xprintf
2400         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
2401
2402 2007-10-19  Bruno Haible  <bruno@clisp.org>
2403
2404         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
2405         syntax.
2406         * modules/javaexec (Makefile.am): Likewise.
2407         * modules/relocatable-prog (Makefile.am): Likewise.
2408         Suggested by Jim Meyering.
2409
2410 2007-10-18  Bruno Haible  <bruno@clisp.org>
2411
2412         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
2413         Reported by Jim Meyering.
2414
2415 2007-10-18  Eric Blake  <ebb9@byu.net>
2416
2417         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
2418
2419 2007-10-18  Bruno Haible  <bruno@clisp.org>
2420
2421         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
2422         the format string into writable memory. Needed in Fortify conditions.
2423
2424 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
2425             Bruno Haible  <bruno@clisp.org>
2426
2427         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
2428         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
2429         * modules/trim (Depends-on): Add mbchar.
2430         (configure.ac): Add gl_FUNC_MBRTOWC.
2431         (Makefile.am): Augment lib_SOURCES.
2432
2433 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
2434
2435         Modify glob.c to use fstatat and dirfd, to simplify it.
2436         Suggested by Eric Blake.
2437         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
2438         Don't include <stdbool.h>; not used.
2439         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
2440         (link_exists_p): Simplify implementation, since we can now assume
2441         dirfd and fstatat.
2442         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
2443
2444 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2445
2446         * gnulib-tool (func_get_dependencies): Fix sed script to
2447         match only tests.
2448
2449 2007-10-17  Bruno Haible  <bruno@clisp.org>
2450
2451         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
2452         allow locale names without encoding suffix.
2453         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
2454         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
2455
2456 2007-10-16  Bruno Haible  <bruno@clisp.org>
2457
2458         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
2459         * lib/getgroups.c (getgroups): Likewise.
2460         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
2461
2462 2007-10-16  Bruno Haible  <bruno@clisp.org>
2463
2464         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
2465         * modules/malloc-posix (License): Likewise.
2466         * modules/realloc-posix (License): Likewise.
2467         * modules/calloc-posix (License): Likewise.
2468         * modules/intprops (License): Change from GPL to LGPL, with
2469         Paul Eggert's approval.
2470
2471 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
2472
2473         Merge glibc changes into lib/glob.c.
2474
2475         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
2476         2007-10-15 04:59:03 UTC.  Here are the changes:
2477
2478         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
2479
2480         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
2481
2482         * lib/glob.c: Add some branch prediction throughout.
2483
2484         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
2485
2486         [BZ #5103]
2487         * lib/glob.c (glob): Recognize patterns starting \/.
2488
2489         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
2490
2491         [BZ #3996]
2492         * lib/glob.c (attribute_hidden): Define if not defined.
2493         (glob): Unescape dirname, filename or username when needed and not
2494         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
2495         is NULL.  Handle unescaped [ in pattern without closing ].
2496         Don't pass GLOB_CHECK down to recursive glob for directories.
2497         (__glob_pattern_type): New function.
2498         (__glob_pattern_p): Implement using __glob_pattern_type.
2499         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
2500         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
2501         Remove unreachable code.
2502
2503         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
2504
2505         * lib/glob.c (glob_in_dir): Add some comments and asserts to
2506         explain why there are no leaks.
2507
2508         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
2509
2510         [BZ #3253]
2511         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
2512         time, rather allocate increasingly bigger arrays of pointers, if
2513         possible with alloca, if too large with malloc.
2514
2515 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
2516
2517         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
2518         Problem reported by H.Merijn Brand in
2519         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
2520         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
2521         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
2522
2523 2007-10-15  Bruno Haible  <bruno@clisp.org>
2524
2525         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
2526         with explicit rpl_ prefix.
2527         * lib/fopen.c (fopen): Likewise.
2528         * lib/freopen.c (freopen): Likewise.
2529         * lib/iconv.c (iconv): Likewise.
2530         * lib/iconv_close.c (iconv_close): Likewise.
2531
2532 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2533
2534         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
2535
2536 2007-10-15  Bruno Haible  <bruno@clisp.org>
2537
2538         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
2539         <stddef.h> instead of <stdlib.h> since we only need NULL.
2540         Reported by Ben Pfaff <blp@cs.stanford.edu>.
2541
2542 2007-10-15  Bruno Haible  <bruno@clisp.org>
2543
2544         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
2545         Replace paragraph talking about LIBOBJS.
2546         Reported by Colin Watson <cjwatson@debian.org>.
2547
2548 2007-10-15  Bruno Haible  <bruno@clisp.org>
2549
2550         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
2551         <stdlib.h> before using NULL.
2552
2553 2007-10-15  Simon Josefsson  <simon@josefsson.org>
2554
2555         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
2556         Reported by Albert Chin <china@thewrittenword.com>.
2557
2558 2007-10-14  Bruno Haible  <bruno@clisp.org>
2559
2560         * modules/iconv_open-utf-tests: New file.
2561         * tests/test-iconv-utf.c: New file.
2562
2563         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
2564         * modules/iconv_open-utf: New file.
2565         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
2566         (iconv, iconv_close): New declarations.
2567         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
2568         be defined.
2569         (iconv_open): Add special handling of conversion between UTF-8 and
2570         UTF-{16,32}{BE,LE}.
2571         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
2572         * lib/iconv_close.c: New file.
2573         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
2574         gl_FUNC_ICONV_OPEN.
2575         (gl_FUNC_ICONV_OPEN): Use it.
2576         (gl_FUNC_ICONV_OPEN_UTF): New macro.
2577         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
2578         and REPLACE_ICONV_UTF.
2579         * modules/iconv_open (Depends-on): Add c-strcase.
2580         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
2581         ICONV_CONST.
2582         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
2583
2584 2007-10-13  Albert Chin  <china@thewrittenword.com>
2585             Bruno Haible  <bruno@clisp.org>
2586
2587         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
2588         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
2589
2590 2007-10-13  Bruno Haible  <bruno@clisp.org>
2591
2592         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
2593         defined, use the ISO C99 inline semantics.
2594         * lib/argp.h (ARGP_EI): Likewise.
2595
2596 2007-10-13  Bruno Haible  <bruno@clisp.org>
2597
2598         Handle 'inline' change in gcc 4.3.0.
2599         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
2600         argp_fmtstream_write, argp_fmtstream_set_lmargin,
2601         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
2602         argp_fmtstream_point): Disable 'extern' declaration if the function
2603         definition is going to be provided inline.
2604         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
2605         semantics, not the ISO C99 inline semantics.
2606         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
2607         'extern' declaration if the function definition is going to be provided
2608         inline.
2609         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
2610         the GNU C inline semantics, not the ISO C99 inline semantics. With
2611         GCC 4.2, avoid a warning.
2612
2613 2007-10-13  Bruno Haible  <bruno@clisp.org>
2614
2615         * lib/freading.h (freading): Enable the use of __freading for
2616         glibc >= 2.7.
2617         * lib/freading.c (freading): Likewise.
2618
2619 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
2620
2621         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
2622         "warning: C99 inline functions are not supported; using GNU89".
2623
2624 2007-10-12  Bruno Haible  <bruno@clisp.org>
2625
2626         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
2627         of 2.
2628         * tests/test-ceilf2.c: New file.
2629         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
2630
2631         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
2632         * modules/ceilf-tests: Update.
2633
2634 2007-10-12  Bruno Haible  <bruno@clisp.org>
2635
2636         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
2637         of 2.
2638         * tests/test-floorf2.c: New file.
2639         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
2640
2641         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
2642         * modules/floorf-tests: Update.
2643
2644 2007-10-12  Bruno Haible  <bruno@clisp.org>
2645
2646         * tests/test-trunc2.c: New file.
2647         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
2648
2649         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
2650         * modules/trunc-tests: Update.
2651
2652 2007-10-12  Bruno Haible  <bruno@clisp.org>
2653
2654         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
2655         of 2.
2656         * tests/test-truncf2.c: New file.
2657         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
2658
2659         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
2660         * modules/truncf-tests: Update.
2661
2662 2007-10-11  Eric Blake  <ebb9@byu.net>
2663
2664         Don't claim strerror is broken on Interix.
2665         * doc/functions/strerror.texi (strerror): Known broken systems are
2666         now Solaris 8, and not Interix.
2667         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
2668         Interix on cross-compile.
2669         Reported by Martin Koeppe in
2670         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
2671
2672 2007-10-11  Bruno Haible  <bruno@clisp.org>
2673
2674         * modules/i-ring-tests: New file.
2675         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
2676         instead of assert.
2677
2678 2007-10-11  Bruno Haible  <bruno@clisp.org>
2679
2680         * modules/filenamecat-tests: New file.
2681         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
2682         * lib/filenamecat.c: Remove test code.
2683
2684 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
2685
2686         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
2687
2688         * lib/strerror.c: Include <string.h> always, to test interface,
2689         and to remove the need for the dummy.
2690         Include intprops.h to compute width instead of doing it ourselves
2691         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
2692         (strerror): Define it to return NULL if there's no system strerror.
2693         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
2694         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
2695         ancient pre-strerror Unix systems well any more.  Saying "unknown
2696         system error" is enough.
2697         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
2698         simpler strerror.c implementation.
2699         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
2700         Simplify the tests to reflect the simpler strerror implementation.
2701         * modules/strerror (Depends-on): Add intprops.
2702
2703 2007-10-09  Eric Blake  <ebb9@byu.net>
2704
2705         Silence test-fpending.
2706         * modules/fpending-tests (Files): Add wrapper script.
2707         * tests/test-fpending.sh: New file.
2708
2709 2007-10-09  Bruno Haible  <bruno@clisp.org>
2710
2711         * MODULES.html.sh (func_module): Don't create a hyperlink for
2712         function names like 'printf_frexp'.
2713         (Misc): Add crc, memxor.
2714         (Characteristics of floating types): New section.
2715         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
2716         isnanf-nolibm, signbit, trunc, truncf, truncl.
2717         (Enhancements for ISO C 99 functions): New subsection Input/output.
2718         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
2719         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
2720         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
2721         (Compatibility checks for POSIX:2001 functions): Add clock-time.
2722         (Enhancements for POSIX:2001 functions): Add chdir-long.
2723         (File system functions): Add areadlink, chdir-safer, read-file.
2724         Remove cycle-check.
2725         (File system as inode set): New section.
2726         (Date and time): Add gethrxtime.
2727         (Multithreading): Add openmp.
2728         (Internationalization functions): Add localename.
2729         (Unicode string functions): Add unistr/u*-mbsnlen.
2730         (Support for maintaining and releasing projects): Add git-version-gen.
2731         (Lone files): Remove directories.
2732
2733 2007-10-08  Ben Pfaff  <blp@gnu.org>
2734
2735         * lib/xmalloca.h: Fix typo in comment.
2736
2737 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
2738
2739         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
2740         when avoiding problems with integer overflow.  Use a portable test
2741         instead.
2742
2743 2007-10-08  Simon Josefsson  <simon@josefsson.org>
2744
2745         * modules/dummy (License): Change to LGPLv2+.
2746         * modules/float (License): Likewise
2747         * modules/realloc (License): Likewise
2748         * modules/stdlib (License): Likewise
2749
2750 2007-10-07  Bruno Haible  <bruno@clisp.org>
2751
2752         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
2753         * floor.c (TWO_MANT_DIG): Likewise.
2754         * ceil.c (TWO_MANT_DIG): Likewise.
2755         Reported by Ben Pfaff.
2756
2757 2007-10-07  Bruno Haible  <bruno@clisp.org>
2758
2759         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
2760         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
2761         * lib/frexp.c (FUNC): Likewise.
2762         * lib/printf-frexp.h (printf_frexp): Likewise.
2763         * lib/printf-frexpl.h (printf_frexpl): Likewise.
2764         * lib/printf-frexp.c (FUNC): Likewise.
2765         Suggested by Jim Meyering.
2766
2767 2007-10-07  Jim Meyering  <meyering@redhat.com>
2768
2769         Make xnanosleep's integer overflow test more robust.
2770         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
2771         so that gcc-4.3.0 doesn't optimize away this test for overflow.
2772
2773 2007-10-07  Bruno Haible  <bruno@clisp.org>
2774
2775         * NEWS: Mention the license change.
2776
2777         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
2778         abbreviations in the modules files.
2779
2780         Change copyright notice from GPLv2+ to GPLv3+.
2781         * README: Change copyright notice.
2782         * MODULES.html.sh: Likewise.
2783         * build-aux/bootstrap.conf: Likewise.
2784         * build-aux/config.libpath: Likewise.
2785         * build-aux/csharpcomp.sh.in: Likewise.
2786         * build-aux/csharpexec.sh.in: Likewise.
2787         * build-aux/install-reloc: Likewise.
2788         * build-aux/javacomp.sh.in: Likewise.
2789         * build-aux/javaexec.sh.in: Likewise.
2790         * build-aux/ldd.sh.in: Likewise.
2791         * build-aux/reloc-ldflags: Likewise.
2792         * build-aux/relocatable.sh.in: Likewise.
2793         * build-aux/x-to-1.in: Likewise.
2794         * check-module: Likewise.
2795         * config/srclistvars.sh: Likewise.
2796         * gnulib-tool: Likewise.
2797         * lib/acl-internal.h: Likewise.
2798         * lib/acl.c: Likewise.
2799         * lib/acl.h: Likewise.
2800         * lib/acl_entries.c: Likewise.
2801         * lib/areadlink-with-size.c: Likewise.
2802         * lib/areadlink.c: Likewise.
2803         * lib/areadlink.h: Likewise.
2804         * lib/argmatch.c: Likewise.
2805         * lib/argmatch.h: Likewise.
2806         * lib/argp-ba.c: Likewise.
2807         * lib/argp-eexst.c: Likewise.
2808         * lib/argp-fmtstream.c: Likewise.
2809         * lib/argp-fmtstream.h: Likewise.
2810         * lib/argp-fs-xinl.c: Likewise.
2811         * lib/argp-help.c: Likewise.
2812         * lib/argp-namefrob.h: Likewise.
2813         * lib/argp-parse.c: Likewise.
2814         * lib/argp-pin.c: Likewise.
2815         * lib/argp-pv.c: Likewise.
2816         * lib/argp-pvh.c: Likewise.
2817         * lib/argp-xinl.c: Likewise.
2818         * lib/argp.h: Likewise.
2819         * lib/at-func.c: Likewise.
2820         * lib/atanl.c: Likewise.
2821         * lib/backupfile.c: Likewise.
2822         * lib/backupfile.h: Likewise.
2823         * lib/basename.c: Likewise.
2824         * lib/binary-io.h: Likewise.
2825         * lib/byteswap.in.h: Likewise.
2826         * lib/c-stack.c: Likewise.
2827         * lib/c-stack.h: Likewise.
2828         * lib/c-strcasestr.c: Likewise.
2829         * lib/c-strcasestr.h: Likewise.
2830         * lib/c-strstr.c: Likewise.
2831         * lib/c-strstr.h: Likewise.
2832         * lib/c-strtod.c: Likewise.
2833         * lib/calloc.c: Likewise.
2834         * lib/canon-host.c: Likewise.
2835         * lib/canon-host.h: Likewise.
2836         * lib/canonicalize-lgpl.c: Likewise.
2837         * lib/canonicalize.c: Likewise.
2838         * lib/canonicalize.h: Likewise.
2839         * lib/ceil.c: Likewise.
2840         * lib/ceilf.c: Likewise.
2841         * lib/ceill.c: Likewise.
2842         * lib/chdir-long.c: Likewise.
2843         * lib/chdir-long.h: Likewise.
2844         * lib/chdir-safer.c: Likewise.
2845         * lib/chdir-safer.h: Likewise.
2846         * lib/chown.c: Likewise.
2847         * lib/classpath.c: Likewise.
2848         * lib/classpath.h: Likewise.
2849         * lib/clean-temp.c: Likewise.
2850         * lib/clean-temp.h: Likewise.
2851         * lib/cloexec.c: Likewise.
2852         * lib/close-stream.c: Likewise.
2853         * lib/closein.c: Likewise.
2854         * lib/closein.h: Likewise.
2855         * lib/closeout.c: Likewise.
2856         * lib/closeout.h: Likewise.
2857         * lib/concat-filename.c: Likewise.
2858         * lib/copy-file.c: Likewise.
2859         * lib/copy-file.h: Likewise.
2860         * lib/count-one-bits.h: Likewise.
2861         * lib/crc.c: Likewise.
2862         * lib/crc.h: Likewise.
2863         * lib/creat-safer.c: Likewise.
2864         * lib/csharpcomp.c: Likewise.
2865         * lib/csharpcomp.h: Likewise.
2866         * lib/csharpexec.c: Likewise.
2867         * lib/csharpexec.h: Likewise.
2868         * lib/cycle-check.c: Likewise.
2869         * lib/cycle-check.h: Likewise.
2870         * lib/diacrit.c: Likewise.
2871         * lib/diacrit.h: Likewise.
2872         * lib/diffseq.h: Likewise.
2873         * lib/dirchownmod.c: Likewise.
2874         * lib/dirent.in.h: Likewise.
2875         * lib/dirfd.c: Likewise.
2876         * lib/dirfd.h: Likewise.
2877         * lib/dirname.c: Likewise.
2878         * lib/dirname.h: Likewise.
2879         * lib/dummy.c: Likewise.
2880         * lib/dup-safer.c: Likewise.
2881         * lib/dup2.c: Likewise.
2882         * lib/eealloc.h: Likewise.
2883         * lib/error.c: Likewise.
2884         * lib/error.h: Likewise.
2885         * lib/euidaccess.c: Likewise.
2886         * lib/exclude.c: Likewise.
2887         * lib/exclude.h: Likewise.
2888         * lib/execute.c: Likewise.
2889         * lib/execute.h: Likewise.
2890         * lib/exitfail.c: Likewise.
2891         * lib/exitfail.h: Likewise.
2892         * lib/expl.c: Likewise.
2893         * lib/fatal-signal.c: Likewise.
2894         * lib/fatal-signal.h: Likewise.
2895         * lib/fbufmode.c: Likewise.
2896         * lib/fbufmode.h: Likewise.
2897         * lib/fchdir.c: Likewise.
2898         * lib/fchmodat.c: Likewise.
2899         * lib/fchownat.c: Likewise.
2900         * lib/fcntl--.h: Likewise.
2901         * lib/fcntl-safer.h: Likewise.
2902         * lib/fcntl.in.h: Likewise.
2903         * lib/fd-safer.c: Likewise.
2904         * lib/fflush.c: Likewise.
2905         * lib/file-has-acl.c: Likewise.
2906         * lib/file-set.c: Likewise.
2907         * lib/file-type.c: Likewise.
2908         * lib/file-type.h: Likewise.
2909         * lib/fileblocks.c: Likewise.
2910         * lib/filemode.c: Likewise.
2911         * lib/filemode.h: Likewise.
2912         * lib/filename.h: Likewise.
2913         * lib/filenamecat.c: Likewise.
2914         * lib/filenamecat.h: Likewise.
2915         * lib/findprog.c: Likewise.
2916         * lib/findprog.h: Likewise.
2917         * lib/float.in.h: Likewise.
2918         * lib/floor.c: Likewise.
2919         * lib/floorf.c: Likewise.
2920         * lib/floorl.c: Likewise.
2921         * lib/fopen-safer.c: Likewise.
2922         * lib/fopen.c: Likewise.
2923         * lib/fpending.c: Likewise.
2924         * lib/fpending.h: Likewise.
2925         * lib/fprintf.c: Likewise.
2926         * lib/fprintftime.h: Likewise.
2927         * lib/fpucw.h: Likewise.
2928         * lib/fpurge.c: Likewise.
2929         * lib/fpurge.h: Likewise.
2930         * lib/freadable.c: Likewise.
2931         * lib/freadable.h: Likewise.
2932         * lib/freadahead.c: Likewise.
2933         * lib/freadahead.h: Likewise.
2934         * lib/freading.c: Likewise.
2935         * lib/freading.h: Likewise.
2936         * lib/free.c: Likewise.
2937         * lib/freopen.c: Likewise.
2938         * lib/frexp.c: Likewise.
2939         * lib/frexpl.c: Likewise.
2940         * lib/fseek.c: Likewise.
2941         * lib/fseterr.c: Likewise.
2942         * lib/fseterr.h: Likewise.
2943         * lib/fstatat.c: Likewise.
2944         * lib/fstrcmp.c: Likewise.
2945         * lib/fstrcmp.h: Likewise.
2946         * lib/fsusage.c: Likewise.
2947         * lib/fsusage.h: Likewise.
2948         * lib/ftell.c: Likewise.
2949         * lib/ftello.c: Likewise.
2950         * lib/fts-cycle.c: Likewise.
2951         * lib/fts.c: Likewise.
2952         * lib/fts_.h: Likewise.
2953         * lib/full-read.c: Likewise.
2954         * lib/full-read.h: Likewise.
2955         * lib/full-write.c: Likewise.
2956         * lib/full-write.h: Likewise.
2957         * lib/fwritable.c: Likewise.
2958         * lib/fwritable.h: Likewise.
2959         * lib/fwriteerror.c: Likewise.
2960         * lib/fwriteerror.h: Likewise.
2961         * lib/fwriting.c: Likewise.
2962         * lib/fwriting.h: Likewise.
2963         * lib/gcd.c: Likewise.
2964         * lib/gcd.h: Likewise.
2965         * lib/getcwd.c: Likewise.
2966         * lib/getdate.h: Likewise.
2967         * lib/getdate.y: Likewise.
2968         * lib/getdomainname.c: Likewise.
2969         * lib/getdomainname.h: Likewise.
2970         * lib/getgroups.c: Likewise.
2971         * lib/gethostname.c: Likewise.
2972         * lib/gethrxtime.c: Likewise.
2973         * lib/gethrxtime.h: Likewise.
2974         * lib/getloadavg.c: Likewise.
2975         * lib/getndelim2.c: Likewise.
2976         * lib/getndelim2.h: Likewise.
2977         * lib/getnline.c: Likewise.
2978         * lib/getnline.h: Likewise.
2979         * lib/getopt.c: Likewise.
2980         * lib/getopt.in.h: Likewise.
2981         * lib/getopt1.c: Likewise.
2982         * lib/getopt_int.h: Likewise.
2983         * lib/getpagesize.h: Likewise.
2984         * lib/getsubopt.c: Likewise.
2985         * lib/gettime.c: Likewise.
2986         * lib/getugroups.c: Likewise.
2987         * lib/getugroups.h: Likewise.
2988         * lib/getusershell.c: Likewise.
2989         * lib/gl_anyavltree_list1.h: Likewise.
2990         * lib/gl_anyavltree_list2.h: Likewise.
2991         * lib/gl_anyhash_list1.h: Likewise.
2992         * lib/gl_anyhash_list2.h: Likewise.
2993         * lib/gl_anylinked_list1.h: Likewise.
2994         * lib/gl_anylinked_list2.h: Likewise.
2995         * lib/gl_anyrbtree_list1.h: Likewise.
2996         * lib/gl_anyrbtree_list2.h: Likewise.
2997         * lib/gl_anytree_list1.h: Likewise.
2998         * lib/gl_anytree_list2.h: Likewise.
2999         * lib/gl_anytree_oset.h: Likewise.
3000         * lib/gl_anytreehash_list1.h: Likewise.
3001         * lib/gl_anytreehash_list2.h: Likewise.
3002         * lib/gl_array_list.c: Likewise.
3003         * lib/gl_array_list.h: Likewise.
3004         * lib/gl_array_oset.c: Likewise.
3005         * lib/gl_array_oset.h: Likewise.
3006         * lib/gl_avltree_list.c: Likewise.
3007         * lib/gl_avltree_list.h: Likewise.
3008         * lib/gl_avltree_oset.c: Likewise.
3009         * lib/gl_avltree_oset.h: Likewise.
3010         * lib/gl_avltreehash_list.c: Likewise.
3011         * lib/gl_avltreehash_list.h: Likewise.
3012         * lib/gl_carray_list.c: Likewise.
3013         * lib/gl_carray_list.h: Likewise.
3014         * lib/gl_linked_list.c: Likewise.
3015         * lib/gl_linked_list.h: Likewise.
3016         * lib/gl_linkedhash_list.c: Likewise.
3017         * lib/gl_linkedhash_list.h: Likewise.
3018         * lib/gl_list.c: Likewise.
3019         * lib/gl_list.h: Likewise.
3020         * lib/gl_oset.c: Likewise.
3021         * lib/gl_oset.h: Likewise.
3022         * lib/gl_rbtree_list.c: Likewise.
3023         * lib/gl_rbtree_list.h: Likewise.
3024         * lib/gl_rbtree_oset.c: Likewise.
3025         * lib/gl_rbtree_oset.h: Likewise.
3026         * lib/gl_rbtreehash_list.c: Likewise.
3027         * lib/gl_rbtreehash_list.h: Likewise.
3028         * lib/gl_sublist.c: Likewise.
3029         * lib/gl_sublist.h: Likewise.
3030         * lib/group-member.c: Likewise.
3031         * lib/group-member.h: Likewise.
3032         * lib/hard-locale.c: Likewise.
3033         * lib/hard-locale.h: Likewise.
3034         * lib/hash-pjw.c: Likewise.
3035         * lib/hash-pjw.h: Likewise.
3036         * lib/hash-triple.c: Likewise.
3037         * lib/hash.c: Likewise.
3038         * lib/hash.h: Likewise.
3039         * lib/human.c: Likewise.
3040         * lib/human.h: Likewise.
3041         * lib/i-ring.c: Likewise.
3042         * lib/i-ring.h: Likewise.
3043         * lib/idcache.c: Likewise.
3044         * lib/imaxabs.c: Likewise.
3045         * lib/imaxdiv.c: Likewise.
3046         * lib/inet_pton.c: Likewise.
3047         * lib/inet_pton.h: Likewise.
3048         * lib/intprops.h: Likewise.
3049         * lib/inttostr.c: Likewise.
3050         * lib/inttostr.h: Likewise.
3051         * lib/inttypes.in.h: Likewise.
3052         * lib/isapipe.c: Likewise.
3053         * lib/isdir.c: Likewise.
3054         * lib/isnan.c: Likewise.
3055         * lib/isnan.h: Likewise.
3056         * lib/isnanf.c: Likewise.
3057         * lib/isnanf.h: Likewise.
3058         * lib/isnanl-nolibm.h: Likewise.
3059         * lib/isnanl.c: Likewise.
3060         * lib/isnanl.h: Likewise.
3061         * lib/javacomp.c: Likewise.
3062         * lib/javacomp.h: Likewise.
3063         * lib/javaexec.c: Likewise.
3064         * lib/javaexec.h: Likewise.
3065         * lib/javaversion.c: Likewise.
3066         * lib/javaversion.h: Likewise.
3067         * lib/javaversion.java: Likewise.
3068         * lib/lbrkprop.h: Likewise.
3069         * lib/lchmod.h: Likewise.
3070         * lib/lchown.c: Likewise.
3071         * lib/ldexpl.c: Likewise.
3072         * lib/linebreak.c: Likewise.
3073         * lib/linebreak.h: Likewise.
3074         * lib/linebuffer.c: Likewise.
3075         * lib/linebuffer.h: Likewise.
3076         * lib/locale.in.h: Likewise.
3077         * lib/logl.c: Likewise.
3078         * lib/long-options.c: Likewise.
3079         * lib/long-options.h: Likewise.
3080         * lib/lstat.c: Likewise.
3081         * lib/lstat.h: Likewise.
3082         * lib/math.in.h: Likewise.
3083         * lib/mbchar.c: Likewise.
3084         * lib/mbchar.h: Likewise.
3085         * lib/mbfile.h: Likewise.
3086         * lib/mbiter.h: Likewise.
3087         * lib/mbscasecmp.c: Likewise.
3088         * lib/mbscasestr.c: Likewise.
3089         * lib/mbschr.c: Likewise.
3090         * lib/mbscspn.c: Likewise.
3091         * lib/mbslen.c: Likewise.
3092         * lib/mbsncasecmp.c: Likewise.
3093         * lib/mbsnlen.c: Likewise.
3094         * lib/mbspbrk.c: Likewise.
3095         * lib/mbspcasecmp.c: Likewise.
3096         * lib/mbsrchr.c: Likewise.
3097         * lib/mbssep.c: Likewise.
3098         * lib/mbsspn.c: Likewise.
3099         * lib/mbsstr.c: Likewise.
3100         * lib/mbstok_r.c: Likewise.
3101         * lib/mbswidth.c: Likewise.
3102         * lib/mbswidth.h: Likewise.
3103         * lib/mbuiter.h: Likewise.
3104         * lib/memcasecmp.c: Likewise.
3105         * lib/memcasecmp.h: Likewise.
3106         * lib/memchr.c: Likewise.
3107         * lib/memcmp.c: Likewise.
3108         * lib/memcoll.c: Likewise.
3109         * lib/memcoll.h: Likewise.
3110         * lib/memcpy.c: Likewise.
3111         * lib/memrchr.c: Likewise.
3112         * lib/mkancesdirs.c: Likewise.
3113         * lib/mkdir-p.c: Likewise.
3114         * lib/mkdir-p.h: Likewise.
3115         * lib/mkdir.c: Likewise.
3116         * lib/mkdirat.c: Likewise.
3117         * lib/mkdtemp.c: Likewise.
3118         * lib/mkstemp-safer.c: Likewise.
3119         * lib/mkstemp.c: Likewise.
3120         * lib/modechange.c: Likewise.
3121         * lib/modechange.h: Likewise.
3122         * lib/mountlist.c: Likewise.
3123         * lib/mountlist.h: Likewise.
3124         * lib/mpsort.c: Likewise.
3125         * lib/nanosleep.c: Likewise.
3126         * lib/obstack.c: Likewise.
3127         * lib/obstack.h: Likewise.
3128         * lib/open-safer.c: Likewise.
3129         * lib/open.c: Likewise.
3130         * lib/openat-die.c: Likewise.
3131         * lib/openat-priv.h: Likewise.
3132         * lib/openat-proc.c: Likewise.
3133         * lib/openat.c: Likewise.
3134         * lib/openat.h: Likewise.
3135         * lib/pagealign_alloc.c: Likewise.
3136         * lib/pagealign_alloc.h: Likewise.
3137         * lib/physmem.c: Likewise.
3138         * lib/physmem.h: Likewise.
3139         * lib/pipe-safer.c: Likewise.
3140         * lib/pipe.c: Likewise.
3141         * lib/pipe.h: Likewise.
3142         * lib/posixtm.c: Likewise.
3143         * lib/posixtm.h: Likewise.
3144         * lib/posixver.c: Likewise.
3145         * lib/printf-frexp.c: Likewise.
3146         * lib/printf-frexp.h: Likewise.
3147         * lib/printf-frexpl.c: Likewise.
3148         * lib/printf-frexpl.h: Likewise.
3149         * lib/printf.c: Likewise.
3150         * lib/progname.c: Likewise.
3151         * lib/progname.h: Likewise.
3152         * lib/progreloc.c: Likewise.
3153         * lib/putenv.c: Likewise.
3154         * lib/quote.c: Likewise.
3155         * lib/quote.h: Likewise.
3156         * lib/quotearg.c: Likewise.
3157         * lib/quotearg.h: Likewise.
3158         * lib/raise.c: Likewise.
3159         * lib/readline.c: Likewise.
3160         * lib/readline.h: Likewise.
3161         * lib/readlink.c: Likewise.
3162         * lib/readtokens.c: Likewise.
3163         * lib/readtokens.h: Likewise.
3164         * lib/readtokens0.c: Likewise.
3165         * lib/readtokens0.h: Likewise.
3166         * lib/readutmp.c: Likewise.
3167         * lib/readutmp.h: Likewise.
3168         * lib/realloc.c: Likewise.
3169         * lib/relocwrapper.c: Likewise.
3170         * lib/rename-dest-slash.c: Likewise.
3171         * lib/rename.c: Likewise.
3172         * lib/rmdir.c: Likewise.
3173         * lib/rpmatch.c: Likewise.
3174         * lib/safe-read.c: Likewise.
3175         * lib/safe-read.h: Likewise.
3176         * lib/safe-write.c: Likewise.
3177         * lib/safe-write.h: Likewise.
3178         * lib/same-inode.h: Likewise.
3179         * lib/same.c: Likewise.
3180         * lib/same.h: Likewise.
3181         * lib/save-cwd.c: Likewise.
3182         * lib/save-cwd.h: Likewise.
3183         * lib/savedir.c: Likewise.
3184         * lib/savedir.h: Likewise.
3185         * lib/savewd.c: Likewise.
3186         * lib/savewd.h: Likewise.
3187         * lib/search.in.h: Likewise.
3188         * lib/setenv.c: Likewise.
3189         * lib/setenv.h: Likewise.
3190         * lib/settime.c: Likewise.
3191         * lib/sh-quote.c: Likewise.
3192         * lib/sh-quote.h: Likewise.
3193         * lib/sig2str.c: Likewise.
3194         * lib/sig2str.h: Likewise.
3195         * lib/signal.in.h: Likewise.
3196         * lib/signbitd.c: Likewise.
3197         * lib/signbitf.c: Likewise.
3198         * lib/signbitl.c: Likewise.
3199         * lib/sigprocmask.c: Likewise.
3200         * lib/sincosl.c: Likewise.
3201         * lib/sleep.c: Likewise.
3202         * lib/sprintf.c: Likewise.
3203         * lib/sqrtl.c: Likewise.
3204         * lib/stat-time.h: Likewise.
3205         * lib/stdio--.h: Likewise.
3206         * lib/stdio-safer.h: Likewise.
3207         * lib/stdlib--.h: Likewise.
3208         * lib/stdlib-safer.h: Likewise.
3209         * lib/stdlib.in.h: Likewise.
3210         * lib/stpcpy.c: Likewise.
3211         * lib/stpncpy.c: Likewise.
3212         * lib/strchrnul.c: Likewise.
3213         * lib/strcspn.c: Likewise.
3214         * lib/strerror.c: Likewise.
3215         * lib/strftime.c: Likewise.
3216         * lib/strftime.h: Likewise.
3217         * lib/striconveh.c: Likewise.
3218         * lib/striconveh.h: Likewise.
3219         * lib/striconveha.c: Likewise.
3220         * lib/striconveha.h: Likewise.
3221         * lib/stripslash.c: Likewise.
3222         * lib/strnlen1.c: Likewise.
3223         * lib/strnlen1.h: Likewise.
3224         * lib/strtod.c: Likewise.
3225         * lib/strtoimax.c: Likewise.
3226         * lib/strtok_r.c: Likewise.
3227         * lib/strtol.c: Likewise.
3228         * lib/strtoll.c: Likewise.
3229         * lib/strtoul.c: Likewise.
3230         * lib/strtoull.c: Likewise.
3231         * lib/sysexits.in.h: Likewise.
3232         * lib/tempname.c: Likewise.
3233         * lib/tempname.h: Likewise.
3234         * lib/timespec.h: Likewise.
3235         * lib/tls.c: Likewise.
3236         * lib/tls.h: Likewise.
3237         * lib/tmpdir.c: Likewise.
3238         * lib/tmpdir.h: Likewise.
3239         * lib/tmpfile-safer.c: Likewise.
3240         * lib/tmpfile.c: Likewise.
3241         * lib/trigl.c: Likewise.
3242         * lib/trigl.h: Likewise.
3243         * lib/trim.c: Likewise.
3244         * lib/trim.h: Likewise.
3245         * lib/trunc.c: Likewise.
3246         * lib/truncf.c: Likewise.
3247         * lib/truncl.c: Likewise.
3248         * lib/tsearch.c: Likewise.
3249         * lib/unicodeio.c: Likewise.
3250         * lib/unicodeio.h: Likewise.
3251         * lib/unistd--.h: Likewise.
3252         * lib/unistd-safer.h: Likewise.
3253         * lib/unistdio/ulc-fprintf.c: Likewise.
3254         * lib/unistdio/ulc-vfprintf.c: Likewise.
3255         * lib/unlinkdir.c: Likewise.
3256         * lib/unlinkdir.h: Likewise.
3257         * lib/unlocked-io.h: Likewise.
3258         * lib/unsetenv.c: Likewise.
3259         * lib/userspec.c: Likewise.
3260         * lib/utime.c: Likewise.
3261         * lib/utimecmp.c: Likewise.
3262         * lib/utimecmp.h: Likewise.
3263         * lib/utimens.c: Likewise.
3264         * lib/verify.h: Likewise.
3265         * lib/verror.c: Likewise.
3266         * lib/verror.h: Likewise.
3267         * lib/version-etc-fsf.c: Likewise.
3268         * lib/version-etc.c: Likewise.
3269         * lib/version-etc.h: Likewise.
3270         * lib/vfprintf.c: Likewise.
3271         * lib/vprintf.c: Likewise.
3272         * lib/vsprintf.c: Likewise.
3273         * lib/w32spawn.h: Likewise.
3274         * lib/wait-process.c: Likewise.
3275         * lib/wait-process.h: Likewise.
3276         * lib/wcwidth.c: Likewise.
3277         * lib/write-any-file.c: Likewise.
3278         * lib/xalloc-die.c: Likewise.
3279         * lib/xalloc.h: Likewise.
3280         * lib/xasprintf.c: Likewise.
3281         * lib/xgetcwd.c: Likewise.
3282         * lib/xgetcwd.h: Likewise.
3283         * lib/xgetdomainname.c: Likewise.
3284         * lib/xgetdomainname.h: Likewise.
3285         * lib/xgethostname.c: Likewise.
3286         * lib/xmalloc.c: Likewise.
3287         * lib/xmalloca.c: Likewise.
3288         * lib/xmalloca.h: Likewise.
3289         * lib/xmemcoll.c: Likewise.
3290         * lib/xnanosleep.c: Likewise.
3291         * lib/xreadlink.c: Likewise.
3292         * lib/xreadlink.h: Likewise.
3293         * lib/xsetenv.c: Likewise.
3294         * lib/xsetenv.h: Likewise.
3295         * lib/xstriconv.c: Likewise.
3296         * lib/xstriconv.h: Likewise.
3297         * lib/xstrndup.c: Likewise.
3298         * lib/xstrndup.h: Likewise.
3299         * lib/xstrtod.c: Likewise.
3300         * lib/xstrtod.h: Likewise.
3301         * lib/xstrtol-error.c: Likewise.
3302         * lib/xstrtol.c: Likewise.
3303         * lib/xstrtol.h: Likewise.
3304         * lib/xtime.h: Likewise.
3305         * lib/xvasprintf.c: Likewise.
3306         * lib/xvasprintf.h: Likewise.
3307         * lib/yesno.c: Likewise.
3308         * lib/yesno.h: Likewise.
3309         * posix-modules: Likewise.
3310         * tests/test-alloca-opt.c: Likewise.
3311         * tests/test-arcfour.c: Likewise.
3312         * tests/test-arctwo.c: Likewise.
3313         * tests/test-argmatch.c: Likewise.
3314         * tests/test-argp-2.sh: Likewise.
3315         * tests/test-argp.c: Likewise.
3316         * tests/test-arpa_inet.c: Likewise.
3317         * tests/test-array_list.c: Likewise.
3318         * tests/test-array_oset.c: Likewise.
3319         * tests/test-atexit.c: Likewise.
3320         * tests/test-avltree_list.c: Likewise.
3321         * tests/test-avltree_oset.c: Likewise.
3322         * tests/test-avltreehash_list.c: Likewise.
3323         * tests/test-base64.c: Likewise.
3324         * tests/test-binary-io.c: Likewise.
3325         * tests/test-byteswap.c: Likewise.
3326         * tests/test-c-ctype.c: Likewise.
3327         * tests/test-c-strcasecmp.c: Likewise.
3328         * tests/test-c-strcasestr.c: Likewise.
3329         * tests/test-c-strncasecmp.c: Likewise.
3330         * tests/test-c-strstr.c: Likewise.
3331         * tests/test-canonicalize-lgpl.c: Likewise.
3332         * tests/test-canonicalize.c: Likewise.
3333         * tests/test-carray_list.c: Likewise.
3334         * tests/test-ceilf.c: Likewise.
3335         * tests/test-ceill.c: Likewise.
3336         * tests/test-count-one-bits.c: Likewise.
3337         * tests/test-crc.c: Likewise.
3338         * tests/test-dirname.c: Likewise.
3339         * tests/test-fbufmode.c: Likewise.
3340         * tests/test-fcntl.c: Likewise.
3341         * tests/test-fflush.c: Likewise.
3342         * tests/test-floorf.c: Likewise.
3343         * tests/test-floorl.c: Likewise.
3344         * tests/test-fopen.c: Likewise.
3345         * tests/test-fprintf-posix.c: Likewise.
3346         * tests/test-fprintf-posix.h: Likewise.
3347         * tests/test-fpurge.c: Likewise.
3348         * tests/test-freadable.c: Likewise.
3349         * tests/test-freadahead.c: Likewise.
3350         * tests/test-freading.c: Likewise.
3351         * tests/test-freopen.c: Likewise.
3352         * tests/test-frexp.c: Likewise.
3353         * tests/test-frexpl.c: Likewise.
3354         * tests/test-fseek.c: Likewise.
3355         * tests/test-fseeko.c: Likewise.
3356         * tests/test-fseterr.c: Likewise.
3357         * tests/test-fstrcmp.c: Likewise.
3358         * tests/test-ftell.c: Likewise.
3359         * tests/test-ftello.c: Likewise.
3360         * tests/test-fwritable.c: Likewise.
3361         * tests/test-fwriting.c: Likewise.
3362         * tests/test-getaddrinfo.c: Likewise.
3363         * tests/test-getpass.c: Likewise.
3364         * tests/test-gettimeofday.c: Likewise.
3365         * tests/test-hmac-md5.c: Likewise.
3366         * tests/test-hmac-sha1.c: Likewise.
3367         * tests/test-iconv.c: Likewise.
3368         * tests/test-iconvme.c: Likewise.
3369         * tests/test-inttypes.c: Likewise.
3370         * tests/test-isnan.c: Likewise.
3371         * tests/test-isnanf.c: Likewise.
3372         * tests/test-isnanl-nolibm.c: Likewise.
3373         * tests/test-isnanl.c: Likewise.
3374         * tests/test-isnanl.h: Likewise.
3375         * tests/test-ldexpl.c: Likewise.
3376         * tests/test-linked_list.c: Likewise.
3377         * tests/test-linkedhash_list.c: Likewise.
3378         * tests/test-locale.c: Likewise.
3379         * tests/test-localename.c: Likewise.
3380         * tests/test-lock.c: Likewise.
3381         * tests/test-lseek.c: Likewise.
3382         * tests/test-malloca.c: Likewise.
3383         * tests/test-math.c: Likewise.
3384         * tests/test-mbscasecmp.c: Likewise.
3385         * tests/test-mbscasestr1.c: Likewise.
3386         * tests/test-mbscasestr2.c: Likewise.
3387         * tests/test-mbscasestr3.c: Likewise.
3388         * tests/test-mbscasestr4.c: Likewise.
3389         * tests/test-mbschr.c: Likewise.
3390         * tests/test-mbscspn.c: Likewise.
3391         * tests/test-mbsncasecmp.c: Likewise.
3392         * tests/test-mbspbrk.c: Likewise.
3393         * tests/test-mbspcasecmp.c: Likewise.
3394         * tests/test-mbsrchr.c: Likewise.
3395         * tests/test-mbsspn.c: Likewise.
3396         * tests/test-mbsstr1.c: Likewise.
3397         * tests/test-mbsstr2.c: Likewise.
3398         * tests/test-mbsstr3.c: Likewise.
3399         * tests/test-md5.c: Likewise.
3400         * tests/test-memmem.c: Likewise.
3401         * tests/test-netinet_in.c: Likewise.
3402         * tests/test-open.c: Likewise.
3403         * tests/test-printf-frexp.c: Likewise.
3404         * tests/test-printf-frexpl.c: Likewise.
3405         * tests/test-printf-posix.c: Likewise.
3406         * tests/test-printf-posix.h: Likewise.
3407         * tests/test-rbtree_list.c: Likewise.
3408         * tests/test-rbtree_oset.c: Likewise.
3409         * tests/test-rbtreehash_list.c: Likewise.
3410         * tests/test-read-file.c: Likewise.
3411         * tests/test-rijndael.c: Likewise.
3412         * tests/test-search.c: Likewise.
3413         * tests/test-signbit.c: Likewise.
3414         * tests/test-sleep.c: Likewise.
3415         * tests/test-snprintf-posix.c: Likewise.
3416         * tests/test-snprintf-posix.h: Likewise.
3417         * tests/test-snprintf.c: Likewise.
3418         * tests/test-sprintf-posix.c: Likewise.
3419         * tests/test-sprintf-posix.h: Likewise.
3420         * tests/test-stat-time.c: Likewise.
3421         * tests/test-stdbool.c: Likewise.
3422         * tests/test-stdint.c: Likewise.
3423         * tests/test-stdio.c: Likewise.
3424         * tests/test-stdlib.c: Likewise.
3425         * tests/test-stpncpy.c: Likewise.
3426         * tests/test-strcasestr.c: Likewise.
3427         * tests/test-striconv.c: Likewise.
3428         * tests/test-striconveh.c: Likewise.
3429         * tests/test-striconveha.c: Likewise.
3430         * tests/test-string.c: Likewise.
3431         * tests/test-sys_select.c: Likewise.
3432         * tests/test-sys_socket.c: Likewise.
3433         * tests/test-sys_stat.c: Likewise.
3434         * tests/test-sys_time.c: Likewise.
3435         * tests/test-sysexits.c: Likewise.
3436         * tests/test-time.c: Likewise.
3437         * tests/test-tls.c: Likewise.
3438         * tests/test-trunc.c: Likewise.
3439         * tests/test-truncf.c: Likewise.
3440         * tests/test-truncl.c: Likewise.
3441         * tests/test-unistd.c: Likewise.
3442         * tests/test-vasnprintf-posix.c: Likewise.
3443         * tests/test-vasnprintf-posix2.c: Likewise.
3444         * tests/test-vasnprintf.c: Likewise.
3445         * tests/test-vasprintf-posix.c: Likewise.
3446         * tests/test-vasprintf.c: Likewise.
3447         * tests/test-verify.c: Likewise.
3448         * tests/test-vfprintf-posix.c: Likewise.
3449         * tests/test-vprintf-posix.c: Likewise.
3450         * tests/test-vsnprintf-posix.c: Likewise.
3451         * tests/test-vsnprintf.c: Likewise.
3452         * tests/test-vsprintf-posix.c: Likewise.
3453         * tests/test-wchar.c: Likewise.
3454         * tests/test-wctype.c: Likewise.
3455         * tests/test-wcwidth.c: Likewise.
3456         * tests/test-xstrtol.c: Likewise.
3457         * tests/test-xvasprintf.c: Likewise.
3458         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
3459         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
3460         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
3461         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
3462         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
3463         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
3464         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
3465         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
3466         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
3467         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
3468         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
3469         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
3470         * tests/uniname/test-uninames.c: Likewise.
3471         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
3472         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
3473         * tests/unistdio/test-u16-printf1.h: Likewise.
3474         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
3475         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
3476         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
3477         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
3478         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
3479         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
3480         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
3481         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
3482         * tests/unistdio/test-u32-printf1.h: Likewise.
3483         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
3484         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
3485         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
3486         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
3487         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
3488         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
3489         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
3490         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
3491         * tests/unistdio/test-u8-printf1.h: Likewise.
3492         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
3493         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
3494         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
3495         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
3496         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
3497         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
3498         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
3499         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
3500         * tests/unistdio/test-ulc-printf1.h: Likewise.
3501         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
3502         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
3503         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
3504         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
3505         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
3506         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
3507         * tests/uniwidth/test-u16-strwidth.c: Likewise.
3508         * tests/uniwidth/test-u16-width.c: Likewise.
3509         * tests/uniwidth/test-u32-strwidth.c: Likewise.
3510         * tests/uniwidth/test-u32-width.c: Likewise.
3511         * tests/uniwidth/test-u8-strwidth.c: Likewise.
3512         * tests/uniwidth/test-u8-width.c: Likewise.
3513         * tests/uniwidth/test-uc_width.c: Likewise.
3514         * config/srclist-update: Likewise.
3515         (fixlicense): Update to GPLv3+.
3516
3517         Change copyright notice from LGPLv2.1+ to LGPLv3+.
3518         * tests/test-tsearch.c: Change copyright notice.
3519
3520         Change copyright notice from LGPLv2.0+ to LGPLv3+.
3521         * lib/c-strcaseeq.h: Change copyright notice.
3522         * lib/streq.h: Likewise.
3523         * lib/uniconv.h: Likewise.
3524         * lib/uniconv/u-conv-from-enc.h: Likewise.
3525         * lib/uniconv/u-conv-to-enc.h: Likewise.
3526         * lib/uniconv/u-strconv-from-enc.h: Likewise.
3527         * lib/uniconv/u-strconv-to-enc.h: Likewise.
3528         * lib/uniconv/u16-conv-from-enc.c: Likewise.
3529         * lib/uniconv/u16-conv-to-enc.c: Likewise.
3530         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
3531         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
3532         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
3533         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
3534         * lib/uniconv/u32-conv-from-enc.c: Likewise.
3535         * lib/uniconv/u32-conv-to-enc.c: Likewise.
3536         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
3537         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
3538         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
3539         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
3540         * lib/uniconv/u8-conv-from-enc.c: Likewise.
3541         * lib/uniconv/u8-conv-to-enc.c: Likewise.
3542         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
3543         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
3544         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
3545         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
3546         * lib/uniname.h: Likewise.
3547         * lib/uniname/uniname.c: Likewise.
3548         * lib/unistdio.h: Likewise.
3549         * lib/unistdio/u-asnprintf.h: Likewise.
3550         * lib/unistdio/u-asprintf.h: Likewise.
3551         * lib/unistdio/u-printf-args.c: Likewise.
3552         * lib/unistdio/u-printf-args.h: Likewise.
3553         * lib/unistdio/u-printf-parse.h: Likewise.
3554         * lib/unistdio/u-snprintf.h: Likewise.
3555         * lib/unistdio/u-sprintf.h: Likewise.
3556         * lib/unistdio/u-vasprintf.h: Likewise.
3557         * lib/unistdio/u-vsnprintf.h: Likewise.
3558         * lib/unistdio/u-vsprintf.h: Likewise.
3559         * lib/unistdio/u16-asnprintf.c: Likewise.
3560         * lib/unistdio/u16-asprintf.c: Likewise.
3561         * lib/unistdio/u16-printf-parse.c: Likewise.
3562         * lib/unistdio/u16-snprintf.c: Likewise.
3563         * lib/unistdio/u16-sprintf.c: Likewise.
3564         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
3565         * lib/unistdio/u16-u16-asprintf.c: Likewise.
3566         * lib/unistdio/u16-u16-snprintf.c: Likewise.
3567         * lib/unistdio/u16-u16-sprintf.c: Likewise.
3568         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
3569         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
3570         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
3571         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
3572         * lib/unistdio/u16-vasnprintf.c: Likewise.
3573         * lib/unistdio/u16-vasprintf.c: Likewise.
3574         * lib/unistdio/u16-vsnprintf.c: Likewise.
3575         * lib/unistdio/u16-vsprintf.c: Likewise.
3576         * lib/unistdio/u32-asnprintf.c: Likewise.
3577         * lib/unistdio/u32-asprintf.c: Likewise.
3578         * lib/unistdio/u32-printf-parse.c: Likewise.
3579         * lib/unistdio/u32-snprintf.c: Likewise.
3580         * lib/unistdio/u32-sprintf.c: Likewise.
3581         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
3582         * lib/unistdio/u32-u32-asprintf.c: Likewise.
3583         * lib/unistdio/u32-u32-snprintf.c: Likewise.
3584         * lib/unistdio/u32-u32-sprintf.c: Likewise.
3585         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
3586         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
3587         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
3588         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
3589         * lib/unistdio/u32-vasnprintf.c: Likewise.
3590         * lib/unistdio/u32-vasprintf.c: Likewise.
3591         * lib/unistdio/u32-vsnprintf.c: Likewise.
3592         * lib/unistdio/u32-vsprintf.c: Likewise.
3593         * lib/unistdio/u8-asnprintf.c: Likewise.
3594         * lib/unistdio/u8-asprintf.c: Likewise.
3595         * lib/unistdio/u8-printf-parse.c: Likewise.
3596         * lib/unistdio/u8-snprintf.c: Likewise.
3597         * lib/unistdio/u8-sprintf.c: Likewise.
3598         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
3599         * lib/unistdio/u8-u8-asprintf.c: Likewise.
3600         * lib/unistdio/u8-u8-snprintf.c: Likewise.
3601         * lib/unistdio/u8-u8-sprintf.c: Likewise.
3602         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
3603         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
3604         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
3605         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
3606         * lib/unistdio/u8-vasnprintf.c: Likewise.
3607         * lib/unistdio/u8-vasprintf.c: Likewise.
3608         * lib/unistdio/u8-vsnprintf.c: Likewise.
3609         * lib/unistdio/u8-vsprintf.c: Likewise.
3610         * lib/unistdio/ulc-asnprintf.c: Likewise.
3611         * lib/unistdio/ulc-asprintf.c: Likewise.
3612         * lib/unistdio/ulc-printf-parse.c: Likewise.
3613         * lib/unistdio/ulc-snprintf.c: Likewise.
3614         * lib/unistdio/ulc-sprintf.c: Likewise.
3615         * lib/unistdio/ulc-vasnprintf.c: Likewise.
3616         * lib/unistdio/ulc-vasprintf.c: Likewise.
3617         * lib/unistdio/ulc-vsnprintf.c: Likewise.
3618         * lib/unistdio/ulc-vsprintf.c: Likewise.
3619         * lib/unistr.h: Likewise.
3620         * lib/unistr/u-cpy-alloc.h: Likewise.
3621         * lib/unistr/u-cpy.h: Likewise.
3622         * lib/unistr/u-endswith.h: Likewise.
3623         * lib/unistr/u-move.h: Likewise.
3624         * lib/unistr/u-set.h: Likewise.
3625         * lib/unistr/u-startswith.h: Likewise.
3626         * lib/unistr/u-stpcpy.h: Likewise.
3627         * lib/unistr/u-stpncpy.h: Likewise.
3628         * lib/unistr/u-strcat.h: Likewise.
3629         * lib/unistr/u-strcpy.h: Likewise.
3630         * lib/unistr/u-strcspn.h: Likewise.
3631         * lib/unistr/u-strdup.h: Likewise.
3632         * lib/unistr/u-strlen.h: Likewise.
3633         * lib/unistr/u-strncat.h: Likewise.
3634         * lib/unistr/u-strncpy.h: Likewise.
3635         * lib/unistr/u-strnlen.h: Likewise.
3636         * lib/unistr/u-strpbrk.h: Likewise.
3637         * lib/unistr/u-strspn.h: Likewise.
3638         * lib/unistr/u-strstr.h: Likewise.
3639         * lib/unistr/u-strtok.h: Likewise.
3640         * lib/unistr/u16-check.c: Likewise.
3641         * lib/unistr/u16-chr.c: Likewise.
3642         * lib/unistr/u16-cmp.c: Likewise.
3643         * lib/unistr/u16-cpy-alloc.c: Likewise.
3644         * lib/unistr/u16-cpy.c: Likewise.
3645         * lib/unistr/u16-endswith.c: Likewise.
3646         * lib/unistr/u16-mblen.c: Likewise.
3647         * lib/unistr/u16-mbsnlen.c: Likewise.
3648         * lib/unistr/u16-mbtouc-aux.c: Likewise.
3649         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
3650         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
3651         * lib/unistr/u16-mbtouc.c: Likewise.
3652         * lib/unistr/u16-mbtoucr.c: Likewise.
3653         * lib/unistr/u16-move.c: Likewise.
3654         * lib/unistr/u16-next.c: Likewise.
3655         * lib/unistr/u16-prev.c: Likewise.
3656         * lib/unistr/u16-set.c: Likewise.
3657         * lib/unistr/u16-startswith.c: Likewise.
3658         * lib/unistr/u16-stpcpy.c: Likewise.
3659         * lib/unistr/u16-stpncpy.c: Likewise.
3660         * lib/unistr/u16-strcat.c: Likewise.
3661         * lib/unistr/u16-strchr.c: Likewise.
3662         * lib/unistr/u16-strcmp.c: Likewise.
3663         * lib/unistr/u16-strcpy.c: Likewise.
3664         * lib/unistr/u16-strcspn.c: Likewise.
3665         * lib/unistr/u16-strdup.c: Likewise.
3666         * lib/unistr/u16-strlen.c: Likewise.
3667         * lib/unistr/u16-strmblen.c: Likewise.
3668         * lib/unistr/u16-strmbtouc.c: Likewise.
3669         * lib/unistr/u16-strncat.c: Likewise.
3670         * lib/unistr/u16-strncmp.c: Likewise.
3671         * lib/unistr/u16-strncpy.c: Likewise.
3672         * lib/unistr/u16-strnlen.c: Likewise.
3673         * lib/unistr/u16-strpbrk.c: Likewise.
3674         * lib/unistr/u16-strrchr.c: Likewise.
3675         * lib/unistr/u16-strspn.c: Likewise.
3676         * lib/unistr/u16-strstr.c: Likewise.
3677         * lib/unistr/u16-strtok.c: Likewise.
3678         * lib/unistr/u16-to-u32.c: Likewise.
3679         * lib/unistr/u16-to-u8.c: Likewise.
3680         * lib/unistr/u16-uctomb-aux.c: Likewise.
3681         * lib/unistr/u16-uctomb.c: Likewise.
3682         * lib/unistr/u32-check.c: Likewise.
3683         * lib/unistr/u32-chr.c: Likewise.
3684         * lib/unistr/u32-cmp.c: Likewise.
3685         * lib/unistr/u32-cpy-alloc.c: Likewise.
3686         * lib/unistr/u32-cpy.c: Likewise.
3687         * lib/unistr/u32-endswith.c: Likewise.
3688         * lib/unistr/u32-mblen.c: Likewise.
3689         * lib/unistr/u32-mbsnlen.c: Likewise.
3690         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
3691         * lib/unistr/u32-mbtouc.c: Likewise.
3692         * lib/unistr/u32-mbtoucr.c: Likewise.
3693         * lib/unistr/u32-move.c: Likewise.
3694         * lib/unistr/u32-next.c: Likewise.
3695         * lib/unistr/u32-prev.c: Likewise.
3696         * lib/unistr/u32-set.c: Likewise.
3697         * lib/unistr/u32-startswith.c: Likewise.
3698         * lib/unistr/u32-stpcpy.c: Likewise.
3699         * lib/unistr/u32-stpncpy.c: Likewise.
3700         * lib/unistr/u32-strcat.c: Likewise.
3701         * lib/unistr/u32-strchr.c: Likewise.
3702         * lib/unistr/u32-strcmp.c: Likewise.
3703         * lib/unistr/u32-strcpy.c: Likewise.
3704         * lib/unistr/u32-strcspn.c: Likewise.
3705         * lib/unistr/u32-strdup.c: Likewise.
3706         * lib/unistr/u32-strlen.c: Likewise.
3707         * lib/unistr/u32-strmblen.c: Likewise.
3708         * lib/unistr/u32-strmbtouc.c: Likewise.
3709         * lib/unistr/u32-strncat.c: Likewise.
3710         * lib/unistr/u32-strncmp.c: Likewise.
3711         * lib/unistr/u32-strncpy.c: Likewise.
3712         * lib/unistr/u32-strnlen.c: Likewise.
3713         * lib/unistr/u32-strpbrk.c: Likewise.
3714         * lib/unistr/u32-strrchr.c: Likewise.
3715         * lib/unistr/u32-strspn.c: Likewise.
3716         * lib/unistr/u32-strstr.c: Likewise.
3717         * lib/unistr/u32-strtok.c: Likewise.
3718         * lib/unistr/u32-to-u16.c: Likewise.
3719         * lib/unistr/u32-to-u8.c: Likewise.
3720         * lib/unistr/u32-uctomb.c: Likewise.
3721         * lib/unistr/u8-check.c: Likewise.
3722         * lib/unistr/u8-chr.c: Likewise.
3723         * lib/unistr/u8-cmp.c: Likewise.
3724         * lib/unistr/u8-cpy-alloc.c: Likewise.
3725         * lib/unistr/u8-cpy.c: Likewise.
3726         * lib/unistr/u8-endswith.c: Likewise.
3727         * lib/unistr/u8-mblen.c: Likewise.
3728         * lib/unistr/u8-mbsnlen.c: Likewise.
3729         * lib/unistr/u8-mbtouc-aux.c: Likewise.
3730         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
3731         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
3732         * lib/unistr/u8-mbtouc.c: Likewise.
3733         * lib/unistr/u8-mbtoucr.c: Likewise.
3734         * lib/unistr/u8-move.c: Likewise.
3735         * lib/unistr/u8-next.c: Likewise.
3736         * lib/unistr/u8-prev.c: Likewise.
3737         * lib/unistr/u8-set.c: Likewise.
3738         * lib/unistr/u8-startswith.c: Likewise.
3739         * lib/unistr/u8-stpcpy.c: Likewise.
3740         * lib/unistr/u8-stpncpy.c: Likewise.
3741         * lib/unistr/u8-strcat.c: Likewise.
3742         * lib/unistr/u8-strchr.c: Likewise.
3743         * lib/unistr/u8-strcmp.c: Likewise.
3744         * lib/unistr/u8-strcpy.c: Likewise.
3745         * lib/unistr/u8-strcspn.c: Likewise.
3746         * lib/unistr/u8-strdup.c: Likewise.
3747         * lib/unistr/u8-strlen.c: Likewise.
3748         * lib/unistr/u8-strmblen.c: Likewise.
3749         * lib/unistr/u8-strmbtouc.c: Likewise.
3750         * lib/unistr/u8-strncat.c: Likewise.
3751         * lib/unistr/u8-strncmp.c: Likewise.
3752         * lib/unistr/u8-strncpy.c: Likewise.
3753         * lib/unistr/u8-strnlen.c: Likewise.
3754         * lib/unistr/u8-strpbrk.c: Likewise.
3755         * lib/unistr/u8-strrchr.c: Likewise.
3756         * lib/unistr/u8-strspn.c: Likewise.
3757         * lib/unistr/u8-strstr.c: Likewise.
3758         * lib/unistr/u8-strtok.c: Likewise.
3759         * lib/unistr/u8-to-u16.c: Likewise.
3760         * lib/unistr/u8-to-u32.c: Likewise.
3761         * lib/unistr/u8-uctomb-aux.c: Likewise.
3762         * lib/unistr/u8-uctomb.c: Likewise.
3763         * lib/unitypes.h: Likewise.
3764         * lib/uniwidth.h: Likewise.
3765         * lib/uniwidth/cjk.h: Likewise.
3766         * lib/uniwidth/u16-strwidth.c: Likewise.
3767         * lib/uniwidth/u16-width.c: Likewise.
3768         * lib/uniwidth/u32-strwidth.c: Likewise.
3769         * lib/uniwidth/u32-width.c: Likewise.
3770         * lib/uniwidth/u8-strwidth.c: Likewise.
3771         * lib/uniwidth/u8-width.c: Likewise.
3772         * lib/uniwidth/width.c: Likewise.
3773
3774 2007-10-07  Bruno Haible  <bruno@clisp.org>
3775
3776         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
3777         The file is still under LGPL (see modules/inttypes).
3778
3779 2007-10-06  Bruno Haible  <bruno@clisp.org>
3780
3781         * modules/trunc (Dependencies): Add 'extensions'.
3782         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
3783         Reported by Ben Pfaff <blp@gnu.org>.
3784
3785 2007-10-06  Bruno Haible  <bruno@clisp.org>
3786
3787         * modules/freopen-tests: New file.
3788         * tests/test-freopen.c: New file.
3789
3790         * modules/fopen-tests: New file.
3791         * tests/test-fopen.c: New file.
3792
3793         * modules/fopen: New file.
3794         * lib/fopen.c: New file.
3795         * m4/fopen.m4: New file.
3796         * modules/freopen: New file.
3797         * lib/freopen.c: New file.
3798         * m4/freopen.m4: New file.
3799         * lib/stdio.in.h (fopen, freopen): New declarations.
3800         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
3801         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
3802         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
3803         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
3804         * doc/functions/fopen.texi: Mention the 'fopen' module.
3805         * doc/functions/freopen.texi: Mention the 'freopen' module.
3806
3807 2007-10-06  Bruno Haible  <bruno@clisp.org>
3808
3809         * modules/open-tests: New file.
3810         * tests/test-open.c: New file.
3811
3812         * modules/open: New file.
3813         * lib/open.c: New file.
3814         * m4/open.m4: New file.
3815         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
3816         lib/open.c does.
3817         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
3818         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
3819         macros.
3820         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
3821         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
3822         REPLACE_OPEN.
3823         * doc/functions/open.texi: Mention the 'open' module.
3824
3825 2007-10-04  Bruno Haible  <bruno@clisp.org>
3826
3827         * modules/ceill-tests: New file.
3828         * tests/test-ceill.c: New file.
3829
3830         * modules/ceill: New file.
3831         * lib/ceill.c: Replace entire file.
3832         * m4/ceill.m4: New file.
3833         * lib/math.in.h (ceill): Replace declaration.
3834         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
3835         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
3836         * doc/functions/ceill.texi: Mention the 'ceill' module.
3837         * modules/mathl (Files): Remove lib/ceill.c.
3838         (Depends-on): Add ceill.
3839
3840 2007-10-04  Bruno Haible  <bruno@clisp.org>
3841
3842         * modules/ceilf-tests: New file.
3843         * tests/test-ceilf.c: New file.
3844
3845         * modules/ceilf: New file.
3846         * lib/ceil.c: New file.
3847         * lib/ceilf.c: New file.
3848         * m4/ceilf.m4: New file.
3849         * lib/math.in.h (ceilf): New declaration.
3850         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
3851         HAVE_DECL_CEILF.
3852         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
3853         HAVE_DECL_CEILF.
3854         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
3855
3856 2007-10-04  Bruno Haible  <bruno@clisp.org>
3857
3858         * modules/floorl-tests: New file.
3859         * tests/test-floorl.c: New file.
3860
3861         * modules/floorl: New file.
3862         * lib/floorl.c: Replace entire file.
3863         * m4/floorl.m4: New file.
3864         * lib/math.in.h (floorl): Replace declaration.
3865         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
3866         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
3867         * doc/functions/floorl.texi: Mention the 'floorl' module.
3868         * modules/mathl (Files): Remove lib/floorl.c.
3869         (Depends-on): Add floorl.
3870
3871 2007-10-04  Bruno Haible  <bruno@clisp.org>
3872
3873         * modules/floorf-tests: New file.
3874         * tests/test-floorf.c: New file.
3875
3876         * modules/floorf: New file.
3877         * lib/floor.c: New file.
3878         * lib/floorf.c: New file.
3879         * m4/floorf.m4: New file.
3880         * lib/math.in.h (floorf): New declaration.
3881         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
3882         HAVE_DECL_FLOORF.
3883         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
3884         HAVE_DECL_FLOORF.
3885         * doc/functions/floorf.texi: Mention the 'floorf' module.
3886
3887 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
3888             Bruno Haible  <bruno@clisp.org>
3889
3890         Advertise for the Git server instead of the CVS server.
3891         * doc/gnulib-intro.texi (Steady Development): Mention the Git
3892         repository instead of the CVS one.
3893         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
3894         about all VCS systems generically.
3895         * doc/gnulib.texi (Introduction): Capitalize `Git'.
3896
3897 2007-10-04  Bruno Haible  <bruno@clisp.org>
3898
3899         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
3900         means.
3901         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
3902
3903 2007-10-04  Bruno Haible  <bruno@clisp.org>
3904
3905         * modules/truncl-tests: New file.
3906         * tests/test-truncl.c: New file.
3907
3908         * modules/truncl: New file.
3909         * lib/truncl.c: New file.
3910         * m4/truncl.m4: New file.
3911         * lib/math.in.h (truncl): New declaration.
3912         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
3913         HAVE_DECL_TRUNCL.
3914         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
3915         HAVE_DECL_TRUNCL.
3916         * doc/functions/truncl.texi: Mention the 'truncl' module.
3917
3918 2007-10-04  Bruno Haible  <bruno@clisp.org>
3919
3920         * modules/truncf-tests: New file.
3921         * tests/test-truncf.c: New file.
3922
3923         * modules/truncf: New file.
3924         * lib/trunc.c: Make paramerizable through USE_* macros.
3925         * lib/truncf.c: New file.
3926         * m4/truncf.m4: New file.
3927         * lib/math.in.h (truncf): New declaration.
3928         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
3929         HAVE_DECL_TRUNCF.
3930         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
3931         HAVE_DECL_TRUNCF.
3932         * doc/functions/truncf.texi: Mention the 'truncf' module.
3933
3934 2007-10-03  Bruno Haible  <bruno@clisp.org>
3935
3936         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
3937         augmentation also for tests modules.
3938         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
3939         * modules/atexit-tests (Makefile.am): Likewise.
3940         * modules/binary-io-tests (Makefile.am): Likewise.
3941         * modules/c-strcase-tests (Makefile.am): Likewise.
3942         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
3943         * modules/canonicalize-tests (Makefile.am): Likewise.
3944         * modules/closein-tests (Makefile.am): Likewise.
3945         * modules/fprintf-posix-tests (Makefile.am): Likewise.
3946         * modules/freadahead-tests (Makefile.am): Likewise.
3947         * modules/fseek-tests (Makefile.am): Likewise.
3948         * modules/fseeko-tests (Makefile.am): Likewise.
3949         * modules/ftell-tests (Makefile.am): Likewise.
3950         * modules/ftello-tests (Makefile.am): Likewise.
3951         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
3952         * modules/isnanl-tests (Makefile.am): Likewise.
3953         * modules/lseek-tests (Makefile.am): Likewise.
3954         * modules/mbscasecmp-tests (Makefile.am): Likewise.
3955         * modules/mbscasestr-tests (Makefile.am): Likewise.
3956         * modules/mbschr-tests (Makefile.am): Likewise.
3957         * modules/mbscspn-tests (Makefile.am): Likewise.
3958         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
3959         * modules/mbspbrk-tests (Makefile.am): Likewise.
3960         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
3961         * modules/mbsrchr-tests (Makefile.am): Likewise.
3962         * modules/mbsspn-tests (Makefile.am): Likewise.
3963         * modules/mbsstr-tests (Makefile.am): Likewise.
3964         * modules/printf-posix-tests (Makefile.am): Likewise.
3965         * modules/snprintf-posix-tests (Makefile.am): Likewise.
3966         * modules/sprintf-posix-tests (Makefile.am): Likewise.
3967         * modules/tsearch-tests (Makefile.am): Likewise.
3968         * modules/uniname/uniname-tests (Makefile.am): Likewise.
3969         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
3970         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
3971         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
3972         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
3973         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
3974         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
3975         * modules/vprintf-posix-tests (Makefile.am): Likewise.
3976         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
3977         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
3978         * modules/xstrtoimax-tests (Makefile.am): Likewise.
3979         * modules/xstrtol-tests (Makefile.am): Likewise.
3980         * modules/xstrtoumax-tests (Makefile.am): Likewise.
3981         * modules/yesno-tests (Makefile.am): Likewise.
3982
3983 2007-10-03  Bruno Haible  <bruno@clisp.org>
3984
3985         * modules/trunc-tests: New file.
3986         * tests/test-trunc.c: New file.
3987
3988         * modules/trunc: New file.
3989         * lib/trunc.c: New file.
3990         * m4/trunc.m4: New file.
3991         * lib/math.in.h (trunc): New declaration.
3992         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
3993         HAVE_DECL_TRUNC.
3994         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
3995         HAVE_DECL_TRUNC.
3996         * doc/functions/trunc.texi: Mention the 'trunc' module.
3997
3998 2007-10-03  Bruno Haible  <bruno@clisp.org>
3999
4000         * tests/test-fpending.c: New file, mostly copied
4001         from coreutils/lib/t-fpending.c.
4002         * modules/fpending-tests: New file.
4003
4004 2007-10-03  Bruno Haible  <bruno@clisp.org>
4005
4006         Port the stdio extensions to QNX (untested).
4007         * lib/fseterr.c (fseterr): Add support for QNX.
4008         * lib/fbufmode.c (fbufmode): Likewise.
4009         * lib/freadable.c (freadable): Likewise.
4010         * lib/fwritable.c (fwritable): Likewise.
4011         * lib/freading.c (freading): Likewise.
4012         * lib/fwriting.c (fwriting): Likewise.
4013         * lib/freadahead.c (freadahed): Likewise.
4014         * lib/fpurge.c (fpurge): Likewise.
4015         * lib/fseeko.c (rpl_fseeko): Likewise.
4016
4017 2007-10-03  Bruno Haible  <bruno@clisp.org>
4018             Jim Meyering  <jim@meyering.net>
4019             Eric Blake  <ebb9@byu.net>
4020
4021         * doc/relocatable.texi: Use @command instead of @program.
4022
4023 2007-10-02  Jim Meyering  <jim@meyering.net>
4024
4025         Perform one more "_.h" -> ".in.h" substitution.
4026         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
4027         instead of unistd_.h here, too.
4028
4029 2007-10-01  Bruno Haible  <bruno@clisp.org>
4030
4031         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
4032         Needed for the alloca-opt module.
4033
4034 2007-09-30  Bruno Haible  <bruno@clisp.org>
4035
4036         * lib/alloca.in.h: Renamed from lib/alloca_.h.
4037         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
4038         alloca_.h.
4039         * lib/argz.in.h: Renamed from lib/argz_.h.
4040         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
4041         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
4042         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
4043         byteswap_.h.
4044         * lib/dirent.in.h: Renamed from lib/dirent_.h.
4045         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
4046         dirent_.h.
4047         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
4048         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
4049         fcntl_.h.
4050         * lib/float.in.h: Renamed from lib/float_.h.
4051         * modules/float (Files, Makefile.am): Use float.in.h instead of
4052         float_.h.
4053         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
4054         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
4055         fnmatch_.h.
4056         * lib/getopt.in.h: Renamed from lib/getopt_.h.
4057         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
4058         getopt_.h.
4059         * lib/glob.in.h: Renamed from lib/glob_.h.
4060         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
4061         * lib/iconv.in.h: Renamed from lib/iconv_.h.
4062         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
4063         iconv_.h.
4064         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
4065         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
4066         inttypes_.h.
4067         * lib/locale.in.h: Renamed from lib/locale_.h.
4068         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
4069         locale_.h.
4070         * lib/math.in.h: Renamed from lib/math_.h.
4071         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
4072         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
4073         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
4074         of netinet_in_.h. Add dependency.
4075         * lib/poll.in.h: Renamed from lib/poll_.h.
4076         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
4077         * lib/search.in.h: Renamed from lib/search_.h.
4078         * modules/search (Files, Makefile.am): Use search.in.h instead of
4079         search_.h.
4080         * lib/signal.in.h: Renamed from lib/signal_.h.
4081         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
4082         _signal.h.
4083         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
4084         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
4085         stdbool_.h.
4086         * lib/stdint.in.h: Renamed from lib/stdint_.h.
4087         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
4088         stdint_.h.
4089         * lib/stdio.in.h: Renamed from lib/stdio_.h.
4090         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
4091         stdio_.h.
4092         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
4093         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
4094         stdlib_.h.
4095         * lib/string.in.h: Renamed from lib/string_.h.
4096         * modules/string (Files, Makefile.am): Use string.in.h instead of
4097         string_.h.
4098         * doc/gnulib-tool.texi (Initial import): Update.
4099         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
4100         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
4101         of sys_select_.h. Add dependency.
4102         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
4103         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
4104         of sys_socket_.h.
4105         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
4106         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
4107         sys_stat_.h.
4108         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
4109         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
4110         sys_time_.h.
4111         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
4112         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
4113         sysexits_.h.
4114         * lib/time.in.h: Renamed from lib/time_.h.
4115         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
4116         * lib/unistd.in.h: Renamed from lib/unistd_.h.
4117         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
4118         unistd_.h.
4119         * lib/wchar.in.h: Renamed from lib/wchar_.h.
4120         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
4121         wchar_.h.
4122         * lib/wctype.in.h: Renamed from lib/wctype_.h.
4123         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
4124         wctype_.h.
4125         * build-aux/bootstrap (slurp): Update.
4126         * lib/.cppi-disable: Update.
4127
4128 2007-09-30  Bruno Haible  <bruno@clisp.org>
4129
4130         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
4131         Needed on BeOS.
4132
4133 2007-09-30  Bruno Haible  <bruno@clisp.org>
4134
4135         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
4136
4137 2007-09-29  Bruno Haible  <bruno@clisp.org>
4138
4139         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
4140
4141 2007-09-29  Bruno Haible  <bruno@clisp.org>
4142
4143         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
4144         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
4145         * build-aux/install-reloc: Compile also areadlink.c.
4146         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
4147
4148 2007-09-29  Bruno Haible  <bruno@clisp.org>
4149
4150         * gnulib-tool (func_emit_initmacro_done): Indentation.
4151
4152 2007-09-29  Bruno Haible  <bruno@clisp.org>
4153
4154         * README: Add CVS checkout update instructions.
4155         Info from Bob Proulx <bob@proulx.com>.
4156
4157 2007-09-28  Eric Blake  <ebb9@byu.net>
4158
4159         Provide move-if-change.
4160         * build-aux/move-if-change: New file, based on best practice
4161         rather than any canonical upstream location.
4162
4163 2007-09-28  Jim Meyering  <jim@meyering.net>
4164
4165         Fix canonicalize loop-detection corner case.
4166         Do not attempt to stat the symlink values stored via seen_triple.
4167         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
4168         on linux-2.6.18, (but not 2.6.22).
4169         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
4170         triple_compare.  The former compares dev,ino,filename, while the latter
4171         would actually stat dirname(filename) when dev and ino were equal.
4172         * lib/hash-triple.c: Install <string.h>.
4173         (STREQ): Define.
4174         (triple_compare_ino_str): New function.
4175         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
4176
4177 2007-09-28  Eric Blake  <ebb9@byu.net>
4178
4179         Enforce that AC_REPLACE_FUNCS files exist.
4180         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
4181         override check for typos.
4182
4183         Fix test-closein on Solaris 10.
4184         * tests/test-closein.c (main): Don't assume stdin can be inherited
4185         closed on all systems.
4186         * tests/test-closein.sh: Likewise.
4187         Reported by Piotr Tarnowski.
4188
4189 2007-09-28  Jim Meyering  <jim@meyering.net>
4190
4191         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
4192
4193 2007-09-27  Jim Meyering  <jim@meyering.net>
4194
4195         canonicalize: Avoid a false-positive cycle failure.
4196         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
4197         Sort.  Remove cycle-check.
4198         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
4199         not cycle-check.h.
4200         (seen_triple): New function.
4201         (canonicalize_filename_mode): Use it instead of cycle-check.
4202         * tests/test-canonicalize.c: Add a test for this bug.
4203         * tests/test-canonicalize.sh: Set up and run the test.
4204
4205         New module, file-set, from coreutils.
4206         * modules/file-set: Define it.
4207         * lib/file-set.c, lib/file-set.h: Implement.
4208
4209         New module, hash-triple, from coreutils.
4210         * modules/hash-triple: Define it.
4211         * lib/hash-triple.c, lib/hash-triple.h: Implement.
4212
4213 2007-09-25  Eric Blake  <ebb9@byu.net>
4214
4215         Fix strerror on Interix.
4216         * lib/string_.h (strerror): Declare replacement.
4217         * doc/functions/strerror.texi (strerror): Document the Interix
4218         shortcoming.
4219         * modules/string (Makefile.am): Support new hooks.
4220         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
4221         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
4222         gl_FUNC_STRERROR_SEPARATE.
4223         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
4224         * lib/strerror.c (rpl_strerror): Provide replacement.
4225         * modules/strerror (Depends-on): Add string.
4226         (configure.ac): Detect use of module.
4227         * tests/test-strerror.c: New file.
4228         * modules/strerror-tests: New test module.
4229         * modules/argp (Depends-on): Add strerror.
4230         * modules/error (Depends-on): Likewise.
4231         Reported by Martin Koeppe.
4232
4233 2007-09-24  Bruno Haible  <bruno@clisp.org>
4234
4235         * README: Update git instructions.
4236
4237 2007-09-24  Eric Blake  <ebb9@byu.net>
4238
4239         Revert fpending breakage from 2007-09-08.
4240         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
4241         __fpending.c.
4242
4243 2007-09-24  Jim Meyering  <jim@meyering.net>
4244
4245         filenamecat.c: Add a test.
4246         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
4247         showing how the function works when DIR is the empty string.
4248
4249 2007-09-21  Simon Josefsson  <simon@josefsson.org>
4250
4251         * tests/test-canonicalize.sh: Turn on executable bit.
4252
4253 2007-09-19  Eric Blake  <ebb9@byu.net>
4254
4255         * README: Update CVS instructions.
4256
4257 2007-09-18  Bruno Haible  <bruno@clisp.org>
4258
4259         * modules/areadlink: New file.
4260         * lib/areadlink.h (areadlink): New declaration.
4261         * lib/areadlink.c: New file, based on lib/xreadlink.c.
4262
4263 2007-09-17  Jim Meyering  <jim@meyering.net>
4264
4265         * lib/savewd.c (ESTALE) [!defined]: Define.
4266         Reported to be required on Interix by Martin Koeppe.
4267
4268 2007-09-17  Bruno Haible  <bruno@clisp.org>
4269
4270         * gnulib-tool (func_version): Use $version.
4271
4272 2007-09-16  Bruno Haible  <bruno@clisp.org>
4273
4274         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
4275         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
4276         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
4277         Reported by Greg Schafer <gschafer@zip.com.au>.
4278
4279 2007-09-15  Bruno Haible  <bruno@clisp.org>
4280
4281         * gnulib-tool (sed): Try a little harder to make bash understand the
4282         alias.
4283         Reported by Bruce Korb <bruce.korb@gmail.com>.
4284
4285 2007-09-13  Eric Blake  <ebb9@byu.net>
4286
4287         * ChangeLog: Remove conflict markers.
4288
4289 2007-09-13  Simon Josefsson  <simon@josefsson.org>
4290
4291         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
4292         Reported by Bruno Haible <bruno@clisp.org>.
4293
4294 2007-09-12  Bruno Haible  <bruno@clisp.org>
4295
4296         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
4297         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
4298         is not defined.
4299
4300 2007-09-12  Eric Blake  <ebb9@byu.net>
4301
4302         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
4303         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
4304         Autoconf definition.
4305         * modules/euidaccess (Depends-on): Add extensions, for
4306         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
4307         * modules/fnmatch (Depends-on): Likewise.
4308         * modules/getaddrinfo (Depends-on): Likewise.
4309         * modules/getdelim (Depends-on): Likewise.
4310         * modules/getline (Depends-on): Likewise.
4311         * modules/getsubopt (Depends-on): Likewise.
4312         * modules/gettext (Depends-on): Likewise.
4313         * modules/group-member (Depends-on): Likewise.
4314         * modules/mbchar (Depends-on): Likewise.
4315         * modules/memmem (Depends-on): Likewise.
4316         * modules/mempcpy (Depends-on): Likewise.
4317         * modules/memrchr (Depends-on): Likewise.
4318         * modules/pagealign_alloc (Depends-on): Likewise.
4319         * modules/readutmp (Depends-on): Likewise.
4320         * modules/stpcpy (Depends-on): Likewise.
4321         * modules/stpncpy (Depends-on): Likewise.
4322         * modules/strchrnul (Depends-on): Likewise.
4323         * modules/strndup (Depends-on): Likewise.
4324         * modules/strsep (Depends-on): Likewise.
4325         * modules/strverscmp (Depends-on): Likewise.
4326         * modules/vasprintf (Depends-on): Likewise.
4327         * modules/wcwidth (Depends-on): Likewise.
4328         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
4329         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
4330         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
4331         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
4332         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
4333         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
4334         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
4335         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
4336         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
4337         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
4338         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
4339         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
4340         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
4341         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
4342         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
4343         * m4/readutmp.m4 (gl_READUTMP): Likewise.
4344         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
4345         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
4346         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
4347         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
4348         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
4349         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
4350         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
4351         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
4352         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
4353         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
4354         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
4355         so that lock.m4 can be used in gettext without extensions module.
4356
4357 2007-09-11  Bruno Haible  <bruno@clisp.org>
4358
4359         * m4/isc-posix.m4: Remove file.
4360         Suggested by Eric Blake.
4361
4362 2007-09-11  Eric Blake  <ebb9@byu.net>
4363
4364         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
4365
4366 2007-09-10  Bruno Haible  <bruno@clisp.org>
4367
4368         * posix-modules: Fix typo in error message.
4369         Reported by Matt <mkraai@beckman.com>.
4370
4371 2007-09-09  Bruno Haible  <bruno@clisp.org>
4372
4373         * doc/functions/getdelim.texi: Update list of platforms lacking the
4374         function.
4375         * doc/functions/getline.texi: Likewise.
4376
4377 2007-09-09  Jim Meyering  <jim@meyering.net>
4378
4379         * lib/hash.c (hash_initialize): Detect calloc failure.
4380         Reported by Bruno Haible.
4381
4382 2007-09-09  Bruno Haible  <bruno@clisp.org>
4383
4384         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
4385         malloc or realloc fails.
4386
4387 2007-09-09  Bruno Haible  <bruno@clisp.org>
4388
4389         * modules/getcwd (Depends-on): Add malloc-posix.
4390         * modules/glob (Depends-on): Likewise.
4391         * modules/putenv (Depends-on): Likewise.
4392         * modules/strdup (Depends-on): Likewise.
4393         * modules/getdelim (Depends-on): Add realloc-posix.
4394         * modules/read-file (Depends-on): Likewise.
4395
4396 2007-09-09  Bruno Haible  <bruno@clisp.org>
4397
4398         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
4399         (gl_FUNC_MALLOC_POSIX): Require it.
4400         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
4401         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
4402         * modules/realloc (Files): Add m4/malloc.m4.
4403         * modules/calloc (Files): Likewise.
4404
4405 2007-09-09  Bruno Haible  <bruno@clisp.org>
4406
4407         * modules/malloc-posix: New file.
4408         * modules/malloc (Depends-on): Add malloc-posix.
4409         * lib/malloc.c: Include errno.h.
4410         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
4411         and a POSIX-compatible malloc into a single function. Set ENOMEM
4412         when returning NULL.
4413         * m4/malloc.m4: New file.
4414         * doc/functions/malloc.texi: Mention the malloc-posix module.
4415         * lib/stdlib_.h (malloc): New declaration.
4416         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
4417         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
4418         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
4419         and HAVE_MALLOC_POSIX.
4420
4421 2007-09-09  Bruno Haible  <bruno@clisp.org>
4422
4423         * modules/realloc-posix: New file.
4424         * modules/realloc (Depends-on): Add realloc-posix.
4425         * lib/realloc.c: Include errno.h.
4426         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
4427         and a POSIX-compatible realloc into a single function. Set ENOMEM
4428         when returning NULL.
4429         * m4/realloc.m4: New file.
4430         * doc/functions/realloc.texi: Mention the realloc-posix module.
4431         * lib/stdlib_.h (realloc): New declaration.
4432         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
4433         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
4434         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
4435         and HAVE_REALLOC_POSIX.
4436
4437 2007-09-09  Bruno Haible  <bruno@clisp.org>
4438
4439         * modules/calloc-posix: New file.
4440         * modules/calloc (Depends-on): Add calloc-posix.
4441         * lib/calloc.c: Include errno.h.
4442         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
4443         and a POSIX-compatible calloc into a single function. Set ENOMEM
4444         when returning NULL.
4445         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
4446         * doc/functions/calloc.texi: Mention the calloc-posix module.
4447         * lib/stdlib_.h (calloc): New declaration.
4448         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
4449         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
4450         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
4451         and HAVE_CALLOC_POSIX.
4452
4453 2007-09-09  Bruno Haible  <bruno@clisp.org>
4454
4455         Allow for modules to show an arbitrary notice.
4456         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
4457         * gnulib-tool: New option --extract-notice.
4458         (func_usage): Document it.
4459         (sed_extract_prog): Update.
4460         (func_get_notice): New function.
4461         (func_modules_notice): New function.
4462         (func_import, func_create_testdir): Invoke it.
4463         Suggested by Jim Meyering.
4464
4465 2007-09-09  Bruno Haible  <bruno@clisp.org>
4466
4467         * gnulib-tool: New options --verbose, --quiet.
4468         (func_usage): Document them.
4469         (verbose): New variable.
4470         (func_execute_command): New function.
4471         (func_import): Don't show the module list and the file list if
4472         $verbose < 0.
4473         (func_create_testdir): Likewise. Use func_execute_command.
4474         (func_create_megatestdir): Use func_execute_command.
4475
4476 2007-09-08  Bruno Haible  <bruno@clisp.org>
4477
4478         * gnulib-tool (func_import): Prefer rsync over wget when available,
4479         for fetching the PO files.
4480
4481 2007-09-08  Bruno Haible  <bruno@clisp.org>
4482
4483         * posix-modules: New file. Portions copied from gnulib-tool.
4484         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
4485
4486 2007-09-08  Jim Meyering  <jim@meyering.net>
4487
4488         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
4489         * lib/fpending.h: Rename from __fpending.h.
4490         * lib/fpending.c: Rename from __fpending.c.
4491         Include "fpending.h", not "__fpending.h".
4492         * lib/__fpending.h, lib/__fpending.c: Remove files.
4493         * modules/fpending (Files): Reflect new file names.
4494         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
4495
4496 2007-09-08  Bruno Haible  <bruno@clisp.org>
4497
4498         * m4/inttypes-h.m4: Remove stub file.
4499
4500 2007-09-07  Simon Josefsson  <simon@josefsson.org>
4501
4502         * doc/headers/stdint.texi: Discuss #include_next issue.
4503
4504 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
4505
4506         * build-aux/bootstrap: Remove obsolete comment about wget --help.
4507
4508 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4509
4510         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
4511         in variable name.
4512
4513 2007-09-03  Jim Meyering  <jim@meyering.net>
4514
4515         New module: git-version-gen.
4516         * modules/git-version-gen: New file.
4517
4518         Import changes from coreutils for bootstrap script.
4519
4520         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
4521
4522         bootstrap: uses rsync to download the .po files
4523         * build-aux/bootstrap (po_download_command_format): New global.
4524         (download_po_files): Use rsync.
4525         (update_po_files): Don't remove .po files after download,
4526         so future rsync runs can take advantage of the copies.
4527
4528         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
4529
4530         Solve the unnecessary-.po-file-regeneration problem once and for all.
4531         * build-aux/bootstrap (download_po_files): New function, renamed from
4532         get_translations.  Now, downloads, but doesn't update LINGUAS.
4533         (update_po_files): New function.
4534
4535         bootstrap: Ignore more.
4536         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
4537         uniwidth to e.g., lib/.gitignore.
4538         (slurp): Handle the sys_stat_.h -> sys mapping, too.
4539
4540         * build-aux/bootstrap: New setting: vc_ignore.
4541         (insert_sorted_if_absent): Create $file if absent.
4542         Adapt to new, possibly empty, list: $vc_ignore.
4543
4544         bootstrap: generate more ignorable names
4545         * build-aux/bootstrap (slurp): When generating ignorable names,
4546         also map .sin to .sed, .gperf to .c, and .y to .c.
4547
4548 2007-09-03  Jim Meyering  <jim@meyering.net>
4549
4550         * build-aux/git-version-gen: New file, from coreutils.  For details, see
4551         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
4552
4553 2007-09-02  Bruno Haible  <bruno@clisp.org>
4554
4555         Fix mis-recognition of 'mcs' on QNX 6.
4556         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
4557         output contains the string "Mono".
4558         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
4559         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
4560
4561 2007-09-01  Bruno Haible  <bruno@clisp.org>
4562
4563         Fix collision between uniwidth/* and linebreak modules.
4564         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
4565         u32_width): Remove declarations.
4566         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
4567         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
4568         streq3, streq2, streq1, streq0): Remove functions.
4569         (STREQ): Remove macro.
4570         (is_cjk_encoding): Remove function.
4571         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
4572         (uc_width, u8_width, u16_width, u32_width): Remove functions.
4573         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
4574         * NEWS: Document the change.
4575
4576 2007-09-01  Bruno Haible  <bruno@clisp.org>
4577
4578         * lib/streq.h: Add double-inclusion guard.
4579
4580 2007-09-01  Karl Berry  <karl@gnu.org>
4581
4582         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
4583
4584 2007-08-28  Jim Meyering  <jim@meyering.net>
4585
4586         Rename mreadlink_with_size to areadlink_with_size.
4587         * NEWS: Document the change.
4588         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
4589         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
4590         * lib/mreadlink.h: Rename this to...
4591         * lib/areadlink.h: ...this.
4592         * modules/mreadlink-with-size: Rename this to...
4593         * modules/areadlink-with-size: ...this.
4594         * lib/canonicalize.c: Reflect the renaming.
4595         * modules/canonicalize: Likewise.
4596
4597 2007-08-26  Bruno Haible  <bruno@clisp.org>
4598
4599         * gnulib-tool (func_import): When deciding which files to remove,
4600         consider also dangling symbolic links.
4601         Reported by Eric Blake.
4602
4603 2007-08-26  Bruno Haible  <bruno@clisp.org>
4604
4605         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
4606
4607 2007-08-23  Simon Josefsson  <simon@josefsson.org>
4608
4609         * lib/readline.c: Don't include getline.h, the prototype is now
4610         found in stdio.h.
4611
4612 2007-08-23  Jim Meyering  <jim@meyering.net>
4613
4614         Getdelim touchup.
4615         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
4616         around the funlockfile call, since funlockfile never sets errno.
4617         Don't set errno upon failed realloc.
4618
4619 2007-08-22  Eric Blake  <ebb9@byu.net>
4620
4621         Getline touchups.
4622         * lib/getdelim.c (getdelim): Revert regression that required *n to
4623         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
4624         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
4625         getdelim, rather than whether implementation is missing.
4626         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
4627         * lib/stdio_.h (getline): Also declare if replacement is
4628         required.
4629         * doc/functions/getdelim.texi: New file.
4630         * doc/functions/getline.texi: Likewise.
4631         * doc/gnulib.texi (Function Substitutes): Add new files.
4632         Reported by Bruno Haible.
4633
4634 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
4635
4636         * users.txt: Add Guile.
4637
4638 2007-08-22  Eric Blake  <ebb9@byu.net>
4639
4640         * tests/test-getdelim.c (main): Use remove, not unlink.
4641         * tests/test-getline.c (main): Likewise.
4642
4643         Move getline and getdelim into stdio.h, per POSIX 200x.
4644         * modules/getline (Files): Remove getline.h.
4645         (Depends-on): Add stdio.
4646         (configure.ac): Add module indicator.
4647         * modules/getdelim (Files): Remove getdelim.h.
4648         (Depends-on): Add stdio.
4649         (configure.ac): Add module indicator.
4650         * modules/stdio (Makefile.am): Work with new indicators.
4651         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
4652         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
4653         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
4654         * lib/getdelim.h: Delete.
4655         * lib/getline.h: Delete.
4656         * lib/stdio_.h (getdelim, getline): Declare.
4657         * modules/getdelim-tests: New module.
4658         * modules/getline-tests: Likewise.
4659         * tests/test-getdelim.c: New file.
4660         * tests/test-getline.c: Likewise.
4661         * NEWS: Document the change.
4662         * lib/getline.c: Update choice of header.
4663         * lib/csharpcomp.c: Likewise.
4664         * lib/getpass.c: Likewise.
4665         * lib/javacomp.c: Likewise.
4666         * lib/javaversion.c: Likewise.
4667         * lib/yesno.c: Likewise.
4668         * lib/getdelim.c: Likewise.
4669         (getdelim): Set errno on failure, and avoid memory leak.
4670
4671 2007-08-19  Bruno Haible  <bruno@clisp.org>
4672
4673         * modules/closein (Depends-on): Add freadahead.
4674         * lib/closein.c: Include freadahead.h.
4675         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
4676         is zero.
4677
4678 2007-08-19  Bruno Haible  <bruno@clisp.org>
4679
4680         * modules/freadahead-tests: New file.
4681         * tests/test-freadahead.sh: New file.
4682         * tests/test-freadahead.c: New file.
4683
4684         * modules/freadahead: New file.
4685         * lib/freadahead.h: New file.
4686         * lib/freadahead.c: New file.
4687         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
4688         fbufmode, fpurge, freadable, fwritable.
4689
4690 2007-08-19  Eric Blake  <ebb9@byu.net>
4691
4692         Test yesno in combination with closein.
4693         * lib/yesno.c (yesno): Document use of stdin.
4694         * modules/yesno-tests (Files): New module.
4695         * tests/test-yesno.c (main): New file.
4696         * tests/test-yesno.sh: Likewise.
4697
4698 2007-08-19  Bruno Haible  <bruno@clisp.org>
4699
4700         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
4701         * lib/fseeko.c (rpl_fseeko): Likewise.
4702         * lib/fseterr.c (fseterr): Likewise.
4703
4704 2007-08-19  Bruno Haible  <bruno@clisp.org>
4705
4706         * tests/test-lseek.c (main): Disable a test for BeOS.
4707         * doc/functions/lseek.texi: Document the BeOS bug.
4708
4709 2007-08-19  Bruno Haible  <bruno@clisp.org>
4710             Eric Blake  <ebb9@byu.net>
4711
4712         * lib/lseek.c: Include <sys/stat.h>.
4713         (rpl_lseek): Add workaround code also for Unix platforms.
4714         Needed for BeOS.
4715         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
4716         * doc/functions/lseek.texi: Document BeOS definiency.
4717
4718 2007-08-18  Bruno Haible  <bruno@clisp.org>
4719
4720         * modules/fstrcmp-tests: New file.
4721         * tests/test-fstrcmp.c: New file.
4722
4723 2007-08-18  Bruno Haible  <bruno@clisp.org>
4724
4725         * modules/fstrcmp: New file, from GNU gettext with modifications.
4726         * lib/fstrcmp.h: New file, from GNU gettext.
4727         * lib/fstrcmp.c: New file, from GNU gettext.
4728         * MODULES.html.sh (String handling): Add fstrcmp.
4729
4730 2007-08-18  Bruno Haible  <bruno@clisp.org>
4731
4732         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
4733         'bool'.
4734         (diag, compareseq): Remove const from the ctxt argument.
4735         (USE_HEURISTIC): Undefine at the end.
4736
4737 2007-08-18  Jim Meyering  <jim@meyering.net>
4738
4739         New file: lib/idcache.h
4740         * NEWS: Mention the addition.
4741         * modules/idcache (Files): Add lib/idcache.h
4742         * lib/idcache.c: Include "idcache.h".
4743         Don't include <sys/types.h>.
4744         Add a FIXME comment.
4745         Move file-scoped "static" declarations to the top.
4746         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
4747
4748 2007-08-17  Bruno Haible  <bruno@clisp.org>
4749         and Paul Eggert  <eggert@cs.ucla.edu>
4750
4751         * MODULES.html.sh: Add diffseq.
4752         * modules/diffseq: New file.
4753         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
4754         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
4755
4756 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
4757
4758         Import changes from coreutils for bootstrap script.
4759
4760         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
4761
4762         * build-aux/bootstrap (slurp): Work even in environments where
4763         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
4764         current code does not slurp files whose names start with ".", and
4765         this looks like it might be a troublesome area.
4766
4767         2007-07-11  Jim Meyering  <jim@meyering.net>
4768
4769         If there's a GPL vN copyright comment, require that N == 3.
4770
4771         2007-07-08  Jim Meyering  <jim@meyering.net>
4772
4773         Run the coreutils-specific code only if tests/Makefile.am.in exists.
4774         * build-aux/bootstrap (mam_template): Move definition out of loop.
4775
4776         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
4777
4778         * build-aux/bootstrap (symlink_to_dir): Rename function from
4779         symlink_to_gnulib.  Add a directory parameter.  Update all
4780         callers.
4781         (cp_mark_as_generated): Also check for -- and link to -- files in
4782         gl/.
4783
4784         2007-07-08  Jim Meyering  <jim@meyering.net>
4785
4786         Adapt to deeper hierarchy in gnulib.
4787         * build-aux/bootstrap (symlink_to_dir): If the destination
4788         directory doesn't exist, create it. This is required at least for
4789         "lib/uniwidth/cjk.h".
4790
4791         2007-05-15  Jim Meyering  <jim@meyering.net>
4792
4793         * build-aux/bootstrap: Now that generated Makefile.am files
4794         are no longer under version control, they must be created at
4795         bootstrap time.
4796
4797 2007-08-14  Ben Pfaff  <blp@gnu.org>
4798
4799         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
4800
4801 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
4802
4803         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
4804         given the changes below.
4805         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
4806         even on hosts that have padding bits beyond the supported 64.
4807
4808 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
4809
4810         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
4811         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
4812         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
4813         depends on it.
4814         (xstrtol_error): Remove.
4815         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
4816         but with a different signature.
4817         (ATTRIBUTE_NORETURN, __attribute__): New macros.
4818         * lib/xstrtol-error.c: Include exitfail.h.
4819         (xstrtol_fatal): New function, with a different signature from the
4820         old xstrtol_error, so that the caller need not worry about passing
4821         in an exit status, or about storage management of the option argument.
4822         (xstrtol_error): Now a static function.  Redo signature to
4823         implement xstrtol_fatal.  Output the correct number of hyphens in
4824         front of the option so that the caller need not worry about
4825         storage management.
4826         (N_): New macro.
4827         (_): Remove; not used now.
4828         * modules/xstrtol: Depend on getopt.
4829         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
4830         of old STRTOL_FATAL_ERROR macro.
4831         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
4832         of test program.
4833         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
4834         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
4835
4836 2007-08-08  Eric Blake  <ebb9@byu.net>
4837
4838         * lib/xstrtol-error.c: Add missing include.
4839
4840         Move xstrtol messages into gnulib domain, when --pobase is used.
4841         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
4842         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
4843         * modules/xstrtol (Files): Distribute new file.
4844         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
4845         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
4846         * tests/test-xstrtol.c: ...into new file.
4847         * tests/test-xstrtoul.c: Also test xstrtoul.
4848         * tests/test-xstrtoimax.c: Also test xstrtoimax.
4849         * tests/test-xstrtoumax.c: Also test xstrtoumax.
4850         * tests/test-xstrtol.sh: Drive the tests.
4851         * tests/test-xstrtoimax.sh: Likewise.
4852         * tests/test-xstrtoumax.sh: Likewise.
4853         * modules/xstrtol-tests: New module.
4854         * modules/xstrtoimax-tests: Likewise.
4855         * modules/xstrtoumax-tests: Likewise.
4856
4857 2007-08-08  Jim Meyering  <jim@meyering.net>
4858
4859         New function: mfile_name_concat.
4860         * lib/filenamecat.c (mfile_name_concat): New function, just like
4861         file_name_concat, but return NULL upon failure rather than exiting
4862         with a diagnostic.
4863         * lib/filenamecat.h: Declare it.
4864
4865 2007-08-07  Bruno Haible  <bruno@clisp.org>
4866
4867         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
4868         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
4869         warning from gcc.
4870         Reported by Eric Blake.
4871
4872 2007-08-07  Simon Josefsson  <simon@josefsson.org>
4873
4874         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
4875         * modules/crypto/arcfour (License): Likewise.
4876         * modules/crypto/des-tests (License): Likewise.
4877         * modules/crypto/gc-arctwo-tests (License): Likewise.
4878         * modules/crypto/gc-des-tests (License): Likewise.
4879         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
4880         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
4881         * modules/crypto/gc-md2-tests (License): Likewise.
4882         * modules/crypto/gc-md4-tests (License): Likewise.
4883         * modules/crypto/gc-md5-tests (License): Likewise.
4884         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
4885         * modules/crypto/gc-rijndael-tests (License): Likewise.
4886         * modules/crypto/gc-sha1-tests (License): Likewise.
4887         * modules/crypto/gc-tests (License): Likewise.
4888         * modules/crypto/hmac-md5 (License): Likewise.
4889         * modules/crypto/hmac-sha1 (License): Likewise.
4890         * modules/crypto/md2-tests (License): Likewise.
4891         * modules/crypto/md4-tests (License): Likewise.
4892         * modules/crypto/md5 (License): Likewise.
4893         * modules/crypto/rijndael (License): Likewise.
4894         * modules/crypto/sha1 (License): Likewise.
4895         * modules/memxor (License): Likewise.
4896
4897 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
4898         and Bruno Haible  <bruno@clisp.org>
4899
4900         * NEWS: Describe interface changes to human, xstrtol.
4901         * lib/human.h: Include <xstrtol.h>.
4902         (human_options): Return enum strtol_error, not int.  Remove
4903         bool arg; take int * instead.
4904         * lib/human.c: Don't include "gettext.h".
4905         (_): Remove; no longer used.
4906         Don't include <xstrtol.h>, since human.h does it.
4907         (human_options): Adjust to abovementioned interface changes.
4908         Do not report error to stderr; that's now the caller's
4909         responsibility.
4910         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
4911         interface change.
4912         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
4913         Str, Argument_type_string.  All uses changed.  Put " argument"
4914         in diagnostics to make them clearer.  Change wording of suffix
4915         message for clarity.
4916         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
4917         Argument_type_string.
4918         (STRTOL_FATAL_WARN): Remove; no longer used.
4919         * modules/human (Depends-on): Remove gettext-h.
4920
4921 2007-08-06  Simon Josefsson  <simon@josefsson.org>
4922
4923         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
4924
4925 2007-07-31  Bruno Haible  <bruno@clisp.org>
4926
4927         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
4928         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
4929         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
4930
4931 2007-07-31  Bruno Haible  <bruno@clisp.org>
4932
4933         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
4934         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
4935
4936 2007-07-30  Bruno Haible  <bruno@clisp.org>
4937
4938         * modules/base64 (License): Use the synonymous term "LGPLv2+".
4939         * modules/c-ctype (License): Likewise.
4940         * modules/c-strcase (License): Likewise.
4941         * modules/check-version (License): Likewise.
4942         * modules/iconv (License): Likewise.
4943         * modules/iconv_open (License): Likewise.
4944         * modules/read-file (License): Likewise.
4945         * modules/striconv (License): Likewise.
4946         * modules/strverscmp (License): Likewise.
4947         * modules/vasprintf (License): Likewise.
4948         * modules/crypto/des (License): Likewise.
4949         * modules/crypto/gc (License): Likewise.
4950         * modules/crypto/gc-arcfour (License): Likewise.
4951         * modules/crypto/gc-arctwo (License): Likewise.
4952         * modules/crypto/gc-des (License): Likewise.
4953         * modules/crypto/gc-hmac-md5 (License): Likewise.
4954         * modules/crypto/gc-hmac-sha1 (License): Likewise.
4955         * modules/crypto/gc-md2 (License): Likewise.
4956         * modules/crypto/gc-md4 (License): Likewise.
4957         * modules/crypto/gc-md5 (License): Likewise.
4958         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
4959         * modules/crypto/gc-random (License): Likewise.
4960         * modules/crypto/gc-rijndael (License): Likewise.
4961         * modules/crypto/gc-sha1 (License): Likewise.
4962         * modules/crypto/md2 (License): Likewise.
4963         * modules/crypto/md4 (License): Likewise.
4964
4965 2007-07-30  Jim Meyering  <jim@meyering.net>
4966
4967         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
4968         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
4969         it has valid stat data.  This bug would cause du not to count the
4970         sizes of inaccessible directories.
4971         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
4972         in <http://bugzilla.redhat.com/250077>.
4973
4974 2007-07-25  Peter O'Gorman  <peter@pogma.com>
4975             Bruno Haible  <bruno@clisp.org>
4976
4977         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
4978         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
4979         #include_next, gives a diagnostic about it, but reports no error in
4980         the exit code.
4981         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
4982
4983 2007-07-24  Ben Pfaff  <blp@gnu.org>
4984
4985         Improve name: "count-one-bits" is better than "popcount".
4986         * MODULES.html.sh: Update name.
4987         * lib/popcount.h: Renamed lib/count-one-bits.h.
4988         (popcount): Renamed count_one_bits.
4989         (popcountl): Renamed count_one_bits_l.
4990         (popcountll): Renamed count_one_bits_ll.
4991         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
4992         * modules/popcount: Renamed module/count-one-bits.
4993         * modules/popcount-tests: Renamed module/count-one-bits-tests.
4994         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
4995
4996 2007-07-23  Ben Pfaff  <blp@gnu.org>
4997
4998         * lib/popcount.h (popcount32): Reduce size of constants, to allow
4999         better code generation, and add U to large constants to avoid
5000         warnings, in non-GCC case.
5001         Suggested by Bruno Haible.
5002
5003 2007-07-23  Ben Pfaff  <blp@gnu.org>
5004
5005         * lib/popcount.h: Use verify_true instead of if...abort.
5006         * modules/popcount: Depend on verify module.
5007         Suggested by Jim Meyering.
5008
5009 2007-07-23  Bruno Haible  <bruno@clisp.org>
5010
5011         * gnulib-tool (func_import): Create a .cvsignore file also when the
5012         directory is not yet in CVS but the toplevel directory is. When
5013         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
5014         Reported by Karl Berry.
5015
5016 2007-07-22  Ben Pfaff  <blp@gnu.org>
5017
5018         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
5019         case.
5020         Suggested by Eric Blake.
5021
5022 2007-07-22  Ben Pfaff  <blp@gnu.org>
5023
5024         New module: popcount.
5025         * MODULES.html.sh: Add popcount.
5026         * modules/popcount: New file.
5027         * modules/popcount-tests: New file.
5028         * tests/test-popcount.c: New file.
5029         * lib/popcount.h: New file.
5030         * m4/popcount.m4: New file.
5031
5032 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
5033
5034         * build-aux/announce-gen: Update to GPLv3.
5035
5036         * build-aux/config.guess: Update from config.
5037
5038 2007-07-21  Bruno Haible  <bruno@clisp.org>
5039
5040         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
5041         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
5042
5043 2007-07-20  Jim Meyering  <jim@meyering.net>
5044
5045         * check-module: Diagnose a self-dependency.
5046
5047 2007-07-19  Bruno Haible  <bruno@clisp.org>
5048
5049         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
5050         empty.
5051         Reported by Eric Blake.
5052
5053 2007-07-18  Bruno Haible  <bruno@clisp.org>
5054
5055         * gnulib-tool: New options --po-base, --po-domain.
5056         (func_usage): Document them.
5057         (pobase, po_domain): New variables.
5058         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
5059         DEFAULT_TEXT_DOMAIN.
5060         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
5061         (func_import): Consider pobase and po_domain. Create a po/ directory.
5062         (func_create_testdir): Set pobase and po_domain to empty.
5063         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
5064         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
5065
5066 2007-07-18  Bruno Haible  <bruno@clisp.org>
5067
5068         * gnulib-tool (func_get_automake_snippet): Synthesize also an
5069         EXTRA_DIST augmentation for files in build-aux/.
5070
5071 2007-07-16  Bruno Haible  <bruno@clisp.org>
5072
5073         * modules/lseek (License): Use the synonymous term "LGPLv2+".
5074         * modules/getdelim (License): Likewise.
5075
5076 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5077
5078         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
5079         * modules/d-type (License): Likewise.
5080         * modules/extensions (License): Likewise.
5081         * modules/fnmatch (License): Likewise.
5082         * modules/fseeko (License): Likewise.
5083         * modules/getaddrinfo (License): Likewise.
5084         * modules/getline (License): Likewise.
5085         * modules/getlogin_r (License): Likewise.
5086         * modules/getpass (License): Likewise.
5087         * modules/gettimeofday (License): Likewise.
5088         * modules/glob (License): Likewise.
5089         * modules/inet_ntop (License): Likewise.
5090         * modules/malloc (License): Likewise.
5091         * modules/malloca (License): Likewise.
5092         * modules/memmem (License): Likewise.
5093         * modules/mempcpy (License): Likewise.
5094         * modules/memset (License): Likewise.
5095         * modules/minmax (License): Likewise.
5096         * modules/mktime (License): Likewise.
5097         * modules/netinet_in (License): Likewise.
5098         * modules/pathmax (License): Likewise.
5099         * modules/poll (License): Likewise.
5100         * modules/regex (License): Likewise.
5101         * modules/snprintf (License): Likewise.
5102         * modules/stdbool (License): Likewise.
5103         * modules/stdint (License): Likewise.
5104         * modules/stdio (License): Likewise.
5105         * modules/strcase (License): Likewise.
5106         * modules/strcasestr (License): Likewise.
5107         * modules/strdup (License): Likewise.
5108         * modules/string (License): Likewise.
5109         * modules/strndup (License): Likewise.
5110         * modules/strnlen (License): Likewise.
5111         * modules/strpbrk (License): Likewise.
5112         * modules/strptime (License): Likewise.
5113         * modules/strsep (License): Likewise.
5114         * modules/sys_select (License): Likewise.
5115         * modules/sys_socket (License): Likewise.
5116         * modules/sys_stat (License): Likewise.
5117         * modules/sys_time (License): Likewise.
5118         * modules/time (License): Likewise.
5119         * modules/time_r (License): Likewise.
5120         * modules/timegm (License): Likewise.
5121         * modules/unistd (License): Likewise.
5122         * modules/vsnprintf (License): Likewise.
5123         * modules/wctype (License): Likewise.
5124
5125 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5126
5127         * modules/argz (License): LGPLv2+.
5128
5129 2007-07-15  Karl Berry  <karl@gnu.org>
5130
5131         * doc/gnulib.texi: revise node structure per new fdl.texi.
5132
5133 2007-07-14  Bruno Haible  <bruno@clisp.org>
5134
5135         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
5136         the output file.
5137         * lib/uniname/uninames.h: Regenerated.
5138
5139 2007-07-14  Karl Berry  <karl@gnu.org>
5140
5141         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
5142         omitting sectioning and index commands.
5143
5144 2007-07-13  Bruno Haible  <bruno@clisp.org>
5145
5146         New gnulib-tool option --more-symlinks.
5147         * gnulib-tool (func_usage): Document --more-symlinks.
5148         (do_copyrights): New variable.
5149         Recognize option --more-symlinks.
5150         (func_import): Don't add a copyright notice transform to
5151         sed_transform_lib_file if do_copyrights is empty.
5152
5153 2007-07-13  Bruno Haible  <bruno@clisp.org>
5154
5155         * lib/vasnprintf.c (decimal_point_char): Define also if
5156         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
5157         && !NEED_PRINTF_DIRECTIVE_A.
5158         Reported by Clemens Koller <clemens.koller@anagramm.de> via
5159         Gary V. Vaughan <gary@gnu.org>.
5160
5161 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
5162
5163         * lib/inttypes_.h: Undo previous change, since it was fixed
5164         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
5165
5166 2007-07-13  Bruno Haible  <bruno@clisp.org>
5167
5168         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
5169         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
5170
5171 2007-07-13  Jim Meyering  <jim@meyering.net>
5172
5173         df: Don't fail for Tru64's "file-on-file mount".
5174         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
5175         so we fall through and use statfs instead.  Details here:
5176         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
5177         Reported by Albert Chin.
5178
5179 2007-07-13  Bruno Haible  <bruno@clisp.org>
5180
5181         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
5182         * modules/configmake (License): Likewise.
5183         * modules/gettext (License): Likewise.
5184         * modules/gettext-h (License): Likewise.
5185         * modules/include_next (License): Likewise.
5186         * modules/link-warning (License): Likewise.
5187         * modules/localcharset (License): Likewise.
5188         * modules/localename (License): Likewise.
5189         * modules/lock (License): Likewise.
5190         * modules/relocatable-lib-lgpl (License): Likewise.
5191         * modules/size_max (License): Likewise.
5192         * modules/vasnprintf (License): Likewise.
5193         * modules/wchar (License): Likewise.
5194         * modules/xsize (License): Likewise.
5195
5196 2007-07-13  Bruno Haible  <bruno@clisp.org>
5197
5198         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
5199         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
5200
5201 2007-07-12  Bruno Haible  <bruno@clisp.org>
5202
5203         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
5204         in the modules files.
5205
5206 2007-07-11  Karl Berry  <karl@gnu.org>
5207
5208         * MODULES.html.sh (func_module): use
5209          sed -e '\|^'"${includefile}"'$|d'
5210          instead of /.../d, to avoid errors on $includefile's containing /.
5211
5212 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
5213
5214         * gnulib-tool (func_import): Avoid duplication of --avoid
5215         statements
5216         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
5217         names to `_' in variable names.
5218
5219 2007-07-10  Eric Blake  <ebb9@byu.net>
5220
5221         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
5222         * NEWS: Document this change.
5223
5224 2007-07-08  Bruno Haible  <bruno@clisp.org>
5225
5226         Update to Unicode 5.0.
5227         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
5228         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
5229         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
5230         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
5231         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
5232         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
5233         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
5234         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
5235         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
5236         U+10A3F, U+1D242..U+1D244.
5237         (nonspacing_table_ind): Update.
5238         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
5239         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
5240
5241 2007-07-08  Bruno Haible  <bruno@clisp.org>
5242
5243         Update to Unicode 5.0.
5244         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
5245         code transform. Extend the name index field of unicode_name_to_code and
5246         unicode_code_to_name from 16 to 24 bits.
5247         * lib/uniname/uniname.c (unicode_character_name,
5248         unicode_name_character): Add the range 0x12xxx to the code transform.
5249         * lib/uniname/uninames.h: Regenerated.
5250         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
5251
5252 2007-07-07  Bruno Haible  <bruno@clisp.org>
5253
5254         * modules/wcwidth-tests: New file.
5255         * tests/test-wcwidth.c: New file.
5256
5257         Work around MacOS X wcwidth() bug.
5258         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
5259         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
5260         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
5261         original wcwidth in non-UTF-8 locales.
5262         * modules/wcwidth (Depends-on): Add localcharset, streq,
5263         uniwidth/width.
5264         * doc/functions/wcwidth.texi: Update.
5265
5266 2007-07-07  Bruno Haible  <bruno@clisp.org>
5267
5268         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
5269         (wcwidth): New declaration.
5270         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
5271         macros.
5272         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
5273         here. Prepare for creating <wchar.h> unconditionally.
5274         * modules/wchar (Depends-on): Add link-warning.
5275         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
5276         REPLACE_WCWIDTH, and GL_LINK_WARNING.
5277         * lib/wcwidth.h: Remove file.
5278         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
5279         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
5280         * modules/wcwidth (Files): Remove lib/wcwidth.h.
5281         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
5282         (Include): Replace wcwidth.h with <wchar.h>.
5283         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
5284         * lib/mbchar.h: Don't include wcwidth.h.
5285         * lib/mbswidth.c: Likewise.
5286         * NEWS: Mention the change.
5287
5288 2007-07-07  Bruno Haible  <bruno@clisp.org>
5289
5290         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
5291         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
5292         definition with an external declaration.
5293         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
5294         defined as a function. Remove AC_C_INLINE requirement.
5295         * modules/wcwidth (Files): Add lib/wcwidth.c.
5296         (Makefile.am): Remove redundant statement.
5297
5298 2007-07-07  Bruno Haible  <bruno@clisp.org>
5299
5300         * MODULES.html.sh (Unicode string functions): Add the new modules.
5301
5302         * tests/uniwidth/test-u32-strwidth.c: New file.
5303         * modules/uniwidth/u32-strwidth-tests: New file.
5304
5305         * lib/uniwidth/u32-strwidth.c: New file.
5306         * modules/uniwidth/u32-strwidth: New file.
5307
5308         * tests/uniwidth/test-u16-strwidth.c: New file.
5309         * modules/uniwidth/u16-strwidth-tests: New file.
5310
5311         * lib/uniwidth/u16-strwidth.c: New file.
5312         * modules/uniwidth/u16-strwidth: New file.
5313
5314         * tests/uniwidth/test-u8-strwidth.c: New file.
5315         * modules/uniwidth/u8-strwidth-tests: New file.
5316
5317         * lib/uniwidth/u8-strwidth.c: New file.
5318         * modules/uniwidth/u8-strwidth: New file.
5319
5320         * tests/uniwidth/test-u32-width.c: New file.
5321         * modules/uniwidth/u32-width-tests: New file.
5322
5323         * lib/uniwidth/u32-width.c: New file.
5324         * modules/uniwidth/u32-width: New file.
5325
5326         * tests/uniwidth/test-u16-width.c: New file.
5327         * modules/uniwidth/u16-width-tests: New file.
5328
5329         * lib/uniwidth/u16-width.c: New file.
5330         * modules/uniwidth/u16-width: New file.
5331
5332         * tests/uniwidth/test-u8-width.c: New file.
5333         * modules/uniwidth/u8-width-tests: New file.
5334
5335         * lib/uniwidth/u8-width.c: New file.
5336         * modules/uniwidth/u8-width: New file.
5337
5338         * tests/uniwidth/test-uc_width.c: New file.
5339         * modules/uniwidth/width-tests: New file.
5340
5341         * lib/uniwidth/width.c: New file, from GNU libiconv.
5342         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
5343         * modules/uniwidth/width: New file.
5344
5345         * lib/uniwidth.h: New file, from GNU libiconv.
5346         * modules/uniwidth/base: New file.
5347
5348 2007-07-07  Bruno Haible  <bruno@clisp.org>
5349
5350         * lib/uniname.h: New file, from GNU gettext.
5351         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
5352         * lib/uniname/uninames.h: New file, from GNU gettext.
5353         * lib/uniname/uniname.c: New file, from GNU gettext.
5354         * tests/uniname/test-uninames.sh: New file.
5355         * tests/uniname/test-uninames.c: New file, from GNU gettext.
5356         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
5357         * modules/uniname/base: New file.
5358         * modules/uniname/uniname: New file.
5359         * modules/uniname/uniname-tests: New file.
5360         * MODULES.html.sh (Unicode string functions): Add the new modules.
5361
5362 2007-07-06  Bruno Haible  <bruno@clisp.org>
5363
5364         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
5365
5366 2007-07-06  Bruno Haible  <bruno@clisp.org>
5367
5368         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
5369         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
5370         includes <cygwin/sys_time.h> which includes <sys/select.h> which
5371         include <sys/time.h>.
5372         Reported by Eric Blake.
5373
5374 2007-07-06  Eric Blake  <ebb9@byu.net>
5375
5376         Fix testing canonicalize on cygwin.
5377         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
5378         Revert patch from 2007-06-19.
5379         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
5380         canonicalize module is also in use.
5381         * tests/test-canonicalize.c: New file.
5382         * tests/test-canonicalize.sh: Likewise.
5383         * modules/canonicalize-tests: Likewise.
5384
5385 2007-07-06  Jim Meyering  <jim@meyering.net>
5386
5387         * lib/getugroups.c (getugroups): Detect getgrent failure.
5388         Adjust comment to reflect reality: this function may return -1.
5389
5390 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
5391
5392         * build-aux/bootstrap (TP_URL,get_translations): Update to use
5393         the new TP address.
5394         (usage): Fix typo
5395         (gnulib_mk): New variable.
5396
5397 2007-07-05  Jim Meyering  <jim@meyering.net>
5398
5399         Don't let endgrent clobber errno, no matter how improbable.
5400         * lib/getugroups.c (getugroups): Save and restore errno around
5401         endgrent call.
5402
5403         Close the group DB even when failing with 2^31 or more members.
5404         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
5405
5406 2007-07-04  Jim Meyering  <jim@meyering.net>
5407
5408         * lib/getugroups.h: New file.
5409         * lib/getugroups.c: Include "getugroups.h".
5410         Remove uses of "register" keyword.
5411         Move local variable, "cp", down into scope where used.
5412         Give "username" parameter the "const" attribute.
5413         * modules/getugroups (Files): Add lib/getugroups.h
5414
5415 2007-07-04  Karl Berry  <karl@gnu.org>
5416
5417         * MODULES.html.sh (func_all_modules): Complete rename of
5418         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
5419
5420 2007-07-02  Bruno Haible  <bruno@clisp.org>
5421
5422         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
5423         mode, when inttypes.h comes from gnulib.
5424         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
5425
5426 2007-07-02  Simon Josefsson  <simon@josefsson.org>
5427
5428         * NEWS: Mention lgpl module name change.
5429
5430         * modules/lgpl-2.1: Renamed from lgpl.
5431
5432         * NEWS: Mention gpl module name change.
5433
5434         * modules/gpl-3.0: New file, based on gpl-2.0.
5435
5436         * modules/gpl-2.0: Renamed from gpl.
5437
5438         * modules/gpl: Fix filename, doc/gpl.texi is now found at
5439         doc/gpl-2.0.texi.
5440
5441 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
5442
5443         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
5444         #define __STDC_LIMIT_MACROS temporarily while including
5445         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
5446         Problem reported by Joel E. Denny in
5447         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
5448
5449 2007-07-01  Bruno Haible  <bruno@clisp.org>
5450
5451         * lib/unistdio.h: New file.
5452         * lib/unistdio/u-asnprintf.h: New file.
5453         * lib/unistdio/u-asprintf.h: New file.
5454         * lib/unistdio/u-printf-args.c: New file.
5455         * lib/unistdio/u-printf-args.h: New file.
5456         * lib/unistdio/u-printf-parse.h: New file.
5457         * lib/unistdio/u-snprintf.h: New file.
5458         * lib/unistdio/u-sprintf.h: New file.
5459         * lib/unistdio/u-vasprintf.h: New file.
5460         * lib/unistdio/u-vsnprintf.h: New file.
5461         * lib/unistdio/u-vsprintf.h: New file.
5462         * lib/unistdio/ulc-asnprintf.c: New file.
5463         * lib/unistdio/ulc-asprintf.c: New file.
5464         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
5465         * lib/unistdio/ulc-printf-parse.c: New file.
5466         * lib/unistdio/ulc-snprintf.c: New file.
5467         * lib/unistdio/ulc-sprintf.c: New file.
5468         * lib/unistdio/ulc-vasnprintf.c: New file.
5469         * lib/unistdio/ulc-vasprintf.c: New file.
5470         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
5471         * lib/unistdio/ulc-vsnprintf.c: New file.
5472         * lib/unistdio/ulc-vsprintf.c: New file.
5473         * lib/unistdio/u8-asnprintf.c: New file.
5474         * lib/unistdio/u8-asprintf.c: New file.
5475         * lib/unistdio/u8-printf-parse.c: New file.
5476         * lib/unistdio/u8-snprintf.c: New file.
5477         * lib/unistdio/u8-sprintf.c: New file.
5478         * lib/unistdio/u8-vasnprintf.c: New file.
5479         * lib/unistdio/u8-vasprintf.c: New file.
5480         * lib/unistdio/u8-vsnprintf.c: New file.
5481         * lib/unistdio/u8-vsprintf.c: New file.
5482         * lib/unistdio/u8-u8-asnprintf.c: New file.
5483         * lib/unistdio/u8-u8-asprintf.c: New file.
5484         * lib/unistdio/u8-u8-snprintf.c: New file.
5485         * lib/unistdio/u8-u8-sprintf.c: New file.
5486         * lib/unistdio/u8-u8-vasnprintf.c: New file.
5487         * lib/unistdio/u8-u8-vasprintf.c: New file.
5488         * lib/unistdio/u8-u8-vsnprintf.c: New file.
5489         * lib/unistdio/u8-u8-vsprintf.c: New file.
5490         * lib/unistdio/u16-asnprintf.c: New file.
5491         * lib/unistdio/u16-asprintf.c: New file.
5492         * lib/unistdio/u16-printf-parse.c: New file.
5493         * lib/unistdio/u16-snprintf.c: New file.
5494         * lib/unistdio/u16-sprintf.c: New file.
5495         * lib/unistdio/u16-vasnprintf.c: New file.
5496         * lib/unistdio/u16-vasprintf.c: New file.
5497         * lib/unistdio/u16-vsnprintf.c: New file.
5498         * lib/unistdio/u16-vsprintf.c: New file.
5499         * lib/unistdio/u16-u16-asnprintf.c: New file.
5500         * lib/unistdio/u16-u16-asprintf.c: New file.
5501         * lib/unistdio/u16-u16-snprintf.c: New file.
5502         * lib/unistdio/u16-u16-sprintf.c: New file.
5503         * lib/unistdio/u16-u16-vasnprintf.c: New file.
5504         * lib/unistdio/u16-u16-vasprintf.c: New file.
5505         * lib/unistdio/u16-u16-vsnprintf.c: New file.
5506         * lib/unistdio/u16-u16-vsprintf.c: New file.
5507         * lib/unistdio/u32-asnprintf.c: New file.
5508         * lib/unistdio/u32-asprintf.c: New file.
5509         * lib/unistdio/u32-printf-parse.c: New file.
5510         * lib/unistdio/u32-snprintf.c: New file.
5511         * lib/unistdio/u32-sprintf.c: New file.
5512         * lib/unistdio/u32-vasnprintf.c: New file.
5513         * lib/unistdio/u32-vasprintf.c: New file.
5514         * lib/unistdio/u32-vsnprintf.c: New file.
5515         * lib/unistdio/u32-vsprintf.c: New file.
5516         * lib/unistdio/u32-u32-asnprintf.c: New file.
5517         * lib/unistdio/u32-u32-asprintf.c: New file.
5518         * lib/unistdio/u32-u32-snprintf.c: New file.
5519         * lib/unistdio/u32-u32-sprintf.c: New file.
5520         * lib/unistdio/u32-u32-vasnprintf.c: New file.
5521         * lib/unistdio/u32-u32-vasprintf.c: New file.
5522         * lib/unistdio/u32-u32-vsnprintf.c: New file.
5523         * lib/unistdio/u32-u32-vsprintf.c: New file.
5524         * tests/unistdio/test-ulc-asnprintf1.c: New file.
5525         * tests/unistdio/test-ulc-asnprintf1.h: New file.
5526         * tests/unistdio/test-ulc-printf1.h: New file.
5527         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
5528         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
5529         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
5530         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
5531         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
5532         * tests/unistdio/test-ulc-vasprintf1.c: New file.
5533         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
5534         * tests/unistdio/test-ulc-vsprintf1.c: New file.
5535         * tests/unistdio/test-u8-asnprintf1.c: New file.
5536         * tests/unistdio/test-u8-asnprintf1.h: New file.
5537         * tests/unistdio/test-u8-printf1.h: New file.
5538         * tests/unistdio/test-u8-vasnprintf1.c: New file.
5539         * tests/unistdio/test-u8-vasnprintf2.c: New file.
5540         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
5541         * tests/unistdio/test-u8-vasnprintf3.c: New file.
5542         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
5543         * tests/unistdio/test-u8-vasprintf1.c: New file.
5544         * tests/unistdio/test-u8-vsnprintf1.c: New file.
5545         * tests/unistdio/test-u8-vsprintf1.c: New file.
5546         * tests/unistdio/test-u16-asnprintf1.c: New file.
5547         * tests/unistdio/test-u16-asnprintf1.h: New file.
5548         * tests/unistdio/test-u16-printf1.h: New file.
5549         * tests/unistdio/test-u16-vasnprintf1.c: New file.
5550         * tests/unistdio/test-u16-vasnprintf2.c: New file.
5551         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
5552         * tests/unistdio/test-u16-vasnprintf3.c: New file.
5553         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
5554         * tests/unistdio/test-u16-vasprintf1.c: New file.
5555         * tests/unistdio/test-u16-vsnprintf1.c: New file.
5556         * tests/unistdio/test-u16-vsprintf1.c: New file.
5557         * tests/unistdio/test-u32-asnprintf1.c: New file.
5558         * tests/unistdio/test-u32-asnprintf1.h: New file.
5559         * tests/unistdio/test-u32-printf1.h: New file.
5560         * tests/unistdio/test-u32-vasnprintf1.c: New file.
5561         * tests/unistdio/test-u32-vasnprintf2.c: New file.
5562         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
5563         * tests/unistdio/test-u32-vasnprintf3.c: New file.
5564         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
5565         * tests/unistdio/test-u32-vasprintf1.c: New file.
5566         * tests/unistdio/test-u32-vsnprintf1.c: New file.
5567         * tests/unistdio/test-u32-vsprintf1.c: New file.
5568         * modules/unistdio/base: New file.
5569         * modules/unistdio/u-printf-args: New file.
5570         * modules/unistdio/ulc-asnprintf: New file.
5571         * modules/unistdio/ulc-asprintf: New file.
5572         * modules/unistdio/ulc-fprintf: New file.
5573         * modules/unistdio/ulc-printf-parse: New file.
5574         * modules/unistdio/ulc-snprintf: New file.
5575         * modules/unistdio/ulc-sprintf: New file.
5576         * modules/unistdio/ulc-vasnprintf: New file.
5577         * modules/unistdio/ulc-vasprintf: New file.
5578         * modules/unistdio/ulc-vfprintf: New file.
5579         * modules/unistdio/ulc-vsnprintf: New file.
5580         * modules/unistdio/ulc-vsprintf: New file.
5581         * modules/unistdio/u8-asnprintf: New file.
5582         * modules/unistdio/u8-asprintf: New file.
5583         * modules/unistdio/u8-printf-parse: New file.
5584         * modules/unistdio/u8-snprintf: New file.
5585         * modules/unistdio/u8-sprintf: New file.
5586         * modules/unistdio/u8-vasnprintf: New file.
5587         * modules/unistdio/u8-vasprintf: New file.
5588         * modules/unistdio/u8-vsnprintf: New file.
5589         * modules/unistdio/u8-vsprintf: New file.
5590         * modules/unistdio/u8-u8-asnprintf: New file.
5591         * modules/unistdio/u8-u8-asprintf: New file.
5592         * modules/unistdio/u8-u8-snprintf: New file.
5593         * modules/unistdio/u8-u8-sprintf: New file.
5594         * modules/unistdio/u8-u8-vasnprintf: New file.
5595         * modules/unistdio/u8-u8-vasprintf: New file.
5596         * modules/unistdio/u8-u8-vsnprintf: New file.
5597         * modules/unistdio/u8-u8-vsprintf: New file.
5598         * modules/unistdio/u16-asnprintf: New file.
5599         * modules/unistdio/u16-asprintf: New file.
5600         * modules/unistdio/u16-printf-parse: New file.
5601         * modules/unistdio/u16-snprintf: New file.
5602         * modules/unistdio/u16-sprintf: New file.
5603         * modules/unistdio/u16-vasnprintf: New file.
5604         * modules/unistdio/u16-vasprintf: New file.
5605         * modules/unistdio/u16-vsnprintf: New file.
5606         * modules/unistdio/u16-vsprintf: New file.
5607         * modules/unistdio/u16-u16-asnprintf: New file.
5608         * modules/unistdio/u16-u16-asprintf: New file.
5609         * modules/unistdio/u16-u16-snprintf: New file.
5610         * modules/unistdio/u16-u16-sprintf: New file.
5611         * modules/unistdio/u16-u16-vasnprintf: New file.
5612         * modules/unistdio/u16-u16-vasprintf: New file.
5613         * modules/unistdio/u16-u16-vsnprintf: New file.
5614         * modules/unistdio/u16-u16-vsprintf: New file.
5615         * modules/unistdio/u32-asnprintf: New file.
5616         * modules/unistdio/u32-asprintf: New file.
5617         * modules/unistdio/u32-printf-parse: New file.
5618         * modules/unistdio/u32-snprintf: New file.
5619         * modules/unistdio/u32-sprintf: New file.
5620         * modules/unistdio/u32-vasnprintf: New file.
5621         * modules/unistdio/u32-vasprintf: New file.
5622         * modules/unistdio/u32-vsnprintf: New file.
5623         * modules/unistdio/u32-vsprintf: New file.
5624         * modules/unistdio/u32-u32-asnprintf: New file.
5625         * modules/unistdio/u32-u32-asprintf: New file.
5626         * modules/unistdio/u32-u32-snprintf: New file.
5627         * modules/unistdio/u32-u32-sprintf: New file.
5628         * modules/unistdio/u32-u32-vasnprintf: New file.
5629         * modules/unistdio/u32-u32-vasprintf: New file.
5630         * modules/unistdio/u32-u32-vsnprintf: New file.
5631         * modules/unistdio/u32-u32-vsprintf: New file.
5632         * modules/unistdio/ulc-asnprintf-tests: New file.
5633         * modules/unistdio/ulc-vasnprintf-tests: New file.
5634         * modules/unistdio/ulc-vasprintf-tests: New file.
5635         * modules/unistdio/ulc-vsnprintf-tests: New file.
5636         * modules/unistdio/ulc-vsprintf-tests: New file.
5637         * modules/unistdio/u8-asnprintf-tests: New file.
5638         * modules/unistdio/u8-vasnprintf-tests: New file.
5639         * modules/unistdio/u8-vasprintf-tests: New file.
5640         * modules/unistdio/u8-vsnprintf-tests: New file.
5641         * modules/unistdio/u8-vsprintf-tests: New file.
5642         * modules/unistdio/u16-asnprintf-tests: New file.
5643         * modules/unistdio/u16-vasnprintf-tests: New file.
5644         * modules/unistdio/u16-vasprintf-tests: New file.
5645         * modules/unistdio/u16-vsnprintf-tests: New file.
5646         * modules/unistdio/u16-vsprintf-tests: New file.
5647         * modules/unistdio/u32-asnprintf-tests: New file.
5648         * modules/unistdio/u32-vasnprintf-tests: New file.
5649         * modules/unistdio/u32-vasprintf-tests: New file.
5650         * modules/unistdio/u32-vsnprintf-tests: New file.
5651         * modules/unistdio/u32-vsprintf-tests: New file.
5652         * MODULES.html.sh (Unicode string functions): Add the new modules.
5653
5654 2007-07-01  Bruno Haible  <bruno@clisp.org>
5655
5656         * lib/sprintf.c (sprintf): Limit the available length estimation,
5657         to avoid address wraparound.
5658         * lib/vsprintf.c (vsprintf): Likewise.
5659         * modules/sprintf-posix (Dependencies): Add stdint.
5660         * modules/vsprintf-posix (Dependencies): Likewise.
5661
5662 2007-07-01  Bruno Haible  <bruno@clisp.org>
5663
5664         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
5665         Windows PATH as well. Conservative double-quoting. Comments.
5666
5667 2007-07-01  Bruno Haible  <bruno@clisp.org>
5668             Eric Blake  <ebb9@byu.net>
5669             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5670
5671         * gnulib-tool (self_abspathname): Fix algorithm to cope with
5672         empty components in $PATH, denoting '.'.
5673
5674 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5675
5676         * gnulib-tool: Fix indentation.
5677         (func_create_megatestdir): Likewise.
5678         Report by Bruno Haible.
5679
5680 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5681
5682         Sync from Automake.
5683         * build-aux/gnupload: Fix shell portability issues with for loops.
5684         Report by Karl Berry.
5685
5686 2007-06-29  Simon Josefsson  <simon@josefsson.org>
5687
5688         * build-aux/maint.mk (POURL): Use translationproject.org.
5689
5690 2007-06-27  Simon Josefsson  <simon@josefsson.org>
5691             Bruno Haible  <bruno@clisp.org>
5692
5693         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
5694         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
5695         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
5696         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
5697         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
5698
5699 2007-06-27  Bruno Haible  <bruno@clisp.org>
5700
5701         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
5702         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
5703
5704 2007-06-26  Karl Berry  <karl@gnu.org>
5705
5706         * MODULES.html.sh: remove xreadlink-with-size.
5707
5708 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
5709
5710         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
5711         method that I hope also handles the double-include problem noted
5712         by Bruno Haible in
5713         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
5714
5715 2007-06-23  Bruno Haible  <bruno@clisp.org>
5716
5717         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
5718         Don't let the 'mostlyclean' target fail if the last subdirectory could
5719         not be removed.
5720         Reported by Karl Berry.
5721
5722 2007-06-23  Bruno Haible  <bruno@clisp.org>
5723
5724         * gnulib-tool (echo): Add a speedier workaround for ksh.
5725         * tests/test-echo.sh: Likewise.
5726
5727 2007-06-23  Bruno Haible  <bruno@clisp.org>
5728
5729         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
5730         * tests/test-echo.sh: Likewise.
5731
5732 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5733
5734         * gnulib-tool (IFS): Initialize early, so we don't set it to
5735         empty later.
5736         (self_abspathname): Rewrite algorithm to set it, reindent.
5737         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
5738         (func_create_megatestdir): Merge some sed scripts.
5739
5740 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
5741
5742         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
5743         exposed by Sun Studio 11 cc on Solaris 8.
5744
5745 2007-06-22  Bruno Haible  <bruno@clisp.org>
5746
5747         * gnulib-tool (echo): Ensure the echo primitive does not interpret
5748         backslashes.
5749         * tests/test-echo.sh: New file.
5750
5751 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5752
5753         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
5754         simplify `sed_replace_build_aux' scripts, they are portable but
5755         echoing them with `echo' is not.
5756         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
5757
5758 2007-06-21  Karl Berry  <karl@gnu.org>
5759
5760         * config/srclist.txt: guess we can't handle the licenses via
5761         srclist at the moment.
5762
5763 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
5764
5765         * MODULES.html.sh: Add include_next.
5766         * modules/include_next: New file.
5767
5768 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
5769
5770         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
5771         INCLUDE_NEXT.
5772         (gl_CHECK_NEXT_HEADERS): New macro.
5773         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
5774         the obsolescent gl_ABSOLUTE_HEADER.
5775         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
5776         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
5777         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
5778         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
5779         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
5780         * m4/math_h.m4 (gl_MATH_H): Likewise.
5781         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
5782         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
5783         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
5784         * m4/stdint.m4 (gl_STDINT_H): Likewise.
5785         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
5786         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
5787         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
5788         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
5789         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
5790         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
5791         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
5792         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
5793         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
5794         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
5795         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
5796         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
5797         * m4/inttypes.m4 (gl_INTTYPES_H): Define
5798         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
5799         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
5800         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
5801         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
5802         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
5803         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
5804         * lib/float_.h: Likewise.
5805         * lib/inttypes_.h: Likewise.
5806         * lib/math_.h: Likewise.
5807         * lib/search_.h: Likewise.
5808         * lib/signal_.h: Likewise.
5809         * lib/stdint_.h: Likewise.
5810         * lib/stdio_.h: Likewise.
5811         * lib/stdlib_.h: Likewise.
5812         * lib/string_.h: Likewise.
5813         * lib/sys_stat_.h: Likewise.
5814         * lib/sys_time_.h: Likewise.
5815         * lib/time_.h: Likewise.
5816         * lib/unistd_.h: Likewise.
5817         * lib/wchar_.h: Likewise.
5818         * lib/wctype_.h: Likewise.
5819         * lib/dirent_.h: Likewise.
5820         * lib/iconv_.h: Likewise.
5821         * lib/locale_.h: Likewise.
5822         * lib/netinet_in_.h: Likewise.
5823         * lib/sys_select_.h: Likewise.
5824         * lib/sys_socket_.h: Likewise.
5825         * lib/sysexits_.h: Likewise.
5826         * modules/fcntl (Depends-on): Depend on include_next, not
5827         absolute_header.
5828         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
5829         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
5830         * modules/fchdir: Likewise.
5831         * modules/float: Likewise.
5832         * modules/iconv_open: Likewise.
5833         * modules/inttypes: Likewise.
5834         * modules/locale: Likewise.
5835         * modules/math: Likewise.
5836         * modules/netinet_in: Likewise.
5837         * modules/search: Likewise.
5838         * modules/signal: Likewise.
5839         * modules/stdint: Likewise.
5840         * modules/stdio: Likewise.
5841         * modules/stdlib: Likewise.
5842         * modules/string: Likewise.
5843         * modules/sys_select: Likewise.
5844         * modules/sys_socket: Likewise.
5845         * modules/sys_stat: Likewise.
5846         * modules/sys_time: Likewise.
5847         * modules/sysexits: Likewise.
5848         * modules/time: Likewise.
5849         * modules/unistd: Likewise.
5850         * modules/wchar: Likewise.
5851         * modules/wctype: Likewise.
5852         * modules/sys_stat: Change maintainer to "all".
5853         * modules/unistd: Likewise.
5854
5855 2007-06-20  Karl Berry  <karl@gnu.org>
5856
5857         * config/srclist.txt: track www changes in license files.
5858
5859 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
5860
5861         * build-aux/bootstrap: Remove stray dot.
5862         Make sure build_aux settings are honored when linking
5863         gnulib_extra_files.
5864
5865 2007-06-19  Eric Blake  <ebb9@byu.net>
5866
5867         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
5868         Allow compilation on cygwin.
5869
5870 2007-06-19  Jim Meyering  <jim@meyering.net>
5871
5872         xreadlink-with-size: Remove module.  No longer used.
5873         Ex-callers now use xreadlink or mreadlink-with-size.
5874         * modules/xreadlink-with-size: Remove module.
5875         * lib/xreadlink-with-size.c: Remove file.
5876         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
5877         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
5878         just before the function definition *is* accurate.
5879
5880         Eliminate one way canonicalize_filename_mode could exit.
5881         * lib/canonicalize.c (canonicalize_filename_mode):
5882         Use mreadlink_with_size, not xreadlink_with_size.
5883
5884 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
5885
5886         Detect porting problems to FreeBSD/arm, which has time_t wider than
5887         long int.  Original problem reported for GNU diff by Xin Li in
5888         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
5889         * modules/getdate (Depends-on): Add intprops, verify.
5890         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
5891         is an integer type no wider than long int.
5892
5893 2007-06-18  Jim Meyering  <jim@meyering.net>
5894
5895         New module: mreadlink-with-size.
5896         * MODULES.html.sh: Add mreadlink-with-size.
5897         * modules/mreadlink-with-size: New module
5898         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
5899         not xreadlink-with-size.
5900         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
5901
5902 2007-06-16  Bruno Haible  <bruno@clisp.org>
5903
5904         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
5905         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
5906         Reported by Gary V. Vaughan <gary@gnu.org>.
5907
5908 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
5909
5910         Revamp lchown so that it lives in unistd.h where it belongs.
5911         * lib/lchown.h: Remove.
5912         * lib/dirchownmod.c: Don't include lib/lchown.h.
5913         * lib/fchownat.c: Likewise.
5914         * lib/openat.c: Likewise.
5915         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
5916         does not follow symlinks.
5917         (EOPNOTSUPP): Define if not defined.
5918         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
5919         is defined to 0.
5920         (lchown): New decl.
5921         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
5922         Do not check for lchown decl.
5923         Set REPLACE_LCHOWN.
5924         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
5925         REPLACE_LCHOWN.
5926         * modules/chown: Make it clear it follows symlinks.
5927         * modules/lchown: Make it clear it doesn't follow symlinks.
5928         (Files): Remove lib/lchown.h
5929         (Depends-on): Add unistd.
5930         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
5931         (Include): Include <unistd.h>, not "lchown.h".
5932         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
5933         REPLACE_LCHOWN.
5934
5935 2007-06-15  Jim Meyering  <jim@meyering.net>
5936
5937         Change license (GPL to LGPL) of fsusage and dependents.
5938         * modules/fsusage (License): Change to LGPL.
5939         * modules/full-read (License): Likewise.
5940         * modules/full-write (License): Likewise.
5941         * modules/safe-read (License): Likewise.
5942         * modules/safe-write (License): Likewise.
5943
5944 2007-06-14  Ben Pfaff  <blp@gnu.org>
5945
5946         Missing part of allocsa -> malloca transition.
5947         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
5948         gl_MALLOCA.
5949
5950 2007-06-12  Bruno Haible  <bruno@clisp.org>
5951
5952         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
5953         to ia64, x86_64, i386.
5954         Reported by Eric Blake.
5955
5956 2007-06-12  Bruno Haible  <bruno@clisp.org>
5957
5958         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
5959         cross-compiling to x86_64.
5960
5961 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
5962
5963         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
5964         glitch reported by Ralf Wildenhues in
5965         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
5966
5967         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
5968         Vin Shelton.
5969
5970 2007-06-11  Bruno Haible  <bruno@clisp.org>
5971
5972         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
5973         replacement string.
5974         Reported by Eric Blake.
5975
5976 2007-06-10  Bruno Haible  <bruno@clisp.org>
5977
5978         Prepare vasnprintf code for use with Unicode strings.
5979         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
5980         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
5981         TYPE_U32_STRING.
5982         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
5983         a_u32_string variants.
5984         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
5985         * lib/printf-args.c: Don't include config.h and the specification
5986         header if PRINTF_FETCHARGS is already defined.
5987         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
5988         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
5989         TYPE_U16_STRING, TYPE_U32_STRING.
5990         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
5991         u16_directive, u16_directives, u32_directive, u32_directives): New
5992         types.
5993         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
5994         New declarations.
5995         * lib/printf-parse.c: Don't include config.h and the specification
5996         header if PRINTF_PARSE is already defined. Eliminate the set of
5997         parameters for WIDE_CHAR_VERSION; the user of this file must provide
5998         them now. Include c-ctype.h.
5999         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
6000         directive and CHAR_T_ONLY_ASCII.
6001         * lib/vasnprintf.c: Don't include config.h and the specification header
6002         if VASNPRINTF is already defined.
6003         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
6004         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
6005         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
6006         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
6007         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
6008         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
6009         code accordingly.
6010         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
6011         pad_ourselves also in this case, with the 'c' and 's' directives, and
6012         with a different notion of "width".
6013         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
6014
6015 2007-06-10  Bruno Haible  <bruno@clisp.org>
6016
6017         * modules/unistr/u32-mbsnlen: New file.
6018         * lib/unistr/u32-mbsnlen.c: New file.
6019
6020         * modules/unistr/u16-mbsnlen: New file.
6021         * lib/unistr/u16-mbsnlen.c: New file.
6022
6023         * modules/unistr/u8-mbsnlen: New file.
6024         * lib/unistr/u8-mbsnlen.c: New file.
6025
6026         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
6027         declarations.
6028
6029 2007-06-10  Bruno Haible  <bruno@clisp.org>
6030
6031         * lib/string_.h (mbsnlen): New declaration.
6032         * lib/mbsnlen.c: New file.
6033         * m4/mbsnlen.m4: New file.
6034         * modules/mbsnlen: New file.
6035         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
6036         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
6037         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
6038
6039 2007-06-10  Bruno Haible  <bruno@clisp.org>
6040
6041         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
6042
6043 2007-06-10  Bruno Haible  <bruno@clisp.org>
6044
6045         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
6046         * lib/mbuiter.h: Likewise.
6047
6048 2007-06-10  Bruno Haible  <bruno@clisp.org>
6049
6050         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
6051         declaration.
6052
6053 2007-06-10  Karl Berry  <karl@gnu.org>
6054
6055         * config/srclist.txt: remove gettext entries, Bruno prefers
6056         to update individually.
6057
6058 2007-06-10  Bruno Haible  <bruno@clisp.org>
6059
6060         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
6061         'maxlen'. Ensure only length + width bytes are allocated, not
6062         length + 1 + width.
6063
6064 2007-06-09  Bruno Haible  <bruno@clisp.org>
6065
6066         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
6067         (CHAR_T): Remove macro.
6068         (VASNPRINTF): Update.
6069
6070 2007-06-09  Bruno Haible  <bruno@clisp.org>
6071
6072         * MODULES.html.sh (Unicode string functions): Add the new modules.
6073
6074         * modules/uniconv/u32-conv-to-enc: New file.
6075         * lib/uniconv/u32-conv-to-enc.c: New file.
6076         * modules/uniconv/u32-conv-to-enc-tests: New file.
6077         * tests/uniconv/test-u32-conv-to-enc.c: New file.
6078
6079         * modules/uniconv/u16-conv-to-enc: New file.
6080         * lib/uniconv/u16-conv-to-enc.c: New file.
6081         * lib/uniconv/u-conv-to-enc.h: New file.
6082         * modules/uniconv/u16-conv-to-enc-tests: New file.
6083         * tests/uniconv/test-u16-conv-to-enc.c: New file.
6084
6085         * modules/uniconv/u8-conv-to-enc: New file.
6086         * lib/uniconv/u8-conv-to-enc.c: New file.
6087         * modules/uniconv/u8-conv-to-enc-tests: New file.
6088         * tests/uniconv/test-u8-conv-to-enc.c: New file.
6089
6090         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
6091         u32_conv_to_encoding): New declarations.
6092
6093 2007-06-09  Bruno Haible  <bruno@clisp.org>
6094
6095         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
6096
6097 2007-06-09  Bruno Haible  <bruno@clisp.org>
6098
6099         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
6100         * modules/malloca: Renamed from modules/allocsa, updated.
6101         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
6102         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
6103         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
6104         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
6105         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
6106         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
6107         * modules/xmalloca: Renamed from modules/xallocsa, updated.
6108         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
6109         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
6110         * modules/c-strcasestr (Depends-on): Update.
6111         * lib/c-strcasestr.c: Update.
6112         * modules/c-strstr (Depends-on): Update.
6113         * lib/c-strstr.c: Update.
6114         * modules/canonicalize-lgpl (Depends-on): Update.
6115         * lib/canonicalize-lgpl.c: Update.
6116         * modules/clean-temp (Depends-on): Update.
6117         * lib/clean-temp.c: Update.
6118         * modules/csharpcomp (Depends-on): Update.
6119         * lib/csharpcomp.c: Update.
6120         * modules/csharpexec (Depends-on): Update.
6121         * lib/csharpexec.c: Update.
6122         * modules/javacomp (Depends-on): Update.
6123         * lib/javacomp.c: Update.
6124         * modules/javaexec (Depends-on): Update.
6125         * lib/javaexec.c: Update.
6126         * modules/mbscasestr (Depends-on): Update.
6127         * lib/mbscasestr.c: Update.
6128         * modules/mbsstr (Depends-on): Update.
6129         * lib/mbsstr.c: Update.
6130         * modules/setenv (Depends-on): Update.
6131         * lib/setenv.c: Update.
6132         * modules/strcasestr (Depends-on): Update.
6133         * lib/strcasestr.c: Update.
6134         * modules/striconveha (Depends-on): Update.
6135         * lib/striconveha.c: Update.
6136         * modules/relocatable-prog-wrapper (Files): Update.
6137         * lib/relocwrapper.c: Update.
6138         * build-aux/install-reloc: Update.
6139         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
6140
6141 2007-06-08  Bruno Haible  <bruno@clisp.org>
6142
6143         Port to uClibc.
6144         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
6145         * lib/fpurge.c (fpurge): Likewise.
6146         * lib/freading.c (freading): Likewise.
6147         * lib/fseeko.c (rpl_fseeko): Likewise.
6148         * lib/fseterr.c (fseterr): Likewise.
6149         * lib/fwriting.c (fwriting): Likewise.
6150         * tests/test-fflush.c (main): Avoid a failure on uClibc.
6151
6152 2007-06-08  Bruno Haible  <bruno@clisp.org>
6153
6154         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
6155         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
6156         * modules/gettext (Files): Add m4/intlmacosx.m4.
6157
6158 2007-06-07  Bruno Haible  <bruno@clisp.org>
6159
6160         * modules/localename-tests: New file.
6161         * tests/test-localename.c: New file.
6162
6163         New module 'localename'.
6164         * lib/localename.h: New file.
6165         * lib/localename.c: New file, from GNU gettext.
6166         * m4/localename.m4: New file.
6167         * modules/localename: New file.
6168
6169 2007-06-07  Bruno Haible  <bruno@clisp.org>
6170
6171         Work around the lack of <wchar.h> on some builds of uClibc.
6172         * doc/headers/wchar.texi: Update.
6173         * lib/wchar_.h: Include <wchar.h> only if it exists.
6174         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
6175         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
6176         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
6177         doesn't exist.
6178         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
6179         * modules/mbfile (Depends-on): Add wchar.
6180         * modules/mbiter (Depends-on): Likewise.
6181         * modules/mbuiter (Depends-on): Likewise.
6182         Reported by Simon Josefsson.
6183
6184 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
6185
6186         Work around problem reported by Steven M. Schweda in
6187         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
6188         Tru64 5.1B with the Compaq compiler environment installed declares
6189         an 'isblank' function but does not define it in the C library.
6190         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
6191         * lib/regex_internal.h (isblank): Likewise.
6192         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
6193         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
6194
6195 2007-06-05  Bruno Haible  <bruno@clisp.org>
6196
6197         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
6198         ia64.
6199         * modules/printf-safe: New file.
6200         * modules/fprintf-posix (Depends-on): Add printf-safe.
6201         * modules/printf-posix (Depends-on): Likewise.
6202         * modules/snprintf-posix (Depends-on): Likewise.
6203         * modules/sprintf-posix (Depends-on): Likewise.
6204         * modules/vasnprintf-posix (Depends-on): Likewise.
6205         * modules/vasprintf-posix (Depends-on): Likewise.
6206         * modules/vfprintf-posix (Depends-on): Likewise.
6207         * modules/vprintf-posix (Depends-on): Likewise.
6208         * modules/vsnprintf-posix (Depends-on): Likewise.
6209         * modules/vsprintf-posix (Depends-on): Likewise.
6210         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
6211         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
6212         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
6213         "no" on i386, x86_64, ia64.
6214         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
6215         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
6216         on i386, x86_64, ia64.
6217         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
6218         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
6219         on i386, x86_64, ia64.
6220         * tests/test-vasnprintf-posix.c: Include float.h.
6221         (LDBL80_WORDS): New macro.
6222         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
6223         on i386, x86_64, ia64.
6224         * tests/test-vasprintf-posix.c: Include float.h.
6225         (LDBL80_WORDS): New macro.
6226         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
6227         on i386, x86_64, ia64.
6228         * tests/test-snprintf-posix.c: Include float.h.
6229         * tests/test-sprintf-posix.c: Likewise.
6230         * tests/test-vsnprintf-posix.c: Likewise.
6231         * tests/test-vsprintf-posix.c: Likewise.
6232
6233 2007-06-05  Bruno Haible  <bruno@clisp.org>
6234
6235         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
6236         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
6237         non-IEEE numbers on i386, x86_64, ia64.
6238         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
6239         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
6240         * tests/test-isnanl.h: Include float.h.
6241         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
6242
6243 2007-06-05  Bruno Haible  <bruno@clisp.org>
6244
6245         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
6246         also the %a / %A. Handle the %a / %A code before this extra handling.
6247
6248 2007-06-05  Bruno Haible  <bruno@clisp.org>
6249
6250         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
6251         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
6252
6253 2007-06-05  Bruno Haible  <bruno@clisp.org>
6254
6255         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
6256         typo in variable name.
6257
6258 2007-06-05  Eric Blake  <ebb9@byu.net>
6259
6260         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
6261         Reported by Simon Josefsson.
6262
6263 2007-06-04  Bruno Haible  <bruno@clisp.org>
6264
6265         Avoid test failures on some PowerPC platforms.
6266         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
6267         Define differently for PowerPC.
6268         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
6269         Reported by Gary V. Vaughan <gary@gnu.org>.
6270
6271 2007-06-02  Bruno Haible  <bruno@clisp.org>
6272
6273         Fix test-stdint failure on FreeBSD/ia64.
6274         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
6275         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
6276         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
6277         * doc/headers/stdint.texi: Update.
6278
6279 2007-06-01  Bruno Haible  <bruno@clisp.org>
6280
6281         * tests/test-binary-io.c (main): Pass a third argument to open().
6282         Reported by Gary V. Vaughan <gary@gnu.org>.
6283
6284 2007-06-01  Bruno Haible  <bruno@clisp.org>
6285
6286         * doc/functions/frexpl.texi: Update for mingw.
6287
6288 2007-06-01  Bruno Haible  <bruno@clisp.org>
6289
6290         * tests/test-lseek.c (main): Disable test of errno for invalid third
6291         argument.
6292         * doc/functions/lseek.texi: Update.
6293         Reported by Gary V. Vaughan <gary@gnu.org>.
6294
6295 2007-05-28  Bruno Haible  <bruno@clisp.org>
6296
6297         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
6298
6299 2007-05-31  Eric Blake  <ebb9@byu.net>
6300
6301         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
6302         cross compiling.
6303
6304 2007-05-30  Eric Blake  <ebb9@byu.net>
6305         and Bruno Haible  <bruno@clisp.org>
6306
6307         Work around mingw test failures exposed by m4-1.4.9b.
6308         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
6309         * tests/test-unistd.c: Disable uid_t and git_t tests for the
6310         moment.
6311
6312 2007-05-30  Bruno Haible  <bruno@clisp.org>
6313
6314         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
6315         assuming that they are closed. Needed on HP-UX 11.
6316
6317 2007-05-29  Bruno Haible  <bruno@clisp.org>
6318
6319         Fix a problem with #include_next.
6320         * lib/dirent_.h: Split the double-inclusion guard.
6321         * lib/fcntl_.h: Likewise.
6322         * lib/float_.h: Likewise.
6323         * lib/iconv_.h: Likewise.
6324         * lib/inttypes_.h: Likewise.
6325         * lib/locale_.h: Likewise.
6326         * lib/math_.h: Likewise.
6327         * lib/netinet_in_.h: Likewise.
6328         * lib/search_.h: Likewise.
6329         * lib/signal_.h: Likewise.
6330         * lib/stdint_.h: Likewise.
6331         * lib/stdio_.h: Likewise.
6332         * lib/stdlib_.h: Likewise.
6333         * lib/string_.h: Likewise.
6334         * lib/sys_select_.h: Likewise.
6335         * lib/sys_socket_.h: Likewise.
6336         * lib/sys_stat_.h: Likewise.
6337         * lib/sys_time_.h: Likewise.
6338         * lib/sysexits_.h: Likewise.
6339         * lib/time_.h: Likewise.
6340         * lib/unistd_.h: Likewise.
6341         * lib/wchar_.h: Likewise.
6342         * lib/wctype_.h: Likewise.
6343
6344 2007-05-29  Bruno Haible  <bruno@clisp.org>
6345
6346         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
6347         for the moment.
6348
6349 2007-05-29  Bruno Haible  <bruno@clisp.org>
6350
6351         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
6352         invocation.
6353         Reported by Eric Blake.
6354
6355 2007-05-29  Bruno Haible  <bruno@clisp.org>
6356
6357         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
6358         compiling case.
6359
6360 2007-05-29  Eric Blake  <ebb9@byu.net>
6361             Bruno Haible  <bruno@clisp.org>
6362
6363         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
6364         cross compiles.
6365
6366 2007-05-28  Eric Blake  <ebb9@byu.net>
6367
6368         * modules/closein-tests (test_closein_LDADD): Support test on
6369         cygwin with libtool.
6370
6371 2007-05-28  Bruno Haible  <bruno@clisp.org>
6372
6373         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
6374         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
6375         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
6376         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
6377         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
6378         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
6379         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
6380         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
6381         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
6382
6383 2007-05-28  Eric Blake  <ebb9@byu.net>
6384
6385         Unconditionally include <config.h> in unit tests.
6386         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
6387         * tests/test-allocsa.c, tests/test-arcfour.c,
6388         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
6389         tests/test-array_list.c, tests/test-array_oset.c,
6390         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
6391         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
6392         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
6393         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
6394         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
6395         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
6396         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
6397         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
6398         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
6399         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
6400         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
6401         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
6402         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
6403         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
6404         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
6405         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
6406         test-md5.c, test-memmem.c, test-printf-posix.c,
6407         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
6408         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
6409         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
6410         test-strcasestr.c, test-striconv.c, test-striconveh.c,
6411         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
6412         test-vasnprintf-posix2.c, test-vasnprintf.c,
6413         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
6414         test-vfprintf-posix.c, test-vprintf-posix.c,
6415         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
6416         test-xvasprintf.c: Likewise.
6417
6418 2007-05-28  Bruno Haible  <bruno@clisp.org>
6419
6420         * gnulib-tool (func_import): Remember the --with-tests command-line
6421         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
6422         Reported by Eric Blake.
6423
6424 2007-05-28  Bruno Haible  <bruno@clisp.org>
6425
6426         * modules/ftell-tests: New file.
6427         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
6428         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
6429
6430         * lib/ftell.c: New file.
6431         * modules/ftell: New file.
6432         * m4/ftell.m4: New file.
6433         * doc/functions/ftell.texi: Update.
6434         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
6435         REPLACE_FTELL.
6436         * lib/stdio_.h (rpl_ftell): New declaration.
6437         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
6438         REPLACE_FTELL.
6439
6440 2007-05-28  Eric Blake  <ebb9@byu.net>
6441
6442         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
6443
6444 2007-05-28  Bruno Haible  <bruno@clisp.org>
6445
6446         * modules/fseek-tests: New file.
6447         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
6448         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
6449
6450         * lib/fseek.c: New file.
6451         * modules/fseek: New file.
6452         * m4/fseek.m4: New file.
6453         * doc/functions/fseek.texi: Update.
6454         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
6455         REPLACE_FSEEK.
6456         * lib/stdio_.h (rpl_fseek): New declaration.
6457         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
6458         REPLACE_FSEEK.
6459
6460 2007-05-28  Bruno Haible  <bruno@clisp.org>
6461
6462         * lib/stdio_.h (fflush): More comments.
6463
6464 2007-05-28  Bruno Haible  <bruno@clisp.org>
6465
6466         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
6467         runtime test.
6468
6469 2007-05-28  Eric Blake  <ebb9@byu.net>
6470
6471         Improve lseek module.
6472         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
6473         * lib/unistd_.h (lseek): Scale back link warning message.
6474         * tests/test-lseek.c: Beef up test.
6475         * tests/test-lseek.sh: Exercise more facets of lseek.
6476         Reported by Bruno Haible.
6477
6478 2007-05-28  Bruno Haible  <bruno@clisp.org>
6479
6480         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
6481         to define.
6482
6483 2007-05-27  Bruno Haible  <bruno@clisp.org>
6484
6485         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
6486
6487 2007-05-27  Bruno Haible  <bruno@clisp.org>
6488
6489         * modules/openmp: New file.
6490         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
6491         Noah Misch.
6492
6493 2007-05-26  Bruno Haible  <bruno@clisp.org>
6494
6495         * modules/chdir-long (Depends-on): Add fchdir.
6496         * modules/chdir-safer (Depends-on): Likewise.
6497         * modules/fts (Depends-on): Likewise.
6498         * modules/fts-lgpl (Depends-on): Likewise.
6499         * modules/openat (Depends-on): Likewise.
6500         * modules/savewd (Depends-on): Likewise.
6501
6502 2007-05-24  Eric Blake  <ebb9@byu.net>
6503
6504         Fix lseek on mingw.
6505         * modules/lseek: New module.
6506         * m4/lseek.m4: New file.
6507         * lib/lseek.c: New file.
6508         * modules/lseek-tests: New file.
6509         * tests/test-lseek.c: New file.
6510         * tests/test-lseek.sh: New file.
6511         * MODULES.html.sh: Document lseek module.
6512         * modules/fflush (Depends-on): Add lseek, fseeko.
6513         * modules/fseeko (Depends-on): Likewise.
6514         * modules/ftello (Depends-on): Likewise.
6515         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
6516         broken.
6517         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
6518         broken.
6519         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
6520         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
6521         * lib/ftello.c (rpl_ftello): Likewise.
6522         * tests/test-fseeko.c (main): Test this.
6523         * tests/test-fseeko.sh: Likewise.
6524         * tests/test-ftello.c (main): Likewise.
6525         * tests/test-ftello.sh: Likewise.
6526         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
6527         implies replacing fseek.
6528         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
6529         HAVE_FTELLO.
6530         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
6531         * modules/unistd (Makefile.am): Likewise.
6532         * lib/unistd_.h (lseek): Declare a replacement.
6533         * doc/functions/lseek.texi (lseek): Document this fix.
6534         * doc/functions/fseek.texi (fseek): Likewise.
6535         * doc/functions/ftell.texi (ftell): Likewise.
6536
6537 2007-05-24  Bruno Haible  <bruno@clisp.org>
6538
6539         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
6540         in the printed representation of a NaN.
6541         * tests/test-vasprintf-posix.c (test_function): Likewise.
6542         * tests/test-snprintf-posix.h (test_function): Likewise.
6543         * tests/test-sprintf-posix.h (test_function): Likewise.
6544         Reported by Eric Blake.
6545
6546 2007-05-23  Eric Blake  <ebb9@byu.net>
6547
6548         Fix fseeko/ftello on cygwin 1.5.24.
6549         * doc/functions/fseeko.texi (fseeko): Document the fix.
6550         * doc/functions/ftello.texi (ftello): Document the fix.
6551         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
6552         * doc/functions/stdout.text (stdout): New file.
6553         * doc/functions/stderr.text (stderr): New file.
6554         * doc/gnulib.texi (Function Substitutes): Use new files.
6555         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
6556         prior to 1.7.0.
6557         * tests/test-ftello.c (main): Likewise for ftello.
6558         * tests/test-fseeko.sh: New file.
6559         * tests/test-ftello.sh: New file.
6560         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
6561         with seekable stdin.
6562         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
6563         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
6564         (gl_REPLACE_FSEEKO): New macro.
6565         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
6566         * modules/fseeko (Files): Distribute fseeko.c.
6567         * modules/ftello (Files): Distribute ftello.c.
6568         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
6569         mode.
6570         * lib/ftello.c (rpl_ftello): New file.
6571         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
6572         fseeko, ftello.
6573         (gl_STDIN_LARGE_OFFSET): New macro.
6574         * modules/stdio (Makefile.am): Perform the replacement.
6575         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
6576
6577 2007-05-23  Bruno Haible  <bruno@clisp.org>
6578
6579         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
6580         GNULIB_POSIXCHECK is defined.
6581
6582 2007-05-21  Bruno Haible  <bruno@clisp.org>
6583
6584         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
6585         Check also the output for NaN arguments. When cross-compiling, guess
6586         no on IRIX.
6587         * lib/vasnprintf.c: Update comments.
6588         * tests/test-vasnprintf-posix.c (strisnan): New function.
6589         (test_function): Use it.
6590         * tests/test-vasprintf-posix.c (strisnan): New function.
6591         (test_function): Use it.
6592         * tests/test-snprintf-posix.h (strisnan): New function.
6593         (test_function): Use it.
6594         * tests/test-sprintf-posix.h (strisnan): New function.
6595         (test_function): Use it.
6596         Reported by Eric Blake.
6597
6598 2007-05-20  Bruno Haible  <bruno@clisp.org>
6599
6600         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
6601         numbers that fails on BeOS.
6602         * doc/functions/frexpl.texi: Update.
6603
6604 2007-05-20  Jim Meyering  <jim@meyering.net>
6605
6606         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
6607         forced upon us by glibc-2.6.
6608
6609 2007-05-20  Bruno Haible  <bruno@clisp.org>
6610
6611         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
6612         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
6613         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
6614         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
6615         NEED_PRINTF_INFINITE.
6616         (is_infinitel): New function.
6617         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
6618         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
6619         gl_PREREQ_VASNPRINTF_INFINITE.
6620         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
6621         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6622         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
6623         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
6624         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
6625         gl_PREREQ_VASNPRINTF_INFINITE.
6626         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6627         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6628         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6629         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6630         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6631         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6632         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6633         * doc/functions/fprintf.texi: Update.
6634         * doc/functions/printf.texi: Update.
6635         * doc/functions/snprintf.texi: Update.
6636         * doc/functions/sprintf.texi: Update.
6637         * doc/functions/vfprintf.texi: Update.
6638         * doc/functions/vprintf.texi: Update.
6639         * doc/functions/vsnprintf.texi: Update.
6640         * doc/functions/vsprintf.texi: Update.
6641
6642 2007-05-20  Bruno Haible  <bruno@clisp.org>
6643
6644         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
6645         was not found in libc.
6646         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
6647
6648 2007-05-20  Bruno Haible  <bruno@clisp.org>
6649
6650         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
6651         printed as "-nan" instead of "nan".
6652         * tests/test-vasprintf-posix.c (test_function): Likewise.
6653         * tests/test-snprintf-posix.h (test_function): Likewise.
6654         * tests/test-sprintf-posix.h (test_function): Likewise.
6655         Needed for HP-UX 11.
6656
6657 2007-05-20  Jim Meyering  <jim@meyering.net>
6658
6659         Fix buggy test for the fchownat-deref bug.
6660         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
6661         symlink required for the run-test.  Without it, this test would
6662         always declare that fchownat doesn't work, and client code would
6663         unnecessarily use the replacement function with fixed libc.
6664         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
6665         Reported by Greg Schafer.
6666
6667 2007-05-19  Bruno Haible  <bruno@clisp.org>
6668
6669         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
6670         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
6671         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
6672         Needed for IRIX 6.5 and Solaris 2.5.1.
6673
6674 2007-05-19  Bruno Haible  <bruno@clisp.org>
6675
6676         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
6677         (test_function): Skip tests involving -0.0 on platforms where
6678         -0.0 = 0.0.
6679         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
6680         (test_function): Skip tests involving -0.0 on platforms where
6681         -0.0 = 0.0.
6682         * tests/test-snprintf-posix.h (have_minus_zero): New function.
6683         (test_function): Skip tests involving -0.0 on platforms where
6684         -0.0 = 0.0.
6685         * tests/test-sprintf-posix.h (have_minus_zero): New function.
6686         (test_function): Skip tests involving -0.0 on platforms where
6687         -0.0 = 0.0.
6688         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
6689         tests.
6690         * tests/test-printf-posix.h (test_function): Likewise.
6691         * tests/test-printf-posix.output: Remove all -0.0 related results.
6692         Needed for IRIX 6.5.
6693
6694 2007-05-19  Bruno Haible  <bruno@clisp.org>
6695
6696         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
6697         printed as "nan0x7fffffff" instead of "nan".
6698         * tests/test-vasprintf-posix.c (test_function): Likewise.
6699         * tests/test-snprintf-posix.h (test_function): Likewise.
6700         * tests/test-sprintf-posix.h (test_function): Likewise.
6701         * tests/test-fprintf-posix.h (NaN): Remove macro.
6702         (test_function): Remove all NaN related tests.
6703         * tests/test-printf-posix.h (NaN): Remove macro.
6704         (test_function): Remove all NaN related tests.
6705         * tests/test-printf-posix.output: Remove all NaN related results.
6706         Needed for IRIX 6.5.
6707
6708 2007-05-19  Bruno Haible  <bruno@clisp.org>
6709
6710         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
6711         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
6712
6713 2007-05-19  Bruno Haible  <bruno@clisp.org>
6714
6715         * lib/float_.h: New file.
6716         * m4/float_h.m4: New file.
6717         * modules/float: New file.
6718         * modules/isnanl (Dependencies): Add float.
6719         * modules/isnanl-nolibm (Dependencies): Likewise.
6720         * modules/mathl (Dependencies): Likewise.
6721         * modules/printf-frexpl (Dependencies): Likewise.
6722         * modules/signbit (Dependencies): Likewise.
6723         * modules/vasnprintf (Dependencies): Likewise.
6724         * doc/headers/float.texi: Update.
6725
6726 2007-05-19  Jim Meyering  <jim@meyering.net>
6727
6728         * lib/utimens.c (gl_futimens): Rename from futimens,
6729         now that glibc-2.6 declares futimens.
6730         * lib/utimens.h: Likewise.
6731
6732 2007-05-19  Bruno Haible  <bruno@clisp.org>
6733
6734         Avoid test failures on mingw.
6735         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
6736         * tests/test-printf-posix.sh: Likewise.
6737         * tests/test-vfprintf-posix.sh: Likewise.
6738         * tests/test-vprintf-posix.sh: Likewise.
6739
6740 2007-05-19  Bruno Haible  <bruno@clisp.org>
6741
6742         Fix *printf result for NaN, Inf, -0.0 on mingw.
6743         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
6744         * lib/vasnprintf.c: Include math.h and isnan.h.
6745         (is_infinite_or_zero): New function.
6746         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
6747         values in the %f, %F, %e, %E, %g, %G directives.
6748         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
6749         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6750         gl_PRINTF_INFINITE and test its result. Invoke
6751         gl_PREREQ_VASNPRINTF_INFINITE.
6752         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6753         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6754         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6755         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6756         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6757         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6758         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6759         * doc/functions/fprintf.texi: Update.
6760         * doc/functions/printf.texi: Update.
6761         * doc/functions/snprintf.texi: Update.
6762         * doc/functions/sprintf.texi: Update.
6763         * doc/functions/vfprintf.texi: Update.
6764         * doc/functions/vprintf.texi: Update.
6765         * doc/functions/vsnprintf.texi: Update.
6766         * doc/functions/vsprintf.texi: Update.
6767
6768 2007-05-19  Bruno Haible  <bruno@clisp.org>
6769
6770         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
6771         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
6772         Instead of multiplying with 10^k, set extra_zeroes to k.
6773         (scale10_round_long_double): Remove function.
6774
6775 2007-05-18  Bruno Haible  <bruno@clisp.org>
6776
6777         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
6778         introduced on 2007-05-06.
6779
6780 2007-05-18  Bruno Haible  <bruno@clisp.org>
6781
6782         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
6783         %g directives.
6784         * tests/test-vasprintf-posix.c (test_function): Likewise.
6785         * tests/test-snprintf-posix.h (test_function): Likewise.
6786         * tests/test-sprintf-posix.h (test_function): Likewise.
6787
6788 2007-05-18  Bruno Haible  <bruno@clisp.org>
6789
6790         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
6791         (strmatch): New function.
6792         (test_function): Test the %f directive on numbers of various exponents.
6793         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
6794         (strmatch): New function.
6795         (test_function): Test the %f directive on numbers of various exponents.
6796         * tests/test-snprintf-posix.h (strmatch): New function.
6797         (test_function): Test the %f directive on numbers of various exponents.
6798         * tests/test-sprintf-posix.h (strmatch): New function.
6799         (test_function): Test the %f directive on numbers of various exponents.
6800         * tests/test-snprintf-posix.c (SIZEOF): New macro.
6801         * tests/test-sprintf-posix.c (SIZEOF): New macro.
6802         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
6803         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
6804
6805 2007-05-18  Bruno Haible  <bruno@clisp.org>
6806
6807         Add support for 'long double' number output.
6808         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
6809         * lib/vasnprintf.c: Include math.h and float+.h.
6810         (mp_limb_t): New type.
6811         (GMP_LIMB_BITS): New macro.
6812         (mp_twolimb_t): New type.
6813         (GMP_TWOLIMB_BITS): New macro.
6814         (mpn_t): New type.
6815         (multiply, divide, convert_to_decimal, decode_long_double,
6816         scale10_round_long_double, scale10_round_decimal_long_double,
6817         floorlog10l): New functions.
6818         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
6819         for the %f, %F, %e, %E, %g, %G directives.
6820         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
6821         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6822         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
6823         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
6824         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6825         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6826         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6827         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6828         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6829         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6830         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6831         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
6832         * modules/snprintf-posix (Depends-on): Likewise.
6833         * modules/sprintf-posix (Depends-on): Likewise.
6834         * modules/vasnprintf-posix (Depends-on): Likewise.
6835         * modules/vasprintf-posix (Depends-on): Likewise.
6836         * modules/vfprintf-posix (Depends-on): Likewise.
6837         * modules/vsnprintf-posix (Depends-on): Likewise.
6838         * modules/vsprintf-posix (Depends-on): Likewise.
6839         * modules/vasnprintf (Files): Add lib/float+.h.
6840         * doc/functions/fprintf.texi: Update.
6841         * doc/functions/printf.texi: Update.
6842         * doc/functions/snprintf.texi: Update.
6843         * doc/functions/sprintf.texi: Update.
6844         * doc/functions/vfprintf.texi: Update.
6845         * doc/functions/vprintf.texi: Update.
6846         * doc/functions/vsnprintf.texi: Update.
6847         * doc/functions/vsprintf.texi: Update.
6848
6849 2007-05-18  Bruno Haible  <bruno@clisp.org>
6850
6851         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
6852
6853 2007-05-18  Bruno Haible  <bruno@clisp.org>
6854
6855         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
6856         for printing 64-bit integers. Needed for mingw.
6857
6858 2007-05-18  Bruno Haible  <bruno@clisp.org>
6859
6860         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
6861         gl_FUNC_FREXPL_WORKS.
6862         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
6863
6864 2007-05-18  Bruno Haible  <bruno@clisp.org>
6865
6866         * modules/frexpl-nolibm-tests: New file.
6867
6868         * modules/frexpl-nolibm: New file.
6869         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
6870
6871 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
6872
6873         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
6874         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
6875         GCC 4.2, which otherwise issues a lot of warnings.
6876         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
6877         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
6878         Likewise.
6879         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
6880         * modules/iconv_open (iconv.h): Likewise.
6881         * modules/locale (locale.h): Likewise.
6882         * modules/netinet_in (netinet/in.h): Likewise.
6883         * modules/sys_select (sys_select.h): Likewise.
6884         * modules/sys_socket (sys/socket.h): Likewise.
6885         * modules/sys_stat (sys/stat.h): Likewise.
6886         * modules/sysexits (sysexits.h): Likewise.
6887         * modules/unistd (unistd.h): Likewise.
6888
6889 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6890
6891         * modules/closein-tests (Makefile.am): Distribute
6892         `test-closein.sh'.
6893
6894 2007-05-17  Bruno Haible  <bruno@clisp.org>
6895
6896         * tests/test-printf-posix.output: Renamed from
6897         tests/test-fprintf-posix.out.
6898         * modules/fprintf-posix-tests: Update.
6899         * modules/printf-posix-tests: Update.
6900         * modules/vfprintf-posix-tests: Update.
6901         * modules/vprintf-posix-tests: Update.
6902         * tests/test-fprintf-posix.sh: Update.
6903         * tests/test-printf-posix.sh: Update.
6904         * tests/test-vfprintf-posix.sh: Update.
6905         * tests/test-vprintf-posix.sh: Update.
6906         Reported by Ralf Wildenhues.
6907
6908 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
6909
6910         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
6911         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
6912         GCC 4.2, which otherwise issues a lot of warnings.
6913         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
6914         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
6915         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
6916         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
6917         it should no longer be needed.
6918         * lib/string_.h: Likewise.
6919         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
6920         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
6921         * modules/inttypes (inttypes.h): Likewise.
6922         * modules/math (math.h): Likewise.
6923         * modules/search (search.h): Likewise.
6924         * modules/signal (signal.h): Likewise.
6925         * modules/stdint (stdint.h): Likewise.
6926         * modules/stdio (stdio.h): Likewise.
6927         * modules/stdlib (stdlib.h): Likewise.
6928         * modules/string (string.h): Likewise.
6929         * modules/sys_time (sys/time.h): Likewise.
6930         * modules/time (time.h): Likewise.
6931         * modules/wchar (wchar.h): Likewise.
6932         * modules/wctype (wtype.h): Likewise.
6933
6934 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
6935
6936         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
6937
6938 2007-05-13  Bruno Haible  <bruno@clisp.org>
6939
6940         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
6941         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
6942         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
6943         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
6944         (gl_PREREQ_STRTOK_R): Don't require it here.
6945
6946 2007-05-13  Bruno Haible  <bruno@clisp.org>
6947
6948         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
6949         when used in C++ mode.
6950
6951 2007-05-12  Bruno Haible  <bruno@clisp.org>
6952
6953         * lib/linebuffer.h: Tweak doc.
6954         * lib/linebuffer.c: Likewise.
6955
6956 2007-05-12  James Youngman  <jay@gnu.org>
6957
6958         * lib/linebuffer.c (readlinebuffer_delim): New function,
6959         like readlinebuffer, but use a caller-specified delimiter.
6960         (readlinebuffer): Just call readlinebuffer_delim with '\n'
6961         as the delimiter.
6962         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
6963
6964 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
6965
6966         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
6967         * modules/openat (Files): Remove openat-die.c.
6968         (Depends-on): Add openat-die.
6969         * modules/openat-die: New module.
6970
6971 2007-05-06  Bruno Haible  <bruno@clisp.org>
6972
6973         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
6974         Update with info about Cygwin.
6975         * doc/functions/fprintf.texi: Update.
6976         * doc/functions/printf.texi: Update.
6977         * doc/functions/snprintf.texi: Update.
6978         * doc/functions/sprintf.texi: Update.
6979         * doc/functions/vfprintf.texi: Update.
6980         * doc/functions/vprintf.texi: Update.
6981         * doc/functions/vsnprintf.texi: Update.
6982         * doc/functions/vsprintf.texi: Update.
6983         Reported by Eric Blake.
6984
6985 2007-05-06  Bruno Haible  <bruno@clisp.org>
6986
6987         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
6988         padding ourselves for the floating-point directives.
6989         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
6990         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
6991         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
6992         gl_PRINTF_FLAG_ZERO and test its result. Invoke
6993         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
6994         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6995         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
6996         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6997         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6998         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6999         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7000         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7001         * tests/test-snprintf-posix.h (test_function): Also check the width
7002         and some flags in the %f directive.
7003         * tests/test-sprintf-posix.h (test_function): Likewise.
7004         * tests/test-vasnprintf-posix.c (test_function): Likewise.
7005         * tests/test-vasprintf-posix.c (test_function): Likewise.
7006         * doc/functions/fprintf.texi: Update.
7007         * doc/functions/printf.texi: Update.
7008         * doc/functions/snprintf.texi: Update.
7009         * doc/functions/sprintf.texi: Update.
7010         * doc/functions/vfprintf.texi: Update.
7011         * doc/functions/vprintf.texi: Update.
7012         * doc/functions/vsnprintf.texi: Update.
7013         * doc/functions/vsprintf.texi: Update.
7014
7015 2007-05-06  Bruno Haible  <bruno@clisp.org>
7016
7017         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
7018         pass the ' flag character to sprintf or snprintf.
7019         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
7020         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
7021         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
7022         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
7023         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
7024         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7025         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
7026         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7027         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7028         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
7029         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7030         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7031         * tests/test-snprintf-posix.h (test_function): Also check the grouping
7032         flag.
7033         * tests/test-sprintf-posix.h (test_function): Likewise.
7034         * tests/test-vasnprintf-posix.c (test_function): Likewise.
7035         * tests/test-vasprintf-posix.c (test_function): Likewise.
7036         * doc/functions/fprintf.texi: Update.
7037         * doc/functions/printf.texi: Update.
7038         * doc/functions/snprintf.texi: Update.
7039         * doc/functions/sprintf.texi: Update.
7040         * doc/functions/vfprintf.texi: Update.
7041         * doc/functions/vprintf.texi: Update.
7042         * doc/functions/vsnprintf.texi: Update.
7043         * doc/functions/vsprintf.texi: Update.
7044
7045 2007-05-01  Bruno Haible  <bruno@clisp.org>
7046
7047         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
7048
7049 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
7050
7051         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
7052         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
7053
7054 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
7055
7056         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
7057         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
7058         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
7059
7060 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
7061
7062         * lib/argp-help.c (struct hol_entry): New member `ord'.
7063         (HOL_ENTRY_PTRCMP): Use ord for comparison
7064         (hol_sort): Initialize ord.
7065
7066 2007-05-01  Bruno Haible  <bruno@clisp.org>
7067
7068         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
7069         Reported by Eric Blake.
7070         * doc/gnulib.texi (Function Substitutes): Update.
7071
7072 2007-05-01  Bruno Haible  <bruno@clisp.org>
7073
7074         * doc/functions.texi: Remove file, now redundant through
7075         doc/functions/*.texi.
7076
7077 2007-05-01  Bruno Haible  <bruno@clisp.org>
7078
7079         * modules/argp (Depends-on): Add sleep.
7080
7081 2007-05-01  Bruno Haible  <bruno@clisp.org>
7082
7083         * modules/sleep-tests: New file.
7084         * tests/test-sleep.c: New file.
7085
7086         * modules/sleep: New file.
7087         * lib/sleep.c: New file.
7088         * m4/sleep.m4: New file.
7089         * lib/unistd_.h (sleep): New declaration.
7090         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
7091         HAVE_SLEEP.
7092         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
7093         * doc/functions/sleep.texi: Document the sleep module.
7094
7095 2007-05-01  Bruno Haible  <bruno@clisp.org>
7096
7097         * lib/sigprocmask.h: Remove file.
7098         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
7099         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
7100         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
7101         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
7102         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
7103         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
7104         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
7105         HAVE_SIGSET_T as a shell variable.
7106         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
7107         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
7108         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
7109         (Depends-on): Add signal. Remove verify.
7110         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
7111         (Include): Mention <signal.h> instead of sigprocmask.h.
7112         * NEWS: Mention the change.
7113         * lib/fatal-signal.c: Don't include sigprocmask.h.
7114
7115 2007-05-01  Bruno Haible  <bruno@clisp.org>
7116
7117         * modules/signal: New file.
7118         * lib/signal_.h: New file.
7119         * m4/signal_h.m4: New file.
7120
7121 2007-05-01  Bruno Haible  <bruno@clisp.org>
7122
7123         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
7124         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
7125         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
7126         HAVE_WCTYPE_CTMP_BUG into wctype.h.
7127
7128 2007-05-01  Bruno Haible  <bruno@clisp.org>
7129
7130         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
7131         configure time.
7132         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
7133         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
7134         * modules/sys_stat (Makefile.am): Substitute their values into
7135         sys/stat.h.
7136
7137 2007-05-01  Bruno Haible  <bruno@clisp.org>
7138
7139         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
7140         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
7141         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
7142
7143 2007-05-01  Bruno Haible  <bruno@clisp.org>
7144
7145         * doc/header/assert.texi: Undo last change: don't mention the gnulib
7146         'assert' module here.
7147
7148 2007-05-01  Bruno Haible  <bruno@clisp.org>
7149
7150         * doc/functions/*.texi: New files.
7151         * doc/functions/google-ranking.txt: New file.
7152         * doc/gnulib.texi (Function Substitutes): New chapter.
7153         (ctime, inet_ntoa): Remove sections.
7154         * doc/ctime.texi: Remove file.
7155         * doc/inet_ntoa.texi: Remove file.
7156         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
7157         dependencies.
7158         (%.info): New rule, specifying a --reference-limit.
7159
7160 2007-05-01  Bruno Haible  <bruno@clisp.org>
7161
7162         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
7163
7164 2007-05-01  Bruno Haible  <bruno@clisp.org>
7165
7166         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
7167         the portability of 'mkdir' to mingw systems.
7168
7169 2007-05-01  Bruno Haible  <bruno@clisp.org>
7170
7171         * doc/headers/google-ranking.txt: New file.
7172
7173 2007-04-30  Eric Blake  <ebb9@byu.net>
7174
7175         Prefer fseeko to fseek.
7176         * modules/getpass (Depends-on): Add fseeko.
7177         * lib/getpass.c (getpass): Use fseeko, not fseek.
7178
7179 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
7180
7181         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
7182         assumes the sorting is stable, while most qsort implementations
7183         are not.  Use argument addresses to ensure they never compare as
7184         equal.
7185
7186         * tests/test-argp-2.sh (usage-indent test): Fix output
7187         (func_compare): Restore diff options
7188         * tests/test-argp.c: Restore #include "progname.h"
7189
7190 2007-04-29  Bruno Haible  <bruno@clisp.org>
7191
7192         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
7193         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
7194         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
7195         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7196         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
7197         (configure.ac): Define CHECK_SNPRINTF_POSIX.
7198         (TESTS, check_PROGRAMS): Add test-snprintf.
7199         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
7200         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
7201         (TESTS, check_PROGRAMS): Add test-vsnprintf.
7202         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
7203         assertions that fail on HP-UX, OSF/1, or IRIX.
7204         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
7205
7206 2007-04-29  Bruno Haible  <bruno@clisp.org>
7207
7208         * MODULES.html.sh (posix_functions): Remove 'contents'.
7209
7210 2007-04-29  Karl Berry  <karl@gnu.org>
7211
7212         * config/srclist.txt (gendocs_template_min): new entry.
7213
7214 2007-04-29  Bruno Haible  <bruno@clisp.org>
7215
7216         Work around fpurge bug on BSD systems.
7217         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
7218         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
7219         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
7220         fpurge to rpl_fpurge if the system already has this function.
7221         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
7222         the case where the system already has this function. Correct invariants
7223         on BSD systems.
7224         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
7225         BSD systems.
7226
7227 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
7228
7229         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
7230         proposed by Sven Verdoolaege.
7231
7232         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
7233         options.
7234         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
7235         (usage and help tests): Update
7236
7237 2007-04-29  Bruno Haible  <bruno@clisp.org>
7238
7239         * tests/test-fflush.c (main): Use a file of size 17, not 10.
7240         Print more information in case of failure. Disable a test on BeOS.
7241
7242 2007-04-29  Bruno Haible  <bruno@clisp.org>
7243
7244         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
7245         This helps debugging on systems on which no gdb is available.
7246
7247 2007-04-29  Bruno Haible  <bruno@clisp.org>
7248
7249         * lib/freading.h: Improve comments.
7250         * lib/fwriting.h: Likewise.
7251         * tests/test-freading.c (main): Don't check freading immediately after
7252         repositioning. Needed for glibc.
7253
7254 2007-04-29  Bruno Haible  <bruno@clisp.org>
7255
7256         * lib/freading.c (freading): Trivial simplification.
7257
7258 2007-04-28  Bruno Haible  <bruno@clisp.org>
7259
7260         * tests/test-fwriting.c (main): Also test the interaction between
7261         fflush and fwriting.
7262         * modules/fwriting-tests (Depends-on): Add fflush.
7263
7264         * tests/test-freading.c (main): Also test the interaction between
7265         fflush and freading.
7266         * modules/freading-tests (Depends-on): Add fflush.
7267
7268 2007-04-28  Bruno Haible  <bruno@clisp.org>
7269
7270         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
7271         fseeko and ftello.
7272         Suggested by Eric Blake.
7273
7274 2007-04-28  Jim Meyering  <jim@meyering.net>
7275
7276         Avoid false-negative in gl_STDINT_H's C99 conformance test.
7277         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
7278         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
7279
7280 2007-04-27  Eric Blake  <ebb9@byu.net>
7281
7282         * doc/headers/assert.texi (assert.h): Document assert module use.
7283
7284 2007-04-27  Bruno Haible  <bruno@clisp.org>
7285
7286         * doc/headers/*.texi: New files.
7287         * doc/gnulib.texi (Header File Substitutes): New chapter.
7288         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
7289         dependencies.
7290         (standards.info ,standards.html, standards.dvi): Update dependencies.
7291         (mostlyclean, clean): New targets.
7292
7293 2007-04-27  Bruno Haible  <bruno@clisp.org>
7294
7295         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
7296         * modules/sysexits (Files, Makefile.am): Update.
7297
7298         * lib/sys_socket_.h: Renamed from lib/socket_.h.
7299         * modules/sys_socket (Files, Makefile.am): Update.
7300
7301         * lib/sys_stat_.h: Renamed from lib/stat_.h.
7302         * modules/sys_stat (Files, Makefile.am): Update.
7303
7304 2007-04-27  Eric Blake  <ebb9@byu.net>
7305
7306         * lib/freading.h: Improve comments.
7307         * lib/fwriting.h: Likewise.
7308         * lib/fflush.c: Likewise.
7309
7310         Fix closein for mingw.
7311         * modules/closein-tests: Add tests for closein.
7312         * tests/test-closein.c: New file.
7313         * tests/test-closein.sh: Likewise.
7314         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
7315         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
7316
7317 2007-04-27  Bruno Haible  <bruno@clisp.org>
7318
7319         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
7320         version is < 6.
7321         * lib/math_.h [__DECC]: Likewise.
7322         * lib/stdio_.h [__DECC]: Likewise.
7323         * lib/stdlib_.h [__DECC]: Likewise.
7324         * lib/string_.h [__DECC]: Likewise.
7325         * lib/time_.h [__DECC]: Likewise.
7326         * lib/wchar_.h [__DECC]: Likewise.
7327         * lib/wctype_.h [__DECC]: Likewise.
7328
7329 2007-04-27  Bruno Haible  <bruno@clisp.org>
7330
7331         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
7332
7333 2007-04-27  Bruno Haible  <bruno@clisp.org>
7334
7335         * lib/fflush.c: Add comments.
7336         * modules/fpurge-tests (Depends-on): Add fflush.
7337         * modules/freadable-tests (Depends-on): Likewise.
7338         * modules/fwritable-tests (Depends-on): Likewise.
7339
7340 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
7341
7342         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
7343         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
7344         Report by Bruno Haible <bruno@clisp.org>.
7345
7346 2007-04-26  Eric Blake  <ebb9@byu.net>
7347
7348         Fix fflush on mingw.
7349         * modules/fflush (Depends-on): Add freading.
7350         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
7351         but unread data.
7352
7353 2007-04-26  Eric Blake  <ebb9@byu.net>
7354         and Bruno Haible  <bruno@clisp.org>
7355
7356         Implement freading and fwriting.
7357         * lib/freading.c: New file.
7358         * lib/freading.h: Likewise.
7359         * m4/freading.m4: Likewise.
7360         * modules/freading: Likewise.
7361         * modules/freading-tests: Likewise.
7362         * tests/test-freading.c: Likewise.
7363         * lib/fwriting.c: New file.
7364         * lib/fwriting.h: Likewise.
7365         * m4/fwriting.m4: Likewise.
7366         * modules/fwriting: Likewise.
7367         * modules/fwriting-tests: Likewise.
7368         * tests/test-fwriting.c: Likewise.
7369         * MODULES.html.sh (File stream based Input/Output): Mention them.
7370
7371 2007-04-26  Bruno Haible  <bruno@clisp.org>
7372
7373         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
7374         'long' when we assume it.
7375         Suggested by Eric Blake.
7376
7377 2007-04-26  Bruno Haible  <bruno@clisp.org>
7378
7379         Ensure fseeko, ftello are declared on glibc systems.
7380         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
7381         * modules/fseeko (configure.ac-early): Likewise.
7382         * modules/ftello (configure.ac-early): Likewise.
7383         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
7384         AC_FUNC_FSEEKO for this.
7385         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
7386         (gl_CHECK_FSEEKO): Remove macro.
7387
7388 2007-04-26  Bruno Haible  <bruno@clisp.org>
7389
7390         * tests/test-fflush.c (main): Also check the ftell result after
7391         fflush and fseek/fseeko.
7392         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
7393         file descriptor position cache in the stream.
7394         * lib/fseeko.c (rpl_fseeko): Likewise.
7395
7396 2007-04-26  Bruno Haible  <bruno@clisp.org>
7397
7398         * modules/fflush-tests (Depends-on): Add fseeko.
7399
7400 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
7401             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7402
7403         * lib/argz_.h: ensure error_t definition is obtained in same
7404         mechanism system argz.h would have.
7405         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
7406         argz facilities are known bad.  Err on the side of caution if
7407         cross-compiling.
7408
7409 2007-04-25  Eric Blake  <ebb9@byu.net>
7410
7411         * lib/fpurge.c (includes): Use stdlib.h for free.
7412         * tests/test-fflush.c (main): Also test fflush-fseeko.
7413
7414 2007-04-25  Bruno Haible  <bruno@clisp.org>
7415
7416         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
7417         * lib/fseeko.c: New file.
7418         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
7419         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
7420         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
7421         gl_FUNC_FSEEKO.
7422         (gl_FUNC_FSEEKO): Invoke it.
7423         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
7424         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
7425         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
7426
7427 2007-04-25  Bruno Haible  <bruno@clisp.org>
7428
7429         * modules/fflush (Depends-on): Add ftello.
7430
7431 2007-04-25  Bruno Haible  <bruno@clisp.org>
7432
7433         * modules/ftello-tests: New file.
7434         * tests/test-ftello.c: New file.
7435
7436         * modules/ftello: New file.
7437         * m4/ftello.m4: New file.
7438         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
7439         HAVE_FTELLO.
7440         * lib/stdio_.h (ftello): New declaration.
7441         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
7442         HAVE_FTELLO.
7443
7444 2007-04-25  Bruno Haible  <bruno@clisp.org>
7445
7446         * modules/fseeko-tests: New file.
7447         * tests/test-fseeko.c: New file.
7448
7449         * modules/fseeko: New file.
7450         * m4/fseeko.m4: New file.
7451         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
7452         HAVE_FSEEKO.
7453         * lib/stdio_.h (fseeko): New declaration.
7454         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
7455         HAVE_FSEEKO.
7456
7457 2007-04-25  Bruno Haible  <bruno@clisp.org>
7458
7459         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
7460
7461 2007-04-25  Bruno Haible  <bruno@clisp.org>
7462
7463         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
7464         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
7465         * tests/test-unistd.c: Likewise.
7466         * tests/test-fcntl.c: Likewise.
7467
7468 2007-04-23  Eric Blake  <ebb9@byu.net>
7469
7470         * lib/fflush.c: Fix missing include.
7471         Reported by Bruno Haible.
7472
7473 2007-04-23  Bruno Haible  <bruno@clisp.org>
7474
7475         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
7476         Reported by Eric Blake.
7477
7478 2007-04-23  Bruno Haible  <bruno@clisp.org>
7479
7480         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
7481
7482 2007-04-23  Bruno Haible  <bruno@clisp.org>
7483
7484         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
7485
7486 2007-04-23  Bruno Haible  <bruno@clisp.org>
7487
7488         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
7489         Needed on HP-UX 11.
7490
7491 2007-04-16  Eric Blake  <ebb9@byu.net>
7492
7493         Make fflush rely on fpurge.
7494         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
7495         open coding all variants.
7496         * modules/fflush (Depends-on): Add fpurge and unistd.
7497         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
7498         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
7499
7500         Fix --with-tests compilation on cygwin.
7501         * modules/argmatch-tests (Makefile.am): List gnulib library first
7502         in LDADD.
7503         * modules/argp-tests (Makefile.am): Likewise.
7504         * modules/array-list-tests (Makefile.am): Likewise.
7505         * modules/array-oset-tests (Makefile.am): Likewise.
7506         * modules/avltree-list-tests (Makefile.am): Likewise.
7507         * modules/avltree-oset-tests (Makefile.am): Likewise.
7508         * modules/avltreehash-list-tests (Makefile.am): Likewise.
7509         * modules/carray-list-tests (Makefile.am): Likewise.
7510         * modules/dirname-tests (Makefile.am): Likewise.
7511         * modules/frexp-tests (Makefile.am): Likewise.
7512         * modules/isnanl-tests (Makefile.am): Likewise.
7513         * modules/linked-list-tests (Makefile.am): Likewise.
7514         * modules/linkedhash-list-tests (Makefile.am): Likewise.
7515         * modules/lock-tests (Makefile.am): Likewise.
7516         * modules/rbtree-list-tests (Makefile.am): Likewise.
7517         * modules/rbtree-oset-tests (Makefile.am): Likewise.
7518         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
7519         * modules/tls-tests (Makefile.am): Likewise.
7520         * modules/tsearch-tests (Makefile.am): Likewise.
7521         * modules/xvasprintf-tests (Makefile.am): Likewise.
7522
7523         Fix fpurge for cygwin.
7524         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
7525         value.
7526         * modules/fpurge-tests (Depends-on): Clean up trash.
7527
7528 2007-04-16  Simon Josefsson  <simon@josefsson.org>
7529
7530         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
7531
7532         * m4/autobuild.m4: Re-indent.
7533
7534 2007-04-13  Bruno Haible  <bruno@clisp.org>
7535
7536         * modules/fpurge-tests: New file.
7537         * tests/test-fpurge.c: New file.
7538
7539         * modules/fpurge: New file.
7540         * lib/fpurge.h: New file.
7541         * lib/fpurge.c: New file.
7542         * m4/fpurge.m4: New file.
7543
7544 2007-04-13  Bruno Haible  <bruno@clisp.org>
7545
7546         * modules/fbufmode-tests: New file.
7547         * tests/test-fbufmode.c: New file.
7548
7549         * modules/fbufmode: New file.
7550         * lib/fbufmode.h: New file.
7551         * lib/fbufmode.c: New file.
7552         * m4/fbufmode.m4: New file.
7553
7554 2007-04-13  Bruno Haible  <bruno@clisp.org>
7555
7556         * modules/fwritable-tests: New file.
7557         * tests/test-fwritable.c: New file.
7558
7559         * modules/fwritable: New file.
7560         * lib/fwritable.h: New file.
7561         * lib/fwritable.c: New file.
7562         * m4/fwritable.m4: New file.
7563
7564 2007-04-13  Bruno Haible  <bruno@clisp.org>
7565
7566         * modules/freadable-tests: New file.
7567         * tests/test-freadable.c: New file.
7568
7569         * modules/freadable: New file.
7570         * lib/freadable.h: New file.
7571         * lib/freadable.c: New file.
7572         * m4/freadable.m4: New file.
7573
7574 2007-04-13  Bruno Haible  <bruno@clisp.org>
7575
7576         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
7577         MOSTLYCLEANFILES.
7578
7579 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
7580
7581         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
7582         gzip bootstrap.conf to avoid dragging in i18n machinery.
7583         (gnulib_tool_option): Use it.
7584
7585 2007-04-13  Bruno Haible  <bruno@clisp.org>
7586
7587         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
7588         %F directives.
7589         * tests/test-vasprintf-posix.c (test_function): Likewise.
7590         * tests/test-snprintf-posix.h (test_function): Likewise.
7591         * tests/test-sprintf-posix.h (test_function): Likewise.
7592         * tests/test-fprintf-posix.h (test_function): Likewise.
7593         * tests/test-printf-posix.h (test_function): Likewise.
7594         * tests/test-fprintf-posix.out: Likewise.
7595
7596 2007-04-13  Bruno Haible  <bruno@clisp.org>
7597
7598         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
7599         * modules/tls-tests (configure.ac): Likewise.
7600         Reported by Arto C. Nirkko <anirkko@insel.ch>.
7601
7602 2007-04-13  Bruno Haible  <bruno@clisp.org>
7603
7604         * lib/tls.c (glthread_tls_get): Fix return type.
7605         Patch by Arto C. Nirkko <anirkko@insel.ch>.
7606
7607 2007-04-12  Eric Blake  <ebb9@byu.net>
7608
7609         * modules/gettime (Depends-on): Remove gettime.
7610         Reported by Dmitry V. Levin.
7611
7612 2007-04-12  Bruno Haible  <bruno@clisp.org>
7613
7614         * modules/fflush (Include): Mention <stdio.h>.
7615         * modules/strtoimax (Include): Mention <inttypes.h>.
7616         * modules/strtoumax (Include): Likewise.
7617
7618 2007-04-12  Eric Blake  <ebb9@byu.net>
7619
7620         * .cvsignore: New file.
7621         * .gitignore: Likewise.
7622
7623 2007-04-12  Bruno Haible  <bruno@clisp.org>
7624
7625         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
7626         not before, since $(LDADD) often contains libgnu.a.
7627         * modules/striconv-tests (test_striconv_LDADD): Likewise.
7628         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
7629         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
7630         Needed on Cygwin.
7631
7632 2007-04-12  Eric Blake  <ebb9@byu.net>
7633
7634         Work around glibc's failure to flush stdin on fclose.
7635         * lib/closein.c (close_stdin): Flush stdin before closing.
7636
7637         Work around glibc's failure to reset seekable stdin on exit.
7638         * modules/closein: New module.
7639         * lib/closein.c: New file.
7640         * lib/closein.h: Likewise.
7641         * m4/closein.m4: Likewise.
7642         * MODULES.html.sh (File stream based Input/Output): Document it.
7643
7644 2007-04-12  Simon Josefsson  <simon@josefsson.org>
7645
7646         * gnulib-tool: Rename generated 'autobuild' script to
7647         'do-autobuild' in --create-megatestdir output.
7648
7649         * doc/gnulib.texi (Build robot for gnulib): Fix.
7650
7651 2007-04-12  Simon Josefsson  <simon@josefsson.org>
7652
7653         * modules/sysexits (Depends-on): Add absolute-header.
7654
7655 2007-04-12  Eric Blake  <ebb9@byu.net>
7656
7657         No need to preserve errno on success.
7658         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
7659         Reported by Bruno Haible.
7660
7661 2007-04-12  Simon Josefsson  <simon@josefsson.org>
7662
7663         * MODULES.html.sh (Support for maintaining and releasing
7664         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
7665
7666 2007-04-12  Simon Josefsson  <simon@josefsson.org>
7667
7668         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
7669
7670 2007-04-12  Simon Josefsson  <simon@josefsson.org>
7671
7672         * modules/autobuild: New module.
7673
7674         * m4/autobuild.m4: New file.
7675
7676 2007-04-11  Bruno Haible  <bruno@clisp.org>
7677
7678         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
7679         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
7680         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
7681         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
7682         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
7683         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7684         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7685         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
7686         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7687         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7688         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
7689         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7690         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7691         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
7692         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7693         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7694         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
7695         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7696         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7697         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
7698         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7699         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7700         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
7701         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7702         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7703         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
7704         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7705         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7706         Reported by Eric Blake.
7707
7708 2007-04-11  Bruno Haible  <bruno@clisp.org>
7709
7710         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
7711
7712 2007-04-10  Bruno Haible  <bruno@clisp.org>
7713
7714         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
7715         for NaN and Infinity. Needed on FreeBSD 6.1.
7716         * tests/test-vasnprintf-posix.c (test_function): Undo last change
7717         regarding results for "%010a" of Infinity and NaN.
7718         * tests/test-vasprintf-posix.c (test_function): Likewise.
7719         * tests/test-snprintf-posix.h (test_function): Likewise.
7720         * tests/test-sprintf-posix.h (test_function): Likewise.
7721         * tests/test-fprintf-posix.h (test_function): Likewise.
7722         * tests/test-printf-posix.h (test_function): Likewise.
7723         * tests/test-fprintf-posix.out: Likewise.
7724
7725 2007-04-10  Bruno Haible  <bruno@clisp.org>
7726
7727         * modules/locale-tests: New file.
7728         * tests/test-locale.c: New file.
7729
7730         * modules/locale: New file.
7731         * lib/locale_.h: New file.
7732         * m4/locale_h.m4: New file.
7733
7734 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
7735             Bruno Haible  <bruno@clisp.org>
7736
7737         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
7738         be determined, test for availability of the copysignf, copysign,
7739         copysignl functions.
7740         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
7741         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
7742         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
7743
7744 2007-04-09  Eric Blake  <ebb9@byu.net>
7745
7746         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
7747         * modules/stdio (Makefile.am): Support fflush.
7748         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
7749         * modules/fflush: New file.
7750         * lib/fflush.c: Likewise.
7751         * m4/fflush.m4: Likewise.
7752         * modules/fflush-tests: New test.
7753         * tests/test-fflush.c: Likewise.
7754         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
7755
7756 2007-04-06  Bruno Haible  <bruno@clisp.org>
7757
7758         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
7759         (VASNPRINTF): Use signbit for faster determination whether to print a
7760         minus sign.
7761         * modules/vasnprintf (Files): Remove lib/float+.h.
7762         * modules/fprintf-posix (Depends-on): Add signbit.
7763         * modules/snprintf-posix (Depends-on): Likewise.
7764         * modules/sprintf-posix (Depends-on): Likewise.
7765         * modules/vasnprintf-posix (Depends-on): Likewise.
7766         * modules/vasprintf-posix (Depends-on): Likewise.
7767         * modules/vfprintf-posix (Depends-on): Likewise.
7768         * modules/vsnprintf-posix (Depends-on): Likewise.
7769         * modules/vsprintf-posix (Depends-on): Likewise.
7770
7771 2007-04-06  Bruno Haible  <bruno@clisp.org>
7772
7773         * tests/test-frexp.c (main): Test also the sign bit of zero results.
7774         * tests/test-frexpl.c (main): Likewise.
7775         * tests/test-ldexpl.c (main): Likewise.
7776         * modules/frexp-tests (Depends-on): Add signbit.
7777         * modules/frexpl-tests (Depdends-on): Likewise.
7778         * modules/ldexpl-tests (Depdends-on): Likewise.
7779
7780 2007-04-06  Bruno Haible  <bruno@clisp.org>
7781
7782         * modules/signbit-tests: New file.
7783         * tests/test-signbit.c: New file.
7784
7785         * modules/signbit: New file.
7786         * lib/signbitf.c: New file.
7787         * lib/signbitd.c: New file.
7788         * lib/signbitl.c: New file.
7789         * m4/signbit.m4: New file.
7790         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
7791         (signbit): New macro.
7792         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
7793         REPLACE_SIGNBIT.
7794         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
7795         REPLACE_FREXPL into math.h.
7796
7797 2007-04-06  Bruno Haible  <bruno@clisp.org>
7798
7799         * modules/isnanf-nolibm-tests: New file.
7800         * tests/test-isnanf.c: New file.
7801
7802         * modules/isnanf-nolibm: New file.
7803         * lib/isnanf.h: New file.
7804         * lib/isnanf.c: New file.
7805         * lib/isnan.c: Consider the USE_FLOAT macro.
7806         * m4/isnanf.m4: New file.
7807
7808 2007-04-06  Bruno Haible  <bruno@clisp.org>
7809
7810         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
7811         (Link): New section.
7812
7813         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
7814
7815 2007-04-06  Bruno Haible  <bruno@clisp.org>
7816
7817         Assume the 'long double' type.
7818         * m4/longdouble.m4: Remove file.
7819         * config/srclist.txt: Don't mention longdouble.m4.
7820         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
7821         * lib/float+.h: Likewise.
7822         * lib/frexp.c: Likewise.
7823         * lib/printf-args.h: Likewise.
7824         * lib/printf-args.c: Likewise.
7825         * lib/printf-frexp.c: Likewise.
7826         * lib/printf-parse.c: Likewise.
7827         * lib/vasnprintf.c: Likewise.
7828         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
7829         * m4/intl.m4: Likewise.
7830         * m4/isnanl.m4: Likewise.
7831         * m4/printf.m4: Likewise.
7832         * m4/printf-frexpl.m4: Likewise.
7833         * m4/vasnprintf.m4: Likewise.
7834         * modules/allocsa (Files): Remove m4/longdouble.m4.
7835         * modules/gettext (Files): Likewise.
7836         * modules/relocatable-prog-wrapper (Files): Likewise.
7837         * modules/vasnprintf (Files): Likewise.
7838         * modules/isnanl (Files): Likewise.
7839         (Include): Simplify.
7840         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
7841         (Include): Simplify.
7842         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
7843         (Include): Simplify.
7844         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
7845         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7846         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
7847         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7848         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
7849         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7850         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
7851         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7852         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
7853         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7854         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
7855         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7856         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
7857         * tests/test-isnanl.c: Likewise.
7858         * tests/test-snprintf-posix.h: Likewise.
7859         * tests/test-sprintf-posix.h: Likewise.
7860         * tests/test-vasnprintf-posix.c: Likewise.
7861         * tests/test-vasnprintf-posix2.c: Likewise.
7862         * tests/test-vasprintf-posix.c: Likewise.
7863
7864 2007-04-06  Bruno Haible  <bruno@clisp.org>
7865
7866         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
7867         * lib/math_.h [__DECC]: Include the overridden include file through
7868         #include_next, outside the double-inclusion guard.
7869         * lib/stdio_.h [__DECC]: Likewise.
7870         * lib/stdlib_.h [__DECC]: Likewise.
7871         * lib/string_.h [__DECC]: Likewise.
7872         * lib/time_.h [__DECC]: Likewise.
7873         * lib/wchar_.h [__DECC]: Likewise.
7874         * lib/wctype_.h [__DECC]: Likewise.
7875         * lib/inttypes_.h [__DECC]: Likewise.
7876         Reported by Albert Chin <china@thewrittenword.com> in
7877         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
7878
7879 2007-04-04  Eric Blake  <ebb9@byu.net>
7880
7881         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
7882         1.5.x.
7883
7884 2007-04-04  Bruno Haible  <bruno@clisp.org>
7885
7886         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
7887         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
7888
7889 2007-04-04  Bruno Haible  <bruno@clisp.org>
7890
7891         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
7892         results for "%010a" of Infinity and NaN.
7893         * tests/test-vasprintf-posix.c (test_function): Likewise.
7894         * tests/test-snprintf-posix.h (test_function): Likewise.
7895         * tests/test-sprintf-posix.h (test_function): Likewise.
7896         * tests/test-fprintf-posix.h (test_function): Remove these tests.
7897         * tests/test-printf-posix.h (test_function): Likewise.
7898         * tests/test-fprintf-posix.out: Update.
7899         Needed for FreeBSD 6.1.
7900
7901 2007-04-04  Bruno Haible  <bruno@clisp.org>
7902
7903         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
7904         directly used by the gnulib modules nor by gnulib-tool.
7905
7906 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
7907
7908         * DEPENDENCIES: Give overall description of version dependency
7909         desirability.  Use more-typical names for apps.
7910         Add shell, coreutils, diffutils, grep, tar, gzip.
7911
7912 2007-04-04  Simon Josefsson  <simon@josefsson.org>
7913
7914         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
7915
7916 2007-04-04  Karl Berry  <karl@gnu.org>
7917
7918         * MODULES.html.sh (func_module): missing '.
7919
7920 2007-04-03  Bruno Haible  <bruno@clisp.org>
7921
7922         * modules/argmatch-tests (Makefile.am): New variable
7923         test_argmatch_LDADD.
7924         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
7925         * modules/array-list-tests (Makefile.am): New variable
7926         test_array_list_LDADD.
7927         * modules/array-oset-tests (Makefile.am): New variable
7928         test_array_oset_LDADD.
7929         * modules/avltree-list-tests (Makefile.am): New variable
7930         test_avltree_list_LDADD.
7931         * modules/avltree-oset-tests (Makefile.am): New variable
7932         test_avltree_oset_LDADD.
7933         * modules/avltreehash-list-tests (Makefile.am): New variable
7934         test_avltreehash_list_LDADD.
7935         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
7936         test_canonicalize_lgpl_LDADD.
7937         * modules/carray-list-tests (Makefile.am): New variable
7938         test_carray_list_LDADD.
7939         * modules/dirname-tests (Makefile.am): New variable
7940         test_dirname_LDADD.
7941         * modules/linked-list-tests (Makefile.am): New variable
7942         test_linked_list_LDADD.
7943         * modules/linkedhash-list-tests (Makefile.am): New variable
7944         test_linkedhash_list_LDADD.
7945         * modules/rbtree-list-tests (Makefile.am): New variable
7946         test_rbtree_list_LDADD.
7947         * modules/rbtree-oset-tests (Makefile.am): New variable
7948         test_rbtree_oset_LDADD.
7949         * modules/rbtreehash-list-tests (Makefile.am): New variable
7950         test_rbtreehash_list_LDADD.
7951         * modules/xvasprintf-tests (Makefile.am): New variable
7952         test_xvasprintf_LDADD.
7953         Reported by Eric Blake.
7954
7955 2007-04-03  Eric Blake  <ebb9@byu.net>
7956
7957         * DEPENDENCIES: Weaken m4 requirements.
7958
7959 2007-04-03  Bruno Haible  <bruno@clisp.org>
7960
7961         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
7962         * modules/isnanl-tests (configure.ac): Likewise.
7963
7964 2007-04-03  Ben Pfaff  <blp@gnu.org>
7965
7966         * modules/iconv_open: Add $(srcdir)/ to source directory
7967         references in Makefile fragments that call gperf, to fix VPATH
7968         builds.
7969
7970 2007-04-03  Bruno Haible  <bruno@clisp.org>
7971
7972         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
7973         * lib/ldexpl.c: Undo last change.
7974
7975 2007-04-03  Bruno Haible  <bruno@clisp.org>
7976
7977         * modules/printf-frexpl (Depends-on): Undo last change.
7978         (Files): Add m4/ldexpl.m4.
7979
7980 2007-04-03  Bruno Haible  <bruno@clisp.org>
7981
7982         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
7983         * modules/isnanl (Link): New section.
7984
7985         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
7986         * modules/frexp (Link): New section.
7987
7988         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
7989         * modules/frexpl (Link): New section.
7990
7991         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
7992         * modules/ldexpl (Link): New section.
7993
7994 2007-04-03  Bruno Haible  <bruno@clisp.org>
7995
7996         * modules/TEMPLATE-EXTENDED: New file.
7997         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
7998
7999 2007-04-03  Bruno Haible  <bruno@clisp.org>
8000
8001         * DEPENDENCIES: New file.
8002         Suggested by Simon Josefsson.
8003
8004 2007-04-03  Bruno Haible  <bruno@clisp.org>
8005
8006         * doc/gnulib.texi: Escape @.
8007
8008 2007-04-03  James Youngman  <jay@gnu.org>
8009         and Paul Eggert  <eggert@cs.ucla.edu>
8010
8011         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
8012         birthtime on all systems that have birthtime, not just those which
8013         use st_birthtimensec rather than st_birthtim.  Putting zero in
8014         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
8015         that the birth time is not available for files on an NFS mount.
8016
8017 2007-04-03  Simon Josefsson  <simon@josefsson.org>
8018
8019         * modules/memxor: Move back from crypto/, suggested by Bruno.
8020         * modules/crypto/hmac-sha1: Fix memxor dependency.
8021
8022         * modules/crypto/gc: Moved from ../.
8023
8024 2007-04-02  Eric Blake  <ebb9@byu.net>
8025
8026         * lib/ldexpl.c (includes): Avoid libm.
8027
8028         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
8029
8030 2007-04-02  Bruno Haible  <bruno@clisp.org>
8031
8032         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
8033         on IRIX.
8034
8035 2007-04-02  Bruno Haible  <bruno@clisp.org>
8036
8037         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
8038         x86 or x86_64 platforms running MacOS X.
8039         Reported by Ryan Schmidt <@ryandesign.com>.
8040
8041 2007-04-02  Bruno Haible  <bruno@clisp.org>
8042
8043         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
8044         i386.
8045
8046 2007-04-01  Simon Josefsson  <simon@josefsson.org>
8047
8048         * modules/crypto/arcfour: Moved from ../.
8049         * modules/crypto/arcfour-tests: Moved from ../.
8050         * modules/crypto/arctwo: Moved from ../.
8051         * modules/crypto/arctwo-tests: Moved from ../.
8052         * modules/crypto/des: Moved from ../.
8053         * modules/crypto/des-tests: Moved from ../.
8054         * modules/crypto/gc-arcfour: Moved from ../.
8055         * modules/crypto/gc-arcfour-tests: Moved from ../.
8056         * modules/crypto/gc-arctwo: Moved from ../.
8057         * modules/crypto/gc-arctwo-tests: Moved from ../.
8058         * modules/crypto/gc-des: Moved from ../.
8059         * modules/crypto/gc-des-tests: Moved from ../.
8060         * modules/crypto/gc-hmac-md5: Moved from ../.
8061         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
8062         * modules/crypto/gc-hmac-sha1: Moved from ../.
8063         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
8064         * modules/crypto/gc-md2: Moved from ../.
8065         * modules/crypto/gc-md2-tests: Moved from ../.
8066         * modules/crypto/gc-md4: Moved from ../.
8067         * modules/crypto/gc-md4-tests: Moved from ../.
8068         * modules/crypto/gc-md5: Moved from ../.
8069         * modules/crypto/gc-md5-tests: Moved from ../.
8070         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
8071         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
8072         * modules/crypto/gc-random: Moved from ../.
8073         * modules/crypto/gc-rijndael: Moved from ../.
8074         * modules/crypto/gc-rijndael-tests: Moved from ../.
8075         * modules/crypto/gc-sha1: Moved from ../.
8076         * modules/crypto/gc-sha1-tests: Moved from ../.
8077         * modules/crypto/gc-tests: Moved from ../.
8078         * modules/crypto/hmac-md5: Moved from ../.
8079         * modules/crypto/hmac-md5-tests: Moved from ../.
8080         * modules/crypto/hmac-sha1: Moved from ../.
8081         * modules/crypto/hmac-sha1-tests: Moved from ../.
8082         * modules/crypto/md2: Moved from ../.
8083         * modules/crypto/md2-tests: Moved from ../.
8084         * modules/crypto/md4: Moved from ../.
8085         * modules/crypto/md4-tests: Moved from ../.
8086         * modules/crypto/md5: Moved from ../.
8087         * modules/crypto/md5-tests: Moved from ../.
8088         * modules/crypto/memxor: Moved from ../.
8089         * modules/crypto/rijndael: Moved from ../.
8090         * modules/crypto/rijndael-tests: Moved from ../.
8091         * modules/crypto/sha1: Moved from ../.
8092
8093 2007-03-30  James Youngman  <jay@gnu.org>
8094
8095         * tests/test-stat-time.c (prepare_test): use chmod() rather than
8096         rename() to change the ctime of a file (because ctime is unaffected
8097         by rename on jfs2 on AIX 5.1).
8098         (main): Start by doing cleanup, in case a previous run failed leaving
8099         test files behind.
8100
8101 2007-03-31  Bruno Haible  <bruno@clisp.org>
8102
8103         Support old proprietary implementations of iconv.
8104         * modules/iconv_open: New file.
8105         * lib/iconv_.h: New file.
8106         * m4/iconv_h.m4: New file.
8107         * lib/iconv_open.c: New file.
8108         * lib/iconv_open-aix.gperf: New file.
8109         * lib/iconv_open-hpux.gperf: New file.
8110         * lib/iconv_open-irix.gperf: New file.
8111         * lib/iconv_open-osf.gperf: New file.
8112         * m4/iconv_open.m4: New file.
8113         * modules/linebreak (Depends-on): Add iconv_open.
8114         * modules/striconv (Depends-on): Likewise.
8115         * modules/striconveh (Depends-on): Likewise.
8116         * modules/unicodeio (Depends-on): Likewise.
8117         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
8118         (iconv_t)(-1).
8119         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
8120         conversion if cd is (iconv_t)(-1).
8121         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
8122         is not possible.
8123
8124 2007-03-31  Bruno Haible  <bruno@clisp.org>
8125
8126         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
8127         work on Solaris either. Protect also second use of "autodetect_jp".
8128
8129 2007-03-31  Bruno Haible  <bruno@clisp.org>
8130
8131         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
8132         the function is not present.
8133
8134 2007-03-31  Bruno Haible  <bruno@clisp.org>
8135
8136         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
8137         the function is not present.
8138
8139 2007-03-31  Bruno Haible  <bruno@clisp.org>
8140
8141         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
8142         a bug in HP-UX iconv_open().
8143
8144 2007-03-31  Bruno Haible  <bruno@clisp.org>
8145
8146         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
8147         (Mathematics <math.h>): New section, add fpieee.
8148         (Input/output <stdio.h>): Add fseterr.
8149         (Mathematics <math.h>): New section, add printf-frexp.
8150         (Container data structures): Add sublist.
8151         (Core language properties): Add fpucw, inline.
8152         (Functions for greatest-width integer types <inttypes.h>): Add
8153         imaxabs, imaxdiv, inttypes.
8154         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
8155         isnanl-nolibm, ldexp.
8156         (Mathematics <math.h>): New section, add printf-frexpl.
8157         (Support for systems lacking POSIX:2001): Add fprintf-posix,
8158         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
8159         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
8160         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
8161         (Unicode string functions): Add unistr/u*-mbtoucr.
8162         (Java): Add javacomp-script, javaexec-script.
8163         (C#): Add csharpcomp-script, csharpexec-script.
8164         (Support for building libraries and executables): Add havelib,
8165         relocatable-*.
8166         (Support for maintaining and releasing projects): Renamed from
8167         'Support for maintaining and release projects'. Add announce-gen.
8168
8169 2007-03-31  Bruno Haible  <bruno@clisp.org>
8170
8171         * README: Talk primarily about git.
8172         (git and CVS): Renamed from CVS.
8173         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
8174         gnulib is available through git.
8175         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
8176
8177 2007-03-30  Bruno Haible  <bruno@clisp.org>
8178
8179         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
8180         * lib/poll_.h: Likewise.
8181         * lib/stat_.h: Likewise.
8182         * lib/sys_time_.h: Likewise.
8183         * lib/sysexit_.h: Likewise.
8184         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
8185         * lib/stdbool_.h: Likewise.
8186         * lib/byteswap_.h: Add double-inclusion guard.
8187
8188 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
8189
8190         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
8191
8192 2007-03-30  Karl Berry  <karl@gnu.org>
8193
8194         * config/srclist-update: double space after USA in the license
8195         substitution, since that's how it's usually (?) written.
8196
8197 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
8198
8199         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
8200         reported by Bruno Haible.
8201
8202 2007-03-29  Bruno Haible  <bruno@clisp.org>
8203
8204         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
8205         a bug in AIX iconv().
8206
8207 2007-03-29  Bruno Haible  <bruno@clisp.org>
8208
8209         * modules/ldexpl-tests: New file.
8210         * tests/test-ldexpl.c: New file.
8211
8212 2007-03-29  Bruno Haible  <bruno@clisp.org>
8213
8214         * lib/ldexpl.c: Include fpucw.h.
8215         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
8216         multiplication.
8217         * modules/ldexpl (Depends-on): Add fpucw.
8218
8219 2007-03-29  Bruno Haible  <bruno@clisp.org>
8220
8221         * modules/ldexpl: New file.
8222         * m4/ldexpl.m4: New file.
8223         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
8224         set.
8225         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
8226         REPLACE_LDEXPL.
8227         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
8228         REPLACE_LDEXPL.
8229         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
8230         gl_FUNC_LDEXPL_WORKS.
8231         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
8232         * modules/mathl (Files): Remove lib/ldexpl.c.
8233         (Depends-on): Add ldexpl.
8234
8235 2007-03-29  Bruno Haible  <bruno@clisp.org>
8236
8237         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
8238
8239 2007-03-29  Bruno Haible  <bruno@clisp.org>
8240
8241         * tests/test-striconveh.c (main): Don't assume that a direct conversion
8242         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
8243         and possibly also HP-UX.
8244         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
8245         work on AIX, IRIX, HP-UX, OSF/1.
8246         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
8247         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
8248         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
8249         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
8250         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
8251         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
8252
8253 2007-03-29  Bruno Haible  <bruno@clisp.org>
8254
8255         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
8256
8257 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
8258
8259         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
8260         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
8261
8262 2007-03-29  Eric Blake  <ebb9@byu.net>
8263
8264         * lib/acl-internal.h: Remove redundant include.
8265         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
8266         Cygwin when a file is locked.
8267
8268 2007-03-29  Bruno Haible  <bruno@clisp.org>
8269
8270         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
8271         file.
8272         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
8273
8274 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
8275
8276         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
8277         try to remove a parent directory if the child couldn't be removed
8278         (except for the first rmdir, which could fail because the child
8279         doesn't exist).  Problem reported by Jeff Blaine in
8280         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
8281
8282 2007-03-28  Bruno Haible  <bruno@clisp.org>
8283
8284         * lib/striconveh.c (utf8conv_carefully): New function.
8285         (mem_cd_iconveh_internal): Invoke it.
8286
8287 2007-03-28  Bruno Haible  <bruno@clisp.org>
8288
8289         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
8290         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
8291         input.
8292         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
8293         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
8294         unistr/u8-uctomb.
8295
8296 2007-03-28  Bruno Haible  <bruno@clisp.org>
8297
8298         * modules/unistr/u8-mbtoucr: New file.
8299         * lib/unistr/u8-mbtoucr.c: New file.
8300         * modules/unistr/u16-mbtoucr: New file.
8301         * lib/unistr/u16-mbtoucr.c: New file.
8302         * modules/unistr/u16-mbtoucr: New file.
8303         * lib/unistr/u16-mbtoucr.c: New file.
8304         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
8305
8306 2007-03-27  Simon Josefsson  <simon@josefsson.org>
8307             Bruno Haible  <bruno@clisp.org>
8308
8309         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
8310         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
8311         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
8312
8313         * m4/stdio_h.m4: Add stubs for vasprintf too.
8314
8315         * modules/stdio: Support vasprintf in sed command.
8316
8317         * modules/vasprintf: Depend on stdio for prototypes.  Remove
8318         vasprintf.h.  Add stdio module indicator.
8319
8320         * lib/stdio_.h: Declare asprintf and vasprintf, based on
8321         vasprintf.h.
8322
8323         * lib/vasprintf.h: File removed.
8324
8325         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
8326         * lib/vasprintf.c: Ditto.
8327         * lib/xvasprintf.c: Ditto.
8328         * tests/test-vasprintf-posix.c: Ditto.
8329         * tests/test-vasprintf.c: Ditto.
8330
8331 2007-03-27  Bruno Haible  <bruno@clisp.org>
8332
8333         Make vasnprintf multithread-safe.
8334         * lib/vasnprintf.c (decimal_point_char): New function.
8335         (VASNPRINTF): Use it.
8336         Suggested by Simon Josefsson.
8337
8338 2007-03-27  Eric Blake  <ebb9@byu.net>
8339
8340         Support sub-second birthtime on cygwin.
8341         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
8342         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
8343         (get_stat_birthtime): Also work with st_birthtim.
8344
8345 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
8346
8347         * lib/stat-time.h (USE_BIRTHTIME): Remove.
8348         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
8349         (get_stat_birthtime_ns): Do not try to use "spare" fields.
8350         (get_stat_birthtime_ns): Simplify compile-time tests.
8351         (get_stat_birthtime): Change the API to look like
8352         get_stat_mtime etc., except return a negative tv_nsec on error.
8353         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
8354         Don't check for "spare" fields.
8355         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
8356         or for struct stat.st_birthtime, as these tests aren't used.
8357         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
8358
8359 2007-03-27  Bruno Haible  <bruno@clisp.org>
8360
8361         * lib/stat-time.h: Include <sys/stat.h>.
8362
8363 2007-03-27  James Youngman  <jay@gnu.org>
8364
8365         * lib/stat-time.h (get_stat_birthtime): New function for
8366           retrieving st_birthtime as provided by UFS2 (hence *BSD).
8367         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
8368           and its variants.
8369         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
8370         * modules/stat-time-test: New file.
8371         * tests/test-stat-time.c: New test, devised by Bruno Haible.
8372
8373 2007-03-26  Bruno Haible  <bruno@clisp.org>
8374
8375         Better support of signalling NaNs.
8376         * lib/atanl.c: Include isnanl.h.
8377         (atanl): Perform test for NaN at the beginning of the function and
8378         through a call to isnanl.
8379         * lib/cosl.c: Include isnanl.h.
8380         (cosl): Perform test for NaN at the beginning of the function and
8381         through a call to isnanl.
8382         * lib/ldexpl.c: Include isnanl.h.
8383         (ldexpl): Perform test for NaN through a call to isnanl.
8384         * lib/logl.c: Include isnanl.h.
8385         (logl): Perform test for NaN at the beginning of the function and
8386         through a call to isnanl.
8387         * lib/sinl.c: Include isnanl.h.
8388         (sinl): Perform test for NaN at the beginning of the function and
8389         through a call to isnanl.
8390         * lib/sqrtl.c: Include isnanl.h.
8391         (sqrtl): Perform test for NaN at the beginning of the function and
8392         through a call to isnanl.
8393         * lib/tanl.c: Include isnanl.h.
8394         (tanl): Perform test for NaN at the beginning of the function and
8395         through a call to isnanl.
8396         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
8397         * modules/mathl (Depends-on): Add isnanl.
8398
8399 2007-03-26  Eric Blake  <ebb9@byu.net>
8400
8401         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
8402         regression in logic sense of previous patch.
8403
8404 2007-03-26  Bruno Haible  <bruno@clisp.org>
8405
8406         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
8407         unportable shell command "if ! ...".
8408         Reported by Ralf Wildenhues.
8409
8410 2007-03-25  Bruno Haible  <bruno@clisp.org>
8411
8412         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
8413         <sysexits.h> file, and only add EX_CONFIG.
8414         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
8415         absolute file name and whether it is sufficient. Substitute also
8416         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
8417         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
8418         ABSOLUTE_SYSEXITS_H into sysexits.h.
8419
8420 2007-03-25  Bruno Haible  <bruno@clisp.org>
8421
8422         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
8423         hints is NULL.
8424
8425 2007-03-25  Bruno Haible  <bruno@clisp.org>
8426
8427         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
8428         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
8429
8430 2007-03-25  Bruno Haible  <bruno@clisp.org>
8431
8432         * lib/vasnprintf.c: Include langinfo.h.
8433         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
8434         multithread-safe.
8435         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
8436         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
8437         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
8438         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
8439         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
8440         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
8441         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
8442         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
8443         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
8444         Reported by Simon Josefsson.
8445
8446 2007-03-25  Bruno Haible  <bruno@clisp.org>
8447
8448         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
8449         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
8450         * modules/vasnprintf (Depends-on): Add stdint.
8451
8452 2007-03-25  Bruno Haible  <bruno@clisp.org>
8453
8454         * modules/fpieee: New file.
8455         * m4/fpieee.m4: New file.
8456         * modules/isnan-nolibm (Depends-on): Add fpieee.
8457         * modules/isnanl-nolibm (Depends-on): Add fpieee.
8458         * modules/isnanl (Depends-on): Add fpieee.
8459
8460 2007-03-25  Bruno Haible  <bruno@clisp.org>
8461
8462         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
8463
8464 2007-03-25  Bruno Haible  <bruno@clisp.org>
8465
8466         Avoid test failures on IRIX 6.5.
8467         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
8468         (main): Use it.
8469         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
8470         macros.
8471         (main): Use them.
8472
8473 2007-03-25  Bruno Haible  <bruno@clisp.org>
8474
8475         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
8476         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
8477         exists but doesn't work.
8478         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
8479         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
8480         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
8481         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
8482
8483 2007-03-25  Bruno Haible  <bruno@clisp.org>
8484
8485         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
8486         returns inf. Needed on IRIX 6.5.
8487
8488 2007-03-25  Bruno Haible  <bruno@clisp.org>
8489
8490         * tests/test-frexpl.c: Include isnanl-nolibm.h.
8491         (main): Use isnanl instead of x != x idiom.
8492         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
8493
8494         * tests/test-frexp.c: Include isnan.h.
8495         (main): Use isnan instead of x != x idiom.
8496         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
8497
8498 2007-03-25  Bruno Haible  <bruno@clisp.org>
8499
8500         * tests/test-frexp.c (NaN): New function/macro.
8501         (main): Use it instead of 0.0 / 0.0.
8502         * tests/test-isnan.c (NaN): New function/macro.
8503         (main): Use it instead of 0.0 / 0.0.
8504         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
8505         (test_function): Use it instead of 0.0 / 0.0.
8506         * tests/test-vasprintf-posix.c (NaN): New function/macro.
8507         (test_function): Use it instead of 0.0 / 0.0.
8508         * tests/test-snprintf-posix.h (NaN): New function/macro.
8509         (test_function): Use it instead of 0.0 / 0.0.
8510         * tests/test-sprintf-posix.h (NaN): New function/macro.
8511         (test_function): Use it instead of 0.0 / 0.0.
8512         * tests/test-fprintf-posix.h (NaN): New function/macro.
8513         (test_function): Use it instead of 0.0 / 0.0.
8514         * tests/test-printf-posix.h (NaN): New function/macro.
8515         (test_function): Use it instead of 0.0 / 0.0.
8516
8517         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
8518
8519 2007-03-25  Bruno Haible  <bruno@clisp.org>
8520
8521         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
8522
8523 2007-03-25  Bruno Haible  <bruno@clisp.org>
8524
8525         * lib/regexec.c (merge_state_with_log): Make static.
8526
8527 2007-03-25  Bruno Haible  <bruno@clisp.org>
8528
8529         * lib/trigl.c (kernel_rem_pio2): Make static.
8530
8531 2007-03-25  Bruno Haible  <bruno@clisp.org>
8532
8533         * lib/sincosl.c (sincosl_table): Make static.
8534
8535 2007-03-25  Bruno Haible  <bruno@clisp.org>
8536
8537         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
8538         if the compiler does not support C99.
8539
8540 2007-03-25  Bruno Haible  <bruno@clisp.org>
8541
8542         * modules/time (Makefile.am): Ensure all rule action lines start with a
8543         tab.
8544
8545 2007-03-24  Bruno Haible  <bruno@clisp.org>
8546
8547         * modules/tsearch-tests: New file.
8548         * tests/test-tsearch.sh: New file.
8549         * tests/test-tsearch.c: New file, mostly copied from glibc.
8550
8551         * modules/search-tests: New file.
8552         * tests/test-search.c: New file.
8553
8554         * modules/search: New file.
8555         * lib/search_.h: New file, incorporating lib/tsearch.h.
8556         * m4/search_h.m4: New file.
8557         * lib/tsearch.h: Remove file.
8558         * lib/tsearch.c: Include search.h instead of tsearch.h.
8559         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
8560         HAVE_TSEARCH.
8561         * modules/tsearch (Files): Remove lib/tsearch.h.
8562         (Depends-on): Add search.
8563         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
8564         (Include): Change tsearch.h into search.h.
8565
8566 2007-03-24  Bruno Haible  <bruno@clisp.org>
8567
8568         * modules/fpucw: New file.
8569         * lib/fpucw.h: New file.
8570         * lib/frexp.c: Include fpucw.h.
8571         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
8572         (FUNC): Use them.
8573         * lib/printf-frexp.c: Include fpucw.h.
8574         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
8575         (FUNC): Use them.
8576         * lib/vasnprintf.c: Include fpucw.h.
8577         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
8578         'long double' calculations.
8579         * tests/test-frexpl.c: Include fpucw.h.
8580         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
8581         * tests/test-printf-frexpl.c: Include fpucw.h.
8582         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
8583         * modules/frexpl (Depends-on): Add fpucw.
8584         * modules/printf-frexpl (Depends-on): Likewise.
8585         * modules/fprintf-posix (Depends-on): Likewise.
8586         * modules/snprintf-posix (Depends-on): Likewise.
8587         * modules/sprintf-posix (Depends-on): Likewise.
8588         * modules/vasnprintf-posix (Depends-on): Likewise.
8589         * modules/vasprintf-posix (Depends-on): Likewise.
8590         * modules/vfprintf-posix (Depends-on): Likewise.
8591         * modules/vsnprintf-posix (Depends-on): Likewise.
8592         * modules/vsprintf-posix (Depends-on): Likewise.
8593         * modules/frexpl-tests (Depends-on): Likewise.
8594         * modules/printf-frexpl-tests (Depends-on): Likewise.
8595
8596 2007-03-24  Bruno Haible  <bruno@clisp.org>
8597
8598         * lib/float+.h: New file.
8599         * lib/isnan.c: Include float+.h.
8600         (SIZE): New macro.
8601         (FUNC): Compare only SIZE bytes of the value.
8602         * lib/vasnprintf.c: Include float+.h.
8603         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
8604         SIZEOF_LDBL or SIZEOF_DBL bytes.
8605         * modules/isnan-nolibm (Files): Add lib/float+.h.
8606         * modules/isnanl-nolibm (Files): Add lib/float+.h.
8607         * modules/isnanl (Files): Add lib/float+.h.
8608         * modules/vasnprintf (Files): Add lib/float+.h.
8609
8610 2007-03-24  Bruno Haible  <bruno@clisp.org>
8611
8612         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
8613         include isnanl-nolibm.h.
8614
8615 2007-03-24  Bruno Haible  <bruno@clisp.org>
8616
8617         * tests/test-read-file.c (main): Don't produce spurious output for
8618         expected situations. Make the test fail if it encountered unexpected
8619         results.
8620
8621 2007-03-24  Bruno Haible  <bruno@clisp.org>
8622
8623         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
8624         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
8625
8626 2007-03-24  Bruno Haible  <bruno@clisp.org>
8627
8628         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
8629
8630 2007-03-24  Bruno Haible  <bruno@clisp.org>
8631
8632         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
8633         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
8634
8635         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
8636         * modules/utf8-ucs4: Turn into a symbolic link to module
8637         unistr/u8-mbtouc.
8638
8639         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
8640         utf8-ucs4-unsafe.
8641         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
8642         unistr/u8-mbtouc-unsafe.
8643
8644         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
8645         * modules/utf16-ucs4: Turn into a symbolic link to module
8646         unistr/u16-mbtouc.
8647
8648         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
8649         utf16-ucs4-unsafe.
8650         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
8651         unistr/u16-mbtouc-unsafe.
8652
8653         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
8654         * modules/ucs4-utf8: Turn into a symbolic link to module
8655         unistr/u8-ubtomb.
8656
8657         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
8658         * modules/ucs4-utf16: Turn into a symbolic link to module
8659         unistr/u16-ubtomb.
8660
8661 2007-03-24  Bruno Haible  <bruno@clisp.org>
8662
8663         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
8664         Enable the function only if HAVE_INLINE.
8665         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
8666         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
8667         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
8668         Enable the function only if HAVE_INLINE.
8669         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
8670         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
8671         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
8672         Enable the function only if HAVE_INLINE.
8673         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
8674         Enable the function only if HAVE_INLINE.
8675         * modules/utf8-ucs4: Update.
8676         * modules/utf8-ucs4-unsafe: Update.
8677         * modules/utf16-ucs4: Update.
8678         * modules/utf16-ucs4-unsafe: Update.
8679         * modules/ucs4-utf8: Update.
8680         * modules/ucs4-utf16: Update.
8681
8682 2007-03-24  Bruno Haible  <bruno@clisp.org>
8683
8684         * lib/utf8-ucs4.h: Remove file.
8685         * lib/utf8-ucs4-unsafe.h: Remove file.
8686         * lib/utf16-ucs4.h: Remove file.
8687         * lib/utf16-ucs4-unsafe.h: Remove file.
8688         * lib/ucs4-utf8.h: Remove file.
8689         * lib/ucs4-utf16.h: Remove file.
8690         * lib/unistr.h: Include their previous contents.
8691         * m4/utf-ucs4.m4: Remove file.
8692         * m4/ucs4-utf.m4: Remove file.
8693         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
8694         (Depends-on): Add unistr/base.
8695         (configure.ac): Remove gl_UTF_UCS4.
8696         (Makefile.am): Update.
8697         (Include): Change to unistr.h.
8698         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
8699         (Depends-on): Add unistr/base.
8700         (configure.ac): Remove gl_UTF_UCS4.
8701         (Makefile.am): Update.
8702         (Include): Change to unistr.h.
8703         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
8704         (Depends-on): Add unistr/base.
8705         (configure.ac): Remove gl_UTF_UCS4.
8706         (Makefile.am): Update.
8707         (Include): Change to unistr.h.
8708         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
8709         (Depends-on): Add unistr/base.
8710         (configure.ac): Remove gl_UTF_UCS4.
8711         (Makefile.am): Update.
8712         (Include): Change to unistr.h.
8713         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
8714         (Depends-on): Add unistr/base.
8715         (configure.ac): Remove gl_UCS4_UTF.
8716         (Makefile.am): Update.
8717         (Include): Change to unistr.h.
8718         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
8719         (Depends-on): Add unistr/base.
8720         (configure.ac): Remove gl_UCS4_UTF.
8721         (Makefile.am): Update.
8722         (Include): Change to unistr.h.
8723         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
8724         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
8725         utf8-ucs4-unsafe.h.
8726         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
8727         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
8728         utf16-ucs4-unsafe.h.
8729         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
8730         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
8731         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
8732         * lib/unistr/u8-strchr.c: Likewise.
8733         * lib/unistr/u8-strrchr.c: Likewise.
8734         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
8735         * lib/unistr/u16-strchr.c: Likewise.
8736         * lib/unistr/u16-strrchr.c: Likewise.
8737         * lib/striconveh.c: Update.
8738         * lib/linebreak.c: Update.
8739
8740 2007-03-24  Bruno Haible  <bruno@clisp.org>
8741
8742         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
8743         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
8744
8745 2007-03-22  Bruno Haible  <bruno@clisp.org>
8746
8747         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
8748
8749 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
8750
8751         * MODULES.html.sh (File system functions): New module write-any-file.
8752         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
8753         * m4/write-any-file.m4: New files.
8754
8755 2007-03-23  Eric Blake  <ebb9@byu.net>
8756
8757         * gnulib-tool: Rearrange space-tab sequences, since some editors
8758         like to eat them.
8759
8760 2007-03-23  Eric Blake  <ebb9@byu.net>
8761
8762         * lib/version-etc.c (version_etc_va): Update license wording to
8763         be more concise.  Recommended by Richard Stallman.
8764
8765 2007-03-22  Bruno Haible  <bruno@clisp.org>
8766
8767         * lib/poll.c (MSG_PEEK): New fallback definition.
8768
8769 2007-03-22  Bruno Haible  <bruno@clisp.org>
8770
8771         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
8772         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
8773         (main): Update.
8774         Fixes a compilation error on BeOS.
8775
8776 2007-03-22  Bruno Haible  <bruno@clisp.org>
8777
8778         * modules/frexpl-tests: New file.
8779         * tests/test-frexpl.c: New file.
8780
8781         * modules/frexpl: New file.
8782         * m4/frexpl.m4: New file.
8783         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
8784         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
8785         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
8786         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
8787         (Depends-on): Add frexpl. Remove isnanl-nolibm.
8788         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
8789
8790 2007-03-22  Bruno Haible  <bruno@clisp.org>
8791
8792         * lib/frexpl.c: Share code with lib/frexp.c.
8793         * modules/mathl (Files): Add lib/frexp.c.
8794         (Depends-on): Add isnanl-nolibm.
8795
8796 2007-03-22  Bruno Haible  <bruno@clisp.org>
8797
8798         * modules/printf-frexp (Files): Add m4/frexp.m4.
8799         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
8800         only if the found frexp function actually works.
8801
8802 2007-03-22  Bruno Haible  <bruno@clisp.org>
8803
8804         * lib/frexp.c: Remove older implementation that uses divisions.
8805
8806 2007-03-21  Bruno Haible  <bruno@clisp.org>
8807
8808         * modules/frexp-tests: New file.
8809         * tests/test-frexp.c: New file.
8810
8811         * modules/frexp: New file.
8812         * lib/frexp.c: New file.
8813         * m4/frexp.m4: New file.
8814         * lib/math_.h (frexp): New declaration.
8815         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
8816         REPLACE_FREXP.
8817         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
8818
8819 2007-03-21  Bruno Haible  <bruno@clisp.org>
8820
8821         * modules/isnanl-tests: New file.
8822         * tests/test-isnanl.c: New file.
8823
8824         * modules/isnanl: New file.
8825         * lib/isnanl.h: New file.
8826         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
8827         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
8828         gl_FUNC_ISNANL_WORKS.
8829         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
8830         New macros.
8831
8832 2007-03-21  Bruno Haible  <bruno@clisp.org>
8833
8834         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
8835         lib/isnanl.h.
8836         (Include): Update.
8837         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
8838         * lib/vasnprintf.c: Update.
8839         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
8840         tests/test-isnanl.h, remove tests/test-isnanl.c.
8841         (Makefile.am): Update.
8842         * tests/test-isnanl-nolibm.c: New file.
8843         * tests/test-isnanl.h: New file.
8844         * tests/test-isnanl.c: Remove file.
8845
8846 2007-03-21  Jim Meyering  <jim@meyering.net>
8847
8848         When trying to open ".", treat ESTALE like EACCES.
8849         * lib/savewd.c (savewd_save): Resort to forking not just upon
8850         failure with EACCES, but also when errno is ESTALE.
8851
8852 2007-03-20  Bruno Haible  <bruno@clisp.org>
8853
8854         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
8855         Needed on AIX 5.1. Reported by Matthew Woehlke.
8856
8857 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
8858
8859         Suggestions by Bruno Haible:
8860         * lib/acl-internal.h: Include "gettext.h" rather than rolling
8861         our own.
8862         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
8863         * modules/acl (Depends-on): Add gettext.
8864
8865 2007-03-19  Bruno Haible  <bruno@clisp.org>
8866
8867         * modules/iconvme: Remove file.
8868         * lib/iconvme.h: Remove file.
8869         * lib/iconvme.c: Remove file.
8870         * m4/iconvme.m4: Remove file.
8871
8872 2007-03-19  Bruno Haible  <bruno@clisp.org>
8873
8874         * doc/relocatable-maint.texi: Break long shell script line.
8875         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
8876
8877 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
8878
8879         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
8880         handle file_has_acl.
8881         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
8882         * lib/acl.c: Move header inclusions and related macro defns into
8883         lib/acl-internal.h.
8884         (S_ISLNK): Remove defn, since that's now done for us.
8885         (file_has_acl): Move to lib/file-has-acl.c.
8886         Call acl_trivial if available.  This is the crucial part of the fix.
8887         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
8888         shared within the library.  Rewrite a bit, partly to make it compatible
8889         with the GNU coding style.
8890         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
8891         Remove unnecessary double-quotes.
8892         Don't test for acl_to_text; the build will catch that.
8893         Replace acl_entries if it doesn't exist and it is needed.
8894         Check for -lsec and acl_trivial (as used on Solaris 10).
8895         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
8896         lib/file-has-acl.c.
8897         (Depends-on): Add sys_stat, for S_ISLNK.
8898
8899 2007-03-19  Ben Pfaff  <blp@gnu.org>
8900
8901         * doc/gnulib.texi: Fix typos.
8902         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
8903
8904 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
8905
8906         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
8907         If size is zero here, buf must be zero.
8908
8909 2007-03-19  Simon Josefsson  <simon@josefsson.org>
8910
8911         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
8912         <bruno@clisp.org>.
8913
8914 2007-03-18  Bruno Haible  <bruno@clisp.org>
8915
8916         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
8917         Suggested by Eric Blake.
8918
8919 2007-03-18  Ben Pfaff  <blp@gnu.org>
8920
8921         * doc/relocatable.texi: Recommend using as prefix a directory
8922         that does not exist and will never be created.  Based on
8923         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
8924         and others.
8925
8926 2007-03-17  Bruno Haible  <bruno@clisp.org>
8927
8928         * lib/fchownat.c: Include lchown.h.
8929
8930 2007-03-17  Bruno Haible  <bruno@clisp.org>
8931
8932         Fix endless loop when the given allocated size was > INT_MAX.
8933         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
8934         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
8935         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
8936         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
8937         * lib/sprintf.c (sprintf): Likewise.
8938
8939 2007-03-17  Bruno Haible  <bruno@clisp.org>
8940
8941         * tests/test-argp-2.sh (func_compare): Output a context diff.
8942
8943 2007-03-17  Bruno Haible  <bruno@clisp.org>
8944
8945         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
8946         locale's decimal-point character.
8947
8948 2007-03-17  Bruno Haible  <bruno@clisp.org>
8949
8950         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
8951         before comparing it. Needed because on some platforms (e.g. x86) a
8952         'long double' occupies less bytes than sizeof (long double).
8953
8954 2007-03-17  Bruno Haible  <bruno@clisp.org>
8955
8956         * tests/test-crc.c (main): Make printf statements 64-bit clean.
8957         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
8958         * tests/test-getaddrinfo.c (simple): Likewise.
8959         * tests/test-read-file.c (main): Likewise.
8960
8961 2007-03-17  Bruno Haible  <bruno@clisp.org>
8962
8963         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
8964
8965 2007-03-17  Bruno Haible  <bruno@clisp.org>
8966
8967         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
8968         unused variable.
8969
8970 2007-03-17  Bruno Haible  <bruno@clisp.org>
8971
8972         * tests/test-c-strcasecmp.c: Include c-strcase.h.
8973         * tests/test-c-strncasecmp.c: Likewise.
8974
8975 2007-03-17  Bruno Haible  <bruno@clisp.org>
8976
8977         * modules/stdlib (Depends-on): Add unistd.
8978         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
8979         Needed for MacOS X 10.3.
8980
8981 2007-03-17  Bruno Haible  <bruno@clisp.org>
8982
8983         * lib/unistr/u-strdup.h: Include <stdlib.h>.
8984
8985 2007-03-17  Bruno Haible  <bruno@clisp.org>
8986
8987         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
8988
8989 2007-03-17  Bruno Haible  <bruno@clisp.org>
8990
8991         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
8992         to reflect files copied from gnulib (with or without modifications).
8993         Suggested by Jim Meyering.
8994
8995 2007-03-17  Eric Blake  <ebb9@byu.net>
8996
8997         * NEWS: Document stdlib change from 2007-02-18.
8998
8999 2007-03-17  Jim Meyering  <jim@meyering.net>
9000
9001         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
9002         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
9003         someone uses a name containing shell meta-characters.
9004         Reported by Alfred M. Szmidt.
9005
9006         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
9007
9008 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
9009
9010         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
9011         and copy gettext configuration files only if configure.ac contains
9012         a use of AM_GNU_GETTEXT_VERSION.
9013
9014 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
9015
9016         * build-aux/bootstrap (gnulib_name): New variable.
9017         (gnulib_tool_options): Use it.
9018
9019 2007-03-13  Simon Josefsson  <simon@josefsson.org>
9020
9021         * tests/test-des.c: Use new namespace.
9022
9023 2007-03-15  Bruno Haible  <bruno@clisp.org>
9024
9025         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
9026         Reported by James Youngman <jay@gnu.org>.
9027
9028 2007-03-15  Bruno Haible  <bruno@clisp.org>
9029
9030         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
9031         declared prototype. Needed with cc on OSF/1 5.1.
9032
9033 2007-03-15  Bruno Haible  <bruno@clisp.org>
9034
9035         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
9036         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
9037         (struct gl_list_implementation): Add dispose_fn argument to the
9038         'create_empty', 'create' methods.
9039         (struct gl_list_impl_base): Add field 'dispose_fn'.
9040         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
9041         argument.
9042         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
9043         dispose_fn argument.
9044         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
9045         dispose_fn on the dropped values.
9046         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
9047         dispose_fn argument.
9048         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
9049         dropped values.
9050         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
9051         (gl_tree_remove_node): Call dispose_fn on the dropped value.
9052         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
9053         (gl_tree_remove_node): Call dispose_fn on the dropped value.
9054         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
9055         argument.
9056         (gl_tree_list_free): Call dispose_fn on the dropped values.
9057         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
9058         the dropped values.
9059         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
9060         Add dispose_fn argument.
9061         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
9062         Call dispose_fn on the dropped values.
9063         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
9064         Add dispose_fn argument.
9065         (gl_sublist_create): Initialize the 'dispose_fn' field.
9066         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
9067         * tests/test-array_list.c (main): Update.
9068         * tests/test-carray_list.c (main): Update.
9069         * tests/test-avltree_list.c (main): Update.
9070         * tests/test-rbtree_list.c (main): Update.
9071         * tests/test-avltreehash_list.c (main): Update.
9072         * tests/test-rbtreehash_list.c (main): Update.
9073         * tests/test-linked_list.c (main): Update.
9074         * tests/test-linkedhash_list.c (main): Update.
9075         * tests/test-array_oset.c (main): Update.
9076
9077 2007-03-15  Bruno Haible  <bruno@clisp.org>
9078
9079         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
9080         (gl_oset_create_empty): Add dispose_fn argument.
9081         (struct gl_oset_implementation): Add dispose_fn argument to
9082         'create_empty' method.
9083         (struct gl_oset_impl_base): Add dispose_fn field.
9084         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
9085         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
9086         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
9087         values.
9088         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
9089         (gl_tree_oset_free): Call dispose_fn on the dropped values.
9090         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
9091         dropped value.
9092         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
9093         dropped value.
9094         * tests/test-array_oset.c (main): Update.
9095         * tests/test-avltree_oset.c (main): Update.
9096         * tests/test-rbtree_oset.c (main): Update.
9097         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
9098
9099 2007-03-13  Bruno Haible  <bruno@clisp.org>
9100
9101         * tests/test-stdbool.c (i): Update after last patch.
9102
9103 2007-03-12  Bruno Haible  <bruno@clisp.org>
9104
9105         * lib/quotearg.c: Include <wctype.h> early, before the definition of
9106         the iswprint macro. Needed on Solaris 2.5.1.
9107
9108 2007-03-12  Bruno Haible  <bruno@clisp.org>
9109
9110         * tests/test-printf-frexp.c (main): Declare x as volatile.
9111
9112 2007-03-12  Simon Josefsson  <simon@josefsson.org>
9113
9114         * doc/gnulib.texi (Build robot for gnulib): New section.
9115
9116 2007-03-12  Jim Meyering  <jim@meyering.net>
9117
9118         * build-aux/bootstrap: New file.
9119         * build-aux/bootstrap.conf: New file, from coreutils.
9120
9121 2007-03-11  Bruno Haible  <bruno@clisp.org>
9122
9123         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
9124
9125 2007-03-12  Simon Josefsson  <simon@josefsson.org>
9126
9127         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
9128         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
9129         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
9130
9131 2007-03-11  Bruno Haible  <bruno@clisp.org>
9132
9133         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
9134         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
9135
9136 2007-03-11  Bruno Haible  <bruno@clisp.org>
9137
9138         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
9139         formula. Needed for SunPRO C 5.0.
9140
9141 2007-03-11  Bruno Haible  <bruno@clisp.org>
9142
9143         * modules/long-options (Depends-on): Add getopt.
9144
9145 2007-03-11  Bruno Haible  <bruno@clisp.org>
9146
9147         * modules/modechange (Depends-on): Add stdbool.
9148
9149 2007-03-11  Bruno Haible  <bruno@clisp.org>
9150
9151         * modules/i-ring (Depends-on): Add stdbool.
9152
9153 2007-03-11  Bruno Haible  <bruno@clisp.org>
9154
9155         * modules/gc-des (Depends-on): Add stdbool.
9156
9157 2007-03-11  Bruno Haible  <bruno@clisp.org>
9158
9159         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
9160
9161 2007-03-11  Bruno Haible  <bruno@clisp.org>
9162
9163         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
9164
9165 2007-03-11  Bruno Haible  <bruno@clisp.org>
9166
9167         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
9168
9169 2007-03-11  Bruno Haible  <bruno@clisp.org>
9170
9171         * lib/vasnprintf.c (sprintf): Undefine.
9172
9173 2007-03-11  Bruno Haible  <bruno@clisp.org>
9174
9175         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
9176         initializers in SunPRO C and Compaq C compilers.
9177
9178 2007-03-11  Bruno Haible  <bruno@clisp.org>
9179
9180         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
9181         decrementing code ANSI C compliant.
9182
9183 2007-03-11  Bruno Haible  <bruno@clisp.org>
9184
9185         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
9186         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
9187
9188 2007-03-11  Bruno Haible  <bruno@clisp.org>
9189
9190         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
9191         <stdbool.h> substitute doesn't pass.
9192
9193 2007-03-11  Bruno Haible  <bruno@clisp.org>
9194
9195         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
9196
9197 2007-03-11  Bruno Haible  <bruno@clisp.org>
9198
9199         * gnulib-tool (func_create_megatestdir): Create also an autobuild
9200         script, for submission to autobuild.josefsson.org.
9201
9202 2007-03-10  Bruno Haible  <bruno@clisp.org>
9203
9204         * modules/canonicalize-lgpl-tests: New file.
9205         * tests/test-canonicalize-lgpl.sh: New file.
9206         * tests/test-canonicalize-lgpl.c: New file.
9207
9208         * modules/c-strcase-tests: New file.
9209         * tests/test-c-strcase.sh: New file.
9210         * tests/test-c-strcasecmp.c: New file.
9211         * tests/test-c-strncasecmp.c: New file.
9212
9213         * modules/atexit-tests: New file.
9214         * tests/test-atexit.sh: New file.
9215         * tests/test-atexit.c: New file.
9216
9217 2007-03-10  Bruno Haible  <bruno@clisp.org>
9218
9219         * tests/test-binary-io.sh: Use temporary filenames that are not so
9220         likely to clash with those of other tests (in a parallel make).
9221         * tests/test-binary-io.c: Likewise.
9222
9223 2007-03-10  Bruno Haible  <bruno@clisp.org>
9224
9225         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
9226         fallback; use #error instead.
9227         Suggested by Simon Josefsson.
9228
9229 2007-03-10  Bruno Haible  <bruno@clisp.org>
9230
9231         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
9232         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
9233         first and the last.
9234
9235 2007-03-10  Bruno Haible  <bruno@clisp.org>
9236
9237         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
9238
9239 2007-03-10  Bruno Haible  <bruno@clisp.org>
9240
9241         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
9242         "make distcheck".
9243         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
9244         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
9245         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
9246
9247 2007-03-10  Bruno Haible  <bruno@clisp.org>
9248
9249         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
9250         variable.
9251         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
9252         variable.
9253
9254 2007-03-09  Eric Blake  <ebb9@byu.net>
9255         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
9256
9257         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
9258         types are not being provided by gnulib.
9259         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
9260         types are supported.
9261
9262 2007-03-10  Bruno Haible  <bruno@clisp.org>
9263
9264         * lib/stdio_.h (__attribute__): New macro.
9265         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
9266         vsprintf): Specify __attribute__ __format__ for GCC.
9267         Suggested by Eric Blake.
9268
9269 2007-03-09  Bruno Haible  <bruno@clisp.org>
9270
9271         * modules/printf-posix-tests: New file.
9272         * tests/test-printf-posix.sh: New file.
9273         * tests/test-printf-posix.c: New file.
9274
9275         * modules/printf-posix: New file.
9276         * lib/printf.c: New file.
9277         * m4/printf-posix-rpl.m4: New file.
9278         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
9279         REPLACE_PRINTF.
9280         * lib/stdio_.h (printf): New declaration.
9281         (format, __format__, ____printf____, ____scanf____, ____strftime____,
9282         ____strfmon____): New macros.
9283         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
9284         REPLACE_PRINTF.
9285
9286 2007-03-09  Bruno Haible  <bruno@clisp.org>
9287
9288         * tests/test-vasnprintf-posix2.sh: New file.
9289         * tests/test-vasnprintf-posix2.c: New file.
9290         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
9291         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
9292         (Makefile.am): Activate test-vasnprintf-posix2.sh.
9293
9294         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
9295         a locale dependent decimal point, rather than always '.'.
9296
9297 2007-03-09  Eric Blake  <ebb9@byu.net>
9298
9299         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
9300         spite of platforms like Tandem/NSK that define it to -1.
9301
9302 2007-03-08  Bruno Haible  <bruno@clisp.org>
9303
9304         * modules/vprintf-posix-tests: New file.
9305         * tests/test-vprintf-posix.sh: New file.
9306         * tests/test-vprintf-posix.c: New file.
9307         * tests/test-printf-posix.h: New file.
9308
9309         * modules/vprintf-posix: New file.
9310         * lib/vprintf.c: New file.
9311         * m4/vprintf-posix.m4: New file.
9312         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
9313         REPLACE_VPRINTF.
9314         * lib/stdio_.h (vprintf): New declaration.
9315         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
9316         REPLACE_VPRINTF.
9317
9318 2007-03-08  Bruno Haible  <bruno@clisp.org>
9319
9320         * modules/fprintf-posix-tests: New file.
9321         * tests/test-fprintf-posix.sh: New file.
9322         * tests/test-fprintf-posix.c: New file.
9323
9324         * modules/fprintf-posix: New file.
9325         * lib/fprintf.c: New file.
9326         * m4/fprintf-posix.m4: New file.
9327         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
9328         REPLACE_FPRINTF.
9329         * lib/stdio_.h (fprintf): New declaration.
9330         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
9331         REPLACE_FPRINTF.
9332
9333 2007-03-08  Bruno Haible  <bruno@clisp.org>
9334
9335         * modules/vfprintf-posix-tests: New file.
9336         * tests/test-vfprintf-posix.sh: New file.
9337         * tests/test-vfprintf-posix.c: New file.
9338         * tests/test-fprintf-posix.h: New file.
9339         * tests/test-fprintf-posix.out: New file.
9340
9341         * modules/vfprintf-posix: New file.
9342         * lib/vfprintf.c: New file.
9343         * m4/vfprintf-posix.m4: New file.
9344         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
9345         REPLACE_VFPRINTF.
9346         * lib/stdio_.h (vfprintf): New declaration.
9347         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
9348         REPLACE_VFPRINTF.
9349
9350 2007-03-08  Bruno Haible  <bruno@clisp.org>
9351
9352         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
9353
9354 2007-03-08  Bruno Haible  <bruno@clisp.org>
9355
9356         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
9357         instead of 'expr' invocations.
9358         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
9359         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
9360         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
9361         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
9362         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
9363         Suggested by Paul Eggert.
9364
9365 2007-03-08  Bruno Haible  <bruno@clisp.org>
9366
9367         * modules/fseterr-tests: New file.
9368         * tests/test-fseterr.c: New file.
9369
9370         * modules/fseterr: New file.
9371         * lib/fseterr.h: New file.
9372         * lib/fseterr.c: New file.
9373
9374 2007-03-08  Bruno Haible  <bruno@clisp.org>
9375
9376         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
9377         * lib/getopt_.h: Likewise.
9378         * lib/mbswidth.h: Likewise.
9379         * lib/setenv.h: Likewise.
9380         * lib/vasnprintf.h: Likewise.
9381         * lib/vasprintf.h: Likewise.
9382         * lib/verror.h: Likewise.
9383         * lib/xsetenv.h: Likewise.
9384         * lib/xvasprintf.h: Likewise.
9385
9386 2007-03-08  Jim Meyering  <jim@meyering.net>
9387
9388         * users.txt: Add parted.
9389
9390         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
9391
9392 2007-03-07  Bruno Haible  <bruno@clisp.org>
9393
9394         * m4/printf.m4: Make the shell script snippets copy&pastable.
9395
9396 2007-03-02  Bruno Haible  <bruno@clisp.org>
9397
9398         * lib/netinet_in_.h: New file.
9399         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
9400         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
9401         * modules/netinet_in (Files): Add lib/netinet_in_.h.
9402         (Depends-on): Add absolute-header.
9403         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
9404         into netinet/in.h.
9405
9406 2007-03-03  Bruno Haible  <bruno@clisp.org>
9407
9408         * lib/sys_select_.h: New file.
9409         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
9410         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
9411         * modules/sys_select (Files): Add lib/sys_select_.h.
9412         (Depends-on): Add absolute-header.
9413         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
9414         into sys/select.h.
9415
9416 2007-03-02  Bruno Haible  <bruno@clisp.org>
9417
9418         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
9419         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
9420         values.
9421         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
9422         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
9423         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
9424         * modules/sys_socket (Depends-on): Add absolute-header.
9425         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
9426         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
9427         (Include): Remove requirement of inclusion of <sys/types.h>.
9428
9429 2007-03-02  Bruno Haible  <bruno@clisp.org>
9430
9431         * lib/byteswap_.h (bswap_32): Fix formula.
9432
9433 2007-03-06  Bruno Haible  <bruno@clisp.org>
9434
9435         * modules/sprintf-posix-tests: New file.
9436         * tests/test-sprintf-posix.c: New file.
9437
9438         * modules/sprintf-posix: New file.
9439         * lib/sprintf.c: New file.
9440         * m4/sprintf-posix.m4: New file.
9441         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
9442         REPLACE_SPRINTF.
9443         * lib/stdio_.h (sprintf): New declaration.
9444         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
9445         REPLACE_SPRINTF.
9446
9447 2007-03-06  Bruno Haible  <bruno@clisp.org>
9448
9449         * modules/vsprintf-posix-tests: New file.
9450         * tests/test-vsprintf-posix.c: New file.
9451         * tests/test-sprintf-posix.h: New file.
9452
9453         * modules/vsprintf-posix: New file.
9454         * lib/vsprintf.c: New file.
9455         * m4/vsprintf-posix.m4: New file.
9456         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
9457         REPLACE_VSPRINTF.
9458         * lib/stdio_.h (vsprintf): New declaration.
9459         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
9460         REPLACE_VSPRINTF.
9461
9462 2007-03-06  Bruno Haible  <bruno@clisp.org>
9463
9464         * modules/vsnprintf (Depend-on): Remove minmax.
9465
9466 2007-03-06  Bruno Haible  <bruno@clisp.org>
9467
9468         * modules/snprintf-posix-tests: New file.
9469         * tests/test-snprintf-posix.c: New file.
9470
9471         * modules/snprintf-posix: New file.
9472         * m4/snprintf-posix.m4: New file.
9473         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
9474         gl_FUNC_SNPRINTF.
9475         (gl_FUNC_SNPRINTF): Invoke it.
9476         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
9477         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
9478         is set.
9479         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
9480
9481 2007-03-06  Bruno Haible  <bruno@clisp.org>
9482
9483         * modules/vsnprintf-posix-tests: New file.
9484         * tests/test-vsnprintf-posix.c: New file.
9485         * tests/test-snprintf-posix.h: New file.
9486
9487         * modules/vsnprintf-posix: New file.
9488         * m4/vsnprintf-posix.m4: New file.
9489         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
9490         gl_FUNC_VSNPRINTF.
9491         (gl_FUNC_VSNPRINTF): Invoke it.
9492         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
9493         * lib/stdio_.h (vsnprintf): Define as a replacement if
9494         REPLACE_VSNPRINTF is set.
9495         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
9496
9497 2007-03-06  Bruno Haible  <bruno@clisp.org>
9498
9499         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
9500         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
9501
9502 2007-03-06  Bruno Haible  <bruno@clisp.org>
9503
9504         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
9505         (asinl): Declare also if HAVE_DECL_ASINL is set.
9506         (atanl): Declare also if HAVE_DECL_ATANL is set.
9507         (ceill): Declare also if HAVE_DECL_CEILL is set.
9508         (cosl): Declare also if HAVE_DECL_COSL is set.
9509         (expl): Declare also if HAVE_DECL_EXPL is set.
9510         (floorl): Declare also if HAVE_DECL_FLOORL is set.
9511         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
9512         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
9513         (logl): Declare also if HAVE_DECL_LOGL is set.
9514         (sinl): Declare also if HAVE_DECL_SINL is set.
9515         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
9516         (tanl): Declare also if HAVE_DECL_TANL is set.
9517         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
9518         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
9519         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
9520         declaration of frexpl, ldexpl.
9521         * modules/printf-frexpl (Depends-on): Add math.
9522         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
9523
9524 2007-03-05  Bruno Haible  <bruno@clisp.org>
9525
9526         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
9527         frexpl and ldexpl are declared.
9528         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
9529
9530 2007-03-05  Bruno Haible  <bruno@clisp.org>
9531
9532         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
9533         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
9534
9535 2007-03-05  Bruno Haible  <bruno@clisp.org>
9536
9537         * lib/stdio_.h: Include <stddef.h>.
9538
9539 2007-03-05  Bruno Haible  <bruno@clisp.org>
9540
9541         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
9542
9543 2007-03-05  Bruno Haible  <bruno@clisp.org>
9544
9545         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
9546         NetBSD 4, from Ralf Wildenhues.
9547
9548 2007-03-04  Bruno Haible  <bruno@clisp.org>
9549
9550         * lib/vasprintf.h: Update #if logic for the case when the functions
9551         exist but are overridden.
9552
9553 2007-03-04  Bruno Haible  <bruno@clisp.org>
9554
9555         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
9556         implementations: glibc-2.4 and MacOS X 10.3.
9557         * tests/test-vasnprintf-posix.c (test_function): Test also the case
9558         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
9559         * tests/test-vasprintf-posix.c (test_function): Likewise.
9560
9561 2007-03-04  Bruno Haible  <bruno@clisp.org>
9562
9563         * modules/vasprintf-posix-tests: New file.
9564         * tests/test-vasprintf-posix.c: New file.
9565
9566         * modules/vasprintf-posix: New file.
9567         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
9568         defined.
9569         * m4/vasprintf-posix.m4: New file.
9570         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
9571         gl_FUNC_VASPRINTF.
9572         (gl_FUNC_VASPRINTF): Invoke it.
9573         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
9574         here.
9575         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
9576
9577 2007-03-04  Bruno Haible  <bruno@clisp.org>
9578
9579         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
9580         REPLACE_GETTIMEOFDAY.
9581         * modules/sys_time (Makefile.am): Likewise.
9582         * m4/sys_time_h.m4: Likewise.
9583         * m4/gettimeofday.m4: Likewise.
9584
9585 2007-03-04  Bruno Haible  <bruno@clisp.org>
9586
9587         * modules/vasnprintf-posix-tests: New file.
9588         * tests/test-vasnprintf-posix.c: New file.
9589
9590         * modules/vasnprintf-posix: New file.
9591         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
9592         printf-frexpl.h.
9593         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
9594         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
9595         REPLACE_VASNPRINTF is defined.
9596         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
9597         gl_FUNC_VASNPRINTF.
9598         (gl_FUNC_VASNPRINTF): Invoke it.
9599         * m4/vasnprintf-posix.m4: New file.
9600         * m4/printf.m4: New file.
9601
9602 2007-03-04  Bruno Haible  <bruno@clisp.org>
9603
9604         Compile progreloc.c only if --enable-relocatable is specified.
9605         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
9606         if --enable-relocatable was specified.
9607         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
9608         lib_SOURCES.
9609
9610 2007-03-04  Jim Meyering  <jim@meyering.net>
9611
9612         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
9613         Use it consistently, rather than enumerating errno constants.
9614
9615 2007-03-04  Bruno Haible  <bruno@clisp.org>
9616
9617         * modules/xvasprintf-tests: New file.
9618         * tests/test-xvasprintf.c: New file.
9619
9620         * modules/vasprintf-tests: New file.
9621         * tests/test-vasprintf.c: New file.
9622
9623         * modules/vasnprintf-tests: New file.
9624         * tests/test-vasnprintf.c: New file.
9625
9626         * modules/vsnprintf-tests: New file.
9627         * tests/test-vsnprintf.c: New file.
9628
9629         * modules/snprintf-tests: New file.
9630         * tests/test-snprintf.c: New file.
9631
9632 2007-03-04  Bruno Haible  <bruno@clisp.org>
9633
9634         Compile relocatable.c only if --enable-relocatable is specified.
9635         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
9636         gl_RELOCATABLE_LIBRARY.
9637         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
9638         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
9639         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
9640         gl_RELOCATABLE_LIBRARY.
9641         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
9642         (Makefile.am): Remove lib_SOURCES.
9643         * modules/relocatable-lib-lgpl (configure.ac): Invoke
9644         gl_RELOCATABLE_LIBRARY.
9645         (Makefile.am): Remove lib_SOURCES.
9646         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
9647         always.
9648         * modules/relocatable-prog-wrapper (configure.ac): Invoke
9649         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
9650
9651 2007-03-04  Bruno Haible  <bruno@clisp.org>
9652
9653         * modules/argmatch-tests: New file.
9654         * tests/test-argmatch.c: New file.
9655
9656         * tests/test-allocsa.c (main): Halve the number of loop runs.
9657
9658         * modules/alloca-opt-tests: New file.
9659         * tests/test-alloca-opt.c: New file.
9660
9661 2007-03-04  Jim Meyering  <jim@meyering.net>
9662
9663         Work around difference between Linux ACLs and Solaris 10 ZFS.
9664         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
9665         for EINVAL.
9666
9667 2007-03-03  Bruno Haible  <bruno@clisp.org>
9668
9669         * modules/relocatable-prog (Depends-on): Add back progreloc's
9670         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
9671
9672 2007-03-03  Bruno Haible  <bruno@clisp.org>
9673
9674         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
9675         * modules/relocatable-lib: New file.
9676
9677 2007-03-03  Bruno Haible  <bruno@clisp.org>
9678
9679         * modules/relocatable-prog: Renamed from modules/relocatable.
9680         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
9681
9682 2007-03-03  Bruno Haible  <bruno@clisp.org>
9683
9684         * modules/relocatable-script (Files): Add doc/relocatable.texi,
9685         m4/relocatable-lib.m4.
9686         (Depends-on): Remove 'relocatable'.
9687         (configure.ac): Add gl_RELOCATABLE_NOP.
9688
9689 2007-03-03  Bruno Haible  <bruno@clisp.org>
9690
9691         * modules/relocatable-prog-wrapper: New file.
9692         * modules/relocatable (Depends-on): Add it. Remove all other
9693         dependencies except progname.
9694         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
9695
9696         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
9697         (gl_FUNC_STRERROR): Nop.
9698         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
9699
9700         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
9701         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
9702
9703         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
9704         (gl_FUNC_READLINK): Update.
9705
9706         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
9707
9708 2007-03-03  Bruno Haible  <bruno@clisp.org>
9709
9710         * lib/xreadlink.c: Include <unistd.h> unconditionally.
9711         * modules/xreadlink (Depends-on): Add unistd.
9712         * modules/xreadlink-with-size (Depends-on): Likewise.
9713
9714 2007-03-03  Bruno Haible  <bruno@clisp.org>
9715
9716         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
9717         extracted from gt_FUNC_SETENV.
9718         (gt_FUNC_SETENV): Remove macro.
9719         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
9720         remove gt_FUNC_SETENV.
9721
9722 2007-03-03  Bruno Haible  <bruno@clisp.org>
9723
9724         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
9725         ENABLE_RELOCATABLE here.
9726         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
9727
9728 2007-03-03  Bruno Haible  <bruno@clisp.org>
9729
9730         * modules/rbtreehash-list-tests (Depends-on): Add progname.
9731         * tests/test-rbtreehash_list.c: Include progname.h.
9732         (main): Call set_program_name.
9733
9734         * modules/rbtree-oset-tests (Depends-on): Add progname.
9735         * tests/test-rbtree_oset.c: Include progname.h.
9736         (main): Call set_program_name.
9737
9738         * modules/rbtree-list-tests (Depends-on): Add progname.
9739         * tests/test-rbtree_list.c: Include progname.h.
9740         (main): Call set_program_name.
9741
9742         * modules/linked-list-tests (Depends-on): Add progname.
9743         * tests/test-linked_list.c: Include progname.h.
9744         (main): Call set_program_name.
9745
9746 2007-03-03  Bruno Haible  <bruno@clisp.org>
9747
9748         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
9749         All uses of __restrict changed to _Restrict_.
9750         * lib/glob_.h (__restrict): Remove macro.
9751
9752 2007-03-02  Bruno Haible  <bruno@clisp.org>
9753
9754         * modules/gettext (configure.ac): Require gettext infrastructure
9755         from version 0.16.1.
9756
9757 2007-03-02  Bruno Haible  <bruno@clisp.org>
9758
9759         * modules/linkedhash-list-tests (Depends-on): Add progname.
9760         * tests/test-linkedhash_list.c: Include progname.h.
9761         (main): Call set_program_name.
9762
9763         * modules/carray-list-tests (Depends-on): Add progname.
9764         * tests/test-carray_list.c: Include progname.h.
9765         (main): Call set_program_name.
9766
9767         * modules/avltreehash-list-tests (Depends-on): Add progname.
9768         * tests/test-avltreehash_list.c: Include progname.h.
9769         (main): Call set_program_name.
9770
9771         * modules/avltree-oset-tests (Depends-on): Add progname.
9772         * tests/test-avltree_oset.c: Include progname.h.
9773         (main): Call set_program_name.
9774
9775         * modules/avltree-list-tests (Depends-on): Add progname.
9776         * tests/test-avltree_list.c: Include progname.h.
9777         (main): Call set_program_name.
9778
9779         * modules/array-oset-tests (Depends-on): Add progname.
9780         * tests/test-array_oset.c: Include progname.h.
9781         (main): Call set_program_name.
9782
9783         * modules/array-list-tests (Depends-on): Add progname.
9784         * tests/test-array_list.c: Include progname.h.
9785         (main): Call set_program_name.
9786
9787         * modules/argp-tests (Depends-on): Add progname.
9788         * tests/test-argp.c: Include argp.h first. Include progname.h.
9789         (main): Call set_program_name.
9790
9791 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
9792
9793         * doc/gnulib-tool.texi (Initial import): Reword description of
9794         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
9795         limited effect even if defined after the first system include.
9796
9797 2007-03-01  Bruno Haible  <bruno@clisp.org>
9798
9799         * build-aux/config.libpath: Update to libtool-1.5.22.
9800         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
9801
9802 2007-03-01  Bruno Haible  <bruno@clisp.org>
9803
9804         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
9805         foo_CFLAGS.
9806         Reported by Ralf Wildenhues.
9807
9808 2007-03-01  Bruno Haible  <bruno@clisp.org>
9809
9810         * build-aux/install-reloc: Remove object files left over by some
9811         compilers.
9812         Reported by Ralf Wildenhues.
9813
9814 2007-03-01  Bruno Haible  <bruno@clisp.org>
9815
9816         * build-aux/install-reloc: Break long lines.
9817
9818 2007-03-01  Bruno Haible  <bruno@clisp.org>
9819
9820         * doc/relocatable.texi: Document that it may not work on OpenBSD.
9821         Reported by Ralf Wildenhues.
9822
9823 2007-03-01  Bruno Haible  <bruno@clisp.org>
9824
9825         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
9826         include ordering constraints.
9827
9828 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
9829
9830         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
9831         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
9832         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
9833         as another example.
9834         * lib/time_.h: Fix misspelling.
9835         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
9836         Require gl_HEADER_TIME_H_DEFAULTS.
9837         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
9838         * m4/time_r.m4 (gl_TIME_R): Likewise.
9839         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
9840
9841 2007-03-01  Bruno Haible  <bruno@clisp.org>
9842
9843         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
9844         * m4/utimens.m4 (gl_UTIMENS): Likewise.
9845
9846 2007-03-01  Jim Meyering  <jim@meyering.net>
9847
9848         * modules/xreadlink (Maintainer): Add my name.
9849         * modules/xreadlink-with-size (Depends-on): Alphabetize.
9850
9851 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
9852             Bruno Haible  <bruno@clisp.org>
9853
9854         * build-aux/install-reloc: Compile also c-ctype.c.
9855         * build-aux/relocatable.sh.in: New file.
9856         * doc/relocatable.texi: New file.
9857         * doc/relocatable-maint.texi: New file.
9858         * doc/gnulib.texi: Include relocatable-maint.texi.
9859         * lib/progreloc.c: Include unistd.h unconditionally.
9860         * lib/relocwrapper.c: Include unistd.h unconditionally.
9861         Include c-ctype.h.
9862         (add_dotbin): Use c_tolower.
9863         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
9864         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
9865         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
9866         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
9867         to m4/relocatable-lib.m4.
9868         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
9869         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
9870         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
9871         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
9872         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
9873         * modules/relocatable: New file.
9874         * modules/relocatable-lib: New file.
9875         * modules/relocatable-script: New file.
9876
9877 2007-02-28  Bruno Haible  <bruno@clisp.org>
9878
9879         Import --enable-relocatable infrastructure.
9880         * build-aux/config.libpath: New file, from GNU gettext.
9881         * build-aux/install-reloc: New file, from GNU gettext.
9882         * build-aux/reloc-ldflags: New file, from GNU gettext.
9883         * lib/relocatable.h: New file, from GNU gettext.
9884         * lib/relocatable.c: New file, from GNU gettext.
9885         * lib/relocwrapper.c: New file, from GNU gettext.
9886         * m4/relocatable.m4: New file, from GNU gettext.
9887
9888 2007-02-28  Bruno Haible  <bruno@clisp.org>
9889
9890         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
9891
9892         * modules/xreadlink: New file, from GNU gettext with modifications.
9893         * lib/xreadlink.c: New file, from GNU gettext.
9894         * lib/xreadlink.h: Add comments.
9895         (xreadlink): New declaration.
9896
9897         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
9898         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
9899         lib/xreadlink-with-size.c.
9900         (configure.ac): Remove gl_XREADLINK invocation.
9901         (Makefile.am): Augment lib_SOURCES.
9902         * m4/xreadlink.m4: Remove file.
9903         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
9904         (xreadlink_with_size): Renamed from xreadink.
9905         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
9906         * modules/canonicalize (Depends-on): Replace xreadlink with
9907         xreadlink-with-size.
9908         * lib/canonicalize.c (canonicalize_filename_mode): Update.
9909
9910 2007-02-25  Jim Meyering  <jim@meyering.net>
9911
9912         * build-aux/announce-gen: When complaining about excess arguments,
9913         list them.
9914
9915 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
9916
9917         * README: Document signed integer overflow situation more
9918         accurately.
9919
9920 2007-02-25  Bruno Haible  <bruno@clisp.org>
9921
9922         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
9923         'a' or 'A' conversion.
9924
9925 2007-02-25  Bruno Haible  <bruno@clisp.org>
9926
9927         * modules/filename: Renamed from modules/pathname.
9928         (Files): Replace lib/pathname.h with lib/filename.h. Replace
9929         lib/concatpath.c with lib/concat-filename.c.
9930         (Makefile.am): Update.
9931         (Include): Replace pathname.h with filename.h.
9932         * lib/filename.h: Renamed from lib/pathname.h.
9933         (concatenated_filename): Renamed from concatenated_pathname.
9934         * lib/concat-filename.c: Renamed from lib/concatpath.c.
9935         (concatenated_filename): Renamed from concatenated_pathname.
9936         * lib/findprog.c: Include filename.h instead of pathname.h.
9937         (find_in_path): Update.
9938         * lib/javacomp.c: Include filename.h instead of pathname.h.
9939         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
9940         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
9941         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
9942         is_oldgcj_14_13_usable, is_javac_usable): Update.
9943         * lib/javaexec.c: Include filename.h instead of pathname.h.
9944         (execute_java_class): Update.
9945         * modules/findprog: Update.
9946         * modules/javacomp: Update.
9947         * modules/javaexec: Update.
9948         * MODULES.html.sh (File system functions): Add 'filename', remove
9949         'pathname'.
9950
9951 2007-02-25  Bruno Haible  <bruno@clisp.org>
9952
9953         * modules/printf-frexpl-tests: New file.
9954         * tests/test-printf-frexpl.c: New file.
9955
9956         * modules/printf-frexpl: New file.
9957         * lib/printf-frexpl.h: New file.
9958         * lib/printf-frexpl.c: New file.
9959         * m4/printf-frexpl.m4: New file.
9960
9961 2007-02-25  Bruno Haible  <bruno@clisp.org>
9962
9963         * modules/printf-frexp-tests: New file.
9964         * tests/test-printf-frexp.c: New file.
9965
9966         * modules/printf-frexp: New file.
9967         * lib/printf-frexp.h: New file.
9968         * lib/printf-frexp.c: New file.
9969         * m4/printf-frexp.m4: New file.
9970
9971 2007-02-25  Bruno Haible  <bruno@clisp.org>
9972
9973         Assume automake >= 1.10 for the tests.
9974         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
9975         * modules/arctwo-tests: Likewise.
9976         * modules/argp-tests: Likewise.
9977         * modules/avltree-list-tests: Likewise.
9978         * modules/avltree-oset-tests: Likewise.
9979         * modules/avltreehash-list-tests: Likewise.
9980         * modules/carray-list-tests: Likewise.
9981         * modules/crc-tests: Likewise.
9982         * modules/des-tests: Likewise.
9983         * modules/gc-arcfour-tests: Likewise.
9984         * modules/gc-arctwo-tests: Likewise.
9985         * modules/gc-des-tests: Likewise.
9986         * modules/gc-hmac-md5-tests: Likewise.
9987         * modules/gc-hmac-sha1-tests: Likewise.
9988         * modules/gc-md2-tests: Likewise.
9989         * modules/gc-md4-tests: Likewise.
9990         * modules/gc-md5-tests: Likewise.
9991         * modules/gc-pbkdf2-sha1-tests: Likewise.
9992         * modules/gc-rijndael-tests: Likewise.
9993         * modules/gc-sha1-tests: Likewise.
9994         * modules/gc-tests: Likewise.
9995         * modules/getaddrinfo-tests: Likewise.
9996         * modules/hmac-md5-tests: Likewise.
9997         * modules/hmac-sha1-tests: Likewise.
9998         * modules/linked-list-tests: Likewise.
9999         * modules/linkedhash-list-tests: Likewise.
10000         * modules/lock-tests: Likewise.
10001         * modules/md2-tests: Likewise.
10002         * modules/md4-tests: Likewise.
10003         * modules/md5-tests: Likewise.
10004         * modules/rbtree-list-tests: Likewise.
10005         * modules/rbtree-oset-tests: Likewise.
10006         * modules/rbtreehash-list-tests: Likewise.
10007         * modules/read-file-tests: Likewise.
10008         * modules/rijndael-tests: Likewise.
10009         * modules/stdint-tests: Likewise.
10010         * modules/tls-tests: Likewise.
10011
10012 2007-02-24  Bruno Haible  <bruno@clisp.org>
10013
10014         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
10015         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
10016         function; instead check whether isnan with a double argument links.
10017         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
10018         function; instead check whether isnan with a 'long double' argument
10019         links.
10020         Reported by Eric Blake <ebb9@byu.net>.
10021
10022 2007-02-24  Bruno Haible  <bruno@clisp.org>
10023
10024         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
10025         defined.
10026         * lib/isnanl.c: Remove all code. Just include isnan.c.
10027         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
10028
10029 2007-02-25  Jim Meyering  <jim@meyering.net>
10030
10031         Avoid conflicting types for 'unsetenv' on FreeBSD.
10032         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
10033         conflicting with FreeBSD's (5.0 and 6.1) function declaration
10034         in stdlib.h.
10035
10036 2007-02-24  Bruno Haible  <bruno@clisp.org>
10037
10038         * modules/isnanl-nolibm-tests: New file.
10039         * tests/test-isnanl.c: New file.
10040
10041         * modules/isnanl-nolibm: New file.
10042         * lib/isnanl.h: New file.
10043         * lib/isnanl.c: New file.
10044         * m4/isnanl.m4: New file.
10045
10046 2007-02-24  Bruno Haible  <bruno@clisp.org>
10047
10048         * modules/isnan-nolibm-tests: New file.
10049         * tests/test-isnan.c: New file.
10050
10051         * modules/isnan-nolibm: New file.
10052         * lib/isnan.h: New file.
10053         * lib/isnan.c: New file.
10054         * m4/isnan.m4: New file.
10055
10056 2007-02-24  Bruno Haible  <bruno@clisp.org>
10057
10058         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
10059         assume that an exponent fits in 20 bits.
10060
10061 2007-02-24  Jim Meyering  <jim@meyering.net>
10062
10063         * m4/regex.m4: Update the description of the configure-time option,
10064         --without-included-regex, to state accurately what the defaults are,
10065         and perhaps to give people an idea why using this option is risky.
10066
10067 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
10068
10069         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
10070         loops on small arguments.  This attempts to avoid the problem
10071         Bruno Haible reported for AIX 4.3.2 in
10072         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
10073
10074 2007-02-23  Bruno Haible  <bruno@clisp.org>
10075
10076         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
10077         Needed for help2man.
10078
10079 2007-02-23  Karl Berry  <karl@gnu.org>
10080
10081         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
10082         exists, foo.h should be cvs-ignored, not committed.
10083
10084 2007-02-23  Eric Blake  <ebb9@byu.net>
10085
10086         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
10087         * lib/stat-time.h (includes): Likewise.
10088         * lib/utimecmp.c (includes): Likewise.
10089         * lib/utimens.h (includes): Likewise.
10090         * lib/getdate.y (includes): Also include "timespec.h" for use
10091         internal to the module.
10092         * modules/utimens (Depends-on): Revert yesterday's patch.
10093         * modules/nanosleep (Depends-on): Add missing dependency.
10094
10095 2007-02-22  Bruno Haible  <bruno@clisp.org>
10096
10097         * lib/glob.c: Don't include getlogin_r.h.
10098
10099 2007-02-22  Jim Meyering  <jim@meyering.net>
10100
10101         * modules/utimens (Depends-on): Add timespec, required for
10102         utimens.h's inclusion of timespec.h.
10103
10104 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
10105
10106         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
10107         long unreadable paths in GNU/Linux.  Problem reported by Andreas
10108         Schwab in
10109         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
10110         I'll try to think of a better way to fix the Solaris problem.
10111
10112         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
10113         like glibc; on Solaris 10, it fails with errno == EINVAL.
10114         POSIX says the behavior is unspecified if the first argument is NULL,
10115         so play it safe and never pass NULL to the system getcwd.
10116
10117 2007-02-21  Jim Meyering  <jim@meyering.net>
10118
10119         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
10120         of gettimeofday.  It would conflict with the one now always
10121         provided via sys_time_.h.  Reported by Matthew Woehlke, as
10122         an IRIX 6.5 build failure.
10123
10124 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
10125
10126         Minor fixups to port to Solaris 10 with Sun C 5.8.
10127         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
10128         * modules/getcwd (Depends-on): Add dirfd.
10129         * lib/putenv.c (putenv): #undef it.
10130         (rpl_putenv): New decl.
10131         (malloc, free): Include <stdlib.h> rather than prototyping separately.
10132
10133 2007-02-20  Bruno Haible  <bruno@clisp.org>
10134
10135         * modules/stdio-tests: New file.
10136         * tests/test-stdio.c: New file.
10137
10138         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
10139         (Depends-on): Add stdio.
10140         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
10141         (Include): Use <stdio.h> instead of vsnprintf.h.
10142         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
10143         HAVE_DECL_VSNPRINTF.
10144         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
10145
10146         * modules/snprintf (Files): Remove lib/snprintf.h.
10147         (Depends-on): Add stdio.
10148         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
10149         (Include): Use <stdio.h> instead of snprintf.h.
10150         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
10151         HAVE_DECL_SNPRINTF.
10152         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
10153         * lib/getaddrinfo.c: Likewise.
10154
10155         * modules/stdio: New file.
10156         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
10157         * lib/snprintf.h: Remove file.
10158         * lib/vsnprintf.h: Remove file.
10159         * lib/.cppi-disable: Remove snprintf.h.
10160         * m4/stdio_h.m4: New file.
10161         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
10162
10163 2007-02-20  Jim Meyering  <jim@meyering.net>
10164
10165         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
10166         used by e.g., mingw.  From Bruno Haible.
10167
10168 2007-02-19  Bruno Haible  <bruno@clisp.org>
10169
10170         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
10171         warnings.
10172         Reported by Ben Pfaff <blp@cs.stanford.edu>.
10173
10174 2007-02-19  Bruno Haible  <bruno@clisp.org>
10175
10176         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
10177         from mingw users.
10178
10179 2007-02-19  Bruno Haible  <bruno@clisp.org>
10180
10181         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
10182         warnings.
10183         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
10184
10185 2007-02-19  Jim Meyering  <jim@meyering.net>
10186
10187         Don't use FD after a successful "fdopendir (fd)".
10188         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
10189         Reset it by calling dirfd on the just-obtained DIR*.
10190
10191         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
10192         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
10193
10194 2007-02-18  Bruno Haible  <bruno@clisp.org>
10195
10196         * lib/readlink.c: Include <unistd.h>.
10197         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
10198         HAVE_READLINK.
10199         * modules/readlink (Depends-on): Add unistd.
10200         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10201         (Include): Add <unistd.h>.
10202
10203         * lib/getlogin_r.h: Remove file.
10204         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
10205         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
10206         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
10207         HAVE_DECL_GETLOGIN_R.
10208         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
10209         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10210         (Include): Use <unistd.h> instead of getlogin_r.h.
10211
10212         * lib/getcwd.h: Remove file.
10213         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
10214         * lib/xgetcwd.c: Likewise.
10215         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
10216         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
10217         * modules/getcwd (Files): Remove lib/getcwd.h.
10218         (Depends-on): Add unistd.
10219         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10220         (Include): Use <unistd.h> instad of getcwd.h.
10221
10222         * lib/ftruncate.c: Include <unistd.h> first.
10223         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
10224         Set HAVE_FTRUNCATE.
10225         * modules/ftruncate (Depends-on): Add unistd.
10226         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10227
10228         * lib/fchdir.c: Include <unistd.h> first.
10229         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
10230         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
10231         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
10232         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10233         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
10234
10235         * lib/dup2.c: Include <unistd.h> first.
10236         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
10237         HAVE_DUP2.
10238         * modules/dup2 (Depends-on): Add unistd.
10239         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10240
10241         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
10242         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
10243         REPLACE_CHOWN. Don't define chown as a macro here.
10244         * modules/chown (Depends-on): Add unistd.
10245         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10246
10247         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
10248         Add definition for GL_LINK_WARNING.
10249         (chown, dup2): New declarations.
10250         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
10251         link warning.
10252         (ftruncate): New declaration.
10253         (getcwd): New declaration, taken from old getcwd.h.
10254         (getlogin_r): New declaration, taken from old getlogin_r.h.
10255         (readlink): New declaration.
10256         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
10257         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
10258         (gl_PREREQ_UNISTD): Remove macro.
10259         (gl_UNISTD_MODULE_INDICATOR): New macro.
10260         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
10261         many new variables. Don't set UNISTD_H.
10262         * modules/unistd (Description): Change.
10263         (Depends-on): Add link-warning.
10264         (configure.ac): Update.
10265         (Makefile.am): Create unistd.h always. Substitute many new variables
10266         into it.
10267
10268 2007-02-18  Bruno Haible  <bruno@clisp.org>
10269
10270         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
10271         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
10272         HAVE_GETSUBOPT.
10273         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
10274         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
10275         * lib/getsubopt.h: Remove file.
10276         * modules/getsubopt (Files): Remove lib/getsubopt.h.
10277         (Depends-on): Add stdlib.
10278         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
10279         (Includes): Use <stdlib.h> instead of getsubopt.h.
10280         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
10281         Set HAVE_GETSUBOPT.
10282         * lib/getsubopt.c: Don't include getsubopt.h.
10283
10284 2007-02-18  Bruno Haible  <bruno@clisp.org>
10285
10286         * modules/fchdir (Depends-on): Add dup2.
10287
10288 2007-02-18  Bruno Haible  <bruno@clisp.org>
10289
10290         * lib/stdlib_.h: Handle glibc's special invocation convention
10291         specially.
10292
10293 2007-02-18  Bruno Haible  <bruno@clisp.org>
10294
10295         * modules/stdlib-tests: New file.
10296         * tests/test-stdlib.c: New file.
10297
10298         * modules/mkstemp (Files): Remove lib/mkstemp.h.
10299         (Depends-on): Add stdlib.
10300         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
10301         (Includes): Use <stdlib.h> instead of mkstemp.h.
10302         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
10303         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
10304         * lib/mkstemp.c: Don't include mkstemp.h.
10305         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
10306         * lib/stdlib--.h: Don't include mkstemp.h.
10307
10308         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
10309         (Depends-on): Add stdlib.
10310         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
10311         (Includes): Use <stdlib.h> instead of mkdtemp.h.
10312         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
10313         HAVE_MKDTEMP.
10314         * lib/mkdtemp.c: Don't include mkdtemp.h.
10315         * lib/clean-temp.c: Don't include mkdtemp.h.
10316
10317         * modules/exit (Files): Remove lib/exit.h.
10318         (Depends-on): Add stdlib.
10319         (Makefile.am): Remove lib_SOURCES.
10320         (Include): Use <stdlib.h> instead of exit.h.
10321         * lib/argmatch.c: Don't include exit.h.
10322         * lib/execute.c: Likewise.
10323         * lib/pagealign_alloc.c: Likewise.
10324         * lib/pipe.c: Likewise.
10325         * lib/wait-process.c: Likewise.
10326         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
10327         * lib/exitfail.c: Likewise.
10328         * lib/savewd.c: Likewise.
10329         * lib/xsetenv.c: Likewise.
10330
10331         * modules/stdlib: New file.
10332         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
10333         and extra comments about mkstemp().
10334         * lib/exit.h: Remove file.
10335         * lib/mkdtemp.h: Remove file.
10336         * lib/mkstemp.h: Remove file.
10337         * m4/stdlib_h.m4: New file.
10338         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
10339
10340 2007-02-18  Bruno Haible  <bruno@clisp.org>
10341
10342         * modules/math-tests: New file.
10343         * tests/test-math.c: New file.
10344
10345         * modules/math: New file.
10346         * modules/mathl (Files): Remove lib/mathl.h.
10347         (Depends-on): Add math.
10348         (Makefile.am): Don't mention mathl.h.
10349         (Include): Use <math.h> instead of mathl.h.
10350         * lib/math_.h: New file.
10351         * lib/mathl.h: Remove file.
10352         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
10353         mathl.h.
10354         * lib/asinl.c: Likewise.
10355         * lib/atanl.c: Likewise.
10356         * lib/ceill.c: Likewise.
10357         * lib/cosl.c: Likewise.
10358         * lib/expl.c: Likewise.
10359         * lib/floorl.c: Likewise.
10360         * lib/frexpl.c: Likewise.
10361         * lib/ldexpl.c: Likewise.
10362         * lib/logl.c: Likewise.
10363         * lib/sincosl.c: Likewise.
10364         * lib/sinl.c: Likewise.
10365         * lib/sqrtl.c: Likewise.
10366         * lib/tanl.c: Likewise.
10367         * lib/trigl.c: Likewise.
10368         * m4/math_h.m4: New file.
10369         * MODULES.html.sh (Mathematics): Add math.
10370
10371 2007-02-17  Bruno Haible  <bruno@clisp.org>
10372
10373         * modules/wctype-tests: New file.
10374         * tests/test-wctype.c: New file.
10375
10376         * modules/wchar-tests: New file.
10377         * tests/test-wchar.c: New file.
10378
10379         * modules/unistd-tests: New file.
10380         * tests/test-unistd.c: New file.
10381
10382         * modules/time-tests: New file.
10383         * tests/test-time.c: New file.
10384
10385         * modules/sysexits-tests: New file.
10386         * tests/test-sysexits.c: New file.
10387
10388         * modules/sys_time-tests: New file.
10389         * tests/test-sys_time.c: New file.
10390
10391         * modules/sys_stat-tests: New file.
10392         * tests/test-sys_stat.c: New file.
10393
10394         * modules/sys_socket-tests: New file.
10395         * tests/test-sys_socket.c: New file.
10396
10397         * modules/sys_select-tests: New file.
10398         * tests/test-sys_select.c: New file.
10399
10400         * modules/string-tests: New file.
10401         * tests/test-string.c: New file.
10402
10403         * modules/stdbool-tests: New file.
10404         * tests/test-stdbool.c: New file.
10405
10406         * modules/netinet_in-tests: New file.
10407         * tests/test-netinet_in.c: New file.
10408
10409         * modules/inttypes-tests: New file.
10410         * tests/test-inttypes.c: New file.
10411
10412         * modules/fcntl-tests: New file.
10413         * tests/test-fcntl.c: New file.
10414
10415         * modules/byteswap-tests: New file.
10416         * tests/test-byteswap.c: New file.
10417
10418         * modules/arpa_inet-tests: New file.
10419         * tests/test-arpa_inet.c: New file.
10420
10421 2007-02-17  Bruno Haible  <bruno@clisp.org>
10422
10423         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
10424         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
10425         if the corresponding module is not enabled. Emit link warnings if
10426         the function is used nevertheless.
10427         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
10428         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
10429         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
10430         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
10431         * modules/inttypes (Depends-on): Add link-warning.
10432         (Makefile.am): Copy the contents of build-aux/link-warning.h into
10433         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
10434         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
10435         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
10436         * modules/imaxdiv (configure.ac): Likewise.
10437         * modules/strtoimax (configure.ac): Likewise.
10438         * modules/strtoumax (configure.ac): Likewise.
10439
10440 2007-02-17  Bruno Haible  <bruno@clisp.org>
10441
10442         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
10443         gl_STRING_MODULE_INDICATOR_DEFAULTS.
10444         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
10445         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
10446
10447 2007-02-17  Bruno Haible  <bruno@clisp.org>
10448
10449         * modules/link-warning: New file.
10450         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
10451         * lib/string_.h (GL_LINK_WARNING): Remove definition.
10452         * modules/string (Depends-on): Add link-warning.
10453         (Makefile.am): Copy the contents of build-aux/link-warning.h into
10454         string.h.
10455         * MODULES.html.sh (Support for building libraries and executables): Add
10456         link-warning.
10457
10458 2007-02-17  Bruno Haible  <bruno@clisp.org>
10459
10460         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
10461         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
10462         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
10463         long lines.
10464
10465 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
10466             Bruno Haible  <bruno@clisp.org>
10467
10468         * modules/tmpfile: New file.
10469         * lib/tmpfile.c: New file.
10470         * m4/tmpfile.m4: New file.
10471         * MODULES.html.sh (func_all_modules): New section "Input/output".
10472
10473 2007-02-15  Bruno Haible  <bruno@clisp.org>
10474
10475         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
10476         (supports_delete_on_close): New function.
10477         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
10478
10479 2007-02-14  Bruno Haible  <bruno@clisp.org>
10480
10481         * modules/mbspcasecmp-tests: New file.
10482         * tests/test-mbspcasecmp.sh: New file.
10483         * tests/test-mbspcasecmp.c: New file.
10484
10485         New module mbspcasecmp.
10486         * modules/mbspcasecmp: New file.
10487         * lib/mbspcasecmp.c: New file.
10488         * lib/string_.h (strncasecmp): Change warning message.
10489         (mbspcasecmp): New declaration.
10490         * m4/mbspcasecmp.m4: New file.
10491         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10492         GNULIB_MBSPCASECMP.
10493         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
10494         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
10495
10496 2007-02-14  Bruno Haible  <bruno@clisp.org>
10497
10498         * modules/mbsncasecmp-tests: New file.
10499         * tests/test-mbsncasecmp.sh: New file.
10500         * tests/test-mbsncasecmp.c: New file.
10501
10502         New module mbsncasecmp.
10503         * modules/mbsncasecmp: New file.
10504         * lib/mbsncasecmp.c: New file.
10505         * lib/string_.h (mbsncasecmp): New declaration.
10506         * m4/mbsncasecmp.m4: New file.
10507         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10508         GNULIB_MBSNCASECMP.
10509         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
10510         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
10511
10512 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
10513
10514         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
10515         Verify that it doesn't overlap with our flags.
10516         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
10517         do not have the desired effect in multibyte locales; instead, use
10518         mbscasecmp.
10519         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
10520         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
10521         we don't require GNU fnmatch ourselves (if our users require it, they
10522         should do so explicitly).
10523
10524         Fix regex code so it doesn't rely on strcasecmp.
10525         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
10526         Otherwise, include gnulib's langinfo.h.
10527         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
10528         undesirable behavior in non-C locales.  Instead, rely on localecharset.
10529         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
10530         * modules/regex (FILES): Remove m4/codeset.m4.
10531         (Depends-on): Add localcharset.  Remove strcase.
10532
10533 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10534
10535         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
10536         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
10537
10538 2007-02-13  Bruno Haible  <bruno@clisp.org>
10539
10540         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
10541         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
10542
10543 2007-02-12  Bruno Haible  <bruno@clisp.org>
10544
10545         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
10546         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
10547         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
10548         time warning rather than a link error.
10549
10550 2007-02-12  Bruno Haible  <bruno@clisp.org>
10551
10552         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
10553         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
10554         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
10555
10556 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
10557
10558         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
10559         args, not 2.
10560
10561 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
10562
10563         New module 'time', so that apps can include <time.h> as per
10564         POSIX and GNU instead of separate include files like time_r.h
10565         and timegm.h.  This implementation tries out a simpler approach
10566         for replacing decls in standard include files (as compared to
10567         the string module), somewhat as an experiment.
10568
10569         * config/srclist.txt: Comment out mktime.c for now.
10570         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
10571         since it doesn't apply any more.  Use generic wording instead.
10572         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
10573         'time'.
10574         * lib/time_.h, m4/time_h.m4, modules/time: New files.
10575         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
10576         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
10577         Don't include <sys/types.h>; no longer needed since we assume C89.
10578         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
10579         * lib/strftime.c: Likewise.
10580         * lib/time_r.c: Likewise.
10581         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
10582         * lib/nanosleep.c: Include <time.h> first, to check interface.
10583         * lib/strptime.c: Likewise.
10584         * lib/time_r.c: Likewise.
10585         * lib/timegm.c: Likewise.
10586         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
10587         needed.
10588         * lib/timegm.c: Don't include timegm.h; no longer needed.
10589         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
10590         time.h now handles any problems in that area.
10591         (struct timespec, nanosleep): Remove; time.h now arranges for these.
10592         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
10593         that time.h defines struct timespec.
10594         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
10595         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
10596         handles that.
10597         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
10598         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
10599         needed.  Set REPLACE_LOCALTIME.
10600         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
10601         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
10602         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
10603         nanosleep; time_h.m4 now does that.  Don't require
10604         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
10605         module handles this now.
10606         * modules/getdate (Depends-on): Remove timespec.  Add time.
10607         * modules/nanosleep (Depends-on): Likewise.
10608         * modules/stat-time (Depends-on): Likewise.
10609         * modules/nanosleep (Include): Include time.h, not timespec.h.
10610         * modules/strptime (Files): Remove lib/strptime.h.
10611         (Depends-on): Add extensions, time.
10612         (Include): Include time.h, not strptime.h.
10613         * modules/time_r (Files): Remove lib/time_r.h.
10614         (Depends-on): Add time.
10615         (Include): Include time.h, not time_r.h.
10616         * modules/timegm: Likewise.
10617         * modules/timespec (Description): Now does timespec-related decls
10618         of our own, instead of struct timespec itself.
10619         (Depends-on): Add time; remove extensions.
10620         (Maintainer): Add self.
10621         * modules/utimecmp (Depends-on): Add time; remove timespec.
10622         * modules/utimens (Depends-on): Likewise.
10623         * modules/xnanosleep (Depends-on): Likewise.
10624
10625 2007-02-11  Bruno Haible  <bruno@clisp.org>
10626
10627         * lib/c-strstr.c: Include allocsa.h.
10628         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
10629         * lib/c-strcasestr.c: Include allocsa.h.
10630         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
10631         * lib/strcasestr.c: Include allocsa.h.
10632         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
10633         * lib/mbsstr.c: Include allocsa.h.
10634         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
10635         allocsa/freesa instead of malloc/free.
10636         * lib/mbscasestr.c: Include allocsa.h.
10637         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
10638         allocsa/freesa instead of malloc/free.
10639         * modules/c-strstr (Depends-on): Add allocsa.
10640         * modules/c-strcasestr (Depends-on): Likewise.
10641         * modules/strcasestr (Depends-on): Likewise.
10642         * modules/mbsstr (Depends-on): Likewise.
10643         * modules/mbscasestr (Depends-on): Likewise.
10644
10645 2007-02-11  Bruno Haible  <bruno@clisp.org>
10646
10647         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
10648
10649         * modules/mbsspn-tests: New file.
10650         * tests/test-mbsspn.sh: New file.
10651         * tests/test-mbsspn.c: New file.
10652
10653 2007-02-11  Bruno Haible  <bruno@clisp.org>
10654
10655         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
10656
10657         * modules/mbspbrk-tests: New file.
10658         * tests/test-mbspbrk.sh: New file.
10659         * tests/test-mbspbrk.c: New file.
10660
10661 2007-02-11  Bruno Haible  <bruno@clisp.org>
10662
10663         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
10664         unneeded cast.
10665
10666         * modules/mbscspn-tests: New file.
10667         * tests/test-mbscspn.sh: New file.
10668         * tests/test-mbscspn.c: New file.
10669
10670 2007-02-11  Bruno Haible  <bruno@clisp.org>
10671
10672         * modules/mbscasecmp-tests: New file.
10673         * tests/test-mbscasecmp.sh: New file.
10674         * tests/test-mbscasecmp.c: New file.
10675
10676 2007-02-11  Bruno Haible  <bruno@clisp.org>
10677
10678         Ensure O(n) worst-case complexity of mbscasestr.
10679         * lib/mbscasestr.c: Include stdbool.h.
10680         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
10681         functions.
10682         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
10683         the bookkeeping indicates that it's worth it.
10684         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
10685
10686         * modules/mbscasestr-tests: New file.
10687         * tests/test-mbscasestr1.c: New file.
10688         * tests/test-mbscasestr2.sh: New file.
10689         * tests/test-mbscasestr2.c: New file.
10690         * tests/test-mbscasestr3.sh: New file.
10691         * tests/test-mbscasestr3.c: New file.
10692         * tests/test-mbscasestr4.sh: New file.
10693         * tests/test-mbscasestr4.c: New file.
10694         * m4/locale-tr.m4: New file.
10695
10696 2007-02-11  Bruno Haible  <bruno@clisp.org>
10697
10698         Ensure O(n) worst-case complexity of mbsstr.
10699         * lib/mbsstr.c: Include stdbool.h.
10700         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
10701         functions.
10702         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
10703         bookkeeping indicates that it's worth it.
10704         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
10705
10706         * modules/mbsstr-tests: New file.
10707         * tests/test-mbsstr1.c: New file.
10708         * tests/test-mbsstr2.sh: New file.
10709         * tests/test-mbsstr2.c: New file.
10710         * tests/test-mbsstr3.sh: New file.
10711         * tests/test-mbsstr3.c: New file.
10712         * m4/locale-fr.m4: New file.
10713
10714 2007-02-11  Bruno Haible  <bruno@clisp.org>
10715
10716         * lib/mbsrchr.c (mbsrchr): Fix bug.
10717
10718         * modules/mbsrchr-tests: New file.
10719         * tests/test-mbsrchr.sh: New file.
10720         * tests/test-mbsrchr.c: New file.
10721
10722 2007-02-11  Bruno Haible  <bruno@clisp.org>
10723
10724         * lib/mbschr.c (mbschr): Fix bug.
10725
10726         * modules/mbschr-tests: New file.
10727         * tests/test-mbschr.sh: New file.
10728         * tests/test-mbschr.c: New file.
10729         * m4/locale-zh.m4: New file.
10730
10731 2007-02-11  Bruno Haible  <bruno@clisp.org>
10732
10733         Support for copying multibyte string iterators.
10734         * lib/mbiter.h: Include <string.h>.
10735         (mbiter_multi_copy): New function.
10736         (mbi_copy): New macro.
10737         * lib/mbuiter.h: Include <string.h>.
10738         (mbuiter_multi_copy): New function.
10739         (mbui_copy): New macro.
10740
10741 2007-02-11  Bruno Haible  <bruno@clisp.org>
10742
10743         New module mbslen.
10744         * modules/mbslen: New file.
10745         * lib/mbslen.c: New file.
10746         * lib/string_.h (mbslen): New declaration.
10747         * m4/mbslen.m4: New file.
10748         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10749         GNULIB_MBSLEN.
10750         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
10751         * MODULES.html.sh (Internationalization functions): Add mbslen.
10752
10753 2007-02-11  Bruno Haible  <bruno@clisp.org>
10754
10755         Ensure O(n) worst-case complexity of strcasestr substitute.
10756         * lib/strcasestr.c: Include stdbool.h.
10757         (knuth_morris_pratt): New function.
10758         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
10759         bookkeeping indicates that it's worth it.
10760         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
10761
10762         * modules/strcasestr-tests: New file.
10763         * tests/test-strcasestr.c: New file.
10764
10765 2007-02-11  Bruno Haible  <bruno@clisp.org>
10766
10767         Ensure O(n) worst-case complexity of c_strcasestr.
10768         * lib/c-strcasestr.c: Include stdbool.h, string.h.
10769         (knuth_morris_pratt): New function.
10770         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
10771         the bookkeeping indicates that it's worth it.
10772         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
10773
10774         * modules/c-strcasestr-tests: New file.
10775         * tests/test-c-strcasestr.c: New file.
10776
10777 2007-02-11  Bruno Haible  <bruno@clisp.org>
10778
10779         Ensure O(n) worst-case complexity of c_strstr.
10780         * lib/c-strstr.c: Include stdbool.h, string.h.
10781         (knuth_morris_pratt): New function.
10782         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
10783         bookkeeping indicates that it's worth it.
10784         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
10785
10786         * lib/c-strstr.c: Complete rewrite for maintainability.
10787
10788         * modules/c-strstr-tests: New file.
10789         * tests/test-c-strstr.c: New file.
10790
10791 2007-02-11  Bruno Haible  <bruno@clisp.org>
10792
10793         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
10794         5.2.1 and earlier, whereby \055 was treated just like the range
10795         delimiter '-'.
10796         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
10797
10798 2007-02-08  Bruno Haible  <bruno@clisp.org>
10799
10800         * modules/regex (Depends-on): Add stdbool.
10801         Reported by Dalibor Topic <robilad@kaffe.org>.
10802
10803 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
10804
10805         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
10806         Prefer returning from main to exiting from it.
10807         Remove unnecessary parens after sizeof.
10808
10809 2007-02-05  Bruno Haible  <bruno@clisp.org>
10810
10811         New module mbssep.
10812         * modules/mbssep: New file.
10813         * lib/mbssep.c: New file.
10814         * lib/string_.h (strsep): Add a conditional link warning.
10815         (mbssep): New declaration.
10816         * m4/mbssep.m4: New file.
10817         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10818         GNULIB_MBSSEP.
10819         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
10820         * MODULES.html.sh (Internationalization functions): Add mbssep.
10821
10822 2007-02-05  Bruno Haible  <bruno@clisp.org>
10823
10824         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
10825         Optimize search in case of 1 delimiter.
10826
10827 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
10828
10829         * lib/acl.h: Include sys/types.h before sys/acl.h.
10830
10831 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
10832
10833         Merge upstream fix for glibc bugzilla #3957:
10834
10835         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
10836
10837         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
10838         bit for RE_HAT_LISTS_NOT_NEWLINE.
10839         (build_charclass_op): Remove bogus comment.
10840
10841 2007-02-05  Simon Josefsson  <simon@josefsson.org>
10842
10843         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
10844
10845 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
10846
10847         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
10848         * lib/memmem.c [!defined _LIBC]: Include config.h.
10849
10850 2007-02-04  Bruno Haible  <bruno@clisp.org>
10851
10852         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
10853         warning message.
10854
10855 2007-02-04  Bruno Haible  <bruno@clisp.org>
10856
10857         New module mbstok_r.
10858         * modules/mbstok_r: New file.
10859         * lib/mbstok_r.c: New file.
10860         * lib/string_.h (strtok_r): Change argument names to match the
10861         comments. Add a conditional link warning.
10862         (mbstok_r): New declaration.
10863         * m4/mbstok_r.m4: New file.
10864         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10865         GNULIB_MBSTOK_R.
10866         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
10867         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
10868
10869 2007-02-04  Bruno Haible  <bruno@clisp.org>
10870
10871         New module mbsspn.
10872         * modules/mbsspn: New file.
10873         * lib/mbsspn.c: New file.
10874         * lib/string_.h (strspn): Add a conditional link warning.
10875         (mbsspn): New declaration.
10876         * m4/mbsspn.m4: New file.
10877         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10878         GNULIB_MBSSPN.
10879         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
10880         * MODULES.html.sh (Internationalization functions): Add mbsspn.
10881
10882 2007-02-04  Bruno Haible  <bruno@clisp.org>
10883
10884         New module mbspbrk.
10885         * modules/mbspbrk: New file.
10886         * lib/mbspbrk.c: New file.
10887         * lib/string_.h (strpbrk): Add a conditional link warning.
10888         (mbspbrk): New declaration.
10889         * m4/mbspbrk.m4: New file.
10890         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10891         GNULIB_MBSPBRK.
10892         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
10893         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
10894
10895 2007-02-04  Bruno Haible  <bruno@clisp.org>
10896
10897         New module mbscspn.
10898         * modules/mbscspn: New file.
10899         * lib/mbscspn.c: New file.
10900         * lib/string_.h (strcspn): Add a conditional link warning.
10901         (mbscspn): New declaration.
10902         * m4/mbscspn.m4: New file.
10903         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10904         GNULIB_MBSCSPN.
10905         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
10906         * MODULES.html.sh (Internationalization functions): Add mbscspn.
10907
10908 2007-02-04  Bruno Haible  <bruno@clisp.org>
10909
10910         New module mbscasestr, reduced goal of strcasestr.
10911         * modules/mbscasestr: New file.
10912         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
10913         (mbscasestr): Renamed from strcasestr.
10914         * lib/strcasestr.c: Don't include mbuiter.h.
10915         (strcasestr): Remove support for multibyte locales.
10916         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
10917         Change the conditional link warning.
10918         (mbscasestr): New declaration.
10919         * m4/mbscasestr.m4: New file.
10920         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
10921         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
10922         REPLACE_STRCASESTR.
10923         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
10924         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
10925         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
10926         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
10927         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
10928         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
10929         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
10930         (Depends-on): Remove mbuiter.
10931         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
10932
10933 2007-02-04  Bruno Haible  <bruno@clisp.org>
10934
10935         Simplify handling of strncasecmp.
10936         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
10937         the conditional link warning.
10938         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
10939         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
10940         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
10941         * modules/strcase (configure.ac): Don't invoke
10942         gl_STRING_MODULE_INDICATOR.
10943         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
10944
10945 2007-02-04  Bruno Haible  <bruno@clisp.org>
10946
10947         New module mbscasecmp, reduced goal of strcasecmp.
10948         * modules/mbscasecmp: New file.
10949         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
10950         (mbscasecmp): Renamed from strcasecmp.
10951         * lib/strcasecmp.c: Don't include mbuiter.h.
10952         (strcasecmp): Remove support for multibyte locales.
10953         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
10954         Change the conditional link warning.
10955         (mbscasecmp): New declaration.
10956         * m4/mbscasecmp.m4: New file.
10957         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
10958         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
10959         REPLACE_STRCASECMP.
10960         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
10961         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10962         GNULIB_MBSCASECMP.
10963         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
10964         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
10965         * modules/strcase (Files): Remove m4/mbrtowc.m4.
10966         (Depends-on): Remove mbuiter.
10967         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
10968
10969 2007-02-04  Bruno Haible  <bruno@clisp.org>
10970
10971         New module mbsstr. Remove module strstr.
10972         * modules/mbsstr: New file.
10973         * modules/strstr: Remove file.
10974         * lib/mbsstr.c: Renamed from lib/strstr.c.
10975         (mbsstr): Renamed from strstr.
10976         * lib/string_.h (strstr): Remove declaration. Change the conditional
10977         link warning.
10978         (mbsstr): New declaration.
10979         * m4/mbsstr.m4: New file.
10980         * m4/strstr.m4: Remove file.
10981         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
10982         REPLACE_STRSTR.
10983         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
10984         Don't initialize GNULIB_STRSTR.
10985         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
10986         substitute GNULIB_STRSTR and REPLACE_STRSTR.
10987         * MODULES.html.sh (Internationalization functions): Add mbsstr.
10988         (Support for systems lacking ANSI C 89): Remove strstr.
10989
10990 2007-02-04  Bruno Haible  <bruno@clisp.org>
10991
10992         New module mbsrchr.
10993         * modules/mbsrchr: New file.
10994         * lib/mbsrchr.c: New file.
10995         * lib/string_.h (strrchr): Add a conditional link warning.
10996         (mbsrchr): New declaration.
10997         * m4/mbsrchr.m4: New file.
10998         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10999         GNULIB_MBSRCHR.
11000         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
11001         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
11002
11003 2007-02-04  Bruno Haible  <bruno@clisp.org>
11004
11005         New module mbschr.
11006         * modules/mbschr: New file.
11007         * lib/mbschr.c: New file.
11008         * lib/string_.h (strchr): Add a conditional link warning.
11009         (mbschr): New declaration.
11010         * m4/mbschr.m4: New file.
11011         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
11012         GNULIB_MBSCHR.
11013         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
11014         * MODULES.html.sh (Internationalization functions): Add mbschr.
11015
11016 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
11017
11018         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
11019
11020         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
11021
11022 2007-02-04  Bruno Haible  <bruno@clisp.org>
11023
11024         New module description section 'configure.ac-early'.
11025         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
11026         (func_get_autoconf_early_snippet): New function.
11027         (func_import, func_create_testdir): Use it. Remove special cases for
11028         modules 'extensions' and 'lock'.
11029         * modules/extensions (configure.ac-early): Require
11030         gl_USE_SYSTEM_EXTENSIONS.
11031         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
11032
11033 2007-02-04  Bruno Haible  <bruno@clisp.org>
11034
11035         Make use of gcj-4.3's -fsource and -ftarget option.
11036         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
11037         and if so try the options -fsource and -ftarget.
11038         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
11039         source_version, ftarget_option, target_version arguments.
11040         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
11041         (is_envjavac_oldgcj_14_14_usable): Renamed from
11042         is_envjavac_gcj_14_14_usable.
11043         (is_envjavac_oldgcj_14_13_usable): Renamed from
11044         is_envjavac_gcj_14_13_usable.
11045         (is_gcj_present): Update.
11046         (is_gcj_43, is_gcj43_usable): New functions.
11047         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
11048         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
11049         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
11050         try the options -fsource and -ftarget.
11051
11052 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
11053
11054         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
11055         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
11056         larger value.
11057
11058 2007-02-03  Jim Meyering  <jim@meyering.net>
11059
11060         Give tools a better chance to allocate space for very large buffers.
11061         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
11062
11063         Make pwd and readlink work also when run with an unreadable parent dir
11064         on systems with openat support.
11065         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
11066         provided getcwd function, even when we have openat support.
11067         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
11068
11069 2007-02-02  Bruno Haible  <bruno@clisp.org>
11070
11071         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
11072         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
11073         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
11074         portability problems if one of these functions is only used on specific
11075         platforms.
11076         Reported by Paul Eggert.
11077
11078 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
11079
11080         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
11081         is causing more trouble than it's curing.
11082         * lib/regex_internal.h (__mempcpy): Remove.
11083         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
11084         (and make the code a tad smaller to boot).
11085         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
11086
11087 2007-02-02  Jim Meyering  <jim@meyering.net>
11088
11089         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
11090         section, not in the Makefile.am: one.
11091
11092 2007-02-02  Eric Blake  <ebb9@byu.net>
11093
11094         * lib/strchrnul.c: Always include config.h first.
11095
11096         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
11097         gnulib strstr is not necessary here.
11098
11099 2007-02-02  Simon Josefsson  <simon@josefsson.org>
11100
11101         * m4/socklen.m4: Fix typo.
11102
11103 2007-02-02  Eric Blake  <ebb9@byu.net>
11104
11105         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
11106         * modules/netinet_in (Makefile.am): Likewise.
11107
11108 2007-02-01  Bruno Haible  <bruno@clisp.org>
11109
11110         * lib/string_.h (GL_LINK_WARNING): New macro.
11111         (strcasecmp, strstr, strcasestr): If provided by the system,
11112         conditionally define as a macro that leads to a warning instead of to
11113         an error.
11114         (strncasecmp): Conditionally define as a macro that leads to a warning.
11115
11116 2007-02-01  Karl Berry  <karl@gnu.org>
11117
11118         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
11119
11120 2007-02-01  Bruno Haible  <bruno@clisp.org>
11121
11122         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
11123         renamings.
11124
11125 2007-02-01  Eric Blake  <ebb9@byu.net>
11126
11127         * modules/regex (Depends-on): Revert dependence on mempcpy.
11128         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
11129         module's definition of mempcpy.
11130         Reported by Paul Eggert.
11131
11132 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
11133
11134         * lib/string_.h: If the gnulib module XYZ is not present, undefine
11135         the symbol XYZ before redefining it.  This fixes a problem with
11136         programs that don't use XYZ, when compiled on systems that define
11137         XYZ to something else.
11138
11139 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
11140
11141         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
11142         occurs when "mkdir -m foo" creates a setgid directory that is (1)
11143         writeable to group or other and (2) is intended to have a special
11144         mode bit that is set or cleared.  In such a case, the directory
11145         should be neither group- nor other-writeable until the special
11146         mode bits are right.
11147
11148 2007-01-31  Eric Blake  <ebb9@byu.net>
11149
11150         * modules/mountlist (Depends-on): Add strstr.
11151
11152         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
11153         bug.
11154         * modules/string (Makefile.am): Remove redundant replacement.
11155         * modules/regex (Depends-on): Add mempcpy.
11156
11157 2007-01-31  Bruno Haible  <bruno@clisp.org>
11158
11159         New module description field 'Link'.
11160         * gnulib-tool (func_usage): Document --extract-link-directive.
11161         (sed_extract_prog): Recognize 'Link' directive.
11162         (func_get_link_directive): New function.
11163         (func_import): Show summary of link directives.
11164         Handle --extract-link-directive option.
11165         * modules/acl (Link): New section.
11166         * modules/clock-time (Link): New section.
11167         * modules/euidaccess (Link): New section.
11168         * modules/gettext (Link): New section.
11169         * modules/iconv (Link): New section.
11170         * modules/lock (Link): New section.
11171         * modules/nanosleep (Link): New section.
11172         * modules/readline (Link): New section.
11173
11174 2007-01-27  Bruno Haible  <bruno@clisp.org>
11175
11176         Enforce the use of gnulib modules for unportable <string.h> functions.
11177         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
11178         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
11179         (gl_HEADER_STRING_H_BODY): Require it.
11180         * lib/string_.h: If the gnulib module XYZ is not present, redefine
11181         the symbol XYZ to one that gives a link error.
11182         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
11183         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
11184         * modules/mempcpy (configure.ac): Likewise.
11185         * modules/memrchr (configure.ac): Likewise.
11186         * modules/stpcpy (configure.ac): Likewise.
11187         * modules/stpncpy (configure.ac): Likewise.
11188         * modules/strcase (configure.ac): Likewise.
11189         * modules/strcasestr (configure.ac): Likewise.
11190         * modules/strchrnul (configure.ac): Likewise.
11191         * modules/strdup (configure.ac): Likewise.
11192         * modules/strndup (configure.ac): Likewise.
11193         * modules/strnlen (configure.ac): Likewise.
11194         * modules/strpbrk (configure.ac): Likewise.
11195         * modules/strsep (configure.ac): Likewise.
11196         * modules/strstr (configure.ac): Likewise.
11197         * modules/strtok_r (configure.ac): Likewise.
11198
11199 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
11200
11201         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
11202
11203 2007-01-30  Jim Meyering  <jim@meyering.net>
11204
11205         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
11206
11207 2007-01-29  Bruno Haible  <bruno@clisp.org>
11208
11209         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
11210         * lib/execute.c: Likewise.
11211         * lib/pipe.c: Likewise.
11212         * lib/printf-args.h: Likewise.
11213         * lib/printf-args.c: Likewise.
11214         * lib/printf-parse.c: Likewise.
11215         * lib/vasnprintf.c: Likewise.
11216
11217 2007-01-29  Eric Blake  <ebb9@byu.net>
11218
11219         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
11220         declaration.
11221
11222 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
11223
11224         * lib/strptime.h (strptime): Use 'restrict' for args where
11225         POSIX requires this.
11226         * lib/strptime.c (strptime): Likewise.
11227         Change license notice from LGPL to GPL, since gnulib-tool will
11228         change this as needed.
11229         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
11230         defined.
11231         Include "strptime.h" first, to check interface.
11232         Do not #undef _LIBC and _NL_CURRENT.
11233         Do not include <stdlib.h>; no longer needed.
11234         Include "time_r.h" and declare ptime_locale_status
11235         only if _LIBC is not defined.
11236         (__P): Remove unused macro.
11237         (match_string): Bring back glibc version, but use it only if _LIBC
11238         is defined.
11239         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
11240         Remove unnecessary assertion and abort() call.
11241         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
11242         * m4/strptime.m4: Fix serial number comment.
11243         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
11244         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
11245         (Depends-on): Add time_r.
11246
11247 2007-01-29  Bruno Haible  <bruno@clisp.org>
11248
11249         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11250         strptime.
11251         * modules/strptime (Depends-on): Add stdbool.
11252         * lib/strptime.h: Include <time.h> always. Add comments.
11253
11254 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
11255
11256         * modules/strptime: New file.
11257         * lib/strptime.h: New file.
11258         * lib/strptime.c: New file.
11259         * m4/strptime.m4: New file.
11260
11261 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
11262
11263         * MODULES.html.sh: New module mpsort.
11264         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
11265
11266         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
11267         a circularity problem with HP-UX ia64 reported by Bob Proulx in
11268         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
11269         All uses changed.
11270         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
11271         All uses changed.
11272         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
11273         to _Restrict_.
11274         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
11275         the parameter matches the prototype.
11276
11277 2007-01-28  Jim Meyering  <jim@meyering.net>
11278
11279         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
11280         sys/time.h here, reverting that part of the previous patch:
11281         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
11282
11283 2007-01-28  Bruno Haible  <bruno@clisp.org>
11284
11285         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
11286         value of $(SYS_TIME_H).
11287         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
11288         remove it conditionally, too. [added by Jim Meyering]
11289         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
11290         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
11291         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
11292         GETTIMEOFDAY_REPLACEMENT to 1.
11293
11294 2007-01-28  Bruno Haible  <bruno@clisp.org>
11295
11296         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
11297         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
11298         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
11299         Set UNISTD_H instead of UNISTD_H2.
11300         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
11301
11302 2007-01-28  Bruno Haible  <bruno@clisp.org>
11303
11304         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
11305         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
11306
11307 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11308
11309         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
11310         (func_create_testdir): Ensure C locale for `grep' and `tr'
11311         character ranges.
11312         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
11313         ACLOCAL_AMFLAGS parsing state machine.
11314
11315 2007-01-27  Bruno Haible  <bruno@clisp.org>
11316
11317         * modules/unistr/base: Update.
11318
11319 2007-01-27  Bruno Haible  <bruno@clisp.org>
11320
11321         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
11322         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
11323         * modules/unistr/u32-mbtouc-unsafe: Renamed from
11324         modules/unistr/u32-mbtouc.
11325         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
11326         * lib/unistr.h: Update.
11327         * lib/linebreak.c: Update.
11328         * modules/unistr/u32-mbtouc: Renamed from
11329         modules/unistr/u32-mbtouc-safe.
11330         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
11331         * lib/unistr.h: Update.
11332         * lib/unistr/u32-to-u8.c: Update.
11333         * lib/unistr/u32-to-u16.c: Update.
11334
11335 2007-01-27  Bruno Haible  <bruno@clisp.org>
11336
11337         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
11338         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
11339         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
11340         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
11341         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
11342         * modules/unistr/u16-mbtouc-unsafe: Renamed from
11343         modules/unistr/u16-mbtouc.
11344         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
11345         * lib/unistr.h: Update.
11346         * lib/linebreak.c: Update.
11347         * modules/linebreak: Update.
11348         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
11349         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
11350         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
11351         * modules/unistr/u16-mbtouc: Renamed from
11352         modules/unistr/u16-mbtouc-safe.
11353         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
11354         * lib/unistr.h: Update.
11355         * lib/unistr/u16-to-u8.c: Update.
11356         * modules/unistr/u16-to-u8: Update.
11357         * lib/unistr/u16-to-u32.c: Update.
11358         * modules/unistr/u16-to-u32: Update.
11359
11360 2007-01-27  Bruno Haible  <bruno@clisp.org>
11361
11362         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
11363         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
11364         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
11365         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
11366         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
11367         * modules/unistr/u8-mbtouc-unsafe: Renamed from
11368         modules/unistr/u8-mbtouc.
11369         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
11370         * lib/unistr.h: Update.
11371         * lib/striconveh.c: Update.
11372         * modules/striconveh: Update.
11373         * lib/linebreak.c: Update.
11374         * modules/linebreak: Update.
11375         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
11376         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
11377         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
11378         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
11379         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
11380         * lib/unistr.h: Update.
11381         * lib/striconveh.c: Update.
11382         * modules/striconveh: Update.
11383         * lib/unistr/u8-to-u16.c: Update.
11384         * modules/unistr/u8-to-u16: Update.
11385         * lib/unistr/u8-to-u32.c: Update.
11386         * modules/unistr/u8-to-u32: Update.
11387
11388 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11389
11390         Sync from Libtool.
11391         * lib/argz.c: Do not include strings.h nor memory.h, include
11392         string.h unconditionally.  Patch by Simon Josefsson.
11393
11394 2007-01-27  Bruno Haible  <bruno@clisp.org>
11395
11396         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
11397         from gl_HEADER_STRING_H_BODY.
11398         (gl_HEADER_STRING_H_BODY): Require it.
11399         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
11400         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
11401         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
11402         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
11403         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
11404         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
11405         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
11406         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
11407         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
11408         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
11409         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
11410         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
11411         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
11412         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
11413         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
11414
11415 2007-01-27  Bruno Haible  <bruno@clisp.org>
11416
11417         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
11418         check_PROGRAMS into noinst_PROGRAMS.
11419         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
11420         check_PROGRAMS in this case.
11421         (func_import): Set for_test to false.
11422         (func_create_testdir): Set for_test to true.
11423
11424 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
11425             Bruno Haible  <bruno@clisp.org>
11426
11427         * modules/strcasestr (Files): Remove lib/strcasestr.h.
11428         (Depends-on): Add string.
11429         (Includes): Use <string.h> instead of strcasestr.h.
11430         * modules/string (Makefile.am): Also substitute the value of
11431         REPLACE_STRCASESTR.
11432         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
11433         assume strcasestr is declared in <string.h> not <strings.h>. Also
11434         set REPLACE_STRCASESTR.
11435         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
11436         REPLACE_STRCASESTR.
11437         * lib/strcasestr.h: Remove file.
11438         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
11439         * lib/string_.h (strcasestr): New declaration.
11440
11441 2007-01-27  Bruno Haible  <bruno@clisp.org>
11442
11443         * lib/string_.h: Use 'extern'.
11444
11445 2007-01-27  Jim Meyering  <jim@meyering.net>
11446
11447         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
11448         of set-but-not-used local, "q".
11449
11450         * lib/mempcpy.c: Include <config.h> before <string.h>.
11451         This fixes a compilation error on HP-UX, due to the system's
11452         "restrict"-using mempcpy prototype.
11453
11454 2007-01-26  Bruno Haible  <bruno@clisp.org>
11455
11456         Small optimization.
11457         * lib/javacomp.c: Include c-strstr.h.
11458          (is_envjavac_gcj): Use c_strstr instead of strstr.
11459         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
11460
11461 2007-01-26  Bruno Haible  <bruno@clisp.org>
11462
11463         * MODULES.html.sh (Unicode string functions): Add the new modules.
11464
11465         * modules/uniconv/u32-strconv-to-locale: New file.
11466         * lib/uniconv/u32-strconv-to-locale.c: New file.
11467
11468         * modules/uniconv/u16-strconv-to-locale: New file.
11469         * lib/uniconv/u16-strconv-to-locale.c: New file.
11470
11471         * modules/uniconv/u8-strconv-to-locale: New file.
11472         * lib/uniconv/u8-strconv-to-locale.c: New file.
11473
11474         * modules/uniconv/u32-strconv-from-locale: New file.
11475         * lib/uniconv/u32-strconv-from-locale.c: New file.
11476
11477         * modules/uniconv/u16-strconv-from-locale: New file.
11478         * lib/uniconv/u16-strconv-from-locale.c: New file.
11479
11480         * modules/uniconv/u8-strconv-from-locale: New file.
11481         * lib/uniconv/u8-strconv-from-locale.c: New file.
11482
11483         * modules/uniconv/u32-strconv-to-enc: New file.
11484         * lib/uniconv/u32-strconv-to-enc.c: New file.
11485         * modules/uniconv/u32-strconv-to-enc-tests: New file.
11486         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
11487
11488         * modules/uniconv/u16-strconv-to-enc: New file.
11489         * lib/uniconv/u16-strconv-to-enc.c: New file.
11490         * lib/uniconv/u-strconv-to-enc.h: New file.
11491         * modules/uniconv/u16-strconv-to-enc-tests: New file.
11492         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
11493
11494         * modules/uniconv/u8-strconv-to-enc: New file.
11495         * lib/uniconv/u8-strconv-to-enc.c: New file.
11496         * modules/uniconv/u8-strconv-to-enc-tests: New file.
11497         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
11498
11499         * modules/uniconv/u32-strconv-from-enc: New file.
11500         * lib/uniconv/u32-strconv-from-enc.c: New file.
11501         * modules/uniconv/u32-strconv-from-enc-tests: New file.
11502         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
11503
11504         * modules/uniconv/u16-strconv-from-enc: New file.
11505         * lib/uniconv/u16-strconv-from-enc.c: New file.
11506         * modules/uniconv/u16-strconv-from-enc-tests: New file.
11507         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
11508
11509         * modules/uniconv/u8-strconv-from-enc: New file.
11510         * lib/uniconv/u8-strconv-from-enc.c: New file.
11511         * lib/uniconv/u-strconv-from-enc.h: New file.
11512         * modules/uniconv/u8-strconv-from-enc-tests: New file.
11513         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
11514
11515         * modules/uniconv/u32-conv-from-enc: New file.
11516         * lib/uniconv/u32-conv-from-enc.c: New file.
11517         * modules/uniconv/u32-conv-from-enc-tests: New file.
11518         * tests/uniconv/test-u32-conv-from-enc.c: New file.
11519
11520         * modules/uniconv/u16-conv-from-enc: New file.
11521         * lib/uniconv/u16-conv-from-enc.c: New file.
11522         * lib/uniconv/u-conv-from-enc.h: New file.
11523         * modules/uniconv/u16-conv-from-enc-tests: New file.
11524         * tests/uniconv/test-u16-conv-from-enc.c: New file.
11525
11526         * modules/uniconv/u8-conv-from-enc: New file.
11527         * lib/uniconv/u8-conv-from-enc.c: New file.
11528         * modules/uniconv/u8-conv-from-enc-tests: New file.
11529         * tests/uniconv/test-u8-conv-from-enc.c: New file.
11530
11531         * modules/uniconv/base: New file.
11532         * lib/uniconv.h: New file.
11533
11534 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
11535
11536         * doc/gnulib-tool.texi (Initial import): Update to match current
11537         behavior with strdup module.
11538         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
11539         * lib/memmem.h: Remove; all uses removed.  This is now done
11540         by <string.h>.
11541         * lib/mempcpy.h: Likewise.
11542         * lib/memrchr.h: Likewise.
11543         * lib/stpcpy.h: Likewise.
11544         * lib/stpncpy.h: Likewise.
11545         * lib/strcase.h: Likewise.
11546         * lib/strchrnul.h: Likewise.
11547         * lib/strdup.h: Likewise.
11548         * lib/strndup.h: Likewise.
11549         * lib/strnlen.h: Likewise.
11550         * lib/strpbrk.h: Likewise.
11551         * lib/strsep.h: Likewise.
11552         * lib/strstr.h: Likewise.
11553         * lib/strtok_r.h: Likewise.
11554         * lib/string_.h: New file.
11555         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
11556         Rely on <string.h> instead.
11557         * lib/canon-host.c: Likewise.
11558         * lib/chdir-long.c: Likewise.
11559         * lib/concatpath.c: Likewise.
11560         * lib/exclude.c: Likewise.
11561         * lib/fchdir.c: Likewise.
11562         * lib/getaddrinfo.c: Likewise.
11563         * lib/getcwd.c: Likewise.
11564         * lib/getsubopt.c: Likewise.
11565         * lib/glob.c: Likewise.
11566         * lib/hard-locale.c: Likewise.
11567         * lib/iconvme.c: Likewise.
11568         * lib/javacomp.c: Likewise.
11569         * lib/mempcpy.c: Likewise.
11570         * lib/memrchr.c: Likewise.
11571         * lib/regex_internal.h: Likewise.
11572         * lib/stpncpy.c: Likewise.
11573         * lib/strcasecmp.c: Likewise.
11574         * lib/strchrnul.c: Likewise.
11575         * lib/strdup.c: Likewise.
11576         * lib/striconv.c: Likewise.
11577         * lib/striconveh.c: Likewise.
11578         * lib/striconveha.c: Likewise.
11579         * lib/strncasecmp.c: Likewise.
11580         * lib/strndup.c: Likewise.
11581         * lib/strnlen.c: Likewise.
11582         * lib/strsep.c: Likewise.
11583         * lib/strstr.c: Likewise.
11584         * lib/strtok_r.c: Likewise.
11585         * lib/userspec.c: Likewise.
11586         * lib/w32spawn.h: Likewise.
11587         * lib/xstrndup.c: Likewise.
11588         * lib/mountlist.c (strstr): Remove decl.
11589         * m4/string_h.m4: New file.
11590         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
11591         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
11592         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
11593         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
11594         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
11595         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
11596         Set REPLACE_STRCASECMP if necessary.
11597         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
11598         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
11599         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
11600         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
11601         HAVE_DECL_STRDUP if necessary.
11602         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
11603         since gl_FUNC_STRNDUP does that now.
11604         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
11605         Check for decl here...
11606         (gl_PREREQ_STRNLEN): ... not here.
11607         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
11608         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
11609         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
11610         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
11611         necessary.
11612         * modules/string: New file.
11613         * modules/memmem (Files): Remove special-purpose include file.
11614         (Depends-on): Add string.
11615         (Include): Include <string.h>, not the removed file.
11616         * modules/mempcpy: Likewise.
11617         * modules/memrchr: Likewise.
11618         * modules/stpcpy: Likewise.
11619         * modules/stpncpy: Likewise.
11620         * modules/strcase: Likewise.
11621         * modules/strchrnul: Likewise.
11622         * modules/strdup: Likewise.
11623         * modules/strndup: Likewise.
11624         * modules/strnlen: Likewise.
11625         * modules/strpbrk: Likewise.
11626         * modules/strsep: Likewise.
11627         * modules/strstr: Likewise.
11628         * modules/strtok_r: Likewise.
11629         * tests/test-dirname.c: Don't include "strdup.h", since
11630         <string.h> now suffices.
11631         * tests/test-memmem.c: Don't include "memmem.h", since
11632         <string.h> now suffices.
11633
11634 2007-01-25  Bruno Haible  <bruno@clisp.org>
11635
11636         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
11637         *resultp is 0.
11638
11639         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
11640         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
11641         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
11642         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
11643
11644         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
11645         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
11646         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
11647         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
11648         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
11649         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
11650
11651 2007-01-24  Bruno Haible  <bruno@clisp.org>
11652
11653         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
11654         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
11655         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
11656         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
11657         gl_FUNC_FTS_CORE.
11658         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
11659         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
11660         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
11661         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
11662         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
11663         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
11664         gl_FUNC_FCHOWNAT.
11665         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
11666         gl_FUNC_STRFTIME.
11667         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
11668         Reported by Ralf Wildenhues.
11669
11670 2007-01-24  Bruno Haible  <bruno@clisp.org>
11671
11672         Drop AC_REQUIRE calls that are redundant with the module dependencies.
11673         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
11674         gl_GETADDRINFO.
11675         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
11676         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
11677         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
11678
11679 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
11680
11681         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
11682         Don't use 'exit'; just return from 'main'.
11683         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
11684
11685         * lib/fnmatch_.h: Readjust white space and comments to match
11686         glibc, to avoid spurious diffs.
11687
11688 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
11689
11690         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
11691         2004-12-01 change by Jakub Jelinek, since this code won't compile
11692         if !LIBC.  Problem reported by Bob Proulx.
11693
11694 2007-01-23  Bruno Haible  <bruno@clisp.org>
11695
11696         * lib/striconveh.c: Include c-strcaseeq.h.
11697         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
11698         * modules/striconveh (Depends-on): Add c-strcaseeq.
11699
11700 2007-01-23  Bruno Haible  <bruno@clisp.org>
11701
11702         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
11703
11704         * modules/c-strcaseeq: New file.
11705         * lib/c-strcaseeq.h: New file.
11706
11707         * modules/streq: New file.
11708         * lib/streq.h: New file.
11709
11710 2007-01-23  Bruno Haible  <bruno@clisp.org>
11711
11712         * modules/striconveha-tests: New file.
11713         * tests/test-striconveha.c: New file.
11714
11715         * lib/striconveha.h: Include <stdbool.h>.
11716         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
11717         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
11718         (mem_iconveha_notranslit): Renamed from mem_iconveha.
11719         (mem_iconveha): New function.
11720         (str_iconveha_notranslit): Renamed from str_iconveha.
11721         (str_iconveha): New function.
11722         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
11723         c-strcase.
11724
11725 2007-01-23  Bruno Haible  <bruno@clisp.org>
11726
11727         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
11728         encodings without forgiving before trying any encoding with handler.
11729         (str_iconveha): Try all encodings without forgiving before trying any
11730         encoding with handler.
11731
11732 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
11733
11734         Import the following changes from libc.
11735
11736         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
11737
11738         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
11739
11740         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
11741
11742         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
11743         normal_bracket label.
11744
11745         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
11746
11747         [BZ #361]
11748         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
11749         to normal_bracket after fetching the next character.
11750
11751 2007-01-22  Bruno Haible  <bruno@clisp.org>
11752
11753         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
11754         argument.
11755         * lib/striconveh.c (iconv_carefully_1): New function.
11756         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
11757         argument.
11758         (str_cd_iconveh): Update.
11759         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
11760         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
11761         * tests/test-striconveh.c (MAGIC): New macro.
11762         (new_offsets): New function.
11763         (main): Test call with and without offsets.
11764
11765 2007-01-22  Bruno Haible  <bruno@clisp.org>
11766
11767         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
11768         * modules/sys_select (Makefile.am): Likewise.
11769         * modules/sys_socket (Makefile.am): Likewise.
11770         * modules/sys_time (Makefile.am): Likewise.
11771
11772 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
11773
11774         * modules/gettimeofday (License): Change from GPL to LGPL, since
11775         gettimeofday is a library function.
11776
11777 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11778
11779         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
11780
11781 2007-01-21  Bruno Haible  <bruno@clisp.org>
11782
11783         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
11784
11785 2007-01-21  Bruno Haible  <bruno@clisp.org>
11786
11787         * modules/striconveha: New file.
11788         * lib/striconveha.h: New file.
11789         * lib/striconveha.c: New file.
11790         * MODULES.html.sh (Internationalization functions): Add striconveha.
11791         * lib/striconv.c (str_iconv): Optimize the case of an empty input
11792         string.
11793         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
11794
11795 2007-01-21  Bruno Haible  <bruno@clisp.org>
11796
11797         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
11798         * lib/striconveh.c (str_iconveh): Likewise.
11799
11800 2007-01-21  Bruno Haible  <bruno@clisp.org>
11801
11802         * lib/striconveh.h (mem_iconveh): New declaration.
11803         * lib/striconveh.c (mem_iconveh): New function.
11804         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
11805
11806 2007-01-21  Bruno Haible  <bruno@clisp.org>
11807
11808         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
11809
11810         * lib/striconveh.h (mem_cd_iconveh): Change specification.
11811         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
11812         original result buffer.
11813         (str_cd_iconveh): Update.
11814         * tests/test-striconveh.c (main): Update.
11815
11816         * lib/striconv.h (mem_cd_iconv): Change specification.
11817         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
11818         result buffer.
11819         (str_cd_iconv): Update.
11820         * tests/test-striconv.c (main): Update.
11821
11822 2007-01-21  Bruno Haible  <bruno@clisp.org>
11823
11824         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
11825
11826 2007-01-20  Jim Meyering  <jim@meyering.net>
11827
11828         * lib/userspec.c (parse_with_separator): If a user or group string
11829         starts with "+", skip the corresponding name-to-ID look-up, since
11830         such a look-up must fail: user and group names may not include "+".
11831
11832 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
11833
11834         * lib/poll.c: Include sys/time.h and time.h unconditionally,
11835         since we now assume the sys_time module.
11836         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
11837         check for sys/time.h; no longer needed.
11838         * modules/poll (Depends-on): Depend on sys_time.
11839
11840 2007-01-18  Bruno Haible  <bruno@clisp.org>
11841
11842         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
11843         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
11844
11845         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
11846         gettimeofday.
11847
11848         * tests/test-gettimeofday.c: Include <time.h>.
11849         (dummy): Remove variable.
11850
11851         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
11852         gl_HEADER_SYS_TIME_H.
11853         (gl_HEADER_SYS_TIME_H): New macro.
11854
11855         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
11856         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11857         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
11858         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
11859         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11860         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
11861         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
11862         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11863         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
11864         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
11865         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11866
11867         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
11868         last change; it caused a compilation error when cross-compiling to
11869         Cygwin.
11870
11871 2007-01-18  Jim Meyering  <jim@meyering.net>
11872
11873         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
11874         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
11875         than the race-prone "test -d sys || mkdir sys".
11876         (configure.ac): Use AC_PROG_MKDIR_P.
11877         * modules/sys_select: Likewise.
11878         * modules/sys_socket: Likewise.
11879         * modules/sys_time: Likewise.
11880
11881 2007-01-18  Eric Blake  <ebb9@byu.net>
11882
11883         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
11884         replace gettimeofday.
11885         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
11886         name, to avoid infinite recursion.
11887
11888 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
11889
11890         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
11891         module sys_time.
11892         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
11893         assume timespec.h defines struct timeval.
11894         * lib/settime.c: Likewise.
11895         * lib/utimens.c: Likewise.
11896         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
11897         since we now assume the gettimeofday module.
11898         * lib/tempname.c (__gen_tempname): Likewise.
11899         * lib/gettimeofday.h: Remove.
11900         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
11901         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
11902         Include <time.h>, for 'time()'.
11903         (localtime_buffer_addr): Also use this workaround if
11904         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
11905         to simplify the uses.  All uses changed.
11906         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
11907         that #undef is inside {}, and 'const' follows type name consistently.
11908         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
11909         (gettimeofday): Do not use the maximum possible value for
11910         tv->tv_usec, since that might break usages other than ls.c.
11911         Instead, we'll leave ls.c alone.  This undoes today's patch
11912         by Bruno.  Add a compile-time warning for 1s-clock resolution;
11913         we've never observed the problem but might as well keep the
11914         canary.
11915         * lib/nanosleep.c: Include timespec.h first, for interface check.
11916         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
11917         now assume the sys_time module.
11918         * lib/tempname.c: Likewise.
11919         * lib/timespec.h: Likewise.
11920         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
11921         needed.
11922         * lib/strftime.c: Likewise.
11923         * lib/timespec.h: Likewise.
11924         * lib/posixtm.c: Include posixtm.h first, for interface check.
11925         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
11926         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
11927         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
11928         * lib/sys_time_.h: New file.
11929         * lib/timespec.h (struct timespec): Use long int, not long.
11930         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
11931         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
11932         Remove obsolescent call to AC_HEADER_TIME.
11933         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
11934         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
11935         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
11936         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
11937         Likewise.
11938         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
11939         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
11940         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
11941         into the sys_time module.  Check for gettimeofday just once.
11942         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
11943         for gettimeofday signature to just check the signature.  Merely
11944         compile it, since linking doesn't test signature.  Improve test for
11945         whether gettimeofday.o is actually needed.
11946         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
11947         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
11948         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
11949         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11950         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
11951         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
11952         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
11953         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
11954         than worrying about sys/time.h.
11955         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
11956         Don't bother worrying about TIME_WITH_SYS_TIME.
11957         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
11958         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
11959         * m4/sys_time_h.m4: New file.
11960         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
11961         Don't include sys/time.h.  Return from main rather than exiting.
11962         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
11963         all uses changed.
11964         * modules/gethrxtime (Depends-on): Add sys_time.
11965         * modules/gettime (Depends-on): Likewise.
11966         * modules/gettimeofday (Depends-on): Likewise.
11967         * modules/nanosleep (Depends-on): Likewise.
11968         * modules/settime (Depends-on): Likewise.
11969         * modules/tempname (Depends-on): Likewise.
11970         * modules/utimens (Depends-on): Likewise.
11971         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
11972         (Include:) Change back to <sys/time.h>.
11973         (Maintainer:) Add self.
11974         * modules/sys_time: New file.
11975         * modules/tempname (Depends-on): Add gettimeofday.
11976         * tests/test-gettimeofday.c: Include <sys/time.h>
11977         rather than gettimeofday.h.
11978
11979 2007-01-17  Bruno Haible  <bruno@clisp.org>
11980
11981         * gnulib-tool (func_get_license): Revert last patch. Instead, let
11982         the license default to GPL.
11983         (func_create_testdir): Don't complain if a module is LGPL and its
11984         tests module depends on GPLed modules.
11985
11986 2007-01-17  Bruno Haible  <bruno@clisp.org>
11987
11988         * lib/gettimeofday.c (gettimeofday): Add code for the case
11989         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
11990         maximum possible value for tv->tv_usec, rather than the minimum one.
11991
11992 2005-10-08  Martin Lambers  <marlam@marlam.de>
11993 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
11994 2007-01-16  Bruno Haible  <bruno@clisp.org>
11995
11996         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
11997         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
11998         gl_FUNC_GETTIMEOFDAY.
11999         (Include): Add gettimeofday.h.
12000         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
12001         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
12002         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
12003         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
12004         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
12005         * lib/gettimeofday.h: New file.
12006         * lib/gettimeofday.c: Include <sys/timeb.h>.
12007         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
12008         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
12009         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
12010         fall back on time().
12011
12012         * tests/test-gettimeofday.c: New file.
12013         * modules/gettimeofday-tests: New file.
12014
12015 2007-01-16  Eric Blake  <ebb9@byu.net>
12016
12017         * modules/fnmatch (Depends-on): Depend on wchar.
12018         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
12019         * m4/fnmatch.m4: Likewise.
12020         * modules/mbchar (Makefile.am): Assume <wchar.h>.
12021         * m4/mbchar.m4: Likewise.
12022         * modules/mbswidth (Depends-on): Depend on wchar.
12023         * lib/mbswidth.c: Assume <wchar.h>.
12024         * m4/mbswidth.m4: Likewise.
12025         * modules/quotearg (Depends-on): Depend on wchar.
12026         * lib/quotearg.c: Assume <wchar.h>.
12027         * m4/quotearg.m4: Likewise.
12028         * modules/regex (Depends-on): Depend on wchar.
12029         * lib/regex_internal.h: Assume <wchar.h>.
12030         * m4/regex.m4: Likewise.
12031         * modules/stdint (Depends-on): Depend on wchar.
12032         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
12033         * m4/stdint.m4: Likewise.
12034         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
12035         * modules/strftime (Depends-on): Depend on wchar.
12036         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
12037         * modules/strtol (Depends-on): Depend on wchar.
12038         * lib/strtol.c: Assume <wchar.h>.
12039         * modules/wcwidth (Depends-on): Depend on wchar.
12040         * lib/wcwidth.h: Assume <wchar.h>.
12041         * m4/wcwidth.m4: Likewise.
12042
12043 2007-01-16  Bruno Haible  <bruno@clisp.org>
12044
12045         * modules/csharpexec-script: New, created from...
12046         * modules/csharpexec: ... this.
12047
12048 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
12049
12050         * modules/javaexec-script: New, created from...
12051         * modules/javaexec: ... this.
12052
12053 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
12054
12055         * modules/poll (Dependencies): Add sys_select.
12056
12057 2007-01-15  Jim Meyering  <jim@meyering.net>
12058
12059         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
12060         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
12061         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
12062         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
12063
12064 2007-01-15  Bruno Haible  <bruno@clisp.org>
12065
12066         * modules/striconveh: New file.
12067         * lib/striconveh.h: New file.
12068         * lib/striconveh.c: New file.
12069         * MODULES.html.sh (Internationalization functions): Add striconveh.
12070
12071         * modules/striconveh-tests: New file.
12072         * tests/test-striconveh.c: New file.
12073
12074 2007-01-15  Bruno Haible  <bruno@clisp.org>
12075
12076         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
12077         not from GNU libiconv or GNU libc.
12078
12079 2007-01-15  Bruno Haible  <bruno@clisp.org>
12080
12081         * doc/gnulib-intro.texi (Copyright): Explain the different license
12082         terms for module descriptions, autoconf macros, tests, documentation.
12083
12084 2007-01-14  Bruno Haible  <bruno@clisp.org>
12085
12086         * modules/striconv-tests: New file.
12087         * tests/test-striconv.c: New file.
12088
12089 2007-01-14  Bruno Haible  <bruno@clisp.org>
12090
12091         * modules/iconv-tests: New file.
12092         * tests/test-iconv.c: New file.
12093
12094 2007-01-14  Bruno Haible  <bruno@clisp.org>
12095
12096         * gnulib-tool (func_get_license): For test modules, use the license of
12097         the main module.
12098
12099 2007-01-14  Bruno Haible  <bruno@clisp.org>
12100
12101         * modules/iconv (Include): Clarify that <iconv.h> can only be included
12102         if iconv is found to exist.
12103
12104 2007-01-14  Bruno Haible  <bruno@clisp.org>
12105
12106         * modules/c-ctype-tests: New file.
12107         * tests/test-c-ctype.c: New file.
12108
12109 2007-01-14  Bruno Haible  <bruno@clisp.org>
12110
12111         * modules/binary-io-tests: New file.
12112         * tests/test-binary-io.sh: New file.
12113         * tests/test-binary-io.c: New file.
12114
12115 2007-01-14  Bruno Haible  <bruno@clisp.org>
12116
12117         * modules/array-oset-tests: New file.
12118         * tests/test-array_oset.c: New file.
12119
12120 2007-01-14  Bruno Haible  <bruno@clisp.org>
12121
12122         * modules/array-list-tests: New file.
12123         * tests/test-array_list.c: New file.
12124
12125 2007-01-14  Bruno Haible  <bruno@clisp.org>
12126
12127         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
12128         and make.
12129         Reported by Simon Josefsson in
12130         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
12131
12132 2007-01-14  Bruno Haible  <bruno@clisp.org>
12133
12134         * modules/allocsa-tests: New file.
12135         * tests/test-allocsa.c: New file.
12136
12137 2007-01-14  Bruno Haible  <bruno@clisp.org>
12138
12139         * modules/fchdir (Depends-on): Add absolute-header.
12140         * modules/unistd (Depends-on): Likewise.
12141
12142 2006-12-30  Bruno Haible  <bruno@clisp.org>
12143
12144         * modules/fchdir: New file.
12145         * modules/unistd (Files): Add lib/unistd_.h.
12146         (Makefile.am): Generate unistd.h from unistd_.h.
12147         * lib/fchdir.c: New file.
12148         * lib/dirent_.h: New file.
12149         * lib/unistd_.h: New file.
12150         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
12151         * m4/fchdir.m4: New file.
12152         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
12153         (gl_HEADER_UNISTD): Invoke it.
12154         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
12155         function.
12156         * lib/backupfile.c (opendir, closedir): Undefine.
12157         * lib/chown.c (open, close): Undefine.
12158         * lib/clean-temp.c (open, close): Undefine.
12159         * lib/copy-file.c (open, close): Undefine.
12160         * lib/execute.c (open, close): Undefine.
12161         * lib/fsusage.c (open, close): Undefine.
12162         * lib/gc-gnulib.c (open, close): Undefine.
12163         * lib/getcwd.c (opendir, closedir): Undefine.
12164         * lib/glob.c (opendir, closedir): Undefine.
12165         * lib/javacomp.c (open, close): Undefine.
12166         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
12167         * lib/openat-proc.c (open, close): Undefine.
12168         * lib/pagealign_alloc.c (open, close): Undefine.
12169         * lib/pipe.c (open, close): Undefine.
12170         * lib/progreloc.c (open, close): Undefine.
12171         * lib/savedir.c (opendir, closedir): Undefine.
12172         * lib/utime.c (open, close): Undefine.
12173         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
12174
12175 2007-01-10  Bruno Haible  <bruno@clisp.org>
12176
12177         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
12178
12179 2007-01-12  Eric Blake  <ebb9@byu.net>
12180
12181         Provide a robust <wchar.h>.  Further simplifications are now
12182         possible in other modules, but not included here.
12183         * modules/wchar: New module.
12184         * m4/wchar.m4: New file.
12185         * lib/wchar_.h: Likewise.
12186         * modules/mbchar (Depends-on): Depend on wchar, as the first use
12187         of the new module.
12188         * MODULES.html.sh (Extended multibyte and wide character utilities):
12189         New section.
12190
12191 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
12192
12193         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
12194         to a reasonable default for memory allocation.
12195         (xreadlink): Don't allocate a huge buffer, to work around a buggy
12196         file system that reports garbage st_size values for symlinks.
12197         Problem reported by Liyang Hu.
12198
12199 2007-01-11  Simon Josefsson  <simon@josefsson.org>
12200
12201         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
12202         Emacs .#* auto-save files).
12203
12204 2007-01-11  Bruno Haible  <bruno@clisp.org>
12205
12206         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
12207         directory.
12208
12209 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
12210
12211         Use @...@ consistently in lib/wctype_.h.
12212         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
12213         on it being set to 1 or 0.
12214         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
12215         go back to AC_SUBSTing it.
12216         * modules/wctype (Makefile.am): Undo previous change.
12217
12218 2007-01-10  Eric Blake  <ebb9@byu.net>
12219
12220         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
12221         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
12222         * modules/wctype (Makefile.am): Likewise.
12223         Reported by Chris McGuire.
12224
12225 2007-01-10  Jim Meyering  <jim@meyering.net>
12226
12227         fts.c: a small readability/maintainability improvement
12228         * lib/fts.c (fts_read): Make this code slightly more readable and
12229         maintainable by hoisting the "sp->fts_cur = p" assignments to
12230         immediately follow the statements that set P.  Derived from
12231         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
12232
12233 2007-01-10  Eric Blake  <ebb9@byu.net>
12234
12235         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
12236         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
12237         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
12238         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
12239         Reported by Chris McGuire.
12240
12241 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12242
12243         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
12244         in sed script.
12245
12246 2007-01-09  Bruno Haible  <bruno@clisp.org>
12247
12248         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
12249         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
12250         variables.
12251         (func_module): Use them.
12252
12253 2007-01-09  Bruno Haible  <bruno@clisp.org>
12254
12255         * modules/unistr/base: New file.
12256         * lib/unistr.h: New file.
12257
12258         * modules/unistr/u8-to-u16: New file.
12259         * lib/unistr/u8-to-u16.c: New file.
12260
12261         * modules/unistr/u8-to-u32: New file.
12262         * lib/unistr/u8-to-u32.c: New file.
12263
12264         * modules/unistr/u16-to-u8: New file.
12265         * lib/unistr/u16-to-u8.c: New file.
12266
12267         * modules/unistr/u16-to-u32: New file.
12268         * lib/unistr/u16-to-u32.c: New file.
12269
12270         * modules/unistr/u32-to-u8: New file.
12271         * lib/unistr/u32-to-u8.c: New file.
12272
12273         * modules/unistr/u32-to-u16: New file.
12274         * lib/unistr/u32-to-u16.c: New file.
12275
12276         * modules/unistr/u8-check: New file.
12277         * modules/unistr/u16-check: New file.
12278         * modules/unistr/u32-check: New file.
12279         * lib/unistr/u8-check.c: New file.
12280         * lib/unistr/u16-check.c: New file.
12281         * lib/unistr/u32-check.c: New file.
12282
12283         * modules/unistr/u8-chr: New file.
12284         * modules/unistr/u16-chr: New file.
12285         * modules/unistr/u32-chr: New file.
12286         * lib/unistr/u8-chr.c: New file.
12287         * lib/unistr/u16-chr.c: New file.
12288         * lib/unistr/u32-chr.c: New file.
12289
12290         * modules/unistr/u8-cmp: New file.
12291         * modules/unistr/u16-cmp: New file.
12292         * modules/unistr/u32-cmp: New file.
12293         * lib/unistr/u8-cmp.c: New file.
12294         * lib/unistr/u16-cmp.c: New file.
12295         * lib/unistr/u32-cmp.c: New file.
12296
12297         * modules/unistr/u8-cpy: New file.
12298         * modules/unistr/u16-cpy: New file.
12299         * modules/unistr/u32-cpy: New file.
12300         * lib/unistr/u8-cpy.c: New file.
12301         * lib/unistr/u16-cpy.c: New file.
12302         * lib/unistr/u32-cpy.c: New file.
12303         * lib/unistr/u-cpy.h: New file.
12304
12305         * modules/unistr/u8-cpy-alloc: New file.
12306         * modules/unistr/u16-cpy-alloc: New file.
12307         * modules/unistr/u32-cpy-alloc: New file.
12308         * lib/unistr/u8-cpy-alloc.c: New file.
12309         * lib/unistr/u16-cpy-alloc.c: New file.
12310         * lib/unistr/u32-cpy-alloc.c: New file.
12311         * lib/unistr/u-cpy-alloc.h: New file.
12312
12313         * modules/unistr/u8-endswith: New file.
12314         * modules/unistr/u16-endswith: New file.
12315         * modules/unistr/u32-endswith: New file.
12316         * lib/unistr/u8-endswith.c: New file.
12317         * lib/unistr/u16-endswith.c: New file.
12318         * lib/unistr/u32-endswith.c: New file.
12319         * lib/unistr/u-endswith.h: New file.
12320
12321         * modules/unistr/u8-mblen: New file.
12322         * modules/unistr/u16-mblen: New file.
12323         * modules/unistr/u32-mblen: New file.
12324         * lib/unistr/u8-mblen.c: New file.
12325         * lib/unistr/u16-mblen.c: New file.
12326         * lib/unistr/u32-mblen.c: New file.
12327
12328         * modules/unistr/u8-mbtouc: New file.
12329         * modules/unistr/u16-mbtouc: New file.
12330         * modules/unistr/u32-mbtouc: New file.
12331         * lib/unistr/u8-mbtouc.c: New file.
12332         * lib/unistr/u16-mbtouc.c: New file.
12333         * lib/unistr/u32-mbtouc.c: New file.
12334
12335         * modules/unistr/u8-mbtouc-safe: New file.
12336         * modules/unistr/u16-mbtouc-safe: New file.
12337         * modules/unistr/u32-mbtouc-safe: New file.
12338         * lib/unistr/u8-mbtouc-safe.c: New file.
12339         * lib/unistr/u16-mbtouc-safe.c: New file.
12340         * lib/unistr/u32-mbtouc-safe.c: New file.
12341
12342         * modules/unistr/u8-move: New file.
12343         * modules/unistr/u16-move: New file.
12344         * modules/unistr/u32-move: New file.
12345         * lib/unistr/u8-move.c: New file.
12346         * lib/unistr/u16-move.c: New file.
12347         * lib/unistr/u32-move.c: New file.
12348         * lib/unistr/u-move.h: New file.
12349
12350         * modules/unistr/u8-next: New file.
12351         * modules/unistr/u16-next: New file.
12352         * modules/unistr/u32-next: New file.
12353         * lib/unistr/u8-next.c: New file.
12354         * lib/unistr/u16-next.c: New file.
12355         * lib/unistr/u32-next.c: New file.
12356
12357         * modules/unistr/u8-prev: New file.
12358         * modules/unistr/u16-prev: New file.
12359         * modules/unistr/u32-prev: New file.
12360         * lib/unistr/u8-prev.c: New file.
12361         * lib/unistr/u16-prev.c: New file.
12362         * lib/unistr/u32-prev.c: New file.
12363
12364         * modules/unistr/u8-set: New file.
12365         * modules/unistr/u16-set: New file.
12366         * modules/unistr/u32-set: New file.
12367         * lib/unistr/u8-set.c: New file.
12368         * lib/unistr/u16-set.c: New file.
12369         * lib/unistr/u32-set.c: New file.
12370         * lib/unistr/u-set.h: New file.
12371
12372         * modules/unistr/u8-startswith: New file.
12373         * modules/unistr/u16-startswith: New file.
12374         * modules/unistr/u32-startswith: New file.
12375         * lib/unistr/u8-startswith.c: New file.
12376         * lib/unistr/u16-startswith.c: New file.
12377         * lib/unistr/u32-startswith.c: New file.
12378         * lib/unistr/u-startswith.h: New file.
12379
12380         * modules/unistr/u8-stpcpy: New file.
12381         * modules/unistr/u16-stpcpy: New file.
12382         * modules/unistr/u32-stpcpy: New file.
12383         * lib/unistr/u8-stpcpy.c: New file.
12384         * lib/unistr/u16-stpcpy.c: New file.
12385         * lib/unistr/u32-stpcpy.c: New file.
12386         * lib/unistr/u-stpcpy.h: New file.
12387
12388         * modules/unistr/u8-stpncpy: New file.
12389         * modules/unistr/u16-stpncpy: New file.
12390         * modules/unistr/u32-stpncpy: New file.
12391         * lib/unistr/u8-stpncpy.c: New file.
12392         * lib/unistr/u16-stpncpy.c: New file.
12393         * lib/unistr/u32-stpncpy.c: New file.
12394         * lib/unistr/u-stpncpy.h: New file.
12395
12396         * modules/unistr/u8-strcat: New file.
12397         * modules/unistr/u16-strcat: New file.
12398         * modules/unistr/u32-strcat: New file.
12399         * lib/unistr/u8-strcat.c: New file.
12400         * lib/unistr/u16-strcat.c: New file.
12401         * lib/unistr/u32-strcat.c: New file.
12402         * lib/unistr/u-strcat.h: New file.
12403
12404         * modules/unistr/u8-strchr: New file.
12405         * modules/unistr/u16-strchr: New file.
12406         * modules/unistr/u32-strchr: New file.
12407         * lib/unistr/u8-strchr.c: New file.
12408         * lib/unistr/u16-strchr.c: New file.
12409         * lib/unistr/u32-strchr.c: New file.
12410
12411         * modules/unistr/u8-strcmp: New file.
12412         * modules/unistr/u16-strcmp: New file.
12413         * modules/unistr/u32-strcmp: New file.
12414         * lib/unistr/u8-strcmp.c: New file.
12415         * lib/unistr/u16-strcmp.c: New file.
12416         * lib/unistr/u32-strcmp.c: New file.
12417
12418         * modules/unistr/u8-strcpy: New file.
12419         * modules/unistr/u16-strcpy: New file.
12420         * modules/unistr/u32-strcpy: New file.
12421         * lib/unistr/u8-strcpy.c: New file.
12422         * lib/unistr/u16-strcpy.c: New file.
12423         * lib/unistr/u32-strcpy.c: New file.
12424         * lib/unistr/u-strcpy.h: New file.
12425
12426         * modules/unistr/u8-strcspn: New file.
12427         * modules/unistr/u16-strcspn: New file.
12428         * modules/unistr/u32-strcspn: New file.
12429         * lib/unistr/u8-strcspn.c: New file.
12430         * lib/unistr/u16-strcspn.c: New file.
12431         * lib/unistr/u32-strcspn.c: New file.
12432         * lib/unistr/u-strcspn.h: New file.
12433
12434         * modules/unistr/u8-strdup: New file.
12435         * modules/unistr/u16-strdup: New file.
12436         * modules/unistr/u32-strdup: New file.
12437         * lib/unistr/u8-strdup.c: New file.
12438         * lib/unistr/u16-strdup.c: New file.
12439         * lib/unistr/u32-strdup.c: New file.
12440         * lib/unistr/u-strdup.h: New file.
12441
12442         * modules/unistr/u8-strlen: New file.
12443         * modules/unistr/u16-strlen: New file.
12444         * modules/unistr/u32-strlen: New file.
12445         * lib/unistr/u8-strlen.c: New file.
12446         * lib/unistr/u16-strlen.c: New file.
12447         * lib/unistr/u32-strlen.c: New file.
12448         * lib/unistr/u-strlen.h: New file.
12449
12450         * modules/unistr/u8-strmblen: New file.
12451         * modules/unistr/u16-strmblen: New file.
12452         * modules/unistr/u32-strmblen: New file.
12453         * lib/unistr/u8-strmblen.c: New file.
12454         * lib/unistr/u16-strmblen.c: New file.
12455         * lib/unistr/u32-strmblen.c: New file.
12456
12457         * modules/unistr/u8-strmbtouc: New file.
12458         * modules/unistr/u16-strmbtouc: New file.
12459         * modules/unistr/u32-strmbtouc: New file.
12460         * lib/unistr/u8-strmbtouc.c: New file.
12461         * lib/unistr/u16-strmbtouc.c: New file.
12462         * lib/unistr/u32-strmbtouc.c: New file.
12463
12464         * modules/unistr/u8-strncat: New file.
12465         * modules/unistr/u16-strncat: New file.
12466         * modules/unistr/u32-strncat: New file.
12467         * lib/unistr/u8-strncat.c: New file.
12468         * lib/unistr/u16-strncat.c: New file.
12469         * lib/unistr/u32-strncat.c: New file.
12470         * lib/unistr/u-strncat.h: New file.
12471
12472         * modules/unistr/u8-strncmp: New file.
12473         * modules/unistr/u16-strncmp: New file.
12474         * modules/unistr/u32-strncmp: New file.
12475         * lib/unistr/u8-strncmp.c: New file.
12476         * lib/unistr/u16-strncmp.c: New file.
12477         * lib/unistr/u32-strncmp.c: New file.
12478
12479         * modules/unistr/u8-strncpy: New file.
12480         * modules/unistr/u16-strncpy: New file.
12481         * modules/unistr/u32-strncpy: New file.
12482         * lib/unistr/u8-strncpy.c: New file.
12483         * lib/unistr/u16-strncpy.c: New file.
12484         * lib/unistr/u32-strncpy.c: New file.
12485         * lib/unistr/u-strncpy.h: New file.
12486
12487         * modules/unistr/u8-strnlen: New file.
12488         * modules/unistr/u16-strnlen: New file.
12489         * modules/unistr/u32-strnlen: New file.
12490         * lib/unistr/u8-strnlen.c: New file.
12491         * lib/unistr/u16-strnlen.c: New file.
12492         * lib/unistr/u32-strnlen.c: New file.
12493         * lib/unistr/u-strnlen.h: New file.
12494
12495         * modules/unistr/u8-strpbrk: New file.
12496         * modules/unistr/u16-strpbrk: New file.
12497         * modules/unistr/u32-strpbrk: New file.
12498         * lib/unistr/u8-strpbrk.c: New file.
12499         * lib/unistr/u16-strpbrk.c: New file.
12500         * lib/unistr/u32-strpbrk.c: New file.
12501         * lib/unistr/u-strpbrk.h: New file.
12502
12503         * modules/unistr/u8-strrchr: New file.
12504         * modules/unistr/u16-strrchr: New file.
12505         * modules/unistr/u32-strrchr: New file.
12506         * lib/unistr/u8-strrchr.c: New file.
12507         * lib/unistr/u16-strrchr.c: New file.
12508         * lib/unistr/u32-strrchr.c: New file.
12509
12510         * modules/unistr/u8-strspn: New file.
12511         * modules/unistr/u16-strspn: New file.
12512         * modules/unistr/u32-strspn: New file.
12513         * lib/unistr/u8-strspn.c: New file.
12514         * lib/unistr/u16-strspn.c: New file.
12515         * lib/unistr/u32-strspn.c: New file.
12516         * lib/unistr/u-strspn.h: New file.
12517
12518         * modules/unistr/u8-strstr: New file.
12519         * modules/unistr/u16-strstr: New file.
12520         * modules/unistr/u32-strstr: New file.
12521         * lib/unistr/u8-strstr.c: New file.
12522         * lib/unistr/u16-strstr.c: New file.
12523         * lib/unistr/u32-strstr.c: New file.
12524         * lib/unistr/u-strstr.h: New file.
12525
12526         * modules/unistr/u8-strtok: New file.
12527         * modules/unistr/u16-strtok: New file.
12528         * modules/unistr/u32-strtok: New file.
12529         * lib/unistr/u8-strtok.c: New file.
12530         * lib/unistr/u16-strtok.c: New file.
12531         * lib/unistr/u32-strtok.c: New file.
12532         * lib/unistr/u-strtok.h: New file.
12533
12534         * modules/unistr/u8-uctomb: New file.
12535         * modules/unistr/u16-uctomb: New file.
12536         * modules/unistr/u32-uctomb: New file.
12537         * lib/unistr/u8-uctomb.c: New file.
12538         * lib/unistr/u16-uctomb.c: New file.
12539         * lib/unistr/u32-uctomb.c: New file.
12540
12541         * MODULES.html.sh (Unicode string functions): Add the new modules.
12542
12543 2007-01-08  Bruno Haible  <bruno@clisp.org>
12544
12545         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
12546         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
12547         subdirectories.
12548
12549 2007-01-08  Karl Berry  <karl@gnu.org>
12550
12551         * doc/error.texi: mention that main() fns must set program_name
12552         when progname is used.
12553
12554 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
12555
12556         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
12557         WCTYPE_H is empty, for the benefit of builds from non-distclean
12558         directories.  Problem reported by Eric Blake in
12559         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
12560
12561 2007-01-08  Bruno Haible  <bruno@clisp.org>
12562
12563         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
12564         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
12565         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
12566         PROVIDE_CANONICALIZE_FILENAME_MODE.
12567         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
12568
12569 2007-01-08  Bruno Haible  <bruno@clisp.org>
12570
12571         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
12572         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
12573         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
12574         * lib/fts.c: Likewise.
12575         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
12576
12577 2006-12-25  Bruno Haible  <bruno@clisp.org>
12578
12579         * modules/utf8-ucs4-safe: New file.
12580         * lib/utf8-ucs4-safe.h: New file.
12581         * lib/unistr/utf8-ucs4-safe.c: New file.
12582
12583         * modules/utf16-ucs4-safe: New file.
12584         * lib/utf16-ucs4-safe.h: New file.
12585         * lib/unistr/utf16-ucs4-safe.c: New file.
12586
12587         * MODULES.html.sh (Unicode string functions): Add the new modules.
12588
12589 2007-01-08  Bruno Haible  <bruno@clisp.org>
12590
12591         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
12592         (Depends-on): Add unitypes.
12593         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
12594         (u8_mbtouc_aux): Move out to separate file.
12595         (u8_mbtouc): Use ucs4_t, uint8_t types.
12596         * lib/unistr/utf8-ucs4.c: New file.
12597
12598         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
12599         (Depends-on): Add unitypes.
12600         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
12601         (u16_mbtouc_aux): Move out to separate file.
12602         (u16_mbtouc): Use ucs4_t, uint16_t types.
12603         * lib/unistr/utf16-ucs4.c: New file.
12604
12605         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
12606         (Depends-on): Add unitypes.
12607         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
12608         (u8_uctomb_aux): Move out to separate file.
12609         (u8_uctomb): Use ucs4_t, uint8_t types.
12610         * lib/unistr/ucs4-utf8.c: New file.
12611
12612         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
12613         (Depends-on): Add unitypes.
12614         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
12615         (u16_uctomb_aux): Move out to separate file.
12616         (u16_uctomb): Use ucs4_t, uint16_t types.
12617         * lib/unistr/ucs4-utf16.c: New file.
12618
12619 2006-12-25  Bruno Haible  <bruno@clisp.org>
12620
12621         * modules/unitypes: New file.
12622         * lib/unitypes.h: New file.
12623         * MODULES.html.sh (func_all_modules): New section "Unicode string
12624         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
12625         this section. Add unitypes.
12626
12627 2007-01-08  Bruno Haible  <bruno@clisp.org>
12628
12629         Avoid variable names that conflict with those from libtool.
12630         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
12631         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
12632         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
12633         library_names_spec to acl_library_names_spec, hardcode_* to
12634         acl_hardcode_*.
12635         Reported by Ralf Wildenhues.
12636
12637 2007-01-08  Bruno Haible  <bruno@clisp.org>
12638
12639         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
12640         definition.
12641         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
12642         definition.
12643         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
12644         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
12645         definition.
12646         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
12647         definition.
12648         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
12649         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
12650         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
12651         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
12652         definition.
12653         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
12654         definition.
12655         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
12656         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
12657         GC_USE_<algorithm>.
12658         * lib/gc-libgcrypt.c: Likewise.
12659         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
12660         * modules/gc-arctwo (configure.ac): Likewise.
12661         * modules/gc-des (configure.ac): Likewise.
12662         * modules/gc-hmac-md5 (configure.ac): Likewise.
12663         * modules/gc-hmac-sha1 (configure.ac): Likewise.
12664         * modules/gc-md2 (configure.ac): Likewise.
12665         * modules/gc-md4 (configure.ac): Likewise.
12666         * modules/gc-md5 (configure.ac): Likewise.
12667         * modules/gc-random (configure.ac): Likewise.
12668         * modules/gc-rijndael (configure.ac): Likewise.
12669         * modules/gc-sha1 (configure.ac): Likewise.
12670
12671 2007-01-08  Bruno Haible  <bruno@clisp.org>
12672
12673         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
12674         macro definition.
12675         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
12676         definition.
12677         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
12678         definition.
12679         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
12680         * modules/fcntl-safer (configure.ac): Likewise.
12681         * modules/fopen-safer (configure.ac): Likewise.
12682         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
12683         GNULIB_FWRITEERROR macro definition.
12684
12685 2007-01-08  Bruno Haible  <bruno@clisp.org>
12686
12687         * m4/gnulib-common.m4: New file.
12688         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
12689         (func_get_filelist): Add m4/gnulib-common.m4.
12690
12691 2007-01-08  Bruno Haible  <bruno@clisp.org>
12692
12693         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
12694         command.
12695
12696 2007-01-08  Jim Meyering  <jim@meyering.net>
12697
12698         Use a more robust test for a "can't happen" condition.
12699         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
12700         narrowed the st_size value.  Presuming the "can't happen" condition
12701         is true, that narrowing could conceivably convert an invalid st_size
12702         value into a valid one.  Instead, use a change based on Matthew
12703         Woehlke's original patch.
12704
12705         Slight readability improvement: use an assert-like macro
12706         in place of literal "abort ()" uses.
12707         * lib/fts.c (fts_assert): Define.
12708         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
12709         Use this macro instead of a bare 'abort'.
12710
12711 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
12712
12713         Don't worry about using IRIX 5.3's wctype.h broken definitions;
12714         simply work around them.
12715         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
12716         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
12717         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
12718         declaring.
12719         Don't bother to define as macros, since the standard doesn't require it.
12720         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
12721         longer worry about IRIX 5.3.
12722         (HAVE_WCTYPE_CTMP_BUG): Remove.
12723
12724 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
12725
12726         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
12727         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
12728         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
12729         Problems reported by Georg Schwarz for IRIX 5.3.
12730
12731         * gnulib-tool (autoconf_minversion): Take the maximum version number
12732         found, not the minimum.  Problem reported by James Youngman.
12733
12734 2007-01-03  Karl Berry  <karl@gnu.org>
12735
12736         * doc/error.texi: new file, explaining interaction with progname.
12737         * doc/gnulib.texi: include it.  Update copyright.
12738
12739 2007-01-03  Simon Josefsson  <simon@josefsson.org>
12740
12741         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
12742         AC_CANONICAL_HOST, to improve autobuild outputs.
12743
12744 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
12745             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
12746
12747         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
12748         sockets, server sockets, and other file descriptors.  Count errors
12749         to compute the return value.  Reorder the code a bit to be easier
12750         to follow.  Don't set event bits that were not requested (except
12751         POLLERR and POLLHUP).
12752
12753 2007-01-01  Bruno Haible  <bruno@clisp.org>
12754
12755         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
12756
12757 2007-01-03  Jim Meyering  <jim@meyering.net>
12758
12759         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
12760
12761 2007-01-02  Bruno Haible  <bruno@clisp.org>
12762
12763         * modules/settime (Include): Require timespec.h.
12764         * modules/nanosleep (Include): Likewise.
12765
12766 2007-01-01  Bruno Haible  <bruno@clisp.org>
12767
12768         * gnulib-tool (func_emit_copyright_notice): Bump year.
12769         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
12770
12771 2007-01-01  Bruno Haible  <bruno@clisp.org>
12772
12773         Improve support for OpenBSD.
12774         * build-aux/config.rpath (libname_spec): Export.
12775         (library_names_spec): New variable. Export.
12776         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
12777         library_names_spec from the config.rpath output. Locate shared library
12778         through the name pattern in library_names_spec.
12779
12780 2007-01-01  Eric Blake  <ebb9@byu.net>
12781
12782         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
12783
12784 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
12785
12786         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
12787         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
12788         assume the C locale, and avoid an "eval" that could cause trouble.
12789         Problem with SORT reported by Bob Proulx.
12790
12791         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
12792         Define.  Trivial patch from Henning Nielsen Lund, originally
12793         sent to bug-grep@gnu.org today.
12794
12795 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12796
12797         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
12798         struct stat.  Problem reported by Henning Nielsen Lund.
12799         * lib/acl.c: Include acl.h first, to check interface.  Don't
12800         bother to include sys/types.h and sys/stat.h again.
12801
12802 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
12803
12804         Import the following change from libc; problem reported by
12805         Sven Verdoolaege.
12806
12807         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
12808
12809         [BZ #1373]
12810         * lib/argp.h: Remove __NTH for __argp_usage inline function.
12811
12812 2006-12-28  Jim Meyering  <jim@meyering.net>
12813
12814         * build-aux/announce-gen: Do not assume that the package
12815         builds any of tar.gz, tar.bz2, and .xdelta files.
12816         Suggestion from Simon Josefsson.
12817
12818 2006-12-28  Simon Josefsson  <simon@josefsson.org>
12819
12820         * modules/announce-gen: New file.
12821
12822 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12823
12824         * lib/mbchar.h: Just include <wctype.h>; the wctype module
12825         handles its gotchas now.
12826         * lib/mbswidth.c: Likewise.
12827         * lib/wcwidth.h: Likewise.
12828         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
12829         and iswcntrl; the wctype module does this stuff now.
12830         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
12831         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
12832         * modules/mbchar (Depends-on): Add wctype.
12833         * modules/mbswidth (Depends-on): Likewise.
12834         * modules/wcwidth (Depends-on): Likewise.
12835
12836 2006-12-27  Eric Blake  <ebb9@byu.net>
12837
12838         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
12839         module uses more than what <wctype.h> is required to provide.
12840
12841 2006-12-26  Eric Blake  <ebb9@byu.net>
12842
12843         * gnulib-tool (sed_extract_prog): Avoid space-tab.
12844
12845 2006-12-26  Eric Blake  <ebb9@byu.net>
12846
12847         * modules/absolute-header: New module.
12848         * modules/fcntl (Depends-on): Depend on it.
12849         * modules/inttypes (Depends-on): Likewise.
12850         * modules/stdint (Depends-on): Likewise.
12851         * modules/sys_stat (Depends-on): Likewise.
12852         * modules/wctype (Depends-on): Likewise.
12853         * MODULES.html.sh (Support for building libraries and
12854         executables): Document it.
12855
12856 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
12857
12858         * gnulib-tool (SED): Remove, undoing previous change.
12859         The problem was that it broke coreutils on Solaris, because
12860         "sed --posix" leaked into a makefile.
12861         (sed): New alias, if 'alias' and GNU sed.
12862
12863 2006-12-24  Jim Meyering  <jim@meyering.net>
12864
12865         Work around an fchownat bug in glibc-2.4:
12866         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
12867         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
12868         in spite of the -P option.
12869         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
12870         New macros.
12871         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
12872         * modules/openat (Files): Add lib/fchownat.c.
12873         * lib/openat.c (fchownat): Don't define here.  Move to...
12874         * lib/fchownat.c: ...this new file.
12875
12876 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
12877
12878         Fix bug reported by Bruno Haible in
12879         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
12880         where quotearg.c didn't compile on Mac OS X 10.2 because it
12881         lacks <wchar.h> and wint_t.
12882         * lib/wctype_.h (__wctype_wint_t): New type.
12883         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
12884         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
12885         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
12886         Arg is now of type __wctype_wint_t, not wint_t.
12887         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
12888         substitute HAVE_WINT_T.
12889         * modules/wctype (Files): Add m4/wint_t.m4.
12890         (wctype.h): Substitute HAVE_WINT_T.
12891
12892 2006-12-23  Bruno Haible  <bruno@clisp.org>
12893
12894         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
12895
12896 2006-12-23  Bruno Haible  <bruno@clisp.org>
12897
12898         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
12899         S_ISLNK.
12900         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
12901         mingw.
12902
12903 2006-12-22  Bruno Haible  <bruno@clisp.org>
12904
12905         * lib/copy-file.c: Include acl.h.
12906         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
12907         Close the file descriptors only after being done with copy_acl.
12908         * modules/copy-file (Depends-on): Add acl.
12909
12910 2006-12-22  Bruno Haible  <bruno@clisp.org>
12911
12912         * gnulib-tool (SED): New variable.
12913         Use $SED instead of sed everywhere.
12914
12915 2006-12-22  Bruno Haible  <bruno@clisp.org>
12916
12917         * modules/no-c++: New file.
12918         * m4/no-c++.m4: New file.
12919         * MODULES.html.sh (Support for building libraries and executables):
12920         Add no-c++.
12921
12922 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
12923
12924         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
12925         Include <limits.h>, and use its INT_MAX to rewrite the
12926         j loop so that it does not overflow 'int'.  Problem reported by
12927         Ralf Wildenhues in
12928         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
12929         Play it safe by shifting left by 1 rather than multiplying by 2,
12930         as GCC is less likely to optimize this away when the value
12931         is signed (when it assumes overflow leads to undefined behavior).
12932         Also, don't assume time_t uses two's complement.
12933
12934 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12935
12936         * MODULES.html.sh: New module wctype.
12937         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
12938         * lib/fnmatch.c: Don't bother to include <wchar.h> before
12939         <wctype.h>, since the new wctype module should fix this.
12940         * lib/quotearg.c: Include <wctype.h> unconditionally, since
12941         the wctype module should arrange for it.
12942         * lib/regex_internal.h: Likewise.
12943         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
12944         since the wctype module should handle this now.
12945         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
12946         * modules/fnmatch (Depends-on): Add wctype.
12947         * modules/quotearg (Depends-on): Likewise.
12948         * modules/regex (Depends-on): Likewise.
12949
12950 2006-12-19  Bruno Haible  <bruno@clisp.org>
12951
12952         * lib/strdup.h [C++]: Wrap definitions in extern "C".
12953         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
12954
12955 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12956
12957         * modules/savewd (Depends-on): Fix dependency on fcntl.
12958
12959 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
12960
12961         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
12962         conforms to C99, rather than relying on the user's environment
12963         setting of STDINT_H.
12964
12965 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
12966         and Eric Blake  <ebb9@byu.net>
12967
12968         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
12969         This is more consistent with the other defines here.
12970         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
12971         Port to z/OS.  Problem reported by Paul Gilmartin.
12972         Change local vars to use gl_ prefix rather than ac_.
12973         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
12974         with other defines.
12975         * modules/double-slash-root: New module.
12976         * modules/dirname (Files): Remove m4/double-slash-root.m4.
12977         (Depends-on): Add double-slash-root.
12978         * MODULES.html.sh (File system functions): Mention new module.
12979
12980 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
12981
12982         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
12983         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
12984         This is for the benefit of gzip, which doesn't do i18n.
12985
12986 2006-12-12  Jim Meyering  <jim@meyering.net>
12987
12988         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
12989         Reported by Andreas Schwab <schwab@suse.de>.
12990
12991 2006-12-12  Bruno Haible  <bruno@clisp.org>
12992
12993         Merge these changes.
12994         2006-09-05  Bruno Haible  <bruno@clisp.org>
12995         * lib/iconvme.c (iconv_string): No need to save and restore errno when
12996         iconv_alloc succeeded.
12997         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
12998         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
12999         test for " && dest " at the end - dest is always != NULL there. Call
13000         iconv with 4xNULL arguments initially, to reset the state. Call iconv
13001         with 2xNULL arguments, also to flush the state storage. Handle the
13002         IRIX iconv behaviour. Realloc the final result, to throw away unused
13003         memory.
13004
13005 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
13006
13007         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
13008         and fchmodat unconditionally, since glibc 2.4 has them.
13009         Problem reported by Arkadiusz Miskiewicz.
13010
13011 2006-12-10  Bruno Haible  <bruno@clisp.org>
13012
13013         * gnulib-tool (func_import): Show the include files only for those
13014         modules that are copied and specified.
13015         Reported by Karl Berry.
13016
13017 2006-12-08  Jim Meyering  <jim@meyering.net>
13018
13019         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
13020         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
13021
13022         * build-aux/announce-gen: Add two new options, both optional:
13023         --bootstrap-tools=TOOL_LIST
13024               a comma-separated list of tools, e.g.,
13025               autoconf,automake,bison,gnulib
13026         --gnulib-snapshot-date=DATE
13027               if gnulib is in the bootstrap tool list,
13028               then report this as the snapshot date.
13029               If not specified, use the current date/time.
13030               If you specify a date here, be sure it's UTC.
13031
13032 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13033
13034         * tests/test-argp-2.sh: Fix test to match actual output.
13035         (func_compare): Fix sed script to be portable.
13036
13037 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
13038
13039         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
13040         workaround for this case.  It is not autoconfigured now; offhand
13041         it's hard to see how to autoconfigure it.
13042
13043 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
13044
13045         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
13046         a directory that is about to be chowned.  Such a directory's
13047         initial file permissions should permit the owner only and this
13048         should not be changed until after the chown, since the group and
13049         other bits would be incorrect if they granted permission before
13050         the chown.
13051
13052         Fix porting problem for iswctype reported by Georg Schwarz in:
13053         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
13054         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
13055         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
13056         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
13057         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
13058
13059 2006-12-03  Jim Meyering  <jim@meyering.net>
13060
13061         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
13062         p->fts_statp may not yet be defined.
13063         (fts_read): Instead, set it in the caller, once p->fts_statp is
13064         sure to be defined, and corresponds to a top-level directory.
13065         This bug made du -x fail.  Here's the coreutils test case:
13066         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
13067         Reported by Mike Frysinger.
13068
13069 2006-12-01  Jim Meyering  <jim@meyering.net>
13070
13071         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
13072         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
13073         Reported by Simon Josefsson.
13074
13075 2006-11-30  Jim Meyering  <jim@meyering.net>
13076
13077         * m4/warning.m4: Use the all-permissive copyright notice
13078         recommended by RMS (rather than LGPL).
13079         * m4/vararrays.m4: Likewise.
13080         * m4/flexmember.m4: Likewise.
13081
13082 2006-11-29  Bruno Haible  <bruno@clisp.org>
13083
13084         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
13085         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
13086         using +=.
13087         Reported by Simon Josefsson <simon@josefsson.org>.
13088
13089 2006-11-28  James Youngman <jay@gnu.org>
13090
13091         * README: Advise users that they might find the bug-gnulib@gnu.org
13092         and autotools-announce@gnu.org mailing lists useful.
13093
13094 2006-11-28  Bruno Haible  <bruno@clisp.org>
13095
13096         * m4/ptrdiff_max.m4: Remove file.
13097
13098 2006-11-21  Bruno Haible  <bruno@clisp.org>
13099
13100         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
13101         _AC_COMPUTE_INT.
13102         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
13103         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
13104         _AC_COMPUTE_INT.
13105         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
13106         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
13107         _AC_COMPUTE_INT.
13108         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
13109
13110 2006-11-28  Jim Meyering  <jim@meyering.net>
13111
13112         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
13113         warning from "gcc -Wshadow" about shadowing the builtin.
13114
13115 2006-11-27  Bruno Haible  <bruno@clisp.org>
13116
13117         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
13118         _AC_COMPUTE_INT.
13119         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
13120
13121 2006-11-27  Bruno Haible  <bruno@clisp.org>
13122             Paul Eggert  <eggert@cs.ucla.edu>
13123
13124         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
13125
13126 2006-11-26  Bruno Haible  <bruno@clisp.org>
13127
13128         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
13129         noinst_LTLIBRARIES.
13130
13131 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
13132             Bruno Haible  <bruno@clisp.org>
13133
13134         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
13135         if compiling with "gcc -ansi".
13136
13137 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
13138
13139         Fix some incompatibilities with gcc -ansi -pedantic.
13140         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
13141         if compiling pedantically with GCC, unless it's C99 or later.
13142         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
13143         it mishandles gcc -ansi -pedantic as well.
13144         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
13145         if gcc -pedantic.
13146         * lib/regexec.c (check_node_accept_bytes): Don't use auto
13147         initializers for struct if -pedantic, unless it's C99 or later.
13148
13149 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
13150
13151         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
13152         Don't close an fd more than once. Identical atimes indicate
13153         success, not failure.
13154
13155 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
13156
13157         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
13158
13159 2006-11-23  Jim Meyering  <jim@meyering.net>
13160
13161         * build-aux/announce-gen: New file.  From coreutils.
13162
13163 2006-11-22  Jim Meyering  <jim@meyering.net>
13164
13165         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
13166         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
13167         (fts_read): Use a temporary to narrow the overused st_size member
13168         before using it in a switch statement.  Reported by Matthew Woehlke.
13169
13170         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
13171         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
13172
13173 2006-11-20  Bruno Haible  <bruno@clisp.org>
13174
13175         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
13176         changequote instead of pairs of brackets.
13177         Reported by Andreas Schwab <schwab@suse.de>.
13178
13179 2006-11-21  Jim Meyering  <jim@meyering.net>
13180
13181         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
13182         so as to remain compatible with older compilers.
13183         Patch from Michael Deutschmann.
13184
13185 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13186
13187         * MODULES.html.sh (File system functions): Add openat.
13188
13189         * lib/openat.h (rpl_fstatat): New macro, if
13190         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
13191         (fstatat): Define to rpl_fstatat under the same conditions,
13192         unless COMPILING_FSTATAT.
13193         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
13194         seems to have the bug.
13195         * lib/fstatat.c: New file.
13196         * modules/openat (Files): Add it.
13197
13198 2006-11-20  Bruno Haible  <bruno@clisp.org>
13199
13200         * Makefile: New file.
13201
13202 2006-11-20  Jim Meyering  <jim@meyering.net>
13203
13204         The beginnings of syntax-related checks for gnulib.
13205         * lib/Makefile: New file.
13206         * lib/t-idcache: New script.  Ensure that the two halves of
13207         idcache.c stay in sync.
13208
13209         * lib/idcache.c: Adjust comments in user- and group- portions to
13210         be more accurate, and to be consistent with one another.
13211
13212 2006-11-20  Jim Meyering  <jim@meyering.net>
13213
13214         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
13215         continue using the flexible array member (thus, this module performs
13216         half as many malloc calls), with the addition that...
13217         (getgroup, getuser): Consistently record a non-match via an empty
13218         "name" string, and map an empty string match to a NULL return value.
13219         * modules/idcache (Depends-on): Re-add flexmember.
13220
13221         * lib/idcache.c (getuser): Remove all uses of the register keyword.
13222         (getuidbyname, getgroup, getgidbyname): Likewise.
13223
13224         Use cleaner syntax: NULL rather than 0.
13225         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
13226
13227 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13228
13229         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
13230         It mishandled the case where the group was missing.
13231         Problem reported by Greg Schafer.
13232         * modules/idcache: Likewise.
13233
13234 2006-11-18  Jim Meyering  <jim@meyering.net>
13235
13236         * check-module (%exempt_header): Add exception for some
13237         conditionally-included headers.
13238
13239         * modules/i-ring (Depends-on): Add verify.
13240         (License): Change to LGPL.
13241
13242 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
13243
13244         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
13245         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
13246         and inttostr.h.  Use snprintf rather than uinttostr, so that
13247         LGPLed code doesn't depend on GPLed.
13248
13249 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
13250
13251         * modules/inline (License): Change from GPL to LGPL.
13252
13253 2006-11-17  Jim Meyering  <jim@meyering.net>
13254
13255         * modules/d-type (License): Switch to LGPL.
13256
13257 2006-11-15  Bruno Haible  <bruno@clisp.org>
13258
13259         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
13260
13261 2006-11-15  Eric Blake  <ebb9@byu.net>
13262
13263         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
13264         the module dependency.
13265
13266 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
13267             Bruno Haible  <bruno@clisp.org>
13268
13269         * gnulib-tool (func_create_testdir): Add license consistency check.
13270
13271 2006-11-15  Eric Blake  <ebb9@byu.net>
13272
13273         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
13274         random "(cached)" in configure output.
13275
13276 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13277
13278         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
13279         test for conforming inttypes.h is both announced and cached.
13280
13281         * MODULES.html.sh (seen_modules, seen_files): New variables.
13282         (func_module): Rewrite to use a few less gnulib-tool and sed
13283         invocations.  Avoid a couple of quadratic algorithms for ...
13284         (missed_modules, missed_files): ... these, with ...
13285         (func_append, func_tmpdir): ... these new functions, from
13286         gnulib-tool.  Analogously, install traps for cleanup.
13287
13288         * tests/test-gc.c (main): Remove unused variables.
13289         * tests/test-read-file.c: Include stdlib.h, for 'free'.
13290
13291 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
13292
13293         * modules/inttostr (License): Change to LGPL.
13294
13295 2006-11-14  Eric Blake  <ebb9@byu.net>
13296
13297         * modules/tempname (License): Change to LGPL.
13298
13299 2006-11-14  Eric Blake  <ebb9@byu.net>
13300
13301         * doc/functions.texi (Function Portability): *printf functions on
13302         Cygwin now understand all POSIX size specifiers.
13303
13304 2006-11-14  Bruno Haible  <bruno@clisp.org>
13305
13306         * modules/c-ctype (License): Change to LGPL.
13307
13308 2006-11-12  Bruno Haible  <bruno@clisp.org>
13309
13310         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
13311         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
13312         for GNOME libraries, for which the include files are installed in
13313         subdirectories of $prefix/include.
13314
13315 2006-11-12  Bruno Haible  <bruno@clisp.org>
13316
13317         * m4/lib-link.m4: Require at least autoconf-2.54.
13318         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
13319         name to underscores for the --with option.
13320
13321 2006-11-13  Bruno Haible  <bruno@clisp.org>
13322
13323         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
13324         the tests directory.
13325         Reported by Ralf Wildenhues.
13326
13327 2006-11-13  Bruno Haible  <bruno@clisp.org>
13328
13329         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
13330         (func_emit_initmacro_end): Undo the override here.
13331         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
13332         Works around the famous automake error in coreutils.
13333
13334 2006-11-13  Eric Blake  <ebb9@byu.net>
13335
13336         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
13337         element, not its node.
13338
13339 2006-11-12  Bruno Haible  <bruno@clisp.org>
13340
13341         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
13342         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
13343
13344 2006-11-12  Bruno Haible  <bruno@clisp.org>
13345
13346         * gnulib-tool: New option --local-symlink.
13347         (func_usage): Document it.
13348         (lsymbolic): New variable.
13349         (func_import, func_create_testdir): If --symlink was not specified,
13350         test whether --local-symlink was specified and the file comes from
13351         the local_gnulib_dir.
13352
13353 2006-11-12  Bruno Haible  <bruno@clisp.org>
13354
13355         * gnulib-tool (func_ln): New function.
13356         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
13357
13358 2006-11-12  Bruno Haible  <bruno@clisp.org>
13359
13360         Finish support for source files in subdirectories.
13361         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
13362         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
13363         AUTOMAKE_OPTIONS.
13364         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
13365
13366 2006-11-12  Bruno Haible  <bruno@clisp.org>
13367
13368         * gnulib-tool (func_get_automake_snippet): Synthesize also an
13369         EXTRA_lib_SOURCES augmentation.
13370         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
13371
13372 2006-11-12  Jim Meyering  <jim@meyering.net>
13373
13374         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
13375         file descriptors.  This also averts a failure on systems with
13376         native openat support when a traversed directory lacks "x" access.
13377         * lib/fts_.h: Include "i-ring.h"
13378         (struct FTS) [fts_fd_ring]: New member.
13379         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
13380         (FCHDIR): Add parentheses.
13381         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
13382         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
13383         When descending, rather than simply closing the previous
13384         fts_cwd_fd value, push that file descriptor onto the ring.
13385         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
13386         (fts_open): Initialize the new fd_ring member.
13387         (fts_close): Clear the ring.
13388         (fts_safe_changedir): When possible, use our new fd_ring to skip
13389         the diropen and fstat and dev/ino comparison that would normally
13390         accompany a virtual `chdir ("..")'.
13391
13392         * modules/fts (Depends-on): Add i-ring.
13393         * modules/i-ring: New module.
13394         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
13395         * m4/i-ring.m4: New file.
13396
13397 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13398
13399         * gnulib-tool (func_create_testdir): Fix replacement of
13400         `build-aux' in configure.ac.  Run autotools in gltests
13401         subdirectory.
13402         (func_create_testdir, func_create_megatestdir, test): There is
13403         no need for '--force' in most autotool invocations in a new
13404         tree.  Actually fail the whole test if any of the tools, or the
13405         configure or make stages fail.
13406
13407         Sync from Automake.
13408         * build-aux/gnupload: Revert last change.  Add pointer to upload
13409         instructions of the GNU Maintenance Instructions.
13410         Suggestion by Karl Berry.
13411
13412 2006-11-10  Jim Meyering  <jim@meyering.net>
13413
13414         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
13415
13416 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
13417
13418         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
13419         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
13420         (bind_textdomain_codeset) [! ENABLE_NLS]:
13421         Evaluate all the arguments.  That way, callers get compatible behavior
13422         if the arguments have side effects.  Also, it avoids some GCC
13423         diagnostics in some cases; Joel E. Denny reported problems when Bison
13424         was configured with --enable-gcc-warnigs.
13425
13426 2006-11-10  Jim Meyering  <jim@meyering.net>
13427
13428         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
13429         relevant options in CFLAGS (like -O, -fno-inline) are taken into
13430         account.
13431
13432 2006-11-10  Jim Meyering  <jim@meyering.net>
13433
13434         * modules/inline: New file/module.
13435         * modules/xalloc (Files): Remove m4/inline.m4.
13436         (Depends-on): Add inline, instead.
13437         * modules/oset: Likewise.
13438         * modules/list: Likewise.
13439
13440 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
13441
13442         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
13443         Problem reported by Matthew Woehlke.
13444
13445 2006-11-09  Bruno Haible  <bruno@clisp.org>
13446
13447         * lib/tempname.c (gen_tempname): Remove variant that invokes
13448         __gen_tempname.
13449         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
13450         __gen_tempname.
13451
13452 2006-11-08  Bruno Haible  <bruno@clisp.org>
13453
13454         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
13455         to 'yes' instead of 'cross-compiling'.
13456
13457 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
13458
13459         * lib/quotearg.h (quotearg_free): New decl.
13460         * lib/quotearg.c (quotearg_free): New function.
13461         (slot0, nslots, slotvec0, slotvec):
13462         Now file-scope so that quotearg_free can get at them.
13463
13464 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13465
13466         Sync from Automake.
13467         * build-aux/gnupload: Add missing 'gnu' to example URL.
13468         Report by Karl Berry.
13469
13470 2006-11-08  Bruno Haible  <bruno@clisp.org>
13471
13472         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
13473         Suggested by Paul Eggert.
13474
13475 2006-11-08  Jim Meyering  <jim@meyering.net>
13476
13477         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
13478         It's already included if !_LIBC.
13479         (fts_safe_changedir): Add a comment.
13480
13481 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
13482
13483         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
13484         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
13485         Matthew Woehlke.
13486
13487         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
13488         definitions up, to avoid colliding with change below.
13489         (static_inline) [HAVE_INLINE]: New macro.
13490         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
13491         Provide extern decls when !HAVE_INLINE.  Do not define unless
13492         static_inline is defined, either by us or by xmalloc.c.  Use
13493         static_inline rather than static inline.
13494         (XCALLOC): Optimize sizeof(T) = 1 case.
13495         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
13496
13497 2006-11-07  Bruno Haible  <bruno@clisp.org>
13498
13499         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
13500         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
13501         AC_C_INLINE.
13502         * modules/xalloc (Files): Add m4/inline.m4.
13503
13504 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13505
13506         * README: Fix typo.
13507         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
13508         (Miscellanous Notes): ...from this.
13509
13510 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
13511
13512         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
13513         Mention that offsetof should be used instead of sizeof.
13514         From Bruno Haible.
13515
13516 2006-11-07  Bruno Haible  <bruno@clisp.org>
13517
13518         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
13519
13520 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
13521
13522         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
13523         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
13524         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
13525         (gl_tree_add_before, gl_tree_add_after):
13526         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
13527         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
13528         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
13529         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
13530         (gl_linked_add_after, gl_linked_add_at): Likewise.
13531         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
13532         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
13533         (gl_tree_add_before, gl_tree_add_after): Likewise.
13534         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
13535         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
13536         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
13537
13538 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13539
13540         * lib/gl_oset.h: Use C comment style, not C++ comment style.
13541
13542 2006-11-06  Bruno Haible  <bruno@clisp.org>
13543
13544         * m4/inline.m4: New file.
13545         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
13546         * modules/list (Files): Add m4/inline.m4.
13547         * modules/oset (Files): Likewise.
13548
13549 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
13550
13551         * lib/idcache.c: Include <stddef.h>, for offsetof.
13552         (struct userid.name): Change from char * to a flexible array member.
13553         All uses changed.
13554         * modules/idcache (Depends-on): Add flexmember.
13555
13556         * MODULES.html.sh (Core language properties): New module flexmember.
13557         * modules/flexmember, m4/flexmember.m4: New files.
13558
13559         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
13560         inline functions that are identical with the old xnmalloc_inline,
13561         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
13562         that we can avoid some unnecessary integer multiplications and
13563         divisions in the common case where the element size is known at
13564         compile time.
13565         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
13566         needed.
13567         (xnboundedmalloc): Remove.
13568         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
13569         arguments, for consistency with rest of this header.
13570         (xcharalloc): Rewrite using XNMALLOC.
13571         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
13572         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
13573         versions have been moved to lib/xalloc.h and renamed to be the
13574         non-*_inline versions.
13575         (xmalloc, xrealloc): Implement without reference to the xnmalloc
13576         and xnrealloc functions, since those functions are now inline and
13577         now call us.
13578         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
13579         renaming described above.
13580         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
13581         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
13582         captures the dependency in AC_C_INLINE.
13583
13584         New module canonicalize-lgpl, proposed by Charles Wilson in
13585         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
13586         with a few small changes afterwards.
13587         * MODULES.html.sh (File system functions): New module
13588         canonicalize-lgpl.
13589         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
13590         and canonicalize_file_name.
13591         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
13592         * modules/canonicalize-lgpl: New files.
13593
13594 2006-11-05  Bruno Haible  <bruno@clisp.org>
13595
13596         * gnulib-tool (func_import, func_create_testdir): Create directories
13597         also for files in subdirectories of lib/.
13598
13599 2006-11-05  Bruno Haible  <bruno@clisp.org>
13600
13601         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
13602         ANSI C compliant.
13603
13604 2006-11-03  Bruno Haible  <bruno@clisp.org>
13605
13606         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
13607         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
13608         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
13609         (xnboundedmalloc): New inline function.
13610         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
13611         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
13612         xmalloc.
13613         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
13614         xmalloc.
13615         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
13616         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
13617         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
13618         xmalloc.
13619         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
13620         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
13621         xmalloc.
13622         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
13623         gl_tree_add_after): Use XMALLOC instead of xmalloc.
13624         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
13625         xmalloc.
13626         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
13627         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
13628         gl_tree_add_after): Use XMALLOC instead of xmalloc.
13629         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
13630         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
13631         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
13632         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
13633
13634 2006-11-03  Bruno Haible  <bruno@clisp.org>
13635
13636         * lib/c-ctype.h [C++]: Define functions without name mangling.
13637         * lib/fwriteerror.h [C++]: Likewise.
13638         * lib/gcd.h [C++]: Likewise.
13639         * lib/linebreak.h [C++]: Likewise.
13640
13641 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
13642
13643         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
13644         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
13645         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
13646         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
13647         Check for functions and headers just once.
13648         Check for declaration of canonicalize_file_name.
13649         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
13650
13651 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
13652
13653         * gnulib-tool (func_import): Fix typo in actioncmd.
13654
13655 2006-11-02  Bruno Haible  <bruno@clisp.org>
13656
13657         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
13658         newline sequence in the Makefile.am snippet as a space, like "make"
13659         does.
13660         Reported by Roger Persson <perrog@gmail.com>.
13661
13662 2006-11-01  Bruno Haible  <bruno@clisp.org>
13663
13664         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
13665         already declared in <string.h>.
13666         * lib/strcase.h (strncasecmp): Don't declare it if yes.
13667
13668 2006-11-01  Bruno Haible  <bruno@clisp.org>
13669
13670         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
13671         * lib/strcase.h: Include <string.h>.
13672         (strcasecmp): Define to rpl_strcasecmp here.
13673
13674 2006-11-01  Bruno Haible  <bruno@clisp.org>
13675
13676         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
13677
13678 2006-11-01  Eric Blake  <ebb9@byu.net>
13679
13680         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
13681
13682         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
13683
13684 2006-10-29  Bruno Haible  <bruno@clisp.org>
13685
13686         Make it compile in C++ mode.
13687         * lib/full-write.c (full_rw): Add a cast.
13688
13689 2006-11-01  Bruno Haible  <bruno@clisp.org>
13690
13691         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
13692         be POSIX compliant.
13693         Reported by Roger Persson <perrog@gmail.com>.
13694
13695 2006-11-01  Eric Blake  <ebb9@byu.net>
13696
13697         * lib/getopt_.h: Fix comments.
13698
13699 2006-10-31  Eric Blake  <ebb9@byu.net>
13700
13701         * modules/tmpdir (Depends-on): Add sys_stat.
13702         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
13703         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
13704         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
13705         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
13706         tempname.
13707
13708 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
13709
13710         Avoid some C++ diagnostics reported by Bruno Haible.
13711         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
13712         xmalloc.
13713         (quotearg_alloc): Use xcharalloc rather than xmalloc.
13714         (struct slotvec): Move to top level.
13715         (quotearg_n_options): Rewrite to avoid xmalloc.
13716         * lib/xalloc.h (xcharalloc): New function.
13717         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
13718         [defined __cplusplus]: Add function template that provides result
13719         type propagation.  This part of the change is from Bruno Haible.
13720
13721 2006-10-29  Bruno Haible  <bruno@clisp.org>
13722
13723         Make it compile in C++ mode.
13724         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
13725         * lib/strnlen1.c (strnlen1): Cast memchr result.
13726         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
13727         * lib/clean-temp.c (string_equals, string_hash): Add casts.
13728         (create_temp_dir): Rename local variable 'template'.
13729         (compile_csharp_using_sscli): Add cast.
13730         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
13731         * lib/findprog.c (find_in_path): Likewise.
13732         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
13733         * lib/wait-process.c (register_slave_subprocess): Likewise.
13734
13735 2006-10-22  Bruno Haible  <bruno@clisp.org>
13736
13737         * modules/tsearch: New file.
13738         * lib/tsearch.h: New file.
13739         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
13740         * m4/tsearch.m4: New file.
13741         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
13742
13743 2006-10-29  Eric Blake  <ebb9@byu.net>
13744
13745         * lib/arcfour.c: Assume config.h.
13746         * lib/arctwo.c: Likewise.
13747         * lib/base64.c: Likewise.
13748         * lib/check-version.c: Likewise.
13749         * lib/crc.c: Likewise.
13750         * lib/des.c: Likewise.
13751         * lib/gc-gnulib.c: Likewise.
13752         * lib/gc-libgcrypt.c: Likewise.
13753         * lib/gc-pbkdf2-sha1.c: Likewise.
13754         * lib/getaddrinfo.c: Likewise.
13755         * lib/getdelim.c: Likewise.
13756         * lib/getline.c: Likewise.
13757         * lib/hmac-md5.c: Likewise.
13758         * lib/hmac-sha1.c: Likewise.
13759         * lib/iconvme.c: Likewise.
13760         * lib/md2.c: Likewise.
13761         * lib/md4.c: Likewise.
13762         * lib/memxor.c: Likewise.
13763         * lib/read-file.c: Likewise.
13764         * lib/readline.c: Likewise.
13765         * lib/rijndael-alg-fst.c: Likewise.
13766         * lib/rijndael-api-fst.c: Likewise.
13767         * lib/xgetdomainname.c: Likewise.
13768
13769 2006-10-28  Eric Blake  <ebb9@byu.net>
13770
13771         * lib/xstrndup.c: Assume config.h.
13772
13773 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
13774
13775         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
13776         stat-macros.h is now for our own macros, whereas stat_h is for
13777         macros in the <sys/stat.h> name space.
13778         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
13779         (STAT_MACROS_H): Remove.
13780         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
13781         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
13782         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
13783         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
13784         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
13785         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
13786         Move these macros to ...
13787         * lib/stat_.h: here.  Don't include stat-macros.h.
13788         * lib/canonicalize.c: Don't include stat-macros.h.
13789         * lib/chown.c: Likewise.
13790         * lib/euidaccess.c: Likewise.
13791         * lib/file-type.c: Likewise.
13792         * lib/filemode.c: Likewise.
13793         * lib/glob.c: Likewise.
13794         * lib/isapipe.c: Likewise.
13795         * lib/lchown.c: Likewise.
13796         * lib/lstat.c: Likewise.
13797         * lib/mkdir-p.c: Likewise.
13798         * lib/rmdir.c: Likewise.
13799         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
13800         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
13801         unless mkdir isn't declared, to speed up 'configure'.
13802         Always create sys/stat.h, since it's unlikely any real sys/stat.h
13803         would define all the S_* symbols.
13804         * modules/canonicalize (Depends-on):
13805         Depend on sys_stat, not stat-macros.
13806         * modules/chown: Likewise.
13807         * modules/euidaccess: Likewise.
13808         * modules/filemode: Likewise.
13809         * modules/file-type: Likewise.
13810         * modules/glob: Likewise.
13811         * modules/isapipe: Likewise.
13812         * modules/lchown: Likewise.
13813         * modules/lstat: Likewise.
13814         * modules/mkancesdirs: Likewise.
13815         * modules/rmdir: Likewise.
13816         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
13817         * modules/modechange: Likewise.
13818         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
13819         (configure.ac): Remove gl_STAT_MACROS.
13820         * modules/sys_stat (Depends-on): Remove stat-macros.
13821
13822 2006-10-27  Bruno Haible  <bruno@clisp.org>
13823
13824         * m4/signed.m4: Remove file.
13825         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
13826         invocation.
13827         * modules/vasnprintf (Files): Remove m4/signed.m4.
13828
13829 2006-10-27  Bruno Haible  <bruno@clisp.org>
13830
13831         Update to GNU gettext 0.16.
13832         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
13833         m4/inttypes-h.m4, m4/signed.m4.
13834         * m4/gettext.m4: Update to GNU gettext 0.16.
13835         * m4/intl.m4: New file, from GNU gettext.
13836         * m4/intldir.m4: New file, from GNU gettext.
13837         * config/srclist.txt: Update
13838
13839 2006-10-27  Eric Blake  <ebb9@byu.net>
13840
13841         * MODULES.html.sh: Document tempname.
13842         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
13843         dependencies.
13844         (Files): Move lib/tempname.c...
13845         * modules/tempname: ...to this new module.
13846         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
13847         (gl_PREREQ_TEMPNAME): Move...
13848         * m4/tempname.m4: ...to this new file.
13849         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
13850         * modules/sys_stat (Depends-on): Add stat-macros.
13851         * lib/stat_.h (includes): Pick up stat macros.
13852         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
13853         if stat macros are broken.
13854         * lib/tempname.c (includes): No need to include "stat-macros.h".
13855         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
13856         (direxists, __path_search) [!_LIBC]: Don't compile these in
13857         gnulib; the tmpdir module covers that.
13858         * lib/tempname.h: New file.
13859
13860 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
13861
13862         * COPYING: Explain how gnulib-tool converts licence headers.
13863         Almost all wording by Eric Blake.
13864
13865 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
13866
13867         * lib/mbchar.h (is_basic_table): Make read-only.
13868         * lib/mbchar.c (is_basic_table): Likewise.
13869         Reported by John Darrington.
13870
13871 2006-10-25  Bruno Haible  <bruno@clisp.org>
13872
13873         * lib/progname.h (set_program_name): Undefine before defining.
13874
13875 2006-10-25  Bruno Haible  <bruno@clisp.org>
13876
13877         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
13878         false for non-gcc C++ compilers.
13879         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
13880
13881 2006-10-24  Bruno Haible  <bruno@clisp.org>
13882
13883         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
13884         iconv implementations like Irix iconv.
13885
13886 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
13887
13888         * modules/vararrays: New file.
13889         * m4/vararrays.m4: New file, taken from diffutils.
13890         * MODULES.html.sh: New module vararrays.
13891
13892 2006-10-24  Karl Berry  <karl@gnu.org>
13893
13894         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
13895         Don't call GNU Unix.
13896
13897 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13898
13899         * users.txt: Add Libtool.
13900
13901         Sync from Libtool:
13902
13903         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
13904
13905         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
13906         to gnulib's policy of including config.h unconditionally.
13907
13908 2006-10-24  Bruno Haible  <bruno@clisp.org>
13909
13910         * modules/wcwidth (Files): Add m4/wint_t.m4.
13911         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
13912         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
13913
13914 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
13915
13916         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
13917         to pacify GCC with some -W flags enabled.  Problem reported by
13918         Bruno Haible.
13919
13920 2006-10-24  Jim Meyering  <jim@meyering.net>
13921
13922         * MODULES.html.sh: Remove uinttostr.  It's not a module.
13923         Reported by Karl Berry.
13924
13925 2006-10-23  Bruno Haible  <bruno@clisp.org>
13926
13927         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
13928
13929 2006-10-24  Bruno Haible  <bruno@clisp.org>
13930
13931         * lib/gl_list.h: Use C comment style, not C++ comment style.
13932
13933 2006-10-23  Eric Blake  <ebb9@byu.net>
13934
13935         * lib/getaddrinfo.c (includes): Add missing include.
13936
13937 2006-10-23  Bruno Haible  <bruno@clisp.org>
13938             Paul Eggert  <eggert@cs.ucla.edu>
13939
13940         Ability to rename obstack_free.
13941         * lib/obstack.h (__obstack_free): New macro. Declare instead of
13942         obstack_free.
13943         (obstack_free): Invoke the __obstack_free macro.
13944         * lib/obstack.c (obstack_free): Use __obstack_free macro.
13945
13946 2006-10-23  Bruno Haible  <bruno@clisp.org>
13947             Paul Eggert  <eggert@cs.ucla.edu>
13948
13949         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
13950         __argc, __argv from the declaration. (They are defined as macros on
13951         mingw.)
13952
13953 2006-10-22  Bruno Haible  <bruno@clisp.org>
13954
13955         * doc/gnulib-intro.texi: New file.
13956         * doc/gnulib.texi: Include it.
13957
13958 2006-10-21  Bruno Haible  <bruno@clisp.org>
13959
13960         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
13961         "Introduction", "Miscellanous Notes", "Particular Modules".
13962
13963 2006-10-21  Bruno Haible  <bruno@clisp.org>
13964
13965         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13966         Change mostlyclean-local rule to avoid sh syntax error from bash
13967         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
13968
13969 2006-10-23  Jim Meyering  <jim@meyering.net>
13970
13971         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
13972         in place of snprintf.
13973
13974         * modules/inttostr (Files): Add lib/uinttostr.c.
13975         * lib/uinttostr.c (inttostr): New file/function.
13976         * lib/inttostr.h (uinttostr): Declare.
13977         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
13978         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
13979         Add uinttostr.
13980         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
13981
13982 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
13983
13984         * lib/canonicalize.c (ELOOP): Define if not already defined.
13985         Problem reported by Bruno Haible in
13986         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
13987
13988 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
13989
13990         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
13991         Problem reported by Perry Smith and Ville Laurikari.
13992
13993         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
13994         uses.
13995
13996 2006-10-19  Bruno Haible  <bruno@clisp.org>
13997
13998         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
13999         for mingw.
14000
14001 2006-10-19  Bruno Haible  <bruno@clisp.org>
14002
14003         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
14004         Needed for mingw.
14005
14006 2006-10-19  Bruno Haible  <bruno@clisp.org>
14007
14008         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
14009
14010 2006-10-19  Bruno Haible  <bruno@clisp.org>
14011
14012         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
14013         it.
14014
14015 2006-10-19  Bruno Haible  <bruno@clisp.org>
14016
14017         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
14018         invocation.
14019
14020 2006-10-19  Bruno Haible  <bruno@clisp.org>
14021
14022         * gnulib-tool (func_create_testdir): Don't include ftruncate and
14023         mountlist by default.
14024
14025 2006-10-16  Bruno Haible  <bruno@clisp.org>
14026
14027         * lib/c-strstr.c: Include c-strstr.h.
14028
14029 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
14030
14031         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
14032         in a slash.
14033
14034 2006-10-18  Bruno Haible  <bruno@clisp.org>
14035
14036         * lib/lock.h [C++]: Wrap definitions in extern "C".
14037
14038 2006-10-18  Bruno Haible  <bruno@clisp.org>
14039
14040         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
14041         gl_LIBOBJS list.
14042
14043 2006-10-18  Bruno Haible  <bruno@clisp.org>
14044
14045         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
14046
14047 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
14048
14049         * lib/xstrtol.h: Include gettext.h.
14050         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
14051         Problem reported by Eric Blake.
14052         * modules/xstrtol (Depends-on): Add gettext-h.
14053
14054 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
14055
14056         * lib/strftime.c (advance): New macro.
14057         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
14058         incomplete type, so you can't add 0 to it.  Problem and patch
14059         reported by Eelco Dolstra for dietlibc.
14060
14061 2006-10-18  Jim Meyering  <jim@meyering.net>
14062
14063         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
14064         type for a local, and rename it: s/up/user_proc/.
14065
14066 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
14067
14068         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
14069         READ_UTMP_USER_PROCESS.
14070         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
14071
14072 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
14073
14074         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
14075         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
14076
14077 2006-10-17  Eric Blake  <ebb9@byu.net>
14078
14079         * lib/sigprocmask.c (sigprocmask): Fix typo.
14080
14081         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
14082
14083         * modules/clean-temp (Makefile.am): Don't add to make output...
14084         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
14085         config.h.
14086
14087 2006-10-17  Bruno Haible  <bruno@clisp.org>
14088
14089         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
14090         differently if DEFAULT_TEXT_DOMAIN is set.
14091
14092 2006-10-16  Bruno Haible  <bruno@clisp.org>
14093
14094         * lib/clean-temp.c: Include fwriteerror.h.
14095
14096 2006-10-16  Bruno Haible  <bruno@clisp.org>
14097
14098         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
14099
14100 2006-10-16  Bruno Haible  <bruno@clisp.org>
14101
14102         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
14103         * lib/sigprocmask.h: Include <sys/types.h>.
14104         (sigset_t): Use the system's definition if present.
14105
14106 2006-10-17  Eric Blake  <ebb9@byu.net>
14107
14108         * lib/xvasprintf.c (includes): Assume config.h.
14109         * lib/xasprintf.c (includes): Likewise.
14110
14111 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
14112
14113         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
14114         at least as wide as intmax_t.
14115
14116 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
14117
14118         (Imported from Automake.)
14119         * build-aux/gnupload: Update to version 1.1 of directive file.
14120
14121 2006-10-16  Eric Blake  <ebb9@byu.net>
14122
14123         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
14124         match Automake 1.10a.
14125
14126 2006-10-14  Bruno Haible  <bruno@clisp.org>
14127
14128         * modules/sigprocmask: New file.
14129         * lib/sigprocmask.h: New file.
14130         * lib/sigprocmask.c: New file.
14131         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
14132         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
14133         request sigprocmask.o.
14134         (gl_PREREQ_SIGPROCMASK): New macro.
14135         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
14136         (Depends-on): Add sigprocmask.
14137         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
14138         gt_SIGNALBLOCKING. Test for 'raise' only once.
14139         * lib/fatal-signal.c: Include sigprocmask.h.
14140         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
14141         unblock_fatal_signals): Define always.
14142         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
14143         sigprocmask.
14144
14145 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
14146
14147         Sync from Automake.
14148         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
14149         which incorrectly sets the mode of an existing destination
14150         directory.  In some cases the unpatched install-sh could do the
14151         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
14152         system.  We hope this is rare in practice, but it's clearly worth
14153         fixing.  Problem reported by Alex Unleashed in
14154         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
14155         Also, don't bother to check for -m bugs unless we're using -m;
14156         suggested by Stepan Kasal.
14157
14158 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14159
14160         Sync from Automake.
14161         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
14162         `-c' flag, so they appear at the same position as in %FASTDEP%
14163         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
14164         which ignores unknown options only after the first non-option.
14165         Bug report against M4 by Nelson H. F. Beebe.
14166
14167 2006-10-13  Jim Meyering  <jim@meyering.net>
14168
14169         Fix a bug in yesterday's change.
14170         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
14171         p->fts_statp->st_dev would be used uninitialized.
14172         Ensures that we always call fts_stat on the very first entry.
14173         Miklos Szeredi reported that find -xdev stopped working.
14174
14175 2006-10-12  Bruno Haible  <bruno@clisp.org>
14176
14177         * gnulib-tool (func_get_automake_snippet): Append an automatically
14178         computed EXTRA_DIST augmentation.
14179         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
14180         * modules/alloca-opt (Makefile.am): Likewise.
14181         * modules/allocsa (Makefile.am): Likewise.
14182         * modules/arcfour (Makefile.am): Likewise.
14183         * modules/arctwo (Makefile.am): Likewise.
14184         * modules/argmatch (Makefile.am): Likewise.
14185         * modules/argz (Makefile.am): Likewise.
14186         * modules/atexit (Makefile.am): Likewise.
14187         * modules/backupfile (Makefile.am): Likewise.
14188         * modules/byteswap (Makefile.am): Likewise.
14189         * modules/c-strtod (Makefile.am): Likewise.
14190         * modules/c-strtold (Makefile.am): Likewise.
14191         * modules/calloc (Makefile.am): Likewise.
14192         * modules/canon-host (Makefile.am): Likewise.
14193         * modules/canonicalize (Makefile.am): Likewise.
14194         * modules/chdir-long (Makefile.am): Likewise.
14195         * modules/chdir-safer (Makefile.am): Likewise.
14196         * modules/check-version (Makefile.am): Likewise.
14197         * modules/chown (Makefile.am): Likewise.
14198         * modules/cloexec (Makefile.am): Likewise.
14199         * modules/close-stream (Makefile.am): Likewise.
14200         * modules/closeout (Makefile.am): Likewise.
14201         * modules/crc (Makefile.am): Likewise.
14202         * modules/csharpexec (Makefile.am): Likewise.
14203         * modules/cycle-check (Makefile.am): Likewise.
14204         * modules/des (Makefile.am): Likewise.
14205         * modules/dev-ino (Makefile.am): Likewise.
14206         * modules/dirfd (Makefile.am): Likewise.
14207         * modules/dirname (Makefile.am): Likewise.
14208         * modules/dup2 (Makefile.am): Likewise.
14209         * modules/eealloc (Makefile.am): Likewise.
14210         * modules/error (Makefile.am): Likewise.
14211         * modules/euidaccess (Makefile.am): Likewise.
14212         * modules/exclude (Makefile.am): Likewise.
14213         * modules/exitfail (Makefile.am): Likewise.
14214         * modules/fcntl-safer (Makefile.am): Likewise.
14215         * modules/fcntl (Makefile.am): Likewise.
14216         * modules/file-type (Makefile.am): Likewise.
14217         * modules/fileblocks (Makefile.am): Likewise.
14218         * modules/filemode (Makefile.am): Likewise.
14219         * modules/filenamecat (Makefile.am): Likewise.
14220         * modules/fnmatch (Makefile.am): Likewise.
14221         * modules/fopen-safer (Makefile.am): Likewise.
14222         * modules/fpending (Makefile.am): Likewise.
14223         * modules/fprintftime (Makefile.am): Likewise.
14224         * modules/free (Makefile.am): Likewise.
14225         * modules/fsusage (Makefile.am): Likewise.
14226         * modules/ftruncate (Makefile.am): Likewise.
14227         * modules/fts (Makefile.am): Likewise.
14228         * modules/gc-arcfour (Makefile.am): Likewise.
14229         * modules/gc-des (Makefile.am): Likewise.
14230         * modules/gc-hmac-md5 (Makefile.am): Likewise.
14231         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
14232         * modules/gc-md4 (Makefile.am): Likewise.
14233         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
14234         * modules/gc-sha1 (Makefile.am): Likewise.
14235         * modules/gc (Makefile.am): Likewise.
14236         * modules/getaddrinfo (Makefile.am): Likewise.
14237         * modules/getcwd (Makefile.am): Likewise.
14238         * modules/getdelim (Makefile.am): Likewise.
14239         * modules/getdomainname (Makefile.am): Likewise.
14240         * modules/getgroups (Makefile.am): Likewise.
14241         * modules/gethostname (Makefile.am): Likewise.
14242         * modules/gethrxtime (Makefile.am): Likewise.
14243         * modules/getline (Makefile.am): Likewise.
14244         * modules/getloadavg (Makefile.am): Likewise.
14245         * modules/getlogin_r (Makefile.am): Likewise.
14246         * modules/getndelim2 (Makefile.am): Likewise.
14247         * modules/getopt (Makefile.am): Likewise.
14248         * modules/getpagesize (Makefile.am): Likewise.
14249         * modules/getpass-gnu (Makefile.am): Likewise.
14250         * modules/getpass (Makefile.am): Likewise.
14251         * modules/getsubopt (Makefile.am): Likewise.
14252         * modules/gettime (Makefile.am): Likewise.
14253         * modules/gettimeofday (Makefile.am): Likewise.
14254         * modules/getugroups (Makefile.am): Likewise.
14255         * modules/getusershell (Makefile.am): Likewise.
14256         * modules/glob (Makefile.am): Likewise.
14257         * modules/group-member (Makefile.am): Likewise.
14258         * modules/hard-locale (Makefile.am): Likewise.
14259         * modules/hash (Makefile.am): Likewise.
14260         * modules/hmac-md5 (Makefile.am): Likewise.
14261         * modules/hmac-sha1 (Makefile.am): Likewise.
14262         * modules/human (Makefile.am): Likewise.
14263         * modules/idcache (Makefile.am): Likewise.
14264         * modules/imaxabs (Makefile.am): Likewise.
14265         * modules/imaxdiv (Makefile.am): Likewise.
14266         * modules/inet_ntop (Makefile.am): Likewise.
14267         * modules/inet_pton (Makefile.am): Likewise.
14268         * modules/intprops (Makefile.am): Likewise.
14269         * modules/inttostr (Makefile.am): Likewise.
14270         * modules/inttypes (Makefile.am): Likewise.
14271         * modules/isapipe (Makefile.am): Likewise.
14272         * modules/javaversion (Makefile.am): Likewise.
14273         * modules/lchmod (Makefile.am): Likewise.
14274         * modules/lchown (Makefile.am): Likewise.
14275         * modules/localcharset (Makefile.am): Likewise.
14276         * modules/long-options (Makefile.am): Likewise.
14277         * modules/lstat (Makefile.am): Likewise.
14278         * modules/malloc (Makefile.am): Likewise.
14279         * modules/mathl (Makefile.am): Likewise.
14280         * modules/mbchar (Makefile.am): Likewise.
14281         * modules/md2 (Makefile.am): Likewise.
14282         * modules/md4 (Makefile.am): Likewise.
14283         * modules/md5 (Makefile.am): Likewise.
14284         * modules/memcasecmp (Makefile.am): Likewise.
14285         * modules/memchr (Makefile.am): Likewise.
14286         * modules/memcmp (Makefile.am): Likewise.
14287         * modules/memcoll (Makefile.am): Likewise.
14288         * modules/memcpy (Makefile.am): Likewise.
14289         * modules/memmem (Makefile.am): Likewise.
14290         * modules/memmove (Makefile.am): Likewise.
14291         * modules/mempcpy (Makefile.am): Likewise.
14292         * modules/memrchr (Makefile.am): Likewise.
14293         * modules/memset (Makefile.am): Likewise.
14294         * modules/memxor (Makefile.am): Likewise.
14295         * modules/mkancesdirs (Makefile.am): Likewise.
14296         * modules/mkdir-p (Makefile.am): Likewise.
14297         * modules/mkdir (Makefile.am): Likewise.
14298         * modules/mkdtemp (Makefile.am): Likewise.
14299         * modules/mkstemp (Makefile.am): Likewise.
14300         * modules/mktime (Makefile.am): Likewise.
14301         * modules/modechange (Makefile.am): Likewise.
14302         * modules/mountlist (Makefile.am): Likewise.
14303         * modules/nanosleep (Makefile.am): Likewise.
14304         * modules/obstack (Makefile.am): Likewise.
14305         * modules/openat (Makefile.am): Likewise.
14306         * modules/pagealign_alloc (Makefile.am): Likewise.
14307         * modules/pathmax (Makefile.am): Likewise.
14308         * modules/physmem (Makefile.am): Likewise.
14309         * modules/poll (Makefile.am): Likewise.
14310         * modules/posixtm (Makefile.am): Likewise.
14311         * modules/posixver (Makefile.am): Likewise.
14312         * modules/putenv (Makefile.am): Likewise.
14313         * modules/quote (Makefile.am): Likewise.
14314         * modules/quotearg (Makefile.am): Likewise.
14315         * modules/raise (Makefile.am): Likewise.
14316         * modules/read-file (Makefile.am): Likewise.
14317         * modules/readline (Makefile.am): Likewise.
14318         * modules/readlink (Makefile.am): Likewise.
14319         * modules/readtokens (Makefile.am): Likewise.
14320         * modules/readutmp (Makefile.am): Likewise.
14321         * modules/realloc (Makefile.am): Likewise.
14322         * modules/regex (Makefile.am): Likewise.
14323         * modules/rename-dest-slash (Makefile.am): Likewise.
14324         * modules/rename (Makefile.am): Likewise.
14325         * modules/rijndael (Makefile.am): Likewise.
14326         * modules/rmdir (Makefile.am): Likewise.
14327         * modules/rpmatch (Makefile.am): Likewise.
14328         * modules/safe-read (Makefile.am): Likewise.
14329         * modules/safe-write (Makefile.am): Likewise.
14330         * modules/same-inode (Makefile.am): Likewise.
14331         * modules/same (Makefile.am): Likewise.
14332         * modules/save-cwd (Makefile.am): Likewise.
14333         * modules/savedir (Makefile.am): Likewise.
14334         * modules/setenv (Makefile.am): Likewise.
14335         * modules/settime (Makefile.am): Likewise.
14336         * modules/sha1 (Makefile.am): Likewise.
14337         * modules/sig2str (Makefile.am): Likewise.
14338         * modules/snprintf (Makefile.am): Likewise.
14339         * modules/stat-macros (Makefile.am): Likewise.
14340         * modules/stat-time (Makefile.am): Likewise.
14341         * modules/stdbool (Makefile.am): Likewise.
14342         * modules/stdint (Makefile.am): Likewise.
14343         * modules/stdlib-safer (Makefile.am): Likewise.
14344         * modules/stpcpy (Makefile.am): Likewise.
14345         * modules/stpncpy (Makefile.am): Likewise.
14346         * modules/strcase (Makefile.am): Likewise.
14347         * modules/strcasestr (Makefile.am): Likewise.
14348         * modules/strchrnul (Makefile.am): Likewise.
14349         * modules/strcspn (Makefile.am): Likewise.
14350         * modules/strdup (Makefile.am): Likewise.
14351         * modules/strerror (Makefile.am): Likewise.
14352         * modules/strftime (Makefile.am): Likewise.
14353         * modules/strndup (Makefile.am): Likewise.
14354         * modules/strnlen (Makefile.am): Likewise.
14355         * modules/strpbrk (Makefile.am): Likewise.
14356         * modules/strsep (Makefile.am): Likewise.
14357         * modules/strstr (Makefile.am): Likewise.
14358         * modules/strtod (Makefile.am): Likewise.
14359         * modules/strtoimax (Makefile.am): Likewise.
14360         * modules/strtok_r (Makefile.am): Likewise.
14361         * modules/strtol (Makefile.am): Likewise.
14362         * modules/strtoll (Makefile.am): Likewise.
14363         * modules/strtoul (Makefile.am): Likewise.
14364         * modules/strtoull (Makefile.am): Likewise.
14365         * modules/strtoumax (Makefile.am): Likewise.
14366         * modules/strverscmp (Makefile.am): Likewise.
14367         * modules/sys_socket (Makefile.am): Likewise.
14368         * modules/sys_stat (Makefile.am): Likewise.
14369         * modules/sysexits (Makefile.am): Likewise.
14370         * modules/time_r (Makefile.am): Likewise.
14371         * modules/timegm (Makefile.am): Likewise.
14372         * modules/timespec (Makefile.am): Likewise.
14373         * modules/tmpfile-safer (Makefile.am): Likewise.
14374         * modules/trim (Makefile.am): Likewise.
14375         * modules/unistd-safer (Makefile.am): Likewise.
14376         * modules/unlinkdir (Makefile.am): Likewise.
14377         * modules/unlocked-io (Makefile.am): Likewise.
14378         * modules/userspec (Makefile.am): Likewise.
14379         * modules/utime (Makefile.am): Likewise.
14380         * modules/utimecmp (Makefile.am): Likewise.
14381         * modules/utimens (Makefile.am): Likewise.
14382         * modules/vasnprintf (Makefile.am): Likewise.
14383         * modules/vasprintf (Makefile.am): Likewise.
14384         * modules/vsnprintf (Makefile.am): Likewise.
14385         * modules/xalloc (Makefile.am): Likewise.
14386         * modules/xgetcwd (Makefile.am): Likewise.
14387         * modules/xnanosleep (Makefile.am): Likewise.
14388         * modules/xreadlink (Makefile.am): Likewise.
14389         * modules/xstrtod (Makefile.am): Likewise.
14390         * modules/xstrtol (Makefile.am): Likewise.
14391         * modules/xstrtold (Makefile.am): Likewise.
14392         * modules/yesno (Makefile.am): Likewise.
14393         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
14394
14395 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
14396
14397         * modules/error (Makefile.am): Distribute files through
14398         EXTRA_DIST, not lib_SOURCES.
14399
14400 2006-10-12  Eric Blake  <ebb9@byu.net>
14401
14402         * modules/error (Makefile.am): Distribute files in /lib.
14403         * modules/obstack (Makefile.am): Likewise.
14404
14405 2006-10-12  Bruno Haible  <bruno@clisp.org>
14406
14407         * modules/acl (Makefile.am): Distribute all files in lib/ through
14408         EXTRA_DIST.
14409         * modules/arcfour (Makefile.am): Likewise.
14410         * modules/arctwo (Makefile.am): Likewise.
14411         * modules/argmatch (Makefile.am): Likewise.
14412         * modules/argz (Makefile.am): Likewise.
14413         * modules/atexit (Makefile.am): Likewise.
14414         * modules/backupfile (Makefile.am): Likewise.
14415         * modules/c-strtod (Makefile.am): Likewise.
14416         * modules/c-strtold (Makefile.am): Likewise.
14417         * modules/calloc (Makefile.am): Likewise.
14418         * modules/canon-host (Makefile.am): Likewise.
14419         * modules/canonicalize (Makefile.am): Likewise.
14420         * modules/chdir-long (Makefile.am): Likewise.
14421         * modules/chdir-safer (Makefile.am): Likewise.
14422         * modules/check-version (Makefile.am): Likewise.
14423         * modules/chown (Makefile.am): Likewise.
14424         * modules/cloexec (Makefile.am): Likewise.
14425         * modules/close-stream (Makefile.am): Likewise.
14426         * modules/closeout (Makefile.am): Likewise.
14427         * modules/crc (Makefile.am): Likewise.
14428         * modules/cycle-check (Makefile.am): Likewise.
14429         * modules/des (Makefile.am): Likewise.
14430         * modules/dirfd (Makefile.am): Likewise.
14431         * modules/dirname (Makefile.am): Likewise.
14432         * modules/dup2 (Makefile.am): Likewise.
14433         * modules/euidaccess (Makefile.am): Likewise.
14434         * modules/exclude (Makefile.am): Likewise.
14435         * modules/exitfail (Makefile.am): Likewise.
14436         * modules/fcntl-safer (Makefile.am): Likewise.
14437         * modules/file-type (Makefile.am): Likewise.
14438         * modules/fileblocks (Makefile.am): Likewise.
14439         * modules/filemode (Makefile.am): Likewise.
14440         * modules/filenamecat (Makefile.am): Likewise.
14441         * modules/fnmatch (Makefile.am): Likewise.
14442         * modules/fopen-safer (Makefile.am): Likewise.
14443         * modules/fpending (Makefile.am): Likewise.
14444         * modules/fprintftime (Makefile.am): Likewise.
14445         * modules/free (Makefile.am): Likewise.
14446         * modules/fsusage (Makefile.am): Likewise.
14447         * modules/ftruncate (Makefile.am): Likewise.
14448         * modules/fts (Makefile.am): Likewise.
14449         * modules/gc (Makefile.am): Likewise.
14450         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
14451         * modules/getaddrinfo (Makefile.am): Likewise.
14452         * modules/getcwd (Makefile.am): Likewise.
14453         * modules/getdelim (Makefile.am): Likewise.
14454         * modules/getdomainname (Makefile.am): Likewise.
14455         * modules/getgroups (Makefile.am): Likewise.
14456         * modules/gethostname (Makefile.am): Likewise.
14457         * modules/gethrxtime (Makefile.am): Likewise.
14458         * modules/getline (Makefile.am): Likewise.
14459         * modules/getloadavg (Makefile.am): Likewise.
14460         * modules/getlogin_r (Makefile.am): Likewise.
14461         * modules/getopt (Makefile.am): Likewise.
14462         * modules/getpass (Makefile.am): Likewise.
14463         * modules/getpass-gnu (Makefile.am): Likewise.
14464         * modules/getsubopt (Makefile.am): Likewise.
14465         * modules/gettime (Makefile.am): Likewise.
14466         * modules/gettimeofday (Makefile.am): Likewise.
14467         * modules/getugroups (Makefile.am): Likewise.
14468         * modules/getusershell (Makefile.am): Likewise.
14469         * modules/glob (Makefile.am): Likewise.
14470         * modules/group-member (Makefile.am): Likewise.
14471         * modules/hard-locale (Makefile.am): Likewise.
14472         * modules/hash (Makefile.am): Likewise.
14473         * modules/hmac-md5 (Makefile.am): Likewise.
14474         * modules/hmac-sha1 (Makefile.am): Likewise.
14475         * modules/human (Makefile.am): Likewise.
14476         * modules/idcache (Makefile.am): Likewise.
14477         * modules/imaxabs (Makefile.am): Likewise.
14478         * modules/imaxdiv (Makefile.am): Likewise.
14479         * modules/inet_ntop (Makefile.am): Likewise.
14480         * modules/inet_pton (Makefile.am): Likewise.
14481         * modules/inttostr (Makefile.am): Likewise.
14482         * modules/isapipe (Makefile.am): Likewise.
14483         * modules/lchown (Makefile.am): Likewise.
14484         * modules/long-options (Makefile.am): Likewise.
14485         * modules/lstat (Makefile.am): Likewise.
14486         * modules/malloc (Makefile.am): Likewise.
14487         * modules/mathl (Makefile.am): Likewise.
14488         * modules/mbchar (Makefile.am): Likewise.
14489         * modules/md2 (Makefile.am): Likewise.
14490         * modules/md4 (Makefile.am): Likewise.
14491         * modules/md5 (Makefile.am): Likewise.
14492         * modules/memcasecmp (Makefile.am): Likewise.
14493         * modules/memchr (Makefile.am): Likewise.
14494         * modules/memcmp (Makefile.am): Likewise.
14495         * modules/memcoll (Makefile.am): Likewise.
14496         * modules/memcpy (Makefile.am): Likewise.
14497         * modules/memmem (Makefile.am): Likewise.
14498         * modules/memmove (Makefile.am): Likewise.
14499         * modules/mempcpy (Makefile.am): Likewise.
14500         * modules/memrchr (Makefile.am): Likewise.
14501         * modules/memset (Makefile.am): Likewise.
14502         * modules/memxor (Makefile.am): Likewise.
14503         * modules/mkancesdirs (Makefile.am): Likewise.
14504         * modules/mkdir (Makefile.am): Likewise.
14505         * modules/mkdir-p (Makefile.am): Likewise.
14506         * modules/mkdtemp (Makefile.am): Likewise.
14507         * modules/mkstemp (Makefile.am): Likewise.
14508         * modules/mktime (Makefile.am): Likewise.
14509         * modules/modechange (Makefile.am): Likewise.
14510         * modules/mountlist (Makefile.am): Likewise.
14511         * modules/nanosleep (Makefile.am): Likewise.
14512         * modules/openat (Makefile.am): Likewise.
14513         * modules/pagealign_alloc (Makefile.am): Likewise.
14514         * modules/physmem (Makefile.am): Likewise.
14515         * modules/poll (Makefile.am): Likewise.
14516         * modules/posixtm (Makefile.am): Likewise.
14517         * modules/posixver (Makefile.am): Likewise.
14518         * modules/putenv (Makefile.am): Likewise.
14519         * modules/quote (Makefile.am): Likewise.
14520         * modules/quotearg (Makefile.am): Likewise.
14521         * modules/raise (Makefile.am): Likewise.
14522         * modules/read-file (Makefile.am): Likewise.
14523         * modules/readline (Makefile.am): Likewise.
14524         * modules/readlink (Makefile.am): Likewise.
14525         * modules/readtokens (Makefile.am): Likewise.
14526         * modules/readutmp (Makefile.am): Likewise.
14527         * modules/realloc (Makefile.am): Likewise.
14528         * modules/regex (Makefile.am): Likewise.
14529         * modules/rename (Makefile.am): Likewise.
14530         * modules/rename-dest-slash (Makefile.am): Likewise.
14531         * modules/rijndael (Makefile.am): Likewise.
14532         * modules/rmdir (Makefile.am): Likewise.
14533         * modules/rpmatch (Makefile.am): Likewise.
14534         * modules/safe-read (Makefile.am): Likewise.
14535         * modules/safe-write (Makefile.am): Likewise.
14536         * modules/same (Makefile.am): Likewise.
14537         * modules/save-cwd (Makefile.am): Likewise.
14538         * modules/savedir (Makefile.am): Likewise.
14539         * modules/setenv (Makefile.am): Likewise.
14540         * modules/settime (Makefile.am): Likewise.
14541         * modules/sha1 (Makefile.am): Likewise.
14542         * modules/sig2str (Makefile.am): Likewise.
14543         * modules/snprintf (Makefile.am): Likewise.
14544         * modules/stdlib-safer (Makefile.am): Likewise.
14545         * modules/stpcpy (Makefile.am): Likewise.
14546         * modules/stpncpy (Makefile.am): Likewise.
14547         * modules/strcase (Makefile.am): Likewise.
14548         * modules/strcasestr (Makefile.am): Likewise.
14549         * modules/strchrnul (Makefile.am): Likewise.
14550         * modules/strcspn (Makefile.am): Likewise.
14551         * modules/strdup (Makefile.am): Likewise.
14552         * modules/strerror (Makefile.am): Likewise.
14553         * modules/strftime (Makefile.am): Likewise.
14554         * modules/strndup (Makefile.am): Likewise.
14555         * modules/strnlen (Makefile.am): Likewise.
14556         * modules/strpbrk (Makefile.am): Likewise.
14557         * modules/strsep (Makefile.am): Likewise.
14558         * modules/strstr (Makefile.am): Likewise.
14559         * modules/strtod (Makefile.am): Likewise.
14560         * modules/strtoimax (Makefile.am): Likewise.
14561         * modules/strtok_r (Makefile.am): Likewise.
14562         * modules/strtol (Makefile.am): Likewise.
14563         * modules/strtoll (Makefile.am): Likewise.
14564         * modules/strtoul (Makefile.am): Likewise.
14565         * modules/strtoull (Makefile.am): Likewise.
14566         * modules/strtoumax (Makefile.am): Likewise.
14567         * modules/strverscmp (Makefile.am): Likewise.
14568         * modules/time_r (Makefile.am): Likewise.
14569         * modules/timegm (Makefile.am): Likewise.
14570         * modules/tmpfile-safer (Makefile.am): Likewise.
14571         * modules/unistd-safer (Makefile.am): Likewise.
14572         * modules/unlinkdir (Makefile.am): Likewise.
14573         * modules/userspec (Makefile.am): Likewise.
14574         * modules/utime (Makefile.am): Likewise.
14575         * modules/utimecmp (Makefile.am): Likewise.
14576         * modules/utimens (Makefile.am): Likewise.
14577         * modules/vasnprintf (Makefile.am): Likewise.
14578         * modules/vasprintf (Makefile.am): Likewise.
14579         * modules/vsnprintf (Makefile.am): Likewise.
14580         * modules/xalloc (Makefile.am): Likewise.
14581         * modules/xgetcwd (Makefile.am): Likewise.
14582         * modules/xnanosleep (Makefile.am): Likewise.
14583         * modules/xreadlink (Makefile.am): Likewise.
14584         * modules/xstrtod (Makefile.am): Likewise.
14585         * modules/xstrtol (Makefile.am): Likewise.
14586         * modules/xstrtold (Makefile.am): Likewise.
14587         * modules/yesno (Makefile.am): Likewise.
14588
14589 2006-10-12  Jim Meyering  <jim@meyering.net>
14590
14591         * m4/getloadavg.m4: Revert the change below.
14592
14593         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
14594         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
14595         fail with a symlink, which is what coreutils' ./bootstrap now
14596         creates by default.
14597
14598 2006-10-12  Bruno Haible  <bruno@clisp.org>
14599
14600         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
14601         mingw.
14602         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
14603         MSVC and mingw explicitly.
14604
14605 2006-10-11  Simon Josefsson  <jas@extundo.com>
14606             Bruno Haible  <bruno@clisp.org>
14607
14608         Add support for multiple gnulib-tool invocations in the scope of a
14609         single configure.ac file.
14610         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
14611         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
14612         with the same contents as the _LIBADD variable.
14613         (func_emit_initmacro_start, func_emit_initmacro_end,
14614         func_emit_initmacro_done): New functions.
14615         (func_import, func_create_testdir): Invoke them. Allow the identifiers
14616         gl_LIBOBJS and gl_LTLIBOBJS.
14617
14618 2006-10-11  Bruno Haible  <bruno@clisp.org>
14619
14620         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
14621         (func_create_testdir): Don't create po/Makefile.am, don't invoke
14622         autoreconf. Instead, invoke autopoint explicitly but move back the
14623         *.m4 files from gnulib.
14624
14625 2006-10-11  Bruno Haible  <bruno@clisp.org>
14626
14627         * gnulib-tool (func_usage): Make module names after --create-testdir
14628         optional.
14629         (func_create_testdir): If no module was specified, use nearly all
14630         modules.
14631
14632 2006-10-12  Jim Meyering  <jim@meyering.net>
14633
14634         Big performance improvement for fts-based tools that use FTS_NOSTAT.
14635         Avoid spurious inode-mismatch problems on non-POSIX file systems.
14636         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
14637         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
14638         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
14639         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
14640         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
14641         (fts_set_stat_required): New function.
14642         (fts_open): Defer the calls to fts_stat, if possible or requested.
14643         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
14644         into fts_stat itself.
14645         (fts_read): Perform any required (deferred) fts_stat call.
14646         (fts_build): Likewise, for the directory we're about to open and read.
14647         In the readdir loop, carefully decide whether each entry will require
14648         an eventual call to fts_stat, using dirent.d_type info if available.
14649         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
14650         a command line argument into this function.  Update all callers.
14651         Map a return value of FTS_DOT to FTS_D for a command line argument.
14652         * modules/fts (Depends-on): Add d-type.  Alphabetize.
14653         Thanks to Miklos Szeredi for his tenacity and for the initial
14654         bug report about "find" failing on a FUSE-based file system.
14655
14656         * lib/fts.c (fts_open): Use consistent indentation.
14657
14658 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
14659
14660         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
14661         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
14662         reported by Jim Meyering.  All uses of cache variables renamed
14663         to match Autoconf's.
14664         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
14665         the other one.
14666
14667         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
14668         Fix misspelling in diagnostic.
14669
14670 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
14671
14672         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
14673         defined.  Problem reported by Matthew Woehlke.
14674
14675         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
14676         Add support for Tandem NonStop R series.
14677         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
14678         Use new macro.
14679
14680         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
14681         (has_trailing_slash): Omit size arg; all callers changed.
14682         Omit 'inline', since it doesn't help performance and we'd
14683         need to configure it.
14684         Don't count //, ///, etc. as having a trailing slash.
14685         As a side effect, this removes a C99ism reported by Matthew Woehlke.
14686         (rpl_rename_dest_slash): On failure, use rename's errno rather
14687         than (in some cases) an incorrect or junk errno.
14688         Simplify code by removing need to compute length; this does
14689         cause it to make two passes instead of one over the file name,
14690         but it's worth it.
14691
14692         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
14693         change, since Autoconf's version may no longer be appropriate now
14694         that we are using CVS Autoconf's version.  Add support for Tandem.
14695
14696 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
14697             Bruno Haible  <bruno@clisp.org>
14698
14699         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
14700         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
14701         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
14702         gl_AC_TYPE_LONG_LONG.
14703
14704         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
14705         instead of HAVE_LONG_LONG.
14706         * lib/printf-args.c (printf_fetchargs): Likewise.
14707         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
14708         * lib/vasnprintf.c (VASNPRINTF): Likewise.
14709         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
14710         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
14711         gl_AC_TYPE_LONG_LONG.
14712
14713 2006-10-11  Bruno Haible  <bruno@clisp.org>
14714
14715         * m4/longlong.m4: Add comments.
14716         * m4/ulonglong.m4: Likewise.
14717
14718 2006-10-10  Bruno Haible  <bruno@clisp.org>
14719
14720         Make it possible to #define stpcpy, strdup to aliases.
14721         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
14722         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
14723
14724 2006-10-10  Bruno Haible  <bruno@clisp.org>
14725
14726         Make it possible to #define gcd to an alias.
14727         * lib/gcd.c: Include config.h.
14728
14729 2006-10-10  Bruno Haible  <bruno@clisp.org>
14730
14731         Make it possible to #define c_isascii to an alias.
14732         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
14733         defined. Undefine the macros before defining them, to avoid gcc
14734         warnings.
14735         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
14736         define NO_C_CTYPE_MACROS early.
14737
14738 2006-10-10  Bruno Haible  <bruno@clisp.org>
14739
14740         Make it possible to #define set_program_name to an alias.
14741         * lib/progname.c: Don't undefine set_program_name; instead, undefine
14742         ENABLE_RELOCATABLE early.
14743
14744 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
14745
14746         Port to Tandem NSK OSS, which has 64-bit signed int but at most
14747         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
14748         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
14749         More generally, don't assume that 64-bit signed int is available
14750         if unsigned int is, and vice versa.
14751         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
14752         unsigned symbols, not on their signed counterparts.
14753         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
14754         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
14755         (UINT64_C, UINTMAX_C):
14756         Likewise.
14757         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
14758         unsigned counterparts.
14759         (Have_long_long, Unsigned): New macros.
14760         (Int): Renamed from INT.
14761         (strtoimax): Use the new macros.
14762         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
14763         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
14764         * modules/inttypes (inttypes.h): Substitute
14765         HAVE_UNSIGNED_LONG_LONG_INT.
14766         * modules/stdint (stdint.h): Likewise.
14767         (Files): Add m4/ulonglong.m4.
14768
14769 2006-10-10  Bruno Haible  <bruno@clisp.org>
14770
14771         Fix a gcc -Wshadow warning.
14772         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
14773         to 'bucket'.
14774         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
14775         gl_linked_indexof_from_to): Likewise.
14776         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
14777         Likewise.
14778         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
14779         Likewise.
14780         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
14781         Reported by Eric Blake.
14782
14783 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
14784
14785         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
14786         for NetBSD.  Problem reported by Bruno Haible.
14787
14788 2006-10-09  Jim Meyering  <jim@meyering.net>
14789
14790         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
14791         Patch from Bruno Haible.
14792
14793 2006-10-09  Jim Meyering  <jim@meyering.net>
14794
14795         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
14796         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
14797         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
14798
14799 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
14800
14801         Don't include <config.h> twice; this doesn't work in some cases,
14802         e.g., when config.h has "#define intmax_t long long int" and
14803         we include <config.h>, <inttypes.h>, <config.h> in that order.
14804         Problem reported by Matthew Woehlke in:
14805         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
14806         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
14807         * lib/fts-cycle.c: Don't include config.h.
14808         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
14809         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
14810         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
14811         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
14812         inttypes.h.
14813         * lib/xstrtoumax.c: Likewise.
14814         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
14815         __strtol and the like, so that this module is more like its siblings.
14816         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
14817         Remove; no longer needed now that we assume gnulib inttypes.h.
14818
14819 2006-10-08  Bruno Haible  <bruno@clisp.org>
14820
14821         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
14822         option.
14823
14824 2006-10-07  Jim Meyering  <jim@meyering.net>
14825
14826         * modules/inttypes (inttypes.h): Revert what seems to have been
14827         an inadvertent part of today's change: use "|", not "/" in the
14828         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
14829
14830 2006-10-07  Bruno Haible  <bruno@clisp.org>
14831
14832         * modules/sublist: New file.
14833
14834 2006-10-07  Bruno Haible  <bruno@clisp.org>
14835
14836         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
14837         * modules/argz (argz.h): Likewise.
14838         * modules/arpa_inet (arpa/inet.h): Likewise.
14839         * modules/byteswap (byteswap.h): Likewise.
14840         * modules/configmake (configmake.h): Likewise.
14841         * modules/fcntl (fcntl.h): Likewise.
14842         * modules/fnmatch (fnmatch.h): Likewise.
14843         * modules/getopt (getopt.h): Likewise.
14844         * modules/glob (glob.h): Likewise.
14845         * modules/inttypes (inttypes.h): Likewise.
14846         * modules/netinet_in (netinet/in.h): Likewise.
14847         * modules/poll (poll.h): Likewise.
14848         * modules/stdbool (stdbool.h): Likewise.
14849         * modules/stdint (stdint.h): Likewise.
14850         * modules/sys_select (sys/select.h): Likewise.
14851         * modules/sys_socket (sys/socket.h): Likewise.
14852         * modules/sys_stat (sys/stat.h): Likewise.
14853         * modules/sysexits (sysexits.h): Likewise.
14854         * modules/unistd (unistd.h): Likewise.
14855         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14856         Add a "DO NOT EDIT" comment to the generated file.
14857         (func_import): Likewise for gnulib-comp.m4.
14858
14859 2006-10-07  Bruno Haible  <bruno@clisp.org>
14860
14861         * lib/gl_sublist.h: New file.
14862         * lib/gl_sublist.c: New file.
14863
14864 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
14865
14866         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
14867         name (relative to the original working directory) and the file
14868         name component (relative to the temporary working directory).  All
14869         callers changed.
14870         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
14871         * lib/mkdir-p.c (make_dir_parents): Likewise.
14872         * lib/mkdir-p.h (make_dir_parents): Likewise.
14873
14874 2006-10-06  Eric Blake  <ebb9@byu.net>
14875
14876         Define several macros for use by the clean-temp module.
14877         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
14878         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
14879         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
14880
14881         * lib/clean-temp.h (close_stream_temp): New declaration.
14882         * lib/clean-temp.c (includes): Pull in headers according to what
14883         other modules are in use.
14884         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
14885
14886 2006-10-06  Bruno Haible  <bruno@clisp.org>
14887
14888         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
14889         instead of fopen, fwriteerror.
14890
14891 2006-10-06  Bruno Haible  <bruno@clisp.org>
14892
14893         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
14894         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
14895         int.
14896         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
14897         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
14898         Return an error indicator.
14899         Suggested by Eric Blake.
14900
14901 2006-10-06  Bruno Haible  <bruno@clisp.org>
14902
14903         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
14904         Reported by Eric Blake.
14905
14906 2006-10-06  Bruno Haible  <bruno@clisp.org>
14907
14908         * modules/closeout (Description): Mention stderr too.
14909
14910 2006-10-06  Bruno Haible  <bruno@clisp.org>
14911         and Paul Eggert  <eggert@cs.ucla.edu>
14912
14913         * lib/closeout.c (close_stdout): Also close stderr.
14914         * lib/closeout.h: Update comment.
14915
14916 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
14917
14918         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
14919         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
14920         * lib/dirchownmod.c: Include lchown.h.
14921         * lib/lchown.c: Don't include files that lchown.h now includes.
14922         Don't declare chown, since lchown.h now does that.
14923         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
14924         (lchown): Define to rpl_chown if lchown is declared but
14925         does not exist.  Declare using a prototype if lchown is not
14926         declared.  Add a copyright notice.
14927         * lib/mkstemp.h: Include <unistd.h>.
14928         * lib/openat.c: Include lchown.h.
14929
14930         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
14931         we now test for that separately.
14932         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
14933         rather than O_NOFOLLOW, when testing whether it's possible to
14934         avoid a race condition reliably.
14935         * lib/savewd.c (savewd_chdir): Likewise.
14936
14937         Remove macros that are no longer needed now that stdint.h is
14938         reliable.
14939         * lib/fsusage.c (UINTMAX_MAX): Remove.
14940         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
14941         * lib/utimecmp.c (SIZE_MAX): Remove.
14942
14943         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
14944
14945         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
14946         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
14947         O_NOATIME works.
14948
14949 2006-10-05  Bruno Haible  <bruno@clisp.org>
14950
14951         * lib/gl_list.h (gl_sortedlist_search_from_to,
14952         gl_sortedlist_indexof_from_to): New declarations.
14953         (gl_list_implementation): New fields sortedlist_search_from_to,
14954         sortedlist_indexof_from_to.
14955         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
14956         inline functions.
14957         * lib/gl_list.c (gl_sortedlist_search_from_to,
14958         gl_sortedlist_indexof_from_to): New functions.
14959         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
14960         function.
14961         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
14962         (gl_array_sortedlist_search_from_to): New function.
14963         (gl_array_list_implementation): Update.
14964         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
14965         function.
14966         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
14967         (gl_carray_sortedlist_search_from_to): New function.
14968         (gl_carray_list_implementation): Update.
14969         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
14970         gl_linked_sortedlist_indexof_from_to): New functions.
14971         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
14972         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
14973         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
14974         gl_tree_sortedlist_indexof_from_to): New functions.
14975         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
14976         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
14977         Update.
14978         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
14979         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
14980         Update.
14981
14982 2006-10-05  Bruno Haible  <bruno@clisp.org>
14983
14984         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
14985         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
14986         (struct gl_list_implementation): Add fields search_from_to,
14987         indexof_from_to. Remove fields search, indexof.
14988         (gl_list_search): Use the search_from_to method.
14989         (gl_list_search_from, gl_list_search_from_to): New functions.
14990         (gl_list_indexof): Use the indexof_from_to method.
14991         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
14992         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
14993         (gl_list_search_from, gl_list_search_from_to): New functions.
14994         (gl_list_indexof): Use the indexof_from_to method.
14995         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
14996         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
14997         gl_array_indexof. Add start_index, end_index arguments.
14998         (gl_array_search_from_to): Renamed from gl_array_search. Add
14999         start_index, end_index arguments.
15000         (gl_array_remove, gl_array_list_implementation): Update.
15001         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
15002         gl_carray_indexof. Add start_index, end_index arguments.
15003         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
15004         start_index, end_index arguments.
15005         (gl_carray_remove, gl_carray_list_implementation): Update.
15006         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
15007         gl_linked_search. Add start_index, end_index arguments.
15008         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
15009         start_index, end_index arguments.
15010         (gl_linked_remove): Update.
15011         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
15012         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
15013         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
15014         field to 'size_t'.
15015         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
15016         gl_tree_search. Add start_index, end_index arguments.
15017         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
15018         start_index, end_index arguments.
15019         (gl_tree_remove): Update.
15020         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
15021         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
15022         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
15023         function.
15024         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
15025         gl_tree_search. Add start_index, end_index arguments.
15026         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
15027         start_index, end_index arguments.
15028         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
15029         Update.
15030         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
15031
15032 2006-10-05  Bruno Haible  <bruno@clisp.org>
15033
15034         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
15035
15036         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
15037         fwriteerror_temp): New declarations.
15038         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
15039         (descriptors): New variable.
15040         (cleanup): First, close the descriptors.
15041         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
15042         fclose_temp, fwriteerror_temp): New functions.
15043
15044 2006-10-04  Jim Meyering  <jim@meyering.net>
15045
15046         * lib/fts.c (fts_open): Tiny comment change.
15047
15048 2006-10-04  Bruno Haible  <bruno@clisp.org>
15049
15050         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
15051         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
15052         gl_LOCK_BODY.
15053         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
15054         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
15055         gl_LOCK_EARLY_BODY.
15056         (gl_LOCK): Require gl_LOCK_BODY.
15057
15058 2006-10-04  Bruno Haible  <bruno@clisp.org>
15059
15060         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
15061         (gl_oset_search_atleast): New declaration.
15062         (struct gl_oset_implementation): Add field 'search_atleast'.
15063         (gl_oset_search_atleast): New inline function.
15064         * lib/gl_oset.c (gl_oset_search_atleast): New function.
15065         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
15066         (gl_array_oset_implementation): Update.
15067         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
15068         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
15069         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
15070
15071 2006-10-04  Bruno Haible  <bruno@clisp.org>
15072
15073         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
15074
15075 2006-10-03  Bruno Haible  <bruno@clisp.org>
15076
15077         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
15078         from gl_avltreehash_list_implementation.
15079
15080 2006-10-03  Bruno Haible  <bruno@clisp.org>
15081
15082         * lib/gl_oset.c (gl_oset_add): Fix return type.
15083
15084 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
15085
15086         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
15087
15088 2006-10-02  Eric Blake  <ebb9@byu.net>
15089
15090         * modules/strnlen (Depends-on): Add extensions.
15091
15092 2006-10-02  Eric Blake  <ebb9@byu.net>
15093
15094         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
15095         definition in 2.60+.
15096
15097 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
15098
15099         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
15100         checks.
15101
15102 2006-10-02  Bruno Haible  <bruno@clisp.org>
15103
15104         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
15105         to the AUTOMAKE_OPTIONS.
15106         Reported by Jim Meyering.
15107
15108 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
15109
15110         Work around bug in Solaris 10 /proc file system:
15111         /proc/self/fd/NNN/.. isn't the parent directory of
15112         the directory whose file descriptor is NNN.  This needs to
15113         be worked around at run time, not compile time, since a
15114         program might be built on Solaris 8, where things work, and
15115         run on Solaris 10.
15116         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
15117         to use the following interface instead:
15118         (OPENAT_BUFFER_SIZE): New macro.
15119         (openat_proc_name): New function.
15120         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
15121         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
15122         Likewise.
15123         * lib/openat-proc.c: New file.
15124         * modules/openat (Files): Add lib/openat-proc.c.
15125         (Depends-on): Add same-inode, stdbool.
15126         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
15127
15128 2006-09-29  Bruno Haible  <bruno@clisp.org>
15129
15130         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
15131         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
15132         argument. Set stdout_closed before testing for ferror, not after.
15133         (fwriteerror, fwriteerror_no_ebadf): New functions.
15134
15135 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15136
15137         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
15138
15139 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
15140
15141         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
15142         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
15143
15144 2006-09-28  Jim Meyering  <jim@meyering.net>
15145
15146         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
15147         Include <unistd.h>.
15148
15149 2006-09-28  Bruno Haible  <bruno@clisp.org>
15150
15151         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
15152         * modules/linkedhash-list (Depends-on): Likewise.
15153         * modules/rbtreehash-list (Depends-on): Likewise.
15154
15155 2006-09-28  Bruno Haible  <bruno@clisp.org>
15156
15157         * lib/strndup.h: Simplify the redefinition of strndup.
15158         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
15159         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
15160
15161 2006-09-28  Bruno Haible  <bruno@clisp.org>
15162
15163         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
15164         * lib/gl_linkedhash_list.c: Likewise.
15165         * lib/gl_rbtreehash_list.c: Likewise.
15166
15167 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
15168
15169         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
15170         getaddrinfo.
15171
15172         * lib/__fpending.h: Don't include <stdio_ext.h> unless
15173         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
15174         it causes <stdio_ext.h> to cause a compile-time error.
15175         Problem reported by Nelson H. F. Beebe.
15176         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
15177         of HAVE_DECL___PENDING.
15178
15179         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
15180         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
15181         declaration.
15182
15183 2006-09-27  Jim Meyering  <jim@meyering.net>
15184
15185         This file could end up with a definition for a function
15186         named __strndup, rather than rpl_strndup on a system with
15187         incomplete weak_alias support.
15188         * lib/strndup.c (strndup): Rename from __strndup.
15189         Remove #defines that used to map __strndup to strndup.
15190         Don't use K&R prototypes.
15191         Remove LIBC-related code, since this file is not sync'd with glibc.
15192         * lib/strndup.h: Revamp, accordingly.
15193         * m4/strndup.m4: Modernize.
15194
15195 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
15196
15197         * modules/savewd (Depends-on): Add 'raise'.
15198         * lib/savewd.c: Include <signal.h>, for 'raise'.
15199
15200 2006-09-26  Jim Meyering  <jim@meyering.net>
15201
15202         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
15203         when we detect Darwin 8.7.0's acl_get_file bug.
15204         Rearrange to perform the new (below) run-test while $LIBS
15205         contains any acl-related library.  Set USE_ACL at the end.
15206         (gl_ACL_GET_FILE): New function.
15207
15208 2006-09-26  Eric Blake  <ebb9@byu.net>
15209
15210         * lib/verror.c: Include <config.h> unconditionally.
15211
15212 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
15213
15214         * modules/clock-time (Maintainer): Add self.
15215         * modules/getlogin_r (Depends-on): Add extensions.
15216
15217 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15218
15219         * modules/clock-time: New module.
15220         * modules/nanosleep (Depends-on): Add clock-time.
15221         * modules/gethrxtime (Depends-on): Likewise.
15222         * modules/gettime (Depends-on): Likewise.
15223         * modules/settime (Depends-on): Likewise.
15224
15225         * modules/fts-lgpl: Depend on openat.
15226         * modules/mkancesdirs: Depend on savewd.
15227         * modules/mkdir-p: Likewise.
15228
15229 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15230
15231         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
15232
15233         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
15234         `gl_have_arbitrary_file_name_length_limit' to
15235         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
15236         actually works between configure runs.
15237
15238 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15239             Bruno Haible  <bruno@clisp.org>
15240
15241         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
15242
15243 2006-09-25  Jim Meyering  <jim@meyering.net>
15244
15245         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
15246         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
15247
15248 2006-09-25  Eric Blake  <ebb9@byu.net>
15249
15250         * gnulib-tool (func_import, func_create_testdir): Fix typos in
15251         exec's in 2006-09-18 patch when shuffling fds.
15252
15253 2006-09-25  Bruno Haible  <bruno@clisp.org>
15254
15255         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
15256         Reported by Jim Meyering.
15257
15258 2006-09-24  Jim Meyering  <jim@meyering.net>
15259
15260         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
15261         compare a pointer against a literal "0".  That caused failures with
15262         at least HP-UX's hpcc.
15263
15264 2006-09-22  Simon Josefsson  <jas@extundo.com>
15265
15266         * modules/gc-sha1:
15267         * modules/gc-md4:
15268         * modules/gc-hmac-sha1:
15269         * modules/gc-hmac-md5:
15270         * modules/gc-des:
15271         * modules/gc-arcfour: Distribute more files.
15272
15273 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15274
15275         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
15276         (gl_linked_iterator_from_to): Initialize struct completely.
15277         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
15278         (gl_tree_iterator_from_to): Likewise
15279         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
15280         * lib/gl_array_list.c [lint] (gl_array_iterator)
15281         (gl_array_iterator_from_to): Likewise.
15282         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
15283         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
15284         (gl_carray_iterator_from_to): Likewise.
15285
15286         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
15287         * lib/md4.c (md4_process_block): Remove unused variable.
15288         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
15289         parentheses for clarity.
15290
15291 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15292
15293         * modules/bison-i18n (Depends-on): Add gettext.
15294
15295 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15296
15297         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
15298         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
15299         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
15300         also add missing comma that caused broken test.
15301         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
15302         stdlib.h, for `abort'.
15303         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
15304         variables.
15305         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
15306         include unistd.h if present, for `rmdir'.
15307         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
15308         variables.
15309         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
15310         in the process include standard headers for prototypes.
15311         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
15312         gets declared on GNU/Linux.
15313         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
15314         unistd.h, for `rmdir'.
15315         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
15316
15317         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
15318         always true.
15319         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
15320
15321         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
15322
15323 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15324
15325         * gnulib-tool (func_version): Create output all at once.  This
15326         may help avoid triggering unnecessary SIGPIPEs, and at any
15327         rate it doesn't hurt.
15328
15329 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15330             Bruno Haible  <bruno@clisp.org>
15331
15332         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
15333         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
15334         * m4/signed.m4 (bh_C_SIGNED): Likewise.
15335
15336         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
15337         (gl_FUNC_VASPRINTF): Invoke it.
15338
15339 2006-09-22  Bruno Haible  <bruno@clisp.org>
15340
15341         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
15342         getloadavg.c as first argument.
15343
15344 2006-09-22  Bruno Haible  <bruno@clisp.org>
15345
15346         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
15347         at the beginning of the gl_INIT macro.
15348         * modules/getloadavg (configure.ac): Pass $gl_source_base to
15349         gl_GETLOADAVG.
15350
15351 2006-09-22  Bruno Haible  <bruno@clisp.org>
15352
15353         * gnulib-tool (func_create_megatestdir): Don't include the config-h
15354         module.
15355         Suggested by Ralf Wildenhues.
15356
15357 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
15358
15359         Import this patch from libc:
15360
15361         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
15362
15363         * lib/regex_internal.c (re_string_reconstruct): Handle
15364         offset < pstr->valid_raw_len && pstr->offsets_needed case.
15365         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
15366         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
15367         re_string_context_at.
15368
15369         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
15370         now requires it.
15371         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
15372         gl_REGEX now does it for us.
15373         (gl_REGEX): Add test taken from
15374         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
15375
15376         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
15377         Check that large offsets work.  Modernize Autoconf usages.
15378         Prefer "yes" to mean a good thing rather than a bad.
15379         Don't put "#define mkstemp" in config.h, as this might interfere
15380         with standard system headers that "#define mkstemp mkstemp64".
15381
15382         * modules/mkstemp (Depends-on): Add extensions, so that
15383         mkstemp is visible on some platforms.
15384         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
15385         (Include): Change to "mkstemp.h" from <stdlib.h>.
15386         (Files): Add mkstemp.h.
15387
15388         * lib/mkstemp.h: New file, since some standard headers
15389         #define mkstemp.
15390         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
15391         Include "mkstemp.h".
15392         Make the _LIBC code resemble glibc original more,
15393         e.g., use K&R style.
15394         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
15395         (mkstemp): Remove, since mkstemp.h does this for us.
15396         * lib/stdlib--.h: Include mkstemp.h.
15397
15398         Import this patch from libc:
15399
15400         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
15401
15402         * lib/tempname.c (__gen_tempname): Change attempts_min
15403         into a macro.  Use preprocessor to decide how to initialize
15404         attempts [Coverity CID 67].
15405
15406 2006-09-20  Bruno Haible  <bruno@clisp.org>
15407
15408         * lib/mkdtemp.c: Import from libc.
15409         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
15410                 * sysdeps/posix/tempname.c (__gen_tempname): Change
15411                 attempts_min into a macro.  Use preprocessor to decide how to
15412                 initialize attempts [Coverity CID 67].
15413         2001-11-27  Paul Eggert  <eggert@twinsun.com>
15414                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
15415                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
15416
15417 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15418
15419         * gnulib-tool (func_exit): New function, to allow to pass the
15420         exit status portably through the trap.  Use everywhere.
15421         (--help, --version): Signal a write error.
15422         (trap): catch SIGPIPE, for write errors.
15423         Exit at the end of the trap, with the correct exit status.
15424
15425 2006-09-19  Karl Berry  <karl@gnu.org>
15426
15427         * doc/gnulib.texi: note about the license texinfo files.
15428
15429 2006-09-19  Eric Blake  <ebb9@byu.net>
15430
15431         * gnulib-tool: Avoid space-tab.
15432
15433 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
15434
15435         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
15436         that prevented coreutils 6.1 from building.  Problem reported
15437         by Petter Reinholdtsen.
15438
15439 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
15440
15441         * gnulib-tool (avoidlist): Fix typo that broke options like
15442         --avoid=lock that are used by coreutils bootstrap.
15443
15444 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
15445
15446         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
15447         more systematically.
15448
15449 2006-09-18  Jim Meyering  <jim@meyering.net>
15450
15451         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
15452
15453 2006-09-18  Bruno Haible  <bruno@clisp.org>
15454
15455         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
15456
15457 2006-09-18  Bruno Haible  <bruno@clisp.org>
15458
15459         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
15460         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
15461         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
15462         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
15463         * m4/gettext.m4: Require autoconf >= 2.52.
15464         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
15465         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
15466         of gl_cv_header_inttypes_h.
15467
15468 2006-09-18  Bruno Haible  <bruno@clisp.org>
15469
15470         * lib/javaversion.c: Include configmake.h.
15471
15472 2006-09-18  Bruno Haible  <bruno@clisp.org>
15473
15474         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
15475         avoid that the while loops be executed in a subshell.
15476
15477 2006-09-18  Bruno Haible  <bruno@clisp.org>
15478
15479         * MODULES.html.sh (func_module): Break long lines.
15480         Suggested by Bruce Korb <bkorb@gnu.org>.
15481
15482 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15483
15484         Speed up by a factor of 1.12.
15485         * gnulib-tool (nl): New variable.
15486         (func_import): Rewrite include directive extraction to only read each
15487         directive once.
15488
15489 2006-09-17  Bruno Haible  <bruno@clisp.org>
15490
15491         * modules/javaversion (Makefile.am): Remove DEFS setting.
15492         (Depends-on): Add configmake, for PKGDATADIR definition.
15493
15494 2006-09-17  Bruno Haible  <bruno@clisp.org>
15495
15496         * gnulib-tool (func_create_testdir): Rewrite all files at once.
15497
15498 2006-09-17  Bruno Haible  <bruno@clisp.org>
15499
15500         * gnulib-tool (func_append): New function, stolen from libtool.m4.
15501         (func_modules_transitive_closure, func_modules_add_dummy,
15502         func_modules_to_filelist, func_import, func_create_testdir,
15503         func_create_megatestdir, ...): Use it wherever possible.
15504         Suggested by Ralf Wildenhues.
15505
15506 2006-09-16  Karl Berry  <karl@gnu.org>
15507
15508         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
15509         to avoid sectioning errors.
15510         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
15511         [ifinfo]: blank line after @center-ed titles.
15512         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
15513         Spell FSF address consistently with others.
15514         (These changes approved by rms.)
15515
15516 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15517
15518         Speed up by a factor of 1.61.
15519         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
15520         already checked module names again.
15521
15522 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15523
15524         Speed up by a factor of 1.13.
15525         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
15526         for new_files, and the input to func_add_or_update.
15527
15528 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15529
15530         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
15531         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
15532
15533 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15534
15535         * modules/mkancesdirs (Depends-on): Add fcntl.
15536         * modules/savewd: New file.
15537         * MODULES.html.sh (File system functions): Add savewd.
15538
15539         * modules/configmake (Makefile.am): Add support for the
15540         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
15541
15542 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15543
15544         * m4/savewd.m4: New file.
15545
15546 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15547
15548         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
15549         (dirchownmod): New arg FD.  All callers changed.
15550         Use FD rather than opening the directory ourself, as opening is
15551         now the caller's responsibility.
15552         * lib/dirchownmod.h: Likewise.
15553         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
15554         hosts that require <sys/types.h> before <sys/stat.h>.  Include
15555         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
15556         (test_dir): Remove.
15557         (mkancesdirs): Return length of prefix of FILE that has already
15558         been made, or -2 if there is a child doing the work.  Redo
15559         algorithm so that it is O(N) rather than O(N**2).  Optimize away
15560         ".", and treat ".." specially since it might stray back into
15561         already-created areas.  Use a subprocess if necessary.  New arg
15562         WD; all users changed.  MAKE_DIR function should now return 1
15563         if it creates a directory that is not readable.  Return -2 if
15564         a child process is spun off.
15565         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
15566         Adjust signature to match code.
15567         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
15568         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
15569         all users changed.
15570         * lib/savewd.c, lib/savewd.h: New files.
15571
15572 2006-09-15  Jim Meyering  <jim@meyering.net>
15573
15574         * modules/rename-dest-slash: New module.
15575         * MODULES.html.sh (posix_compat): Add it here.
15576
15577         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
15578
15579 2006-09-15  Jim Meyering  <jim@meyering.net>
15580
15581         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
15582         file.
15583
15584         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
15585
15586 2006-09-15  Jim Meyering  <jim@meyering.net>
15587
15588         * lib/rename-dest-slash.c (has_trailing_slash): Use
15589         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
15590         (rpl_rename_dest_slash): Perform the cheaper trailing slash
15591         test before testing whether SRC is a directory.
15592         Suggestions from Bruno Haible.
15593
15594         Avoid a warning about an unused variable.
15595         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
15596         into the #ifdef block where it's used.
15597
15598         * lib/rename-dest-slash.c: New file.
15599
15600 2006-09-14  Bruno Haible  <bruno@clisp.org>
15601
15602         * lib/allocsa.c: Include <config.h> unconditionally.
15603         * lib/asnprintf.c: Likewise.
15604         * lib/asprintf.c: Likewise.
15605         * lib/c-strcasecmp.c: Likewise.
15606         * lib/c-strcasestr.c: Likewise.
15607         * lib/c-strncasecmp.c: Likewise.
15608         * lib/c-strstr.c: Likewise.
15609         * lib/classpath.c: Likewise.
15610         * lib/clean-temp.c: Likewise.
15611         * lib/concatpath.c: Likewise.
15612         * lib/copy-file.c: Likewise.
15613         * lib/csharpcomp.c: Likewise.
15614         * lib/csharpexec.c: Likewise.
15615         * lib/execute.c: Likewise.
15616         * lib/fatal-signal.c: Likewise.
15617         * lib/findprog.c: Likewise.
15618         * lib/fwriteerror.c: Likewise.
15619         * lib/gl_array_list.c: Likewise.
15620         * lib/gl_array_oset.c: Likewise.
15621         * lib/gl_avltree_list.c: Likewise.
15622         * lib/gl_avltree_oset.c: Likewise.
15623         * lib/gl_avltreehash_list.c: Likewise.
15624         * lib/gl_carray_list.c: Likewise.
15625         * lib/gl_linked_list.c: Likewise.
15626         * lib/gl_linkedhash_list.c: Likewise.
15627         * lib/gl_list.c: Likewise.
15628         * lib/gl_oset.c: Likewise.
15629         * lib/gl_rbtree_list.c: Likewise.
15630         * lib/gl_rbtree_oset.c: Likewise.
15631         * lib/gl_rbtreehash_list.c: Likewise.
15632         * lib/imaxabs.c: Likewise.
15633         * lib/imaxdiv.c: Likewise.
15634         * lib/javacomp.c: Likewise.
15635         * lib/javaexec.c: Likewise.
15636         * lib/javaversion.c: Likewise.
15637         * lib/linebreak.c: Likewise.
15638         * lib/localcharset.c: Likewise.
15639         * lib/lock.c: Likewise.
15640         * lib/mbchar.c: Likewise.
15641         * lib/mbswidth.c: Likewise.
15642         * lib/mkdtemp.c: Likewise.
15643         * lib/pipe.c: Likewise.
15644         * lib/printf-args.c: Likewise.
15645         * lib/printf-parse.c: Likewise.
15646         * lib/progname.c: Likewise.
15647         * lib/progreloc.c: Likewise.
15648         * lib/readlink.c: Likewise.
15649         * lib/sh-quote.c: Likewise.
15650         * lib/stpcpy.c: Likewise.
15651         * lib/stpncpy.c: Likewise.
15652         * lib/strcasecmp.c: Likewise.
15653         * lib/strcasestr.c: Likewise.
15654         * lib/strcspn.c: Likewise.
15655         * lib/striconv.c: Likewise.
15656         * lib/strncasecmp.c: Likewise.
15657         * lib/strnlen1.c: Likewise.
15658         * lib/strstr.c: Likewise.
15659         * lib/strtok_r.c: Likewise.
15660         * lib/tls.c: Likewise.
15661         * lib/tmpdir.c: Likewise.
15662         * lib/unicodeio.c: Likewise.
15663         * lib/unsetenv.c: Likewise.
15664         * lib/vasnprintf.c: Likewise.
15665         * lib/vasprintf.c: Likewise.
15666         * lib/wait-process.c: Likewise.
15667         * lib/xallocsa.c: Likewise.
15668         * lib/xsetenv.c: Likewise.
15669         * lib/xstriconv.c: Likewise.
15670
15671 2006-09-13  Simon Josefsson  <jas@extundo.com>
15672
15673         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
15674         that internally, suggested by Ralf Wildenhues
15675         <Ralf.Wildenhues@gmx.de>.
15676
15677 2006-09-13  Simon Josefsson  <jas@extundo.com>
15678
15679         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
15680         @LIBOBJS@.
15681         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15682
15683 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
15684
15685         * lib/_fpending.c: Include <config.h> unconditionally, since we no
15686         longer worry about uses that don't define HAVE_CONFIG_H.
15687         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
15688         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
15689         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
15690         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
15691         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
15692         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
15693         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
15694         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
15695         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
15696         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
15697         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
15698         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
15699         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
15700         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
15701         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
15702         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
15703         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
15704         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
15705         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
15706         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
15707         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
15708         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
15709         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
15710         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
15711         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
15712         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
15713         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
15714         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
15715         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
15716         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
15717         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
15718         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
15719         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
15720         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
15721         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
15722         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
15723         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
15724         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
15725         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
15726         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
15727         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
15728         Likewise.
15729
15730 2006-09-13  Eric Blake  <ebb9@byu.net>
15731
15732         * lib/getopt.c: Fix typo in last commit.
15733
15734 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
15735
15736         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
15737         dgettext.
15738
15739 2006-09-12  Jim Meyering  <jim@meyering.net>
15740
15741         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
15742         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
15743         Reported by Nelson H. F. Beebe.
15744
15745 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
15746
15747         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
15748         program_invocation_name and program_invocation_short_name are
15749         initialized.
15750         * lib/argp-namefrob.h: Move declarations of program_invocation_name
15751         and program_invocation_short_name to argp.h, so they are visible
15752         to user programs.
15753         * lib/argp.h: Likewise
15754
15755 2006-09-10  Bruno Haible  <bruno@clisp.org>
15756
15757         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
15758         m4/inttypes_h.m4, m4/uintmax_t.m4.
15759
15760 2006-09-10  Bruno Haible  <bruno@clisp.org>
15761
15762         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
15763         gl_AC_TYPE_UINTMAX_T.
15764
15765 2006-09-10  Bruno Haible  <bruno@clisp.org>
15766
15767         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
15768
15769 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
15770
15771         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
15772         convention.  Text proposed by Bruno Haible.
15773         (struct argp_option): Document the use of N_() wrappers.
15774
15775         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
15776         '\v', and translate the two parts separately, instead of feeding
15777         the whole string to gettext.  This allows to exclude
15778         '\v' from the strings visible to the translator by writing doc
15779         strings as N_("..") "\v" N_("..").
15780
15781 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
15782
15783         * config/srclist.txt: Undo latest change; the bug was fixed.
15784
15785 2006-09-09  Bruno Haible  <bruno@clisp.org>
15786
15787         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
15788         assignments if building a library without libtool.
15789         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
15790         in func_emit_lib_Makefile_am.
15791         (func_import): When building a static library libfoo.a, arrange to
15792         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
15793         (func_create_testdir): Likewise.
15794         * modules/gc (configure.ac, Makefile.am): If building statically,
15795         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
15796         * modules/iconvme (configure.ac, Makefile.am): Likewise.
15797         * modules/striconv (configure.ac, Makefile.am): Likewise.
15798         Based on a suggestion by Ralf Wildenhues.
15799
15800 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
15801
15802         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
15803         Check for unistd.h too, since Autoconf doesn't assume POSIX.
15804         Also:
15805
15806         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
15807         Add year_2050_test to catch glibc bug 2821
15808         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
15809
15810         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
15811         Prefer #ifdef to #if.
15812
15813         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
15814         Return from 'main' instead of calling 'exit'.
15815
15816 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
15817
15818         * lib/mktime.c (guess_time_tm): Fix bug where mktime
15819         returned the maximum time_t value rather than (time_t) -1.
15820         Problem originally reported by William Bardwell
15821         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
15822
15823         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
15824         Moved to here ...
15825         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
15826         ... from here.
15827
15828 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
15829
15830         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
15831         2821 is fixed.
15832
15833 2006-09-08  Jim Meyering  <jim@meyering.net>
15834
15835         Don't make generated files read-only.  That would bother too many
15836         people.  However, do retain the ability to work when targets are
15837         read-only: remove the destination and temporary files before writing
15838         them (when generated via sed or echo), or by using the -f option for
15839         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
15840         * modules/alloca-opt, modules/argz, modules/arpa_inet:
15841         * modules/byteswap, modules/configmake, modules/fcntl:
15842         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
15843         * modules/localcharset, modules/netinet_in, modules/poll:
15844         * modules/stdbool, modules/stdint, modules/sys_select:
15845         * modules/sys_socket, modules/sys_stat, modules/sysexits:
15846
15847 2006-09-08  Jim Meyering  <jim@meyering.net>
15848
15849         Avoid new build failure on FreeBSD 6.0.
15850         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
15851         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
15852         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
15853
15854 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15855
15856         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
15857
15858 2006-09-07  Jim Meyering  <jim@meyering.net>
15859
15860         Fix global typo in last change: use chmod u-w, not chmod u-x.
15861         Spotted by Paul Eggert and Bruce Korb.
15862         * modules/alloca-opt, modules/argz, modules/arpa_inet:
15863         * modules/byteswap, modules/configmake, modules/fcntl:
15864         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
15865         * modules/localcharset, modules/netinet_in, modules/poll:
15866         * modules/stdbool, modules/stdint, modules/sys_select:
15867         * modules/sys_socket, modules/sys_stat, modules/sysexits:
15868
15869 2006-09-06  Jim Meyering  <jim@meyering.net>
15870
15871         Make generated files be read-only.
15872         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
15873         Ensure that each generated file is now read-only.
15874         * modules/argz: Likewise.
15875         * modules/arpa_inet: Likewise.
15876         * modules/byteswap: Likewise.
15877         * modules/configmake: Likewise.
15878         * modules/fcntl: Likewise.
15879         * modules/fnmatch: Likewise.
15880         * modules/getopt: Likewise.
15881         * modules/glob: Likewise.
15882         * modules/inttypes: Likewise.
15883         * modules/netinet_in: Likewise.
15884         * modules/poll: Likewise.
15885         * modules/stdbool: Likewise.
15886         * modules/stdint: Likewise.
15887         * modules/sys_select: Likewise.
15888         * modules/sys_socket: Likewise.
15889         * modules/sys_stat: Likewise.
15890         * modules/sysexits: Likewise.
15891         * modules/localcharset: Same as above, but continue using temporary
15892         file named "t-$@" (why different?) rather than the "$@-t" used
15893         everywhere else.
15894
15895         * modules/sysexits (Makefile.am): Replace literal occurrences
15896         of "sysexit.h" more readable, and more consistent, "$@".
15897
15898 2006-09-06  Bruno Haible  <bruno@clisp.org>
15899
15900         * modules/striconv: New file.
15901         * modules/xstriconv: New file.
15902         * MODULES.html.sh (Internationalization functions): Add striconv,
15903         xstriconv.
15904
15905 2006-09-06  Bruno Haible  <bruno@clisp.org>
15906
15907         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
15908         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
15909         not using libtool correctly.
15910
15911 2006-09-06  Bruno Haible  <bruno@clisp.org>
15912
15913         * lib/striconv.h: New file.
15914         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
15915         iconvstring.c.
15916         * lib/xstriconv.h: New file.
15917         * lib/xstriconv.c: New file.
15918
15919 2006-09-06  Bruno Haible  <bruno@clisp.org>
15920
15921         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
15922         lib_..._LDFLAGS.
15923
15924 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15925
15926         * lib/argz_.h: Sync from Libtool.
15927
15928         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
15929                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15930
15931         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
15932
15933 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
15934
15935         * modules/trim: New file.
15936
15937 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
15938
15939         * lib/trim.h: New file.
15940         * lib/trim.c: New file.
15941
15942 2006-09-05  Bruno Haible  <bruno@clisp.org>
15943
15944         * MODULES.html.sh (String handling): Add trim.
15945
15946 2006-09-04  Karl Berry  <karl@gnu.org>
15947
15948         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
15949         until next release.
15950
15951 2006-09-03  Bruno Haible  <bruno@clisp.org>
15952
15953         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
15954         correctly.
15955
15956 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
15957
15958         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
15959         not gl_GETLOADAVG.  Omit unneeded semicolons.
15960         Problems reported by Ralf Wildenhues in
15961         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
15962         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
15963         at the end, which is the usual gnulib style.
15964
15965         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
15966         of doing all the work ourselves.
15967         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
15968         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
15969
15970 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
15971
15972         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
15973         Problem reported by Ralf Wildenhues in
15974         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
15975
15976         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
15977         HAVE_STRUCT_STATFS_F_FSTYPENAME.
15978
15979 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
15980
15981         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
15982         yesterday's patch by changing test -n to test -z.
15983
15984 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
15985
15986         * modules/getloadavg (Files): Add m4/getloadavg.m4.
15987         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
15988         the former is now obsolescent.
15989
15990         * modules/chdir-long (Depends-on): Add fcntl.
15991
15992 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
15993
15994         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
15995         obsolescent, and programs should use gnulib instead.
15996         * m4/getloadavg.m4: New file, with contents taken from Autoconf
15997         but with prefixes changed.
15998
15999 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
16000
16001         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
16002         or stdbool.h, because they might not exist while configuring.
16003
16004         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
16005         Don't include unistd.h or limits.h; not needed, since chdir-long.h
16006         does that for us.
16007         (O_DIRECTORY): Remove.
16008
16009 2006-08-31  Eric Blake  <ebb9@byu.net>
16010
16011         * gnulib-tool: Don't let emacs change spaces to TAB.
16012
16013 2006-08-31  Bruno Haible  <bruno@clisp.org>
16014
16015         * gnulib-tool: When calling func_import more than once, do it in a
16016         subshell.
16017         Reported by Eric Blake <ebb9@byu.net>.
16018
16019 2006-08-31  Bruno Haible  <bruno@clisp.org>
16020
16021         * gnulib-tool (nl): Remove variable.
16022         (sed_transform_lib_file): Use more robust test for config-h module.
16023         (func_import): Fix typo in 2006-08-25 patch.
16024
16025 2006-08-31  Bruno Haible  <bruno@clisp.org>
16026
16027         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
16028         specified, augment Makefile.am variables instead of assigning them.
16029
16030 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
16031
16032         Work around a bug in both the Linux and SunOS 64-bit kernels:
16033         nanosleep mishandles sleeps for longer than 2**31 seconds.
16034         Problem reported by Frank v Waveren in
16035         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
16036         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
16037         Check for nanosleep bug.
16038         (LIB_NANOSLEEP): Append clock_gettime library if needed.
16039
16040 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
16041
16042         Work around a bug in both the Linux and SunOS 64-bit kernels:
16043         nanosleep mishandles sleeps for longer than 2**31 seconds.
16044         Problem reported by Frank v Waveren in
16045         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
16046         * lib/nanosleep.c (BILLION): New constant.
16047         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
16048         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
16049         implementation.
16050
16051 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
16052
16053         * modules/nanosleep (Depends-on): Add gettime.
16054
16055 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
16056         and Simon Josefsson  <jas@extundo.com>
16057         and Oskar Liljeblad  <oskar@osk.mine.nu>
16058
16059         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
16060         * gnulib-tool (func_import): New license type 'unmodifiable license
16061         text'.
16062         * modules/fdl: Use it.  Longer description.
16063         * module/gpl, module/lgpl: New files.
16064
16065 2006-08-30  Jim Meyering  <jim@meyering.net>
16066
16067         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
16068         shadowing the parameter.
16069
16070 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16071
16072         Sync from Libtool:
16073
16074         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16075
16076         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
16077         sharing with gnulib.  Report by Eric Blake.
16078
16079 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
16080
16081         * modules/isapipe: New file.
16082         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
16083
16084 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
16085
16086         * modules/configmake (Makefile.am): Add a comment, and omit
16087         the CONFIGMAKE_ prefix from generated macro names.  Suggested
16088         by Bruno Haible.
16089
16090 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
16091
16092         * m4/isapipe.m4: New file.
16093
16094 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
16095
16096         * lib/isapipe.c, lib/isapipe.h: New files.
16097
16098 2006-08-29  Jim Meyering  <jim@meyering.net>
16099
16100         * modules/configmake (Makefile.am): Make configmake.h depend on
16101         Makefile.  Otherwise, a stale configmake.h could hang around.
16102
16103 2006-08-29  Eric Blake  <ebb9@byu.net>
16104
16105         * lib/error.c (error_at_line, print_errno_message): Match libc, after
16106         resolution of upstream bug 3044.
16107
16108 2006-08-29  Bruno Haible  <bruno@clisp.org>
16109
16110         * modules/localcharset (Depends-on): Add configmake.
16111         (Makefile.am): Remove setting of LIBDIR through DEFS.
16112
16113 2006-08-29  Bruno Haible  <bruno@clisp.org>
16114
16115         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
16116         defined.
16117
16118 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
16119
16120         * modules/fcntl: New file.
16121         * modules/chdir-safer (Depends-on): Add fcntl.
16122         * modules/fts: Likewise.
16123         * modules/mkdir-p: Likewise.
16124
16125         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
16126         This undoes the most recent change, since we're now addressing the
16127         problem in a different way.
16128
16129         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
16130         into output, since the output might be called Makefile.am even
16131         if $makefile_name is something different.
16132         (func_import): Use $makefile_am rather than
16133         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
16134         empty.
16135
16136         * modules/inttypes (Files): Add m4/inttypes-h.m4.
16137
16138 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
16139
16140         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
16141         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
16142         recent change to stdint.m4, since we're now addressing the problem in a
16143         different way.
16144
16145 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
16146
16147         * m4/fcntl_h.m4: New file.
16148
16149 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
16150
16151         * lib/fcntl_.h: New file.
16152         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
16153         the fcntl module.
16154         * lib/dirchownmod.c: Likewise.
16155         * lib/fts.c: Likewise.
16156
16157         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
16158         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
16159         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
16160         just before including <inttypes.h>, to avoid circular inclusion.
16161
16162 2006-08-28  Jim Meyering  <jim@meyering.net>
16163
16164         * doc/visibility.texi: Actually read and correct the grammar of the
16165         sentence affected by yesterday's change.
16166
16167 2006-08-28  Eric Blake  <ebb9@byu.net>
16168
16169         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
16170         needs wrapper.
16171
16172 2006-08-28  Eric Blake  <ebb9@byu.net>
16173
16174         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
16175
16176 2006-08-28  Eric Blake  <ebb9@byu.net>
16177
16178         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
16179
16180 2006-08-28  Bruno Haible  <bruno@clisp.org>
16181
16182         * modules/c-strstr: New file, from GNU gettext.
16183         * MODULES.html.sh (String handling): Add c-strstr.
16184
16185 2006-08-28  Bruno Haible  <bruno@clisp.org>
16186
16187         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
16188         macros.
16189         Reported by Eric Blake.
16190
16191 2006-08-28  Bruno Haible  <bruno@clisp.org>
16192
16193         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
16194         (VASNPRINTF): Return a string of length > INT_MAX without failing.
16195         * lib/vasprintf.c: Include errno.h, limits.h.
16196         (EOVERFLOW): New fallback definition.
16197         (vasprintf): Test here whether the string length is > INT_MAX.
16198         * lib/vsnprintf.c: Include errno.h, limits.h.
16199         (EOVERFLOW): New fallback definition.
16200         (vsnprintf): Fix bug when generated string was too long for the buffer.
16201         Test here whether the string length is > INT_MAX.
16202
16203 2006-08-28  Bruno Haible  <bruno@clisp.org>
16204
16205         * lib/inttypes_.h (SCNX*): Remove definitions.
16206         Reported by Eric Blake.
16207
16208 2006-08-28  Bruno Haible  <bruno@clisp.org>
16209
16210         * lib/c-strstr.h: New file, from GNU gettext.
16211         * lib/c-strstr.c: New file, from GNU gettext.
16212
16213 2006-08-28  Bruno Haible  <bruno@clisp.org>
16214
16215         * gnulib-tool: Reorder some statements.
16216
16217 2006-08-28  Bruno Haible  <bruno@clisp.org>
16218
16219         * gnulib-tool: New option --makefile-name.
16220         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
16221         $makefile_name.
16222         (func_import): Write $makefile_name to the cache file, and read it from
16223         there unless explicitly specified. Use $makefile_name as file name
16224         instead of Makefile.am. Adjust the recommendations accordingly.
16225
16226 2006-08-28  Bruno Haible  <bruno@clisp.org>
16227
16228         * gnulib-tool (func_verify_module): Check against misapplying patch.
16229
16230 2006-08-28  Bruno Haible  <bruno@clisp.org>
16231
16232         * gnulib-tool (func_relativize, func_relconcat): New functions.
16233         Give an error if --local-dir is given with --update.
16234         Remove trailing slashes from $local_gnulib_dir.
16235         (func_import): Store the relativized $local_gnulib_dir in
16236         gnulib-cache.m4, and read it from there if not specified explicitly.
16237
16238 2006-08-28  Bruno Haible  <bruno@clisp.org>
16239
16240         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
16241         is the current directory. Respect also $local_gnulib_dir.
16242
16243 2006-08-28  Bruno Haible  <bruno@clisp.org>
16244             Simon Josefsson  <jas@extundo.com>
16245
16246         BeOS portability.
16247         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
16248
16249 2006-08-27  Jim Meyering  <jim@meyering.net>
16250
16251         * doc/visibility.texi: Remove duplicate word: "pointer".
16252
16253 2006-08-26  Bruno Haible  <bruno@clisp.org>
16254
16255         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
16256         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
16257         (Makefile.am): Create inttypes.h from inttypes_.h.
16258         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
16259
16260         * modules/imaxabs: New file.
16261
16262         * modules/imaxdiv: New file.
16263
16264 2006-08-26  Bruno Haible  <bruno@clisp.org>
16265
16266         * m4/inttypes.m4: New file.
16267         * m4/_inttypes_h.m4: Remove file.
16268         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
16269         PRI_MACROS_BROKEN.
16270         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
16271
16272         * m4/imaxabs.m4: New file.
16273
16274         * m4/imaxdiv.m4: New file.
16275
16276 2006-08-26  Bruno Haible  <bruno@clisp.org>
16277
16278         * lib/inttypes_.h: New file.
16279         * lib/inttypes.h: Remove file.
16280         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
16281
16282         * lib/imaxabs.c: New file.
16283
16284         * lib/imaxdiv.c: New file.
16285
16286 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
16287
16288         New config-h module, so that "make" output needn't be cluttered
16289         by -DHAVE_CONFIG_H.
16290         * MODULES.html.sh (Support for building libraries and executables):
16291         Add config-h.
16292         * modules/config-h: New file.
16293         * gnulib-tool (nl, sed_transform_lib_file): New vars.
16294         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
16295         the config-h module is used.
16296
16297         New configmake module, so that "make" output needn't be cluttered
16298         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
16299         * MODULES.html.sh (Support for building libraries and executables):
16300         Add configmake.
16301         * modules/configmake: New file.
16302
16303 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
16304
16305         * m4/config-h.m4: New file.
16306
16307 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
16308
16309         * config/srclist.txt: Add elisp-comp.
16310
16311 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
16312
16313         * MODULES.html.sh (Support for building libraries and executables):
16314         Add elisp-comp.
16315         * build-aux/elisp-comp: New file.
16316         * modules/elisp-comp: New file.
16317
16318 2006-08-24  Bruno Haible  <bruno@clisp.org>
16319
16320         * gnulib-tool (func_create_testdir): Use non-default values of
16321         sourcebase and m4base.
16322
16323 2006-08-24  Bruno Haible  <bruno@clisp.org>
16324
16325         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
16326         HTML structure.
16327
16328 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
16329
16330         * modules/openat (Depends-on): Add lchown.
16331
16332 2006-08-23  Bruno Haible  <bruno@clisp.org>
16333
16334         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
16335         of gl_LOCK_EARLY instead of gl_LOCK.
16336
16337 2006-08-23  Bruno Haible  <bruno@clisp.org>
16338
16339         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
16340         on OSF/1 to no.
16341         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
16342
16343 2006-08-23  Bruno Haible  <bruno@clisp.org>
16344
16345         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
16346         as unusable.
16347
16348         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
16349         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
16350         (gl_LOCK): New macro.
16351
16352 2006-08-22  Simon Josefsson  <jas@extundo.com>
16353
16354         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
16355         to md5 module.
16356
16357 2006-08-22  Simon Josefsson  <jas@extundo.com>
16358
16359         * MODULES.html.sh: Add "Support for maintaining and release
16360         projects".
16361
16362         * build-aux/gnupload: New file, from coreutils.
16363
16364 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
16365
16366         Avoid the need for AC_LIBSOURCES in m4 macros.
16367         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
16368         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
16369         * modules/check-version (EXTRA_DIST): Add check-version.h.
16370         * modules/crc (EXTRA_DIST): Add crc.h.
16371         * modules/des (EXTRA_DIST): Add des.h.
16372         * modules/gc (EXTRA_DIST): Add gc.h.
16373         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
16374         * modules/getline (EXTRA_DIST): Add getline.h.
16375         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
16376         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
16377         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
16378         * modules/md2 (EXTRA_DIST): Add md2.h.
16379         * modules/md4 (EXTRA_DIST): Add md4.h.
16380         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
16381         * modules/read-file (EXTRA_DIST): Add read-file.h.
16382         * modules/readline (EXTRA_DIST): Add readline.h.
16383         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
16384         rijndael-api-fst.h.
16385
16386 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
16387
16388         * m4/rijndael.m4 (gl_ARCFOUR):
16389         * m4/arctwo.m4 (gl_ARCTWO):
16390         * m4/check-version.m4 (gl_CHECK_VERSION):
16391         * m4/crc.m4 (gl_CRC):
16392         * m4/des.m4 (gl_DES):
16393         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
16394         * m4/gc.m4 (gl_GC):
16395         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
16396         * m4/getline.m4 (gl_FUNC_GETLINE):
16397         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
16398         * m4/hmac-md5.m4 (gl_HMAC_MD5):
16399         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
16400         * m4/md2.m4 (gl_MD2):
16401         * m4/md4.m4 (gl_MD4):
16402         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
16403         * m4/read-file.m4 (gl_FUNC_READ_FILE):
16404         * m4/readline.m4 (gl_FUNC_READLINE):
16405         * m4/rijndael.m4 (gl_RIJNDAEL):
16406         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
16407         to get the necessary .h files and whatnot.
16408
16409 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
16410
16411         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
16412         gnulib rather than the other way around.
16413         * config/srclistvars.sh (COREUTILS): Remove.
16414
16415 2006-08-22  Jim Meyering  <jim@meyering.net>
16416
16417         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
16418
16419         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
16420
16421 2006-08-22  Eric Blake  <ebb9@byu.net>
16422
16423         * modules/regexprops-generic: New file.
16424         * MODULES.html.sh (Support for building documentation): List it.
16425
16426 2006-08-22  Eric Blake  <ebb9@byu.net>
16427
16428         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
16429         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
16430         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
16431         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
16432
16433 2006-08-22  Bruno Haible  <bruno@clisp.org>
16434
16435         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
16436         and lib_LTLIBRARIES like the other lib_* variables.
16437
16438 2006-08-22  Bruno Haible  <bruno@clisp.org>
16439
16440         * build-aux/x-to-1.in: New file, from GNU gettext.
16441
16442 2006-08-22  Bruno Haible  <bruno@clisp.org>
16443
16444         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
16445         <utmpx.h> exists.
16446
16447 2006-08-22  Bruno Haible  <bruno@clisp.org>
16448
16449         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
16450         <utmpx.h> exists.
16451
16452 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
16453
16454         BeOS portability.
16455         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
16456         exist.
16457         Problem reported by Bruno Haible.
16458
16459 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
16460
16461         Avoid the need for AC_LIBSOURCES in m4 macros.
16462         * modules/acl (EXTRA_DIST): Add acl.h.
16463         * modules/argmatch (Files): Add m4/argmatch.m4.
16464         (configure.ac): Add gl_ARGMATCH.
16465         (EXTRA_DIST): Renamed from lib_SOURCES, for
16466         consistency with the other modules.  Remove argmatch.c.
16467         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
16468         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
16469         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
16470         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
16471         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
16472         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
16473         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
16474         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
16475         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
16476         * modules/closeout (EXTRA_DIST): Add closeout.h.
16477         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
16478         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
16479         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
16480         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
16481         dirname.h; remove basename.c and stripslash.c.
16482         * modules/exclude (EXTRA_DIST): Add exclude.h.
16483         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
16484         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
16485         * modules/file-type (EXTRA_DIST): Add file-type.h.
16486         * modules/filemode (EXTRA_DIST): Add filemode.h.
16487         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
16488         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
16489         * modules/fpending (EXTRA_DIST): Add __fpending.h.
16490         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
16491         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
16492         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
16493         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
16494         * modules/getdate (EXTRA_DIST): Add getdate.c.
16495         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
16496         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
16497         * modules/getpass (EXTRA_DIST): Add getpass.h.
16498         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
16499         * modules/group-member (EXTRA_DIST): Add group-member.h.
16500         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
16501         * modules/hash (EXTRA_DIST): Add hash.h.
16502         * modules/human (EXTRA_DIST): Add human.h.
16503         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
16504         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
16505         * modules/lchown (EXTRA_DIST): Add lchown.h.
16506         * modules/long-options (EXTRA_DIST): Add long-options.h.
16507         * modules/lstat (EXTRA_DIST): Add lstat.h.
16508         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
16509         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
16510         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
16511         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
16512         * modules/memxor (EXTRA_DIST): Add memxor.h.
16513         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
16514         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
16515         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
16516         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
16517         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
16518         * modules/physmem (EXTRA_DIST): Add physmem.h.
16519         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
16520         * modules/posixver (EXTRA_DIST): Add posixver.h.
16521         * modules/quote (EXTRA_DIST): Add quote.h.
16522         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
16523         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
16524         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
16525         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
16526         regex_internal.h regexec.c.
16527         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
16528         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
16529         * modules/same (EXTRA_DIST): Add same.h.
16530         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
16531         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
16532         * modules/savedir (EXTRA_DIST): Add savedir.h.
16533         * modules/sha1 (EXTRA_DIST): Add sha1.h.
16534         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
16535         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
16536         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
16537         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
16538         * modules/strdup (EXTRA_DIST): Add strdup.h.
16539         * modules/strftime (EXTRA_DIST): Add strftime.h.
16540         * modules/strndup (EXTRA_DIST): Add strndup.h.
16541         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
16542         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
16543         * modules/time_r (EXTRA_DIST): Add time_r.h.
16544         * modules/timespec (EXTRA_DIST): Add timespec.h.
16545         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
16546         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
16547         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
16548         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
16549         * modules/userspec (EXTRA_DIST): Add userspec.h.
16550         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
16551         * modules/utimens (EXTRA_DIST): Add utimens.h.
16552         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
16553         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
16554         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
16555         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
16556         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
16557         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
16558         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
16559         * modules/yesno (EXTRA_DIST): Add yesno.h.
16560
16561 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
16562
16563         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
16564
16565         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
16566         * m4/dev-ino.m4, same-inode.m4: Remove.
16567
16568         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
16569         * m4/acl.m4 (AC_FUNC_ACL):
16570         * m4/backupfile.m4 (gl_BACKUPFILE):
16571         * m4/c-strtod.m4 (gl_C99_STRTOLD):
16572         * m4/canon-host.m4 (gl_CANON_HOST):
16573         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
16574         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
16575         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
16576         * m4/cloexec.m4 (gl_CLOEXEC):
16577         * m4/close-stream.m4 (gl_CLOSE_STREAM):
16578         * m4/closeout.m4 (gl_CLOSEOUT):
16579         * m4/dirfd.m4 (gl_FUNC_DIRFD):
16580         * m4/dirname.m4 (gl_DIRNAME):
16581         * m4/exclude.m4 (gl_EXCLUDE):
16582         * m4/exitfail.m4 (gl_EXITFAIL):
16583         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
16584         * m4/file-type.m4 (gl_FILE_TYPE):
16585         * m4/filemode.m4 (gl_FILEMODE):
16586         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
16587         * m4/fpending.m4 (gl_FUNC_FPENDING):
16588         * m4/fprintftime.m4 (gl_FPRINTFTIME):
16589         * m4/fts.m4 (gl_FUNC_FTS):
16590         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
16591         * m4/getdate.m4 (gl_GETDATE):
16592         * m4/gethrxtime.m4 (gl_GETHRXTIME):
16593         * m4/getpagesize.m4 (gl_GETPAGESIZE):
16594         * m4/getpass.m4 (gl_FUNC_GETPASS):
16595         * m4/gettime.m4 (gl_GETTIME):
16596         * m4/getugroups.m4 (gl_GETUGROUPS):
16597         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
16598         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
16599         * m4/hard-locale.m4 (gl_HARD_LOCALE):
16600         * m4/hash.m4 (gl_HASH):
16601         * m4/idcache.m4 (gl_IDCACHE):
16602         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
16603         * m4/lchown.m4 (gl_FUNC_LCHOWN):
16604         * m4/long-options.m4 (gl_LONG_OPTIONS):
16605         * m4/lstat.m4 (gl_FUNC_LSTAT):
16606         * m4/md5.m4 (gl_MD5):
16607         * m4/memcasecmp.m4 (gl_MEMCASECMP):
16608         * m4/memcoll.m4 (gl_MEMCOLL):
16609         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
16610         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
16611         * m4/memxor.m4 (gl_MEMXOR):
16612         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
16613         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
16614         * m4/modechange.m4 (gl_MODECHANGE):
16615         * m4/mountlist.m4 (gl_MOUNTLIST):
16616         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
16617         * m4/openat.m4 (gl_FUNC_OPENAT):
16618         * m4/pathmax.m4 (gl_PATHMAX):
16619         * m4/physmem.m4 (gl_PHYSMEM):
16620         * m4/posixtm.m4 (gl_POSIXTM):
16621         * m4/posixver.m4 (gl_POSIXVER):
16622         * m4/quote.m4 (gl_QUOTE):
16623         * m4/quotearg.m4 (gl_QUOTEARG):
16624         * m4/readtokens.m4 (gl_READTOKENS):
16625         * m4/readutmp.m4 (gl_READUTMP):
16626         * m4/regex.m4 (gl_REGEX):
16627         * m4/safe-read.m4 (gl_SAFE_READ):
16628         * m4/safe-write.m4 (gl_SAFE_WRITE):
16629         * m4/same.m4 (gl_SAME):
16630         * m4/save-cwd.m4 (gl_SAVE_CWD):
16631         * m4/savedir.m4 (gl_SAVEDIR):
16632         * m4/settime.m4 (gl_SETTIME):
16633         * m4/sha1.m4 (gl_SHA1):
16634         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
16635         * m4/stat-macros.m4 (gl_STAT_MACROS):
16636         * m4/stat-time.m4 (gl_STAT_TIME):
16637         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
16638         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
16639         * m4/strdup.m4 (gl_FUNC_STRDUP):
16640         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
16641         * m4/strndup.m4 (gl_FUNC_STRNDUP):
16642         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
16643         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
16644         * m4/time_r.m4 (gl_TIME_R):
16645         * m4/timespec.m4 (gl_TIMESPEC):
16646         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
16647         * m4/unlinkdir.m4 (gl_UNLINKDIR):
16648         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
16649         * m4/userspec.m4 (gl_USERSPEC):
16650         * m4/utimecmp.m4 (gl_UTIMECMP):
16651         * m4/utimens.m4 (gl_UTIMENS):
16652         * m4/xalloc.m4 (gl_XALLOC):
16653         * m4/xgetcwd.m4 (gl_XGETCWD):
16654         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
16655         * m4/xreadlink.m4 (gl_XREADLINK):
16656         * m4/xstrtod.m4 (gl_XSTRTOD):
16657         * m4/yesno.m4 (gl_YESNO):
16658         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
16659         to get the necessary .h files and whatnot.
16660
16661 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
16662             Bruno Haible  <bruno@clisp.org>
16663
16664         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
16665         /bin/sh understanding of '!' conditional negation.
16666
16667 2006-08-21  Jim Meyering  <jim@meyering.net>
16668
16669         * modules/openat (Depends-on): Really alphabetize.
16670
16671         * modules/acl (Depends-on): Add error and quote.
16672
16673         * check-module (find_included_lib_files): Add at-func.c to the
16674         ok-to-include-more-than-once white list.
16675
16676         * modules/openat (Depends-on): Add lstat.  Alphabetize.
16677
16678 2006-08-21  Bruno Haible  <bruno@clisp.org>
16679
16680         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
16681         Emit a pkgdata_DATA variable only if some snippets add contents to it.
16682         Reported by Martin Lambers <marlam@marlam.de>.
16683
16684 2006-08-21  Bruno Haible  <bruno@clisp.org>
16685
16686         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
16687         specify an installation location, don't emit a noinst_LIBRARIES or
16688         noinst_LTLIBRARIES assignment.
16689
16690 2006-08-21  Bruno Haible  <bruno@clisp.org>
16691
16692         BeOS portability.
16693         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
16694         BeOS has mbrtowc() but no <wctype.h>.
16695
16696 2006-08-21  Bruno Haible  <bruno@clisp.org>
16697
16698         BeOS portability.
16699         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
16700         exist.
16701
16702 2006-08-21  Bruno Haible  <bruno@clisp.org>
16703
16704         BeOS portability.
16705         * lib/mbchar.h: Include <wctype.h> only if it exists.
16706
16707 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
16708
16709         Remove files that are no longer needed by their respective modules.
16710         * m4/obstack.m4: Remove.
16711         * m4/strerror_r.m4: Remove.
16712         * m4/uint32_t.m4: Remove.
16713         * m4/uintptr_t.m4: Remove.
16714         * m4/ullong_max.m4: Remove.
16715         * m4/xstrtoimax.m4: Remove.
16716         * m4/xstrtoumax.m4: Remove.
16717
16718         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
16719         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
16720         dependencies now capture this.
16721
16722         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
16723         Do not use AC_LIBSOURCES, since gnulib modules now do this.
16724         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
16725         * m4/human.m4 (gl_HUMAN): Likewise.
16726         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
16727         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
16728
16729         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
16730
16731         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
16732         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
16733         stdint.
16734         * m4/human.m4 (gl_HUMAN): Likewise.
16735         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
16736         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
16737         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
16738         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
16739         * m4/xstrtol (gl_XSTRTOL): Likewise.
16740
16741         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
16742         AC_TYPE_LONG_LONG_INT.
16743         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
16744         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
16745         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
16746         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
16747
16748         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
16749         on stdbool.
16750
16751         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
16752         (gl_PREREQ_XSTRTOUL): Remove.
16753
16754         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
16755
16756         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
16757         mode.
16758
16759 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
16760
16761         Add and change modules to make it easier for coreutils to use
16762         gnulib-tool.
16763         * modules/backupfile (Files): Remove m4/d-ino.m4.
16764         (Depends-on): Add d-ino.
16765         * modules/cycle-check (Depends-on): Add stdint.
16766         (lib_SOURCES): Add cycle-check.h.
16767         * modules/d-ino: New module.
16768         * modules/d-type: New module.
16769         * modules/error (Files): Remove m4/strerror_r.m4.
16770         * modules/filemode (Files): Add m4/st_dm_mode.m4.
16771         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
16772         m4/inttypes_h.m4, m4/uintmax_t.m4.
16773         (Depends-on): Add stdint.
16774         (lib_SOURCES): Add fsusage.h.
16775         * modules/getcwd (Files): Remove d-ino.m4.
16776         (Depends-on): Add d-ino.
16777         * modules/getndelim2 (Depends-on): Add stdint.
16778         * modules/glob (Files): Remove m4/d-type.m4.
16779         (Depends-on): Add d-type.
16780         * modules/host-os: New module.
16781         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
16782         m4/inttypes_h.m4, m4/uintmax_t.m4.
16783         * Depends-on: Add stdint.
16784         (lib_SOURCES): Add human.h.
16785         * modules/inttostr (Files): Remove m4/intmax_t.m4,
16786         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
16787         m4/uintmax_t.m4, m4/ulonglong.m4.
16788         (Depends-on): Add stdint.
16789         (EXTRA_DIST): Add inttostr.h.
16790         * modules/lchmod: New module.
16791         * modules/link-follow: New module.
16792         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
16793         (Depends-on): Add lchmod.
16794         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
16795         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
16796         (Depends-on): Add stdint.
16797         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
16798         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
16799         (Depends-on): Add stdint.
16800         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
16801         * modules/perl: New module.
16802         * modules/regex (Depends-on): Add stdint.
16803         * modules/rmdir-errno: New module.
16804         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
16805         m4/intmax_t.m4.
16806         (Depends-on): Add stdint.
16807         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
16808         m4/uintmax_t.m4.
16809         (Depends-on): Add stdint.
16810         * modules/unlink-busy: New module.
16811         * modules/utimecmp (Depends-on): Add stdint.
16812         * modules/uptime: New module.
16813         * modules/winsz-ioctl: New module.
16814         * modules/winsz-termios: New module.
16815         * modules/xnanosleep (Depends-on): Add nanosleep.
16816         * modules/ullong_max: Remove.
16817         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
16818         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
16819         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
16820         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
16821         (Depends-on): Add inttypes.
16822         (lib_SOURCES): Add xstrtol.h.
16823         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
16824         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
16825         * MODULES.html.sh: Move 'assert' into the assert section.
16826         Move 'dummy' into the linking section.
16827         Remove ullong_max.
16828         Add section for compatibility checks for POSIX:2001 functions,
16829         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
16830         winsz-ioctl, and winsz-termios into it.
16831         Add lchmod.
16832         Add top-level Misc section and put host-os, perl, and uptime
16833         into it.
16834
16835 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
16836
16837         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
16838         now assume the stdint module.  Do not include inttypes.h.
16839         * lib/fsusage.h: Likewise.
16840         * lib/getndelim2.c: Likewise.
16841         * lib/human.h: Likewise.
16842         * lib/inttostr.h: Likewise.
16843         * lib/obstack.c: Likewise.
16844         * lib/regex_internal.h: Likewise.
16845         * lib/tempname.c: Likewise.
16846         * lib/utimecmp.c: Likewise.
16847         * lib/xstrtol.h: Likewise.
16848
16849         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
16850
16851         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
16852         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
16853         * lib/xtime.h: Likewise.
16854
16855 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
16856
16857         * modules/openat (Files): Add lib/fchmodat.c.
16858         Fixes problem reported by Jay Youngman.
16859
16860 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
16861
16862         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
16863         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
16864
16865 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
16866             Bruno Haible  <bruno@clisp.org>
16867
16868         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
16869         and is a script that invokes bison. Tighten the code. Add comments.
16870
16871 2006-08-18  Jim Meyering  <jim@meyering.net>
16872
16873         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
16874         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
16875         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
16876         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
16877
16878 2006-08-18  Bruno Haible  <bruno@clisp.org>
16879
16880         * modules/bison-i18n: New file.
16881         * MODULES.html.sh (Internationalization functions): Add it.
16882
16883 2006-08-18  Bruno Haible  <bruno@clisp.org>
16884
16885         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
16886         sys/statvfs.h. When getmntinfo was found, check its declaration and
16887         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
16888
16889 2006-08-18  Bruno Haible  <bruno@clisp.org>
16890
16891         * m4/bison-i18n.m4: New file, from bison.
16892
16893 2006-08-18  Bruno Haible  <bruno@clisp.org>
16894
16895         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
16896         (ME_DUMMY): Treat "kernfs" as a dummy.
16897         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
16898
16899 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
16900
16901         Update from coreutils.
16902
16903         2006-08-15  Jim Meyering  <jim@meyering.net>
16904
16905         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
16906
16907         2006-01-17  Jim Meyering  <jim@meyering.net>
16908
16909         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
16910
16911         2006-01-11  Jim Meyering  <jim@meyering.net>
16912
16913         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
16914         Check for the lchmod function.
16915
16916 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
16917
16918         Update from coreutils.
16919
16920         * lib/__fpending.h: Add copyright notice.
16921         * lib/fprintftime.h: Likewise.
16922         * lib/savedir.c: Use (C) in copyright notice.
16923         * lib/savedir.h: Likewise.
16924
16925         2006-08-15  Jim Meyering  <jim@meyering.net>
16926
16927         * lib/at-func.c: New file, with the logic of all emulated at-functions.
16928         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
16929         in support of the EXPECTED_ERRNO macro.
16930         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
16931         definitions.  Instead, define the appropriate symbols and include
16932         "at-func.c".
16933         * lib/mkdirat.c (mkdirat): Likewise.
16934         * lib/fchmodat.c (fchmodat): Likewise.
16935         (ENOSYS): Remove definition.
16936         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
16937         it.  Don't include "unistd--.h" -- it wasn't ever used.
16938
16939         2006-01-17  Jim Meyering  <jim@meyering.net>
16940
16941         Rewrite fts.c not to change the current working directory,
16942         by using openat, fstatat, fdopendir, etc..
16943
16944         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
16945         (HAVE_OPENAT_SUPPORT): Define.
16946         [_LIBC] (fchdir): Don't undef or define; no longer used.
16947         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
16948         Now, this `function' always succeeds, and consumes its file descriptor
16949         parameter -- so callers must not close such FDs.  Update callers.
16950         (diropen_fd, opendirat, cwd_advance_fd): New functions.
16951         (diropen): Add parameter, SP.  Adjust all callers.
16952         Implement using diropen_fd, rather than open.
16953         (fts_open): Initialize new member, fts_cwd_fd.
16954         Remove fts_rft-setting code.
16955         (fts_close): Close fts_cwd_fd, if necessary.
16956         (__opendir2): Define in terms of opendir or opendirat,
16957         depending on whether the FST_NOCHDIR flag is set.
16958         (fts_build): Since fts_safe_changedir consumes its FD, and since
16959         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
16960         and close the dup'd file descriptor upon failure.
16961         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
16962         (fts_safe_changedir): Tweak semantics to reflect that this function
16963         now calls cwd_advance_fd and hence consumes its FD argument.
16964         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
16965         [struct FTS] (fts_rft): Remove now-unused member.
16966         [struct FTS] (fts_cycle.state): Improve comment.
16967
16968         * lib/openat.c (openat_needs_fchdir): New function.
16969         * lib/openat.h (openat_needs_fchdir): Declare it.
16970
16971 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
16972
16973         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
16974         Problem and fix reported by Pádraig Brady in
16975         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
16976
16977 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
16978
16979         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
16980
16981 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
16982
16983         * lib/memcoll.c (memcoll): Optimize for the common case where the
16984         arguments are bytewise equal.
16985
16986 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
16987
16988         * doc/regexprops-generic.texi: Add a copyright notice.
16989
16990 2006-08-15  Bruno Haible  <bruno@clisp.org>
16991
16992         * modules/tmpdir (License): Change to LGPL.
16993
16994 2006-08-15  Bruno Haible  <bruno@clisp.org>
16995
16996         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
16997         module.
16998
16999 2006-08-14  Simon Josefsson  <jas@extundo.com>
17000
17001         * config/srclist.txt: Add gnupload.
17002
17003 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
17004
17005         Change copyright notice from LGPL 2 to GPL 2, since that's the
17006         standard form used in the gnulib repository.
17007         * tests/test-lock.c: Likewise.
17008         * tests/test-stdint.c: Likewise.
17009         * tests/test-tls.c: Likewise.
17010
17011         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
17012         prelude-manager.  User shorter URLs for GNU projects, without '?'.
17013         Add copyright notice.
17014
17015         * check-module: Add copyright notice.  Output a copyright
17016         notice if "--version" is specified.
17017         * modules/COPYING: New file.
17018         * tests/test-getaddrinfo.c: Add copyright notice.
17019         * tests/test-verify.c: Likewise.
17020
17021 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
17022
17023         Change copyright notice from LGPL 2 to GPL 2, since that's the
17024         standard form used in the gnulib repository.
17025         * lib/lock.c: LGPL -> GPL.
17026         * lib/lock.h: Likewise.
17027         * lib/strnlen1.c: Likewise.
17028         * lib/strnlen1.h: Likewise.
17029         * lib/tls.c: Likewise.
17030         * lib/tls.h: Likewise.
17031         * lib/tmpdir.c: Likewise.
17032
17033         * lib/TODO: Remove; this belongs only in coreutils.
17034
17035 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
17036
17037         Add copyright notices to long-enough files that lack them, since
17038         otherwise the files aren't clearly free.  Use the same notice that
17039         getdate.texi already uses.
17040         * doc/alloca-opt.texi: Add copyright notice.
17041         * doc/alloca.texi: Likewise.
17042         * doc/ctime.texi: Likewise.
17043         * doc/functions.texi: Likewise.
17044         * doc/gcd.texi: Likewise.
17045         * doc/gnulib-tool.texi: Likewise.
17046         * doc/inet_ntoa.texi: Likewise.
17047         * doc/visibility.texi: Likewise.
17048
17049         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
17050         * doc/quote.texi: Add copyright notice.
17051
17052         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
17053         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
17054         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
17055         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
17056         is now obsolete, and give a pointer to the Sun list.
17057         Add copyright notice.
17058
17059 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
17060
17061         * config/srclistvars.sh: Add copyright notice.
17062
17063 2006-08-14  Eric Blake  <ebb9@byu.net>
17064
17065         Import the following change from libc:
17066
17067         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
17068
17069         Upstream bug 2997.
17070         * lib/misc/error.c: Add space between program name and message if file
17071         name is missing.
17072
17073 2006-08-12  Karl Berry  <karl@gnu.org>
17074
17075         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
17076         remove, these originate in gnulib now.
17077
17078 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17079
17080         * doc/Makefile (standards.info standards.html standards.dvi):
17081         Also depend on make-stds.texi.
17082
17083 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
17084
17085         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
17086         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
17087
17088         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
17089         in wchar_t.  Problem reported by Eric Blake.
17090
17091         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
17092         LEN is smaller than SIZE.  Suggested by Bruno Haible.
17093         Also, help the compiler to keep LEN in a register.
17094
17095 2006-08-11  Eric Blake  <ebb9@byu.net>
17096
17097         * users.txt: Sort.  Add tar.
17098
17099 2006-08-11  Bruno Haible  <bruno@clisp.org>
17100
17101         * users.txt: New file.
17102
17103 2006-08-11  Bruno Haible  <bruno@clisp.org>
17104
17105         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
17106         before <wchar.h>. Needed for OSF/1 and BSD/OS.
17107
17108 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
17109
17110         * modules/snprintf (Depends-on): Remove minmax.
17111         (Maintainer): Add self and Bruno.
17112
17113 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
17114
17115         * lib/.cppi-disable: Add snprintf.h, socket_.h.
17116         * lib/snprintf.c: Include <errno.h> and <limits.h>.
17117         (EOVERFLOW): Define if the system does not.
17118         Do not include "minmax.h"; it wasn't used.
17119         (snprintf): Don't assume size_t promotes to an unsigned type.
17120         Fix bug when generated string was too long for the buffer: the
17121         buffer's contents are supposed to be the initial prefix of the
17122         output.  Don't assume vasnprintf returns EOVERFLOW if the size
17123         exceeds INT_MAX; do the check ourselves.
17124
17125         Import the following changes from libc:
17126
17127         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
17128
17129         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
17130         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
17131         set wc to the byte which couldn't be converted.
17132         (re_string_reconstruct): Don't clear valid_raw_len before calling
17133         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
17134         tip_context using re_string_context_at.
17135
17136         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
17137
17138         * lib/posix/regex.h: g++ still cannot handled [restrict].
17139
17140         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
17141
17142         * lib/posix/regex.h: Remove special handling for VMS.
17143
17144 2006-08-10  Jim Meyering  <jim@meyering.net>
17145
17146         * modules/same-inode: New module.
17147         * modules/dev-ino: New module.
17148         * modules/cycle-check: Depend on these modules, rather than simply
17149         including their .h files.
17150         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
17151         required via m4/cycle-check.m4.
17152         * modules/same: Depend on new same-inode module, rather than
17153         including same-inode.h.
17154         * modules/chdir-safer: New file.
17155
17156         * modules/chown (Depends-on): Add stat-macros.
17157
17158 2006-08-10  Jim Meyering  <jim@meyering.net>
17159
17160         * m4/cycle-check.m4: New file.
17161         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
17162         * m4/dev-ino.m4, m4/same-inode.m4: New files.
17163
17164 2006-08-10  Eric Blake  <ebb9@byu.net>
17165
17166         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
17167         in from original proposal.
17168
17169 2006-08-10  Eric Blake  <ebb9@byu.net>
17170         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17171
17172         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
17173         namespace.
17174
17175 2006-08-10  Bruno Haible  <bruno@clisp.org>
17176
17177         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
17178         as well.
17179
17180 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
17181
17182         Sync from coreutils.
17183
17184         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
17185
17186         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
17187         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
17188
17189 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
17190
17191         * modules/restrict: Remove; no longer needed now that we assume
17192         Autoconf 2.59 or later.
17193         * MODULES.html.sh: Remove 'restrict'.
17194         * modules/argp (Depends-on): Remove 'restrict'.
17195         * modules/base64 (Depends-on): Likewise.
17196         * modules/gc (Depends-on): Likewise.
17197         * modules/getaddrinfo (Depends-on): Likewise.
17198         * modules/glob (Depends-on): Likewise.
17199         * modules/inet_ntop (Depends-on): Likewise.
17200         * modules/inet_pton (Depends-on): Likewise.
17201         * modules/memxor (Depends-on): Likewise.
17202         * modules/regex (Depends-on): Likewise.
17203         * modules/strtok_r (Depends-on): Likewise.
17204         * modules/time_r (Depends-on): Likewise.
17205
17206 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
17207
17208         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
17209         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
17210         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
17211         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
17212         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
17213         * m4/memxor.m4 (gl_MEMXOR): Likewise.
17214         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
17215         gl_C_RESTRICT replaced by AC_C_RESTRICT.
17216
17217         Merge from coreutils.
17218         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
17219         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
17220         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
17221         * m4/time_r.m4 (gl_TIME_R): Likewise.
17222
17223 2006-08-09  Karl Berry  <karl@gnu.org>
17224
17225         * config/srclist.txt: no more gettext-tools, per Bruno.
17226
17227 2006-08-08  Eric Blake  <ebb9@byu.net>
17228
17229         * modules/verror: New module.
17230         * MODULES.html.sh: Document it.
17231
17232 2006-08-08  Eric Blake  <ebb9@byu.net>
17233
17234         * lib/verror.h, lib/verror.c: New files.
17235
17236 2006-08-08  Eric Blake  <ebb9@byu.net>
17237
17238         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
17239         verror_at_line output complies with GNU Coding Standards even when
17240         file is NULL.
17241
17242 2006-08-07  Bruno Haible  <bruno@clisp.org>
17243
17244         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
17245         versions of AIX.
17246         Reported by Ralf Wildenhues.
17247
17248 2006-08-07  Bruno Haible  <bruno@clisp.org>
17249
17250         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
17251         in an AC_DEFUN. Needed so that the autoconf snippets can use
17252         AC_REQUIRE.
17253
17254 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17255
17256         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17257         Initialize pkgdata_DATA.
17258         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
17259         overriding it.
17260
17261 2006-08-06  Eric Blake  <ebb9@byu.net>
17262
17263         * lib/error.h: Fold in some upstream changes from glibc.
17264         * lib/error.c: Likewise.
17265
17266 2006-08-04  Bruno Haible  <bruno@clisp.org>
17267
17268         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17269         Make the mostlyclean-local rule depend on mostlyclean-generic.
17270         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
17271
17272 2006-07-31  Bruno Haible  <bruno@clisp.org>
17273
17274         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
17275         <stdlib.h>, <string.h>.
17276
17277 2006-07-30  Bruno Haible  <bruno@clisp.org>
17278
17279         * modules/readlink (License): Change to LGPL.
17280
17281 2006-07-30  Bruno Haible  <bruno@clisp.org>
17282
17283         * modules/javaversion (Makefile.am): Distribute javaversion.java and
17284         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
17285         set PKGDATADIR to point to it.
17286
17287 2006-07-30  Bruno Haible  <bruno@clisp.org>
17288
17289         * modules/csharpexec (configure.ac): Comment out macro invocation.
17290         * modules/javaexec (configure.ac): Likewise.
17291         * modules/javacomp-script (configure.ac): Likewise.
17292
17293         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
17294
17295 2006-07-30  Bruno Haible  <bruno@clisp.org>
17296
17297         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
17298         linked-list.
17299
17300 2006-07-30  Bruno Haible  <bruno@clisp.org>
17301
17302         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
17303
17304 2006-07-30  Bruno Haible  <bruno@clisp.org>
17305
17306         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17307         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
17308         get removed.
17309
17310 2006-07-29  Bruno Haible  <bruno@clisp.org>
17311
17312         Make it possible for gnulib-tool to work with locally modified or
17313         augmented gnulib repositories.
17314         * gnulib-tool (func_usage): Document --local-dir option.
17315         (local_gnulib_dir): New variable.
17316         Handle --local-dir option.
17317         (func_lookup_file): New function.
17318         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
17319         (func_get_description, func_get_filelist, func_get_description,
17320         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
17321         func_get_automake_snippet, func_get_include_directive,
17322         func_get_license, func_get_maintainer): Use func_lookup_file.
17323         (func_import, func_create_testdir): Use func_lookup_file.
17324
17325 2006-07-29  Bruno Haible  <bruno@clisp.org>
17326
17327         * modules/setenv (Depends-on): Add unistd.
17328
17329 2006-07-29  Bruno Haible  <bruno@clisp.org>
17330
17331         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
17332
17333 2006-07-29  Bruno Haible  <bruno@clisp.org>
17334
17335         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
17336
17337 2006-07-29  Bruno Haible  <bruno@clisp.org>
17338
17339         * gnulib-tool (import, update): If there is no Makefile.am, look at
17340         aclocal.m4, instead of bailing out.
17341
17342 2006-07-29  Bruno Haible  <bruno@clisp.org>
17343
17344         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
17345         Categorize the options by when they are useful.
17346
17347 2006-07-29  Bruno Haible  <bruno@clisp.org>
17348
17349         * gnulib-tool (func_usage): Document option --no-libtool.
17350         Handle option --no-libtool.
17351         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
17352         for changed semantics of $libtool variable.
17353         (func_import): Likewise. If libtool is not used, show this through
17354         an option --no-libtool.
17355         (func_create_testdir): Update.
17356
17357 2006-07-29  Bruno Haible  <bruno@clisp.org>
17358
17359         * gnulib-tool (func_import): Extend error message about missing
17360         --doc-base.
17361
17362 2006-07-29  Bruno Haible  <bruno@clisp.org>
17363
17364         * gnulib-tool (func_import): Don't create the $docbase directory if
17365         there is no file to store there.
17366
17367 2006-07-29  Bruno Haible  <bruno@clisp.org>
17368
17369         * gnulib-tool (autoconf_minversion): If a --dir option is given and
17370         relevant, look for configure.ac there, not in the current directory.
17371         Also use a simple search for AC_PREREQ, not "autoconf --trace".
17372
17373 2006-07-29  Bruno Haible  <bruno@clisp.org>
17374
17375         * gnulib-tool (SORT): New variable.
17376         (func_usage): Undocument --assume-autoconf option.
17377         Remove --assume-autoconf option handling.
17378         (autoconf_minversion): Determine from the contents of configure.ac.
17379         (func_import): Remove autoconf_minversion handling.
17380         Suggested by Eric Blake.
17381
17382 2006-07-29  Bruno Haible  <bruno@clisp.org>
17383
17384         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
17385
17386 2006-07-29  Bruno Haible  <bruno@clisp.org>
17387
17388         * config/srclist.txt (*setenv.[ch]): Remove rules.
17389
17390 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17391
17392         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
17393
17394 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17395
17396         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
17397         arpa/inet.h.
17398
17399 2006-07-28  Simon Josefsson  <jas@extundo.com>
17400
17401         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
17402         * modules/inet_pton (Depends-on): Likewise.
17403
17404 2006-07-28  Simon Josefsson  <jas@extundo.com>
17405
17406         * m4/netinet_in_h.m4: New file.
17407
17408 2006-07-28  Simon Josefsson  <jas@extundo.com>
17409
17410         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
17411         #include's.
17412
17413 2006-07-28  Simon Josefsson  <jas@extundo.com>
17414
17415         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
17416         #include's.
17417
17418 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
17419
17420         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
17421         setgid on directories only if they set these bits.
17422         * lib/modechange.h: Remove obsolete comment about masks.
17423
17424 2006-07-28  Eric Blake  <ebb9@byu.net>
17425
17426         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
17427         macro expansion.
17428
17429 2006-07-28  Bruno Haible  <bruno@clisp.org>
17430
17431         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
17432
17433 2006-07-28  Bruno Haible  <bruno@clisp.org>
17434
17435         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
17436
17437 2006-07-28  Bruno Haible  <bruno@clisp.org>
17438
17439         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
17440         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
17441         Define fallbacks.
17442         Avoids link error on FreeBSD 4.x.
17443         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
17444
17445         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
17446         encoding.
17447         * lib/mbswidth.c (iswcntrl): Likewise.
17448
17449 2006-07-27  Bruno Haible  <bruno@clisp.org>
17450
17451         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
17452         test.
17453
17454 2006-07-27  Bruno Haible  <bruno@clisp.org>
17455
17456         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
17457         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
17458         defined.
17459
17460 2006-07-26  Eric Blake  <ebb9@byu.net>
17461
17462         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
17463
17464 2006-07-26  Eric Blake  <ebb9@byu.net>
17465
17466         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
17467         like mingw that lack mkstemp.
17468         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
17469         avoid compilation warning on mingw.
17470
17471 2006-07-26  Bruno Haible  <bruno@clisp.org>
17472
17473         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
17474         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
17475         INT_FAST*_MIN, INTPTR_MIN.
17476
17477 2006-07-25  Bruno Haible  <bruno@clisp.org>
17478
17479         * modules/version-etc (Depends-on): Add stdarg.
17480
17481 2006-07-25  Bruno Haible  <bruno@clisp.org>
17482
17483         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
17484         complex commands.
17485
17486 2006-07-25  Bruno Haible  <bruno@clisp.org>
17487
17488         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
17489         defined in <stdarg.h> or config.h.
17490
17491 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
17492
17493         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
17494         (gl_STDIO_SAFER): Remove.
17495
17496 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
17497
17498         * MODULES.html.sh (File stream based Input/Output):
17499         Add fopen-safer, tmpfile-safer; remove stdio-safer.
17500         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
17501         * modules/fopen-safer, modules/tmpfile-safer: New files.
17502         * modules/stdio-safer: Remove.
17503
17504 2006-07-24  Bruno Haible  <bruno@clisp.org>
17505
17506         * modules/tmpdir: New file.
17507         * MODULES.html.sh (File system functions): Add it.
17508
17509 2006-07-24  Bruno Haible  <bruno@clisp.org>
17510
17511         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
17512         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
17513
17514 2006-07-24  Bruno Haible  <bruno@clisp.org>
17515
17516         * modules/clean-temp: New file.
17517
17518 2006-07-24  Bruno Haible  <bruno@clisp.org>
17519
17520         * m4/tmpdir.m4: New file, from GNU gettext.
17521
17522 2006-07-24  Bruno Haible  <bruno@clisp.org>
17523
17524         * lib/tmpdir.h: New file, from GNU gettext.
17525         * lib/tmpdir.c: New file, from GNU gettext.
17526
17527 2006-07-24  Bruno Haible  <bruno@clisp.org>
17528
17529         * lib/clean-temp.h: New file, from GNU gettext.
17530         * lib/clean-temp.c: New file, from GNU gettext.
17531
17532 2006-07-23  Eric Blake  <ebb9@byu.net>
17533
17534         * modules/stdio-safer (Files): Add tmpfile-safer.c.
17535         (Depends-on): Add binary-io.
17536
17537 2006-07-23  Eric Blake  <ebb9@byu.net>
17538
17539         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
17540
17541 2006-07-23  Eric Blake  <ebb9@byu.net>
17542
17543         * lib/tmpfile-safer.c: New file.
17544         * lib/stdio-safer.h (fopen_safer): Add prototype.
17545         * lib/stdio--.h (tmpfile): Make safer.
17546
17547 2006-07-23  Bruno Haible  <bruno@clisp.org>
17548
17549         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
17550         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
17551         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
17552         gl_linked_remove_at): Use it.
17553
17554 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17555         and Simon Josefsson <jas@extundo.com>
17556
17557         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
17558
17559         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
17560
17561 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
17562
17563         * modules/close-stream: New file.
17564         * modules/closeout (Description): Make it clear that it exits
17565         with a diagnostic on error.
17566         (Depends-on): Add close-stream.  Remove fpending, stdbool.
17567         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
17568
17569 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
17570
17571         * m4/close-stream.m4: New file.
17572
17573 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
17574
17575         * lib/close-stream.c, lib/close-stream.h: New files.
17576
17577 2006-07-22  Bruno Haible  <bruno@clisp.org>
17578
17579         Merge from GNU gettext 0.15.
17580
17581         2006-05-01  Bruno Haible  <bruno@clisp.org>
17582
17583                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
17584
17585         2006-07-22  Bruno Haible  <bruno@clisp.org>
17586
17587                 * modules/javaversion: New file.
17588                 * MODULES.html.sh (Java): Add javaversion.
17589
17590         2006-03-12  Bruno Haible  <bruno@clisp.org>
17591
17592                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
17593
17594         2005-12-04  Bruno Haible  <bruno@clisp.org>
17595
17596                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
17597                 (untested).
17598
17599         2006-06-21  Bruno Haible  <bruno@clisp.org>
17600
17601                 Avoid warnings from recent versions of mcs.
17602                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
17603                 -o, -L, -r any more. Use options documented since mcs-1.0
17604                 instead. Similarly for -g.
17605
17606         2005-12-04  Bruno Haible  <bruno@clisp.org>
17607
17608                 * build-aux/csharpcomp.sh.in: Suffix for resources is
17609                 .resources, not .resource.
17610
17611         2005-07-09  Bruno Haible  <bruno@clisp.org>
17612
17613                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
17614                 add a .dll suffix.
17615                 Reported by Mark Junker <mjscod@gmx.de>.
17616
17617         2006-07-22  Bruno Haible  <bruno@clisp.org>
17618
17619                 * modules/gettext: Upgrade to gettext-0.15.
17620                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
17621                 m4/visibility.m4.
17622                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
17623
17624 2006-07-22  Bruno Haible  <bruno@clisp.org>
17625
17626         Merge from GNU gettext 0.15.
17627
17628         2006-03-25  Bruno Haible  <bruno@clisp.org>
17629
17630                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
17631
17632         2006-07-21  Bruno Haible  <bruno@clisp.org>
17633
17634                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
17635                 "1.1".
17636
17637         2006-05-09  Bruno Haible  <bruno@clisp.org>
17638
17639                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
17640                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
17641                 for the conftestver execution.
17642
17643         2006-05-01  Bruno Haible  <bruno@clisp.org>
17644
17645                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
17646                 optional target-version argument. Verify that the compiler
17647                 groks source of the specified source-version, or add -source
17648                 option as necessary. Verify that the compiler produces
17649                 bytecode in the specified target-version, or add -target and
17650                 -source options as necessary. Make the result of the test
17651                 available as variable CONF_JAVAC. Also log error output in
17652                 config.log.
17653
17654         2006-03-11  Bruno Haible  <bruno@clisp.org>
17655
17656                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
17657
17658         2006-05-09  Bruno Haible  <bruno@clisp.org>
17659
17660                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
17661                 CLASSPATH_SEPARATOR to a semicolon.
17662
17663         2006-03-12  Bruno Haible  <bruno@clisp.org>
17664
17665                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
17666                 available as variable CONF_JAVA, for subsequent autoconf
17667                 tests. Also log error output in config.log.
17668
17669         2006-07-19  Bruno Haible  <bruno@clisp.org>
17670
17671                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
17672                 that getline works on glibc2 systems. Needed to avoid trouble
17673                 in relocatable.c.
17674                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
17675
17676         2005-12-04  Bruno Haible  <bruno@clisp.org>
17677
17678                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
17679                 launcher (untested).
17680
17681         2005-12-04  Bruno Haible  <bruno@clisp.org>
17682
17683                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
17684
17685         2006-07-22  Bruno Haible  <bruno@clisp.org>
17686
17687                 * gettext.m4: Update from GNU gettext-0.15.
17688                 * nls.m4: Likewise.
17689                 * po.m4: Likewise.
17690                 * inttypes-pri.m4: Likewise.
17691                 * inttypes-h.m4: Renamed from inttypes.m4.
17692                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
17693
17694 2006-07-22  Bruno Haible  <bruno@clisp.org>
17695
17696         Merge from GNU gettext 0.15.
17697
17698         2005-07-05  Bruno Haible  <bruno@clisp.org>
17699
17700                 * printf-args.c (printf_fetchargs): Work around broken
17701                 definition of wint_t on mingw.
17702
17703         2005-02-12  Bruno Haible  <bruno@clisp.org>
17704
17705                 * xallocsa.h: Add extern "C" for C++.
17706
17707         2006-05-17  Bruno Haible  <bruno@clisp.org>
17708
17709                 Cygwin portability.
17710                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
17711
17712         2006-04-30  Bruno Haible  <bruno@clisp.org>
17713
17714                 * progreloc.c: Include <mach-o/dyld.h> if available.
17715                 (find_executable): Use _NSGetExecutablePath when possible.
17716
17717         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
17718
17719                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
17720                 function.
17721
17722         2005-12-29  Bruno Haible  <bruno@clisp.org>
17723
17724                 * progreloc.c (set_program_name_and_installdir): Fix
17725                 compilation error.
17726
17727         2005-12-04  Bruno Haible  <bruno@clisp.org>
17728
17729                 Cygwin portability.
17730                 * progreloc.c: Include <windows.h> also on Cygwin.
17731                 (find_executable): Add support for Cygwin.
17732                 (set_program_name_and_installdir): Handle also platforms with
17733                 nonempty EXEEXT.
17734
17735         2006-07-11  Bruno Haible  <bruno@clisp.org>
17736
17737                 * javacomp.c: Fix a comment.
17738                 Reported by Jim Meyering.
17739
17740         2006-04-30  Bruno Haible  <bruno@clisp.org>
17741
17742                 * javacomp.h (compile_java_class): Add source_version,
17743                 target_version arguments.
17744                 * javacomp.c: Rewritten to choose only a compiler that
17745                 respects the specified source_version and target_version.
17746
17747         2006-06-27  Bruno Haible  <bruno@clisp.org>
17748
17749                 Assume correct S_ISDIR macro.
17750                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
17751
17752         2006-07-22  Bruno Haible  <bruno@clisp.org>
17753
17754                 * javaversion.h: New file, from GNU gettext.
17755                 * javaversion.c: New file, from GNU gettext.
17756                 * javaversion.java: New file, from GNU gettext.
17757                 * javaversion.class: New file, from GNU gettext.
17758
17759         2006-05-17  Bruno Haible  <bruno@clisp.org>
17760
17761                 Cygwin portability.
17762                 * javaexec.c (execute_java_class): Test for jview program
17763                 also on Cygwin.
17764
17765         2006-04-09  Bruno Haible  <bruno@clisp.org>
17766
17767                 * fatal-signal.c: Don't include string.h.
17768                 (at_fatal_signal): Use a copying loop instead of memcpy.
17769
17770         2005-12-04  Bruno Haible  <bruno@clisp.org>
17771
17772                 * csharpexec.c: Add support for 'clix' launcher (untested).
17773                 (execute_csharp_using_sscli): New function.
17774                 (execute_csharp_program): Call it.
17775
17776         2006-06-21  Bruno Haible  <bruno@clisp.org>
17777
17778                 Avoid warnings from recent versions of mcs.
17779                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
17780                 -o, -L, -r any more. Use options documented since mcs-1.0
17781                 instead. Similarly for -g.
17782
17783         2005-07-09  Bruno Haible  <bruno@clisp.org>
17784
17785                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
17786                 add a .dll suffix.
17787                 Reported by Mark Junker <mjscod@gmx.de>.
17788
17789         2006-06-17  Bruno Haible  <bruno@clisp.org>
17790
17791                 * config.charset: Update for NetBSD 3.0.
17792
17793         2006-05-17  Bruno Haible  <bruno@clisp.org>
17794
17795                 Cygwin portability.
17796                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
17797
17798         2006-05-16  Bruno Haible  <bruno@clisp.org>
17799
17800                 * localcharset.c [CYGWIN]: Include <windows.h>.
17801                 (get_charset_aliases): For Cygwin, return the same CPxxx
17802                 aliases list as under WIN32.
17803                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
17804                 the environment variables. Fall back to GetACP().
17805
17806         2006-04-05  Bruno Haible  <bruno@clisp.org>
17807
17808                 * config.charset: Update Juan Manuel Guerrero's address.
17809
17810         2005-02-12  Bruno Haible  <bruno@clisp.org>
17811
17812                 * allocsa.h: Add extern "C" for C++.
17813
17814         2005-02-10  Bruno Haible  <bruno@clisp.org>
17815
17816                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
17817                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
17818
17819         2006-07-22  Bruno Haible  <bruno@clisp.org>
17820
17821                 * gettext.h: Update to GNU gettext-0.15.
17822
17823 2006-07-22  Bruno Haible  <bruno@clisp.org>
17824
17825         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
17826         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
17827         lib-prefix.m4, longdouble.m4, ssize_t.m4.
17828
17829 2006-07-21  Eric Blake  <ebb9@byu.net>
17830
17831         * modules/stdlib-safer: New file.
17832         * MODULES.html.sh (File stream based Input/Output): Add
17833         stdlib-safer.
17834
17835 2006-07-21  Eric Blake  <ebb9@byu.net>
17836
17837         * lib/stdlib-safer.h: New file from coreutils, required by
17838         stdlib--.h.
17839
17840 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
17841
17842         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
17843
17844 2006-07-20  Bruno Haible  <bruno@clisp.org>
17845
17846         * gnulib-tool: Recognize new option --assume-autoconf.
17847         (autoconf_minversion): New variable.
17848         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
17849
17850 2006-07-20  Bruno Haible  <bruno@clisp.org>
17851
17852         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
17853
17854 2006-07-19  Derek R. Price  <derek@ximbiot.com>
17855
17856         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
17857         Reindent and repaginate.
17858
17859 2006-07-19  Derek Price  <derek@ximbiot.com>
17860
17861         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
17862         Correct grammar.
17863
17864 2006-07-17  Bruno Haible  <bruno@clisp.org>
17865
17866         * modules/list: New file.
17867         * modules/array-list: New file.
17868         * modules/carray-list, modules/carray-list-tests: New files.
17869         * modules/linked-list, modules/linked-list-tests: New files.
17870         * modules/avltree-list, modules/avltree-list-tests: New files.
17871         * modules/rbtree-list, modules/rbtree-list-tests: New files.
17872         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
17873         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
17874         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
17875         * modules/oset: New file.
17876         * modules/array-oset: New file.
17877         * modules/avltree-oset, modules/avltree-oset-tests: New files.
17878         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
17879         * tests/test-carray_list.c: New file.
17880         * tests/test-linked_list.c: New file.
17881         * tests/test-avltree_list.c: New file.
17882         * tests/test-rbtree_list.c: New file.
17883         * tests/test-linkedhash_list.c: New file.
17884         * tests/test-avltreehash_list.c: New file.
17885         * tests/test-rbtreehash_list.c: New file.
17886         * tests/test-avltree_oset.c: New file.
17887         * tests/test-rbtree_oset.c: New file.
17888         * MODULES.html.sh (Container data structures): New section.
17889
17890 2006-07-17  Bruno Haible  <bruno@clisp.org>
17891
17892         * m4/gl_list.m4: New file.
17893
17894 2006-07-17  Bruno Haible  <bruno@clisp.org>
17895
17896         * lib/gl_list.h: New file.
17897         * lib/gl_list.c: New file.
17898         * lib/gl_array_list.h: New file.
17899         * lib/gl_array_list.c: New file.
17900         * lib/gl_carray_list.h: New file.
17901         * lib/gl_carray_list.c: New file.
17902         * lib/gl_linked_list.h: New file.
17903         * lib/gl_linked_list.c: New file.
17904         * lib/gl_anylinked_list1.h: New file.
17905         * lib/gl_anylinked_list2.h: New file.
17906         * lib/gl_avltree_list.h: New file.
17907         * lib/gl_avltree_list.c: New file.
17908         * lib/gl_anyavltree_list1.h: New file.
17909         * lib/gl_anyavltree_list2.h: New file.
17910         * lib/gl_rbtree_list.h: New file.
17911         * lib/gl_rbtree_list.c: New file.
17912         * lib/gl_anyrbtree_list1.h: New file.
17913         * lib/gl_anyrbtree_list2.h: New file.
17914         * lib/gl_anytree_list1.h: New file.
17915         * lib/gl_anytree_list2.h: New file.
17916         * lib/gl_linkedhash_list.h: New file.
17917         * lib/gl_linkedhash_list.c: New file.
17918         * lib/gl_anyhash_list1.h: New file.
17919         * lib/gl_anyhash_list2.h: New file.
17920         * lib/gl_avltreehash_list.h: New file.
17921         * lib/gl_avltreehash_list.c: New file.
17922         * lib/gl_rbtreehash_list.h: New file.
17923         * lib/gl_rbtreehash_list.c: New file.
17924         * lib/gl_anytreehash_list1.h: New file.
17925         * lib/gl_anytreehash_list2.h: New file.
17926
17927         * lib/gl_oset.h: New file.
17928         * lib/gl_oset.c: New file.
17929         * lib/gl_array_oset.h: New file.
17930         * lib/gl_array_oset.c: New file.
17931         * lib/gl_avltree_oset.h: New file.
17932         * lib/gl_avltree_oset.c: New file.
17933         * lib/gl_rbtree_oset.h: New file.
17934         * lib/gl_rbtree_oset.c: New file.
17935         * lib/gl_anytree_oset.h: New file.
17936
17937 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
17938
17939         * m4/mkancesdirs.m4: New file.
17940         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
17941         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
17942         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
17943         it.
17944
17945 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
17946
17947         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
17948         * lib/mkancesdirs.h: New files.
17949         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
17950         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
17951         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
17952         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
17953         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
17954         callers changed.  Revamp internals significantly, by not
17955         attempting to create directories that are temporarily more
17956         permissive than the final results.  Do not attempt to use
17957         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
17958         This removes some race conditions, fixes some bugs, and simplifies
17959         things.  Use new dirchownmod function to do owner and mode changes.
17960         * lib/mkdir-p.h: Likewise.
17961         * lib/modechange.c (octal_to_mode): New function.
17962         (struct mode_change): New member mentioned.
17963         (make_node_op_equals): New arg mentioned.  All callers changed.
17964         (mode_compile): Keep track of which mode bits the user has explicitly
17965         mentioned.
17966         (mode_adjust): New arg DIR, so that we implement the X op correctly.
17967         New arg PMODE_BITS, to keep track of which mode bits the user
17968         mentioned; it treats S_ISUID and S_ISGID speciall.
17969         All callers changed.
17970         * lib/modechange.h: Likewise.
17971
17972 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
17973
17974         * MODULES.html.sh: Add mkancestors.
17975         * modules/mkancesdirs: New module.
17976         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
17977         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
17978         The chdir-safer and afs files are now orphans; I'll remove them
17979         unless someone speaks up.
17980         Add lib/dirchownmod.c, lib/dirchownmod.h.
17981         (Depends-on): Remove alloca, chown, save-cwd, dirname.
17982         Add lchown, mkancesdirs.
17983         (Maintainer): Add self.
17984
17985 2006-07-15  Karl Berry  <karl@gnu.org>
17986
17987         * gnulib-tool: help message wording/arrangement.
17988
17989 2006-07-14  Simon Josefsson  <jas@extundo.com>
17990
17991         * doc/gnulib.texi (Libtool and Windows): New section.
17992
17993 2006-07-12  Simon Josefsson  <jas@extundo.com>
17994
17995         * modules/gendocs (License): Fix license, approved by Karl.
17996
17997 2006-07-12  Eric Blake  <ebb9@byu.net>
17998
17999         * MODULES.html.sh: Add gendocs.
18000
18001 2006-07-11  Eric Blake  <ebb9@byu.net>
18002
18003         * modules/fdl: New module, to install doc/fdl.texi.
18004         * MODULES.html.sh: Add new section for documentation modules.
18005         * gnulib-tool: Avoid space-tab.
18006         (--doc-base): New option, to manage files from doc.
18007
18008 2006-07-11  Eric Blake  <ebb9@byu.net>
18009
18010         * m4/absolute-header.m4: Fix comments to match recent change.
18011
18012 2006-07-11  Eric Blake  <ebb9@byu.net>
18013
18014         * gnulib-tool: List --doc-base before --tests-base.
18015
18016 2006-07-11  Derek R. Price  <derek@ximbiot.com>
18017
18018         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
18019
18020 2006-07-11  Bruno Haible  <bruno@clisp.org>
18021
18022         * README: Mention where to put documentation.
18023
18024 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18025
18026         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
18027
18028 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
18029
18030         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
18031         to stdint.m4.
18032
18033 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
18034
18035         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
18036         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
18037         "no/such/file/stdint.h" when there is no such file, so that
18038         the resulting C code can be parsed by dodgy compilers.
18039         Problems reported by Bob Proulx.
18040
18041 2006-07-10  Derek R. Price  <derek@ximbiot.com>
18042
18043         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
18044         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
18045         macros into the GNU _D_EXACT_NAMLEN.
18046         * lib/savedir.c:  Likewise.
18047         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
18048
18049 2006-07-10  Derek R. Price  <derek@ximbiot.com>
18050         and Paul Eggert  <eggert@cs.ucla.edu>
18051
18052         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
18053         * m4/savedir.m4:
18054         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
18055         macros into the GNU _D_EXACT_NAMLEN.
18056
18057 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
18058
18059         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
18060         around the absolute name, to work around a problem with the HP-UX
18061         11.23 native C compiler, reported by Bob Proulx.
18062
18063 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
18064
18065         * doc/maintain.texi, make-stds.texi: Sync from
18066         <http://savannah.gnu.org/projects/gnustandards>.
18067
18068 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
18069
18070         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
18071
18072 2006-07-09  Jim Meyering  <jim@meyering.net>
18073
18074         * m4/glob.m4: Remove a doubled word in a comment.
18075
18076 2006-07-09  Jim Meyering  <jim@meyering.net>
18077
18078         * lib/argp-pv.c: Remove a doubled word in a comment.
18079         * lib/check-version.c (check_version): Likewise.
18080         * lib/javacomp.c (compile_java_class): Likewise.
18081
18082 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
18083
18084         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
18085         for the benefit of people using Autoconf 2.60.  If you want to
18086         support older Autoconf versions you can copy m4/onceonly_2_57.m4
18087         (or m4/onceonly.m4, if pre-2.57) manually.
18088
18089 2006-07-08  Jim Meyering  <jim@meyering.net>
18090
18091         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
18092         comment.
18093         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
18094         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
18095         comment.
18096
18097 2006-07-08  Jim Meyering  <jim@meyering.net>
18098
18099         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
18100
18101 2006-07-07  Simon Josefsson  <jas@extundo.com>
18102
18103         * tests/test-crc.c: Change expected crc value, the test vector
18104         were probably computed using the old broken crc.c?
18105
18106 2006-07-06  Simon Josefsson  <jas@extundo.com>
18107
18108         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
18109         now the canonical place for the M4 file).
18110
18111         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
18112         from the sys_socket dependency now.
18113
18114         * modules/inet_pton (Files): Ditto.
18115
18116         * modules/inet_ntop (Files): Ditto.
18117
18118 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
18119
18120         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
18121         not gl_PREREQ_GETUSERSHELL.
18122
18123 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18124
18125         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
18126         with only one argument, for Autoconf 2.60.
18127         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
18128         expand to nothing, so add a shell command to avoid syntax error.
18129         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
18130
18131 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18132
18133         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
18134
18135 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
18136
18137         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
18138         no longer needed.  Check for isblank decl.
18139         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
18140         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
18141         of existence.
18142
18143 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
18144
18145         * lib/getloadavg.c: Use __VMS, not VMS.
18146         * lib/getopt.c: Likewise.
18147         * lib/getpagesize.h: Likewise.
18148         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
18149         and probably does not work.
18150
18151 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
18152
18153         * lib/.cppi-disable: Add wcwidth.
18154         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
18155         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
18156         (ISGRAPH): Remove.  All uses changed to isgraph.
18157         (FOLD) [!defined _LIBC]: Remove special case.
18158         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
18159         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
18160         HAVE_ISBLANK.
18161         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
18162         case.
18163
18164 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
18165
18166         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
18167         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
18168         brackets.  Other minor changes to suppress some compiler
18169         warnings.
18170
18171 2006-07-06  Derek R. Price  <derek@ximbiot.com>
18172         and Paul Eggert  <eggert@cs.ucla.edu>
18173
18174         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
18175         of invoking obsolescent AC_HEADER_DIRENT macro.
18176         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
18177         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
18178         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
18179         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
18180         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
18181         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
18182         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
18183         * m4/readdir.m4: Remove; no longer needed.
18184
18185 2006-07-06  Derek R. Price  <derek@ximbiot.com>
18186         and Paul Eggert  <eggert@cs.ucla.edu>
18187
18188         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
18189         Don't worry about this obsolete case any more.
18190         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
18191         directories.
18192         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
18193         worry about this obsolete case any more.
18194         * lib/fts.c: Likewise.
18195         * lib/getcwd.c: Likewise.
18196         * lib/glob.h: Likewise.
18197         * lib/savedir.c: Likewise.
18198
18199 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
18200
18201         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
18202         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
18203         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
18204         needed.
18205         All uses removed.
18206         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
18207         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
18208         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
18209         needed.
18210         * m4/getdate.m4 (gl_GETDATE): Likewise.
18211         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
18212         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
18213         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
18214         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
18215         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
18216         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
18217         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
18218         needed.
18219
18220 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
18221
18222         * lib/memcasecmp.c: Include <limits.h>.
18223         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
18224         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
18225         Don't assume isdigit succeeds only on '0' through '9'.
18226
18227 2006-07-05  Eric Blake  <ebb9@byu.net>
18228
18229         * modules/getaddrinfo (Depends-on): Add snprintf.
18230
18231 2006-07-05  Eric Blake  <ebb9@byu.net>
18232
18233         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
18234         to avoid 'header present but could not be compiled' on cygwin.
18235
18236 2006-07-05  Eric Blake  <ebb9@byu.net>
18237
18238         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
18239         missing from netdb.h.
18240         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
18241
18242 2006-07-05  Derek R. Price  <derek@ximbiot.com>
18243
18244         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
18245         no longer needed.
18246         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
18247         * m4/getdate.m4 (gl_GETDATE): Likewise.
18248         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
18249         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
18250         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
18251         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
18252         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
18253
18254 2006-07-05  Derek R. Price  <derek@ximbiot.com>
18255
18256         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
18257         All uses of is_space replaced by isspace.
18258         * lib/exit.h: Don't talk about STDC_HEADERS.
18259         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
18260         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
18261         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
18262         replaced by isprint etc.
18263         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
18264         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
18265         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
18266         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
18267         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
18268         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
18269
18270 2006-07-05  Bruno Haible  <bruno@clisp.org>
18271
18272         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
18273         the function exists, before testing against AIX.
18274         Reported by Martin Lambers <marlam@marlam.de>.
18275
18276 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
18277
18278         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
18279         From Mark D. Baushke.
18280
18281 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
18282
18283         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
18284         to the absolute name, not just one, to bypass Sun C 5.8's
18285         "warning: #include of /usr/include/... may be non-portable".
18286
18287 2006-07-04  Eric Blake  <ebb9@byu.net>
18288
18289         * modules/dirname-tests: New test module.
18290         * tests/test-dirname.c: New file, replacing dirname.c
18291         TEST_DIRNAME section that was recently deleted.
18292
18293 2006-07-04  Bruno Haible  <bruno@clisp.org>
18294
18295         Assume ANSI C header files and <ctype.h> functions.
18296         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
18297         (mbsnwidth): Use isprint, iscntrl instead.
18298
18299 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
18300
18301         Merge from coreutils.
18302         * MODULES.html.sh: Add xstrtold.
18303         * modules/xstrtold: New file.
18304         * modules/cycle-check (Files): Add lib/same-inode.h.
18305         * modules/dirname (Files): Add m4/double-slash-root.m4.
18306         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
18307         * modules/mkdir-p (Files): Add lib/same-inode.h.
18308         * modules/same (Files): Add lib/same-inode.h.
18309
18310 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
18311
18312         * m4/absolute-header.m4: Renamed from full-header-path.m4.
18313         This is to keep the terminology clean; POSIX talks about
18314         "absolute pathnames", not "full pathnames", but the GNU
18315         Coding Standards say to use "path" for something else;
18316         so use "absolute" to keep both sides happy.
18317         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
18318         Set gl_absolute_header, not gl_full_header_path.
18319         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
18320         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
18321         All uses changed.
18322
18323         Merge from coreutils.
18324
18325         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
18326
18327         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
18328         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
18329         want to require the building of c-strtod.o.
18330         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
18331         needs -lm directly.
18332         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
18333
18334         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
18335
18336         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
18337         --as-needed option if available.  Problem reported by Albert Chin in
18338         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
18339         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
18340         cc merely issues a bunch of annoying warnings for --as-needed
18341         (this problem was reported by Bob Proulx).  Also, try linking with
18342         -lm to detect a bug in binutils 2.16 (this problem was reported
18343         by Ralf Wildenhues).
18344
18345         2006-06-18  Jim Meyering  <jim@meyering.net>
18346
18347         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
18348         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
18349         macro.
18350         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
18351         also check for glibc-2.4's abort-inducing bug.
18352
18353         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
18354         Low-probability clean-up should be to use rmdir to get rid of
18355         the just-created directory, not unlink.
18356
18357         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
18358         configure fail, and request a bug report to inform us about it.
18359         Add a comment that, barring reports to the contrary, in 2007 we'll
18360         assume ftruncate is universally available.
18361
18362         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
18363
18364         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
18365
18366         2006-03-12  Jim Meyering  <jim@meyering.net>
18367
18368         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
18369         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
18370         * m4/same.m4 (gl_SAME): Likewise.
18371         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
18372
18373         2006-03-11  Eric Blake  <ebb9@byu.net>
18374
18375         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
18376         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
18377         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
18378         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
18379
18380 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
18381
18382         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
18383         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
18384         reported by Mark D. Baushke, one in
18385         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
18386
18387         Merge from coreutils.
18388
18389         * lib/.cppi-disable: Add stdint_.h.
18390         * lib/.cvsignore: Add stdint.h.
18391
18392         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
18393
18394         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
18395         both double and long double versions.
18396         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
18397         * lib/xstrtold.c: New file.
18398         * lib/xstrtod.h (xstrtold): New decl.
18399
18400         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
18401
18402         * lib/filemode.c (setst): Remove.
18403         (strmode): Rewrite to avoid setst.  This makes the code shorter,
18404         (arguably) clearer, and the generated code is a bit smaller on my
18405         Debian GNU/Linux stable x86 host.
18406
18407         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
18408
18409         * lib/filemode.c: Include "filemode.h" first, to test the interface.
18410         Assume that filemode.h includes sys/types.h and sys/stat.h.
18411         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
18412         (ftypelet): Reorder to put common cases first, for efficiency.
18413         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
18414         to do 'M'.
18415         (strmode): Renamed from mode_string, and now stores 12 bytes instead
18416         of 10, for compatibility with FreeBSD.  All callers changed.
18417         (filemodestring): Now stores 12 bytes instead of 10, and sets file
18418         types that can't be deduced solely from st_mode.  First arg is now a
18419         const pointer.
18420         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
18421         (strmode): Renamed from mode_string.
18422         (filemodestring): New decl.
18423         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
18424         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
18425         needed.
18426         (S_ISPORT, S_ISWHT): New macros, if not already defined.
18427
18428         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
18429
18430         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
18431         fsusage.h now does that.  Include fsusage.h first, to test interface.
18432         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
18433         at most one method (the old code could have generated decls that
18434         didn't conform to C89, not that this was ever exercised).
18435         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
18436
18437         2006-03-19  Jim Meyering  <jim@meyering.net>
18438
18439         Work even in a chroot where d_ino values for entries in "/"
18440         don't match the stat.st_ino values for the same names.
18441         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
18442         number, iterate through all entries again, using lstat instead.
18443         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
18444         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
18445
18446         * lib/getcwd.c (__getcwd): Clarify a comment.
18447         Use memcpy in place of a call to strcpy.
18448
18449         2006-03-12  Jim Meyering  <jim@meyering.net>
18450
18451         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
18452         matches that of the current directory (which we're about to chdir ".."
18453         out of), then save the dev-ino of the parent, instead.
18454
18455         * lib/same-inode.h (SAME_INODE): New file/macro.
18456         * lib/chdir-safer.c (SAME_INODE): Remove definition.
18457         Include "same-inode.h", instead.
18458         * lib/same.c: Likewise.
18459         * lib/cycle-check.h: Include "same-inode.h".
18460         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
18461         * lib/cycle-check.c (SAME_INODE): Remove definition.
18462         * lib/root-dev-ino.h: Include "same-inode.h".
18463
18464         2006-03-11  Eric Blake  <ebb9@byu.net>
18465
18466         * lib/same.c (same_name): s/base_name/last_component/
18467         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
18468         * lib/filenamecat.c (file_name_concat): Likewise.
18469
18470         2006-03-11  Eric Blake  <ebb9@byu.net>,
18471                     Paul Eggert  <eggert@cs.ucla.edu>
18472
18473         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
18474         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
18475         drive prefix.
18476         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
18477         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
18478         (last_component): New method.
18479         * lib/dirname.c (dir_len): Determine when drive letters need a
18480         subsequent slash.  Preserve // when it is special.
18481         (dir_name): Don't append dot when drive letter is absolute.
18482         [TEST_DIRNAME]: Move into a full-blown gnulib test.
18483         * lib/basename.c (base_name): New semantics - malloc the result.
18484         Preserve // when it is special.  Preserve relative files that look
18485         like drive letters.
18486         (base_len): Preserve // when it is special.
18487         (last_component): New method, similar to old base_name semantics.
18488         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
18489         base_name.  Strip redundant slashes from ///.
18490
18491 2006-07-03  Jim Meyering  <jim@meyering.net>
18492
18493         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
18494         macro is used before the first cycle_check call.
18495
18496 2006-07-03  Eric Blake  <ebb9@byu.net>
18497
18498         * modules/dirname (Depends-on): Add xstrndup.
18499
18500 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
18501
18502         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
18503         test cases, so that config.log is a bit easier to follow.
18504
18505 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
18506
18507         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
18508         both are 64 bits, since this seems to be the tradition, and this
18509         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
18510         we ever run into a host that prefers long long to long in this
18511         case, we'll need another configure-time test.  Problem reported by
18512         Jim Meyering.
18513
18514 2006-07-02  Eric Blake  <ebb9@byu.net>
18515
18516         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
18517
18518 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
18519
18520         * modules/inttypes (Depends-on): No longer depends on stdint.
18521         * modules/stdint (Description): Say more about assumptions.
18522         Say that the fast types might differ.  Say macros are used.
18523         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
18524         (Makefile.am): Revise list of substituted symbols to match
18525         new stdint.m4.
18526         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
18527         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
18528         * tests/test-stdint.c (verify_same_types)
18529         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
18530         the code conforms to C99/C89.
18531         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
18532         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
18533
18534 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
18535
18536         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
18537         but fix a bug, by requiring at least 64 bits.
18538         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
18539         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
18540         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
18541         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
18542
18543         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
18544         changes.  Make 2.59 a prerequisite.  Check and substitute for
18545         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
18546         inttypes.h.  Do not use special include files; just use the
18547         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
18548         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
18549         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
18550         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
18551         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
18552         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
18553         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
18554         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
18555         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
18556         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
18557         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
18558         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
18559         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
18560         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
18561         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
18562         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
18563         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
18564         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
18565         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
18566         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
18567         WINT_MAX.  Check for C99 conformance more strictly, by detecting
18568         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
18569         not check for things that C99 does not require, e.g., int8_t.  If
18570         a test isn't needed unless <stdint.h> isn't working, and is
18571         unlikely to be needed for any other reason, then don't do it
18572         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
18573         size_t, since we assume C89 freestanding at least.  Do not check
18574         for sig_atomic_t, wchar_t, or wint_t, since the code now does
18575         the right thing even if the types are not defined.  Instead use:
18576         (gl_STDINT_TYPE_PROPERTIES): New macro.
18577         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
18578         testing whether <sys/types.h> clashes, as Autoconf does this for
18579         us now.  All uses removed.
18580         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
18581         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
18582         (gl_CHECK_TYPE_SAME):
18583         Remove; no longer needed.
18584         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
18585         exists, since we'll return 0 anyway in that case.
18586         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
18587
18588 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
18589
18590         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
18591         possible collision with system files.
18592         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
18593         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
18594         WCHAR_MIN and WCHAR_MAX in this case.
18595         (<stddef.h>): Do not include; no longer needed.
18596         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
18597         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
18598         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
18599         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
18600         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
18601         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
18602         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
18603         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
18604         !defined(__c99))]: Include in this case too, since it's harmless
18605         now.
18606         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
18607         dangerous to do so.
18608         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
18609         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
18610         (_STDINT_MIN, _STDINT_MAX): New macros.
18611         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
18612         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
18613         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
18614         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
18615         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
18616         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
18617         macros, not typedefs; this simplifies things quite a bit.
18618         Use long int for all types narrower than int64_t.
18619         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
18620         Define in terms of long long int or int64_t or long int,
18621         not int64_t or int32_t.  This saves some compile-time testing.
18622         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
18623         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
18624         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
18625         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
18626         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
18627         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
18628         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
18629         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
18630         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
18631         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
18632         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
18633         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
18634         undef any previous version and define our own version, for
18635         simplicity and consistency with the new macros for types.
18636         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
18637         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
18638         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
18639         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
18640         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
18641         @WINT_T_SUFFIX@ to keep things simple here.
18642         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
18643         Simplify by assuming typical 8/16/32/64 host, since we're
18644         already doing that elsewhere anyway.
18645         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
18646         and assume long long int is 64 bits if available.  This
18647         speeds up 'configure'.
18648
18649 2006-07-01  Eric Blake  <ebb9@byu.net>
18650
18651         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
18652         Reported by Andreas Buening.
18653
18654 2006-07-01  Eric Blake  <ebb9@byu.net>
18655
18656         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
18657
18658 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
18659
18660         * lib/getaddrinfo.c: fixed typo
18661
18662 2006-06-29  Jim Meyering  <jim@meyering.net>
18663
18664         * modules/strftime (Maintainer): Add my name, since with the
18665         FPRINTFTIME changes strftime.c has forked from glibc.
18666
18667 2006-06-29  Eric Blake  <ebb9@byu.net>
18668
18669         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
18670
18671 2006-06-29  Eric Blake  <ebb9@byu.net>
18672
18673         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
18674
18675 2006-06-29  Eric Blake  <ebb9@byu.net>
18676
18677         * lib/stat_.h: New file.
18678
18679 2006-06-29  Eric Blake  <ebb9@byu.net>
18680
18681         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
18682         unused static function.
18683
18684 2006-06-29  Eric Blake  <ebb9@byu.net>
18685
18686         * doc/functions.texi (Function Portability): Document missing lstat
18687         on mingw.
18688
18689 2006-06-29  Eric Blake  <ebb9@byu.net>
18690
18691         * MODULES.html.sh: Add sys_stat.
18692         * modules/sys_stat: New module.
18693         * modules/mkstemp (Depends-on): Add sys_stat.
18694
18695 2006-06-29  Derek R. Price  <derek@ximbiot.com>
18696
18697         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
18698
18699 2006-06-29  Derek R. Price  <derek@ximbiot.com>
18700
18701         * m4/c-bs-a.m4: Removed.
18702
18703 2006-06-29  Derek R. Price  <derek@ximbiot.com>
18704
18705         * lib/strftime.c: Assume strftime() exists.
18706
18707 2006-06-29  Derek Price  <derek@ximbiot.com>
18708
18709         * modules/c-bs-a: Removed - \a is C89.
18710         * MODULES.html.sh: Remove c-bs-a.
18711
18712 2006-06-29  Bruno Haible  <bruno@clisp.org>
18713
18714         * modules/wcwidth (License): Change to LGPL.
18715
18716 2006-06-28  Simon Josefsson  <jas@extundo.com>
18717
18718         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
18719         on _WIN32.
18720
18721         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
18722         getnameinfo.
18723
18724 2006-06-28  Simon Josefsson  <jas@extundo.com>
18725
18726         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
18727
18728 2006-06-28  Simon Josefsson  <jas@extundo.com>
18729
18730         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
18731         functions there.  It will succeed on Windows XP, but on Windows
18732         2000 and (presumably) earlier, it will fail, and use the internal
18733         re-implementation.
18734         (use_win32_p): New function.
18735         (getaddrinfo): Use strtoul on servname, to support numeric ports.
18736         Support AI_NUMERICSERV to disable getservbyname.
18737         (getnameinfo): New function, only supports
18738         NI_NUMERICHOST|NI_NUMERICSERV for now.
18739
18740         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
18741         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
18742         getnameinfo.
18743
18744 2006-06-28  Eric Blake  <ebb9@byu.net>
18745
18746         * modules/wcwidth: New file.
18747         * modules/mbchar (Depends-on): Add wcwidth.
18748         * modules/mbswidth (Depends-on): Add wcwidth.
18749         * MODULES.html.sh: Add wcwidth.
18750
18751 2006-06-28  Eric Blake  <ebb9@byu.net>
18752
18753         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
18754         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
18755
18756 2006-06-28  Eric Blake  <ebb9@byu.net>
18757
18758         * lib/xvasprintf.h: Fix comments.
18759
18760 2006-06-28  Eric Blake  <ebb9@byu.net>
18761
18762         * lib/mbchar.h (wcwidth): Include wcwidth.h.
18763         * lib/mbswidth.c (wcwidth): Move from here...
18764         * lib/wcwidth.h: ...to this new file.
18765
18766 2006-06-28  Derek R. Price  <derek@ximbiot.com>
18767
18768         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
18769
18770         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
18771         it's obsolete.
18772         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
18773
18774 2006-06-28  Derek R. Price  <derek@ximbiot.com>
18775
18776         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
18777         Autoconf 2.60 says this stuff was obsolete.
18778
18779 2006-06-28  Bruno Haible  <bruno@clisp.org>
18780
18781         * modules/wcwidth (Files): Add m4/wchar_t.m4.
18782
18783 2006-06-28  Bruno Haible  <bruno@clisp.org>
18784
18785         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
18786         gt_TYPE_WCHAR_T.
18787
18788 2006-06-28  Bruno Haible  <bruno@clisp.org>
18789
18790         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
18791         declaration for wcwidth.
18792         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
18793
18794 2006-06-28  Bruno Haible  <bruno@clisp.org>
18795
18796         * lib/mkdtemp.c [MINGW]: Include <io.h>.
18797         (mkdir): Define using _mkdir.
18798
18799 2006-06-28  Bruno Haible  <bruno@clisp.org>
18800
18801         * lib/getaddrinfo.h: Fix POSIX URL.
18802         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
18803         _WIN32.
18804         (use_win32_p): Make static.
18805         (getaddrinfo): Reject service name if it is empty or does not consist
18806         solely of decimal digits, or if its value is > 65535.
18807         (getnameinfo): Remove useless casts.
18808
18809 2006-06-27  Simon Josefsson  <jas@extundo.com>
18810
18811         * modules/sys_select: New file, suggested by Bruno Haible, Paul
18812         Eggert and Martin Lambers.
18813
18814 2006-06-27  Simon Josefsson  <jas@extundo.com>
18815
18816         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
18817         Eggert and Martin Lambers.
18818
18819 2006-06-27  Bruno Haible  <bruno@clisp.org>
18820
18821         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
18822         result to 0, not to empty.
18823         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
18824
18825 2006-06-27  Bruno Haible  <bruno@clisp.org>
18826
18827         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
18828
18829 2006-06-26  Simon Josefsson  <jas@extundo.com>
18830
18831         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
18832         present.
18833
18834 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
18835
18836         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
18837         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
18838         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
18839
18840 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
18841
18842         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
18843
18844 2006-06-26  Bruno Haible  <bruno@clisp.org>
18845
18846         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
18847
18848 2006-06-26  Bruno Haible  <bruno@clisp.org>
18849
18850         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
18851
18852 2006-06-26  Bruno Haible  <bruno@clisp.org>
18853
18854         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
18855         SGI C compiler in pre-C99 mode.
18856         Suggested by Mark D. Baushke and Larry Jones.
18857
18858 2006-06-26  Bruno Haible  <bruno@clisp.org>
18859
18860         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
18861         WCHAR_MAX.
18862         Reported by Mark D. Baushke and Larry Jones.
18863
18864 2006-06-26  Bruno Haible  <bruno@clisp.org>
18865
18866         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
18867         in pre-C99 mode.
18868         Suggested by Mark D. Baushke and Larry Jones.
18869
18870 2006-06-23  Simon Josefsson  <jas@extundo.com>
18871             Bruno Haible  <bruno@clisp.org>
18872
18873         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
18874         Emit mostlyclean-local rule.
18875         (func_emit_tests_Makefile_am): Likewise.
18876         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
18877
18878 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
18879
18880         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
18881
18882 2006-06-23  Bruno Haible  <bruno@clisp.org>
18883
18884         * tests/test-stdint.c: Update to match ISO C 99 Technical
18885         Corrigendum 1.
18886
18887 2006-06-23  Bruno Haible  <bruno@clisp.org>
18888
18889         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
18890
18891 2006-06-23  Bruno Haible  <bruno@clisp.org>
18892
18893         * lib/stdint_.h: Treat IRIX like OpenBSD.
18894
18895 2006-06-23  Bruno Haible  <bruno@clisp.org>
18896
18897         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
18898         ISO C 99 Technical Corrigendum 1.
18899
18900 2006-06-22  Simon Josefsson  <jas@extundo.com>
18901
18902         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
18903         MinGW.
18904
18905 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
18906
18907         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
18908         needed.  Some compiler complained about some of them.  Problem reported
18909         by Larry Jones in
18910         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
18911
18912 2006-06-21  Simon Josefsson  <jas@extundo.com>
18913
18914         * tests/test-getaddrinfo.c: New file.
18915
18916         * modules/getaddrinfo-tests: New file.
18917
18918         * MODULES.html.sh: Add inet_pton.
18919
18920         * modules/inet_pton: New file.
18921
18922 2006-06-21  Simon Josefsson  <jas@extundo.com>
18923
18924         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
18925         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
18926         of using the (limited) gnulib implementation on Windows XP.
18927
18928         * m4/inet_pton.m4: New file.
18929
18930 2006-06-21  Simon Josefsson  <jas@extundo.com>
18931
18932         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
18933         variable.
18934
18935         * lib/socket_.h: Don't define WINVER.
18936
18937         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
18938         slightly modified to work in gnulib.
18939
18940 2006-06-21  Simon Josefsson  <jas@extundo.com>
18941
18942         * doc/gnulib.texi (Windows sockets): Add.
18943
18944 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
18945
18946         * lib/read-file.c (fread_file): Start with buffer allocation of
18947         0 bytes rather than 1 byte; this simplifies the code.
18948         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
18949         code to free buffer and save/restore errno.
18950         (internal_read_file): Remove unused local.
18951
18952 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
18953
18954         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
18955         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
18956         Problem reported by Denis Excoffier in
18957         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
18958
18959 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
18960
18961         * modules/sys_socket, modules/socklen: Include sys/types since
18962         FreeBSD 4.x's sys/socket.h needs it.
18963
18964 2006-06-19  Simon Josefsson  <jas@extundo.com>
18965
18966         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
18967
18968 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
18969
18970         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
18971
18972 2006-06-19  Bruno Haible  <bruno@clisp.org>
18973
18974         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
18975         and FULL_PATH_INTTYPES_H in angle brackets.
18976         Reported by Mark D. Baushke <mdb@gnu.org>.
18977
18978 2006-06-17  Eric Blake  <ebb9@byu.net>
18979
18980         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
18981         errno.
18982
18983 2006-06-17  Bruno Haible  <bruno@clisp.org>
18984
18985         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
18986         <sys/inttypes.h>.
18987
18988 2006-06-17  Bruno Haible  <bruno@clisp.org>
18989
18990         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
18991         whether errno is declared. Assume <errno.h> declares errno.
18992
18993 2006-06-17  Bruno Haible  <bruno@clisp.org>
18994
18995         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
18996
18997 2006-06-17  Bruno Haible  <bruno@clisp.org>
18998
18999         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
19000         problem on Solaris 2.5.1.
19001
19002 2006-06-16  Eric Blake  <ebb9@byu.net>
19003
19004         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
19005         * lib/unicodeio.c [!defined errno]: Likewise.
19006         * lib/strtol.c [!defined errno]: Likewise.
19007         * lib/strtod.c [!defined errno]: Likewise.
19008
19009 2006-06-15  Eric Blake  <ebb9@byu.net>
19010
19011         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
19012
19013 2006-06-15  Eric Blake  <ebb9@byu.net>
19014
19015         * config/srclist.txt (ssize_t.m4): Lose sync.
19016
19017 2006-06-15  Bruno Haible  <bruno@clisp.org>
19018
19019         * modules/stdint (Files): Include m4/full-header-path.m4,
19020         m4/size_max.m4, m4/wchar_t.m4.
19021         (Makefile.am): Many more substitutions.
19022         * modules/stdint-tests: New file.
19023         * tests/test-stdint.c: New file.
19024
19025 2006-06-15  Bruno Haible  <bruno@clisp.org>
19026
19027         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
19028         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
19029         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
19030         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
19031         gl_CHECK_TYPE_SAME): New macros.
19032
19033 2006-06-15  Bruno Haible  <bruno@clisp.org>
19034
19035         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
19036
19037 2006-06-15  Bruno Haible  <bruno@clisp.org>
19038
19039         * lib/stdint_.h: Rewritten to be fully auto-configured.
19040         Fixes bug on HP-UX/IA64.
19041
19042 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
19043
19044         * lib/getdate.y (__attribute__): Don't define if already defined.
19045         Problem reported by Larry Jones.
19046         * lib/utimens.c (__attribute__): Likewise.
19047
19048 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
19049
19050         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
19051         reported by Andreas Schwab.
19052
19053 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19054             Bruno Haible  <bruno@clisp.org>
19055
19056         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
19057         check for the declaration of strnlen and a run test that exposes the
19058         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
19059         rpl_strndup.
19060
19061 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19062             Bruno Haible  <bruno@clisp.org>
19063
19064         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
19065
19066 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19067
19068         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
19069         compile test, for Tru64 4.0D.
19070
19071 2006-05-28  Karl Berry  <karl@gnu.org>
19072
19073         * config/srclist.txt (printf-args.c): lose sync.
19074
19075 2006-05-26  Martin Lambers  <marlam@marlam.de>
19076
19077         * lib/getpass.c: Updates the test for the native W32 API, and adds
19078         missing includes, thus fixing compilation warnings.
19079
19080 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
19081
19082         * lib/exclude.c (exclude_fnmatch): New function.
19083         (excluded_file_name): Call exclude_fnmatch.
19084         * lib/exclude.h (excluded_file_name): New prototype
19085
19086 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
19087
19088         * lib/tempname.c (small_open, large_open): New macros.
19089         (__open, __open64) [!_LIBC]: Remove.
19090         (__gen_tempname): Use small_open and large_open instead of __open
19091         and __open64.  This fixes a portability bug on HP-UX 11.11i
19092         reported by Simon Wing-Tang in
19093         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
19094
19095 2006-05-24  Bruno Haible  <bruno@clisp.org>
19096
19097         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
19098         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
19099         Reported by Thorsten Maerz <torte@netztorte.de> via
19100         Aaron Stone <aaron@serendipity.cx>.
19101
19102 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
19103
19104         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
19105         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
19106         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
19107         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
19108         not really conditional on the cache.
19109         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
19110
19111 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
19112
19113         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
19114         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
19115         (my_usleep): Don't mishandle maximum value.
19116
19117 2006-05-19  Jim Meyering  <jim@meyering.net>
19118
19119         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
19120
19121 2006-05-17  Bruno Haible  <bruno@clisp.org>
19122
19123         Cygwin portability.
19124         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
19125
19126 2006-05-17  Bruno Haible  <bruno@clisp.org>
19127
19128         * lib/stdint_.h: Fix recognition of Cygwin.
19129
19130 2006-05-15  Bruno Haible  <bruno@clisp.org>
19131
19132         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
19133         on libtool patch by Ralf Wildenhues.
19134
19135 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
19136
19137         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
19138         test for C99 conformance; (bool) 0.5 is an integer constant
19139         expression, but (bool) -0.5 is not.  Problem reported by Fedor
19140         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
19141
19142 2006-05-11  Simon Josefsson  <jas@extundo.com>
19143
19144         * m4/xvasprintf.m4: Fix obvious typo.
19145
19146 2006-05-11  Jim Meyering  <jim@meyering.net>
19147
19148         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
19149         James Lemley.
19150
19151 2006-05-10  Simon Josefsson  <jas@extundo.com>
19152
19153         * lib/md4.c: Typo fix, update copyright years.
19154         (K1, K2): Don't use L because it turn computations into 64-bit on
19155         64-bit platforms.
19156
19157 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
19158
19159         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
19160         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
19161         unwanted sign propagation, e.g., on hosts with 64-bit int.
19162         There still are some problems with reeelly weird theoretical hosts
19163         (e.g., 33-bit int) but it's not worth worrying about now.
19164         * lib/sha1.c (rol): Likewise.
19165         (K1, K2, K3, K4): Remove unnecessary L suffix.
19166
19167 2006-05-10  Bruno Haible  <bruno@clisp.org>
19168
19169         * lib/des.c: Cast to avoid warnings.
19170
19171 2006-05-09  Bruno Haible  <bruno@clisp.org>
19172
19173         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
19174         (Depends-on): Depend also on xsize, stdarg.
19175         (configure.ac): Add gl_XVASPRINTF.
19176
19177 2006-05-09  Bruno Haible  <bruno@clisp.org>
19178
19179         * m4/xvasprintf.m4: New file.
19180
19181 2006-05-09  Bruno Haible  <bruno@clisp.org>
19182
19183         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
19184         (EOVERFLOW): Define fallback value.
19185         (xstrcat): New function.
19186         (xvasprintf): Recognize the special case of a string concatenation.
19187
19188 2006-05-08  Eric Blake  <ebb9@byu.net>
19189
19190         * gnulib-tool (func_version): Base copyright year on CVS date.
19191         (func_emit_copyright_notice): New function.
19192         (func_emit_lib_Makefile_am): Use it.
19193         (func_emit_tests_Makefile_am): Likewise.
19194         (func_import): Likewise.
19195
19196 2006-05-08  Bruno Haible  <bruno@clisp.org>
19197
19198         * modules/stdarg: New file.
19199         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
19200
19201 2006-05-08  Bruno Haible  <bruno@clisp.org>
19202
19203         * m4/stdarg.m4: New file, from GNU gettext.
19204
19205 2006-05-08  Bruno Haible  <bruno@clisp.org>
19206
19207         * config/srclist.txt (build-aux/config.rpath): different from latest
19208         release.
19209
19210 2006-05-08  Bruno Haible  <bruno@clisp.org>
19211
19212         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
19213
19214 2006-05-05  Jim Meyering  <jim@meyering.net>
19215
19216         * m4/warning.m4: New file, derived from bison's file by the same name.
19217
19218 2006-05-03  Bruno Haible  <bruno@clisp.org>
19219
19220         * lib/stdint_.h: Shorter URL.
19221         * lib/inttypes.h: Likewise.
19222
19223 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
19224
19225         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
19226
19227 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
19228
19229         * lib/verify.h: Document the internals better.  Most of this change
19230         was written by Bruno Haible.
19231
19232 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
19233
19234         * doc/verify.texi: New file, partly based on a proposal by
19235         Bruno Haible.
19236
19237 2006-05-02  Bruno Haible  <bruno@clisp.org>
19238
19239         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
19240         test from here...
19241         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
19242
19243 2006-04-29  Bruno Haible  <bruno@clisp.org>
19244
19245         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
19246         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
19247
19248 2006-04-29  Bruno Haible  <bruno@clisp.org>
19249
19250         * gnulib-tool: Make --update option actually work.
19251
19252 2006-04-29  Bruno Haible  <bruno@clisp.org>
19253
19254         * doc/gcd.texi: New file.
19255         * doc/gnulib.texi: Include it.
19256
19257 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
19258
19259         * lib/getdate.y (get_date): When adding relative date, start with the
19260         initial time, not with the result of the first mktime call.
19261
19262 2006-04-25  Bruno Haible  <bruno@clisp.org>
19263
19264         * gnulib-tool (func_import): Output the include directives in three
19265         blocks, sorted separately.
19266         Reported by Ben Pfaff <blp@cs.stanford.edu>.
19267
19268 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
19269
19270         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
19271         to define main with arguments, for C++.  Reported by Eric Blake.
19272         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
19273         Prefer 'int main ()' to 'int main (void)', for C++.
19274         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
19275         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
19276         for 'main', for C99 and C++.
19277
19278 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
19279
19280         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
19281         Don't assume that exit status -1 is valid.
19282         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
19283         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
19284         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
19285         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
19286         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
19287         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
19288         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
19289         functions can be used without declaring them, or that you can
19290         exit with status -1.
19291         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
19292
19293 2006-04-24  Karl Berry  <karl@gnu.org>
19294
19295         * config/srclist.txt (longdouble.m4): sync lost.
19296
19297 2006-04-24  Eric Blake  <ebb9@byu.net>
19298
19299         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
19300
19301 2006-04-24  Bruno Haible  <bruno@clisp.org>
19302
19303         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
19304         poll() implementation in AIX.
19305         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19306
19307 2006-04-24  Bruno Haible  <bruno@clisp.org>
19308
19309         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
19310         assigned exactly once.
19311
19312 2006-04-23  Claudio Fontana  <claudio@gnu.org>
19313             Bruno Haible  <bruno@clisp.org>
19314
19315         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
19316         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
19317         for AM_CPPFLAGS.
19318
19319 2006-04-23  Bruno Haible  <bruno@clisp.org>
19320
19321         * modules/copy-file: Depend on unistd.
19322         * modules/execute: Likewise.
19323         * modules/fatal-signal: Likewise.
19324         * modules/findprog: Likewise.
19325         * modules/mkdtemp : Likewise.
19326         * modules/pipe: Likewise.
19327         * modules/wait-process: Likewise.
19328
19329 2006-04-23  Bruno Haible  <bruno@clisp.org>
19330
19331         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
19332         condition was already detected.
19333         Reported by Ben Pfaff <blp@cs.stanford.edu>.
19334
19335 2006-04-23  Bruno Haible  <bruno@clisp.org>
19336
19337         * lib/copy-file.c: Include <unistd.h> unconditionally.
19338         * lib/execute.c: Likewise.
19339         * lib/fatal-signal.c: Likewise.
19340         * lib/findprog.c: Likewise.
19341         * lib/mkdtemp.c: Likewise.
19342         * lib/pipe.h: Likewise.
19343         * lib/pipe.c: Likewise.
19344         * lib/wait-process.h: Likewise.
19345
19346 2006-04-23  Bruno Haible  <bruno@clisp.org>
19347
19348         * gnulib-tool (func_usage): Fix --import description. Document
19349         --update.
19350         (func_import): Create temporary file in a temporary directory, if
19351         --dry-run is specified. Silence errors from 'grep' when there are no
19352         m4 files in $m4dir.
19353         (func_create_testdir): Silence errors from 'grep' when there are no
19354         m4 files in $m4dir.
19355         Reported by Karl Berry <karl@freefriends.org>.
19356
19357 2006-04-20  Bruno Haible  <bruno@clisp.org>
19358
19359         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
19360         one argument, so that the code will be portable to Autoconf 2.60.
19361         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
19362         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
19363         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
19364
19365 2006-04-19  Derek Price  <derek@ximbiot.com>
19366             Eric Blake  <ebb9@byu.net>
19367
19368         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
19369         rather than "/full/path.h".  Update comment to match.  Shorten &
19370         generalize m4_translit call via AS_TR_CPP.
19371
19372 2006-04-19  Derek Price  <derek@ximbiot.com>
19373             Eric Blake  <ebb9@byu.net>
19374
19375         * lib/inttypes.h: Correct grammar in comment.
19376
19377 2006-04-18  Derek Price  <derek@ximbiot.com>
19378             Paul Eggert  <eggert@cs.ucla.edu>
19379
19380         * modules/inttypes: New file.
19381         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
19382
19383 2006-04-18  Derek Price  <derek@ximbiot.com>
19384             Paul Eggert  <eggert@cs.ucla.edu>
19385
19386         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
19387         New files.
19388
19389 2006-04-18  Derek Price  <derek@ximbiot.com>
19390             Paul Eggert  <eggert@cs.ucla.edu>
19391
19392         * lib/inttypes.h: New file.
19393         * lib/strtoimax.c: Assume <inttypes.h>.
19394
19395 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
19396
19397         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
19398         isn't mounted.  Problem reported by Kir Kolyshkin.
19399
19400 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19401
19402         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
19403         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
19404         Derek R. Price.
19405         * lib/regex.h (RE_DUP_MAX): Update comment to match current
19406         implementation.
19407
19408 2006-04-12  Eric Blake  <ebb9@byu.net>
19409
19410         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
19411         is now done automatically by the corresponding Autoconf macro.
19412
19413 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19414
19415         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
19416         time_r.h.
19417
19418 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19419
19420         Merge regex changes from libc, removing some of our
19421         POSIX-conformance changes that were rejected and redoing them in a
19422         less-intrusive way.
19423
19424         * lib/regcomp.c (re_compile_internal, init_dfa):
19425         Length arg is now size_t, not Idx.  All uses changed.
19426         (peek_token): Forward decl now says internal_function.
19427         (__re_error_msgid, __re_error_msgid_idx):
19428         Now static rather than extern with attribute_hidden.
19429         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
19430         For some reason libc prefers K&R style defns for external functions.
19431         (regerror) [!defined _LIBC]: Likewise.
19432         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
19433         (seek_collating_symbol_entry, lookup_collation_sequence_value):
19434         (build_range_exp, build_collating_symbol):
19435         Use K&R-style defn.
19436         (re_compile_fastmap): Use '\0' to memset, not 0.
19437         (utf8_sb_map): Make the calculations more obvious.
19438         (init_dfa, parse_bracket_exp, build_charclass_op):
19439         Call calloc and cast result, as glibc does.
19440         (init_word_char, fetch_token, peek_token, peek_token_bracket):
19441         (build_range_exp, build_collating_symbol):
19442         Now internal functions.
19443
19444         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
19445
19446         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
19447         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
19448         Don't depend on VMS; depend on __VMS instead, for POSIX
19449         namespace cleanness.
19450         (regoff_t): Define to ssize_t, not long int.
19451
19452         Remove the REG_ macros named below.  Instead, make the old names
19453         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
19454         __USE_GNU_REGEX.
19455         (REG_BACKSLASH_ESCAPE_IN_LISTS):
19456         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
19457         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
19458         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
19459         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
19460         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
19461         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
19462         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
19463         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
19464         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
19465         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
19466         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
19467         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
19468         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
19469         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
19470         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
19471         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
19472         (REG_NREGS):
19473         Remove.  All uses replaced by the old RE_* names.
19474         (RE_BACKSLASH_ESCAPE_IN_LISTS):
19475         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
19476         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
19477         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
19478         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
19479         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
19480         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
19481         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
19482         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
19483         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
19484         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
19485         Don't bother having these macros be independent of each others'
19486         values, since they no longer exist in the POSIX name space.
19487
19488         Rename the following member names back to their old names,
19489         unless !__USE_GNU_REGEX.  All uses changed back.
19490         (buffer): Renamed from re_buffer.
19491         (allocated): Renamed from re_allocated.
19492         (used): Renamed from re_used.
19493         (syntax): Renamed from re_syntax.
19494         (fastmap): Renamed from re_fastmap.
19495         (translate): Renamed from re_translate.
19496         (can_be_null): Renamed from re_can_be_null.
19497         (regs_allocated): Renamed from re_regs_allocated.
19498         (fastmap_accurate): Renamed from re_fastmap_accurate.
19499         (no_sub): Renamed from re_no_sub.
19500         (not_bol): Renamed from re_not_bol.
19501         (not_eol): Renamed from re_not_eol.
19502         (newline_anchor): Renamed from re_newline_anchor.
19503         (num_regs): Renamed from rm_num_regs.
19504         (start): Renamed from rm_start.
19505         (end): Renamed from rm_end.
19506
19507         (free_state): Move up a bit.
19508
19509         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
19510         #define to be empty.
19511         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
19512         when that is what is intended.
19513         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
19514         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
19515         (MAX): New macro.
19516         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
19517         All uses changed back to re_malloc, etc.  It's now the caller's
19518         responsibility to check for overflow; all callers changed.
19519         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
19520         (re_x2nrealloc): Remove.
19521         (free_state): Remove decl.
19522
19523         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
19524         (re_set_registers, re_exec):
19525         Use K&R-style defn.
19526
19527         2006-01-31  Roland McGrath  <roland@redhat.com>
19528
19529         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
19530         Reported by Mike Frysinger <vapier@gentoo.org>.
19531
19532         2006-01-15  Andreas Jaeger  <aj@suse.de>
19533
19534         [BZ #1950]
19535         * lib/regex_internal.c (re_string_reconstruct): Adjust for
19536         build_wcs_upper_buffer change.
19537         (build_wcs_upper_buffer): Change return type.
19538
19539         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
19540
19541         * lib/regex_internal.h: Include <stdint.h> if available.
19542
19543         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
19544
19545         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
19546
19547         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
19548
19549         * lib/regcomp.c: Adjust for changed secondary hash function.
19550
19551         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
19552
19553         * lib/regex.h: Pretty printing.
19554         Clean up namespace a bit.
19555
19556         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
19557
19558         * lib/regexec.c (update_cur_sifted_state, check_arrival,
19559         check_arrival_add_next_nodes): Avoid using uninitialized variable.
19560
19561         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
19562                     Ulrich Drepper  <drepper@redhat.com>
19563
19564         [BZ #1302]
19565         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
19566         changed.
19567         (bitset_word_t): Renamed from bitset_word.  All uses changed.
19568
19569         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
19570
19571         [BZ #281]
19572         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
19573         * lib/regcomp.c: Remove unnecessary uses of
19574         unsigned RE_TRANSLATE_TYPE.
19575         * lib/regex_internal.h: Likewise.
19576         * lib/regex_internal.c: Likewise.
19577         * lib/regexec.c: Likewise.
19578         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
19579
19580         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
19581
19582         * lib/regexec.c (find_recover_state): Remove unnecessary
19583         initialization.
19584         (transit_state_bkref): Make DFA a const pointer.
19585         (get_subexp): Likewise.
19586         (check_arrival): Likewise.
19587         (update_cur_sifted_state): Likewise.
19588         (re_search_internal): Likewise.
19589         (prune_impossible_nodes): Likewise.
19590         (acquire_init_state_context): Likewise.
19591         (proceed_next_node): Likewise.
19592         (set_regs): Likewise.
19593         (free_fail_stack_return): Likewise.
19594         (check_arrival_expand_ecl): Mark DFA parameter as const.
19595         (check_arrival_expand_ecl_sub): Likewise.
19596         (check_subexp_limits): Likewise.
19597         (sub_epsilon_src_nodes):  Likewise.
19598         (add_epsilon_src_nodes):  Likewise.
19599         (merge_state_array): Likewise.
19600         (update_regs): Likewise.
19601         (build_trtable): Likewise.
19602         (sift_states_backward): Mark MCTX parameter as const.
19603         (build_sifted_states): Likewise.
19604         (update_cur_sifted_state): Likewise.
19605         (sift_states_mkref): Likewise.
19606         (check_arrival_expand_ecl): Mark eclosure as const.
19607         (check_dst_limits_calc_pos_1): Likewise.
19608         * lib/regex_internal.h (re_match_context_t): Make dfa a const
19609         pointer.
19610
19611         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
19612
19613         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
19614         (transit_state_sb): Likewise.
19615         (transit_state_mb): Likewise.
19616         (sift_states_iter_mb): Likewise.
19617         (check_arrival_add_next_nodes): Likewise.
19618         (check_node_accept_bytes): Change first parameter to pointer-to-const.
19619         [_LIBC] (re_search_2_stub): Use mempcpy.
19620
19621         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
19622         mbrtowc for very simple UTF-8 case.
19623
19624         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
19625         a pointer-to-const.
19626         (re_acquire_state_context): Likewise.
19627         * lib/regex_internal.h: Adjust prototypes.
19628
19629         * lib/regex.c: Prevent using C++ compilers.
19630
19631         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
19632         (re_acquire_state_context): Likewise.
19633
19634 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19635
19636         * modules/regex (Depends-on): Add ssize_t.
19637
19638 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19639
19640         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
19641         translation table.
19642
19643 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19644
19645         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
19646
19647 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
19648             Bruno Haible  <bruno@clisp.org>
19649
19650         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
19651         <sys/types.h> and <inttypes.h>.
19652
19653 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19654
19655         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
19656         `__error_t_defined', so argp.h will not typedef the former.
19657
19658 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
19659
19660         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
19661         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
19662         glibc names.  Even if glibc is changed to conform to POSIX, the
19663         traditional names will be available anyway, since regex depends on
19664         the extensions module.  Also, fix a longstanding typo in the
19665         implementation of Spencer ERE test #75 from grep 2.3.  Problems
19666         reported by Emanuele Giaquinta.  Also, change sense of cached
19667         variable, so that the message makes sense.
19668
19669 2006-03-24  Simon Josefsson  <jas@extundo.com>
19670
19671         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
19672         including some doc fixes.
19673         (base64_encode_alloc): Fix +1 bug on allocation failures.
19674
19675 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19676
19677         * lib/base64.c (base64_encode): Do not read past end of array with
19678         unsanitized input on systems with CHAR_BIT > 8.
19679
19680 2006-03-24  Eric Blake  <ebb9@byu.net>
19681
19682         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
19683
19684 2006-03-22  Karl Berry  <karl@gnu.org>
19685
19686         * config/srclist.txt (*setenv.[ch]): get from coreutils.
19687         * config/srclistvars.sh (COREUTILS): new var.
19688
19689 2006-03-17  Jim Meyering  <jim@meyering.net>
19690
19691         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
19692         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
19693
19694 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
19695
19696         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
19697         no longer needs it.  Instead, check that regoff_t is as least
19698         as wide as ptrdiff_t.
19699
19700         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
19701         so that our regex.h stays compatible with the installed regex.
19702         This is helpful for installers who configure --without-included-regex.
19703         Problem reported by Emanuele Giaquinta.
19704
19705 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
19706
19707         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
19708         Typedef to long int, not to off_, as POSIX will likely change
19709         in that direction.
19710
19711 2006-03-15  Eric Blake  <ebb9@byu.net>
19712
19713         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
19714
19715 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
19716
19717         * lib/argp-help.c (validate_uparams): Fix typo
19718         * lib/argp-parse.c (argp_default_options): Consistently begin help
19719         messages with a lowercase letter.
19720
19721 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
19722
19723         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
19724         overrun buffers and shouldn't be used (much as gets shouldn't be
19725         used).
19726         * lib/time_r.c (asctime_r, ctime_r): Likewise.
19727
19728 2006-03-08  Simon Josefsson  <jas@extundo.com>
19729
19730         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
19731         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19732
19733 2006-03-08  Simon Josefsson  <jas@extundo.com>
19734
19735         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
19736         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19737
19738 2006-03-08  Simon Josefsson  <jas@extundo.com>
19739
19740         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
19741         signal that configure disabled the device.
19742
19743 2006-03-08  Simon Josefsson  <jas@extundo.com>
19744
19745         * build-aux/maint.mk: Fix refresh-po, to handle no translated
19746         languages.
19747
19748 2006-03-07  Simon Josefsson  <jas@extundo.com>
19749
19750         * modules/getopt (Depends-on): Add unistd.
19751
19752         * modules/unistd: New file.
19753
19754 2006-03-07  Simon Josefsson  <jas@extundo.com>
19755
19756         * modules/gc-random: New file.
19757
19758 2006-03-07  Simon Josefsson  <jas@extundo.com>
19759
19760         * m4/unistd_h.m4: New file.
19761
19762 2006-03-07  Simon Josefsson  <jas@extundo.com>
19763
19764         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
19765         test to be side-effect free by storing the result in the cache
19766         variable gl_cv_lib_readline, and moving the assignment of
19767         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
19768         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19769
19770 2006-03-07  Simon Josefsson  <jas@extundo.com>
19771
19772         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
19773         error on missing devices (the functions will return an error).
19774
19775         * m4/gc.m4: Move random stuff to gc-random.m4
19776
19777 2006-03-07  Simon Josefsson  <jas@extundo.com>
19778
19779         * lib/unistd_.h: New file.
19780
19781 2006-03-07  Simon Josefsson  <jas@extundo.com>
19782
19783         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
19784
19785 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
19786
19787         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
19788         Problem reported by Juan Manuel Guerrero.
19789
19790 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
19791
19792         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
19793         the unistd module.
19794         * lib/getlogin_r.c: Likewise.
19795         * lib/getlogin_r.h: Likewise.
19796         * lib/glob.c: Likewise.
19797         * lib/pagealign_alloc.c: Likewise.
19798         * lib/unistd_.h: Remove; no longer needed.
19799
19800 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
19801
19802         * MODULES.html.sh (Support for systems lacking POSIX:2001):
19803         Add unistd.
19804         * modules/c-stack (Depends-on): Add unistd.
19805         * modules/getlogin_r: Likewise.
19806         * modules/glob: Likewise.
19807         * modules/pagealign_alloc: Likewise.
19808         * modules/unistd (Files): Remove lib/unistd_.h.
19809         (EXTRA_DIST): Remove.
19810         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
19811         need unistd_.h.
19812         (MOSTLYCLEANFILES): Remove unistd.h-t.
19813
19814 2006-03-03  Simon Josefsson  <jas@extundo.com>
19815
19816         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
19817
19818 2006-03-03  Simon Josefsson  <jas@extundo.com>
19819
19820         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
19821         libidn and bison.
19822
19823 2006-03-03  Simon Josefsson  <jas@extundo.com>
19824
19825         * build-aux/maint.mk: Add indent target.
19826
19827 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
19828
19829         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
19830         our replacement poll.h in any case, to avoid a differing
19831         declaration from a system header.  Seen on AIX.
19832
19833 2006-03-01  Simon Josefsson  <jas@extundo.com>
19834
19835         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
19836         <kasal@ucw.cz>.
19837
19838 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
19839
19840         * modules/gettime (Depends-on): Add extensions module.
19841         * modules/nanosleep (Depends-on): Likewise.
19842         * modules/settime (Depends-on): Likewise.
19843
19844 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
19845
19846         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
19847         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
19848         pedantically.
19849         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
19850         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
19851
19852         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
19853         not "==".  Reported by Ralf Wildenhues.
19854
19855 2006-03-01  Karl Berry  <karl@gnu.org>
19856
19857         * doc/Copyright/request-*: new files, synced from gnuorg.
19858
19859 2006-03-01  Karl Berry  <karl@gnu.org>
19860
19861         * config/srclist.txt (Copyright/*): new entries.
19862
19863 2006-02-28  Simon Josefsson  <jas@extundo.com>
19864
19865         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
19866
19867 2006-02-27  Simon Josefsson  <jas@extundo.com>
19868
19869         * lib/base64.h: Indent #define's.  From Jim Meyering
19870         <jim@meyering.net>.
19871
19872 2006-02-27  Jim Meyering  <jim@meyering.net>
19873
19874         Revert the change of 2006-02-24, so these files can continue
19875         to be sync'd from gettext.
19876         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
19877         of `config.h'.
19878
19879 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
19880
19881         * modules/intprops: New file.
19882         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
19883         Add intprops.
19884         * modules/getloadavg (Files): Remove lib/intprops.h.
19885         (Depends-on): Add intprops.
19886         * modules/human: Likewise.
19887         * modules/inttostr: Likewise.
19888         * modules/openat: Likewise.
19889         * modules/sig2str: Likewise.
19890         * modules/userspec: Likewise.
19891         * modules/utimecmp: Likewise.
19892         * modules/xnanosleep: Likewise.
19893         * modules/xstrtol: Likewise.
19894
19895 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
19896
19897         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
19898         * modules/lock-tests (TESTS): Use $(EXEEXT).
19899         * modules/tls-tests: Likewise.
19900         * modules/argp-tests: Likewise.
19901         (check_PROGRAMS): New var, replacing...
19902         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
19903
19904 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19905
19906         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
19907         `config.h'.
19908
19909 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
19910
19911         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
19912
19913 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19914
19915         Sync from coreutils.
19916         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
19917         gl_CHDIR_SAFER.
19918
19919 2006-02-22  Jim Meyering  <jim@meyering.net>
19920
19921         Sync from coreutils.
19922         * m4/chdir-safer.m4: New file.
19923
19924 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
19925
19926         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
19927         AT_FDCWD exceeds INT_MAX.
19928         * lib/openat.h (AT_FDCWD): Likewise.
19929
19930 2006-02-17  Eric Blake  <address@hidden>
19931
19932         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
19933
19934 2006-02-16  Simon Josefsson  <jas@extundo.com>
19935
19936         * modules/getaddrinfo (Depends-on): Add sys_socket.
19937
19938 2006-02-15  Simon Josefsson  <jas@extundo.com>
19939
19940         * build-aux/maint.mk: Add dsyntax-check rule.
19941
19942 2006-02-15  Eric Blake  <ebb9@byu.net>
19943
19944         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
19945         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
19946         'present but cannot compile' warnings on cygwin.
19947         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
19948         use ws2tcpip.h if sys/socket.h works.
19949         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
19950         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
19951
19952 2006-02-14  Simon Josefsson  <jas@extundo.com>
19953
19954         * modules/maintainer-makefile (Files): Rename.
19955
19956         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
19957         and (the local) Makefile.cfg to maint-cfg.mk.
19958
19959         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
19960         to the latter.
19961
19962         * modules/maintainer-makefile: New module.
19963
19964         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
19965         severaly stripped to make it possible to build it up from scratch
19966         with reliable tests.
19967
19968         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
19969         fixes to permit overriding the default actions when configure and
19970         makefile are not available.
19971
19972 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
19973
19974         Sync from coreutils.
19975         * modules/lstat (Depends-on): Don't depend on xalloc.
19976         (License): Change from GPL to LGPL, since this is now simply a
19977         replacement for a libc function.
19978
19979 2006-02-14  Jim Meyering  <jim@meyering.net>
19980
19981         Sync from coreutils.
19982
19983         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
19984         failure on deficient systems, and simplify gnulib lgpl dependencies.
19985         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
19986         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
19987
19988         * lib/xalloc-die.c: Remove unused definition of N_.
19989
19990 2006-02-14  Jim Meyering  <jim@meyering.net>
19991
19992         Sync from coreutils.
19993         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
19994         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
19995         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
19996         double-quote uses of that variable, to accommodate the rare case in
19997         which getmntent is available in none of the libraries checked.  This
19998         happens at least on FreeBSD 5.0.
19999
20000 2006-02-13  Simon Josefsson  <jas@extundo.com>
20001
20002         * gnulib-tool (Usage): Fix --import, from
20003         karl@freefriends.org (Karl Berry).
20004
20005 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
20006
20007         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
20008
20009 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
20010
20011         * lib/argp-namefrob.h: Restore changes accidentally lost during the
20012         "autoupdate" on 2005-12-12.
20013
20014 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
20015
20016         * modules/closeout (Depends-on): Remove atexit.
20017
20018 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
20019
20020         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
20021         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
20022
20023 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
20024
20025         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
20026         __EXTENSIONS__ if this causes compilation to fail.  Problem
20027         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
20028         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
20029
20030 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
20031
20032         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
20033         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
20034         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
20035         All uses changed.
20036
20037 2006-01-26  Simon Josefsson  <jas@extundo.com>
20038
20039         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
20040         prototype is visible on mingw32.
20041
20042         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
20043         for mingw32.
20044
20045         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
20046         mingw32).
20047
20048 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
20049
20050         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
20051         attempt to open for write; this always fails, at least on POSIX
20052         hosts.  This reinstates the 2006-01-09 change, which was
20053         inadvertently removed.
20054
20055 2006-01-26  Bruno Haible  <bruno@clisp.org>
20056
20057         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
20058         Reported by Paul Eggert.
20059
20060 2006-01-26  Bruno Haible  <bruno@clisp.org>
20061             Paul Eggert  <eggert@cs.ucla.edu>
20062
20063         * lib/stdbool_.h (_Bool)
20064         [(! (defined __cplusplus || defined __BEOS__)
20065           && !defined __GNUC__
20066           && !(defined __HP_cc || defined __xlc__
20067                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
20068                || defined __sgi))]:
20069         #define to signed char in these cases too; this simplifies
20070         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
20071         etc., separately) and makes it more conservative.
20072
20073 2006-01-25  Simon Josefsson  <jas@extundo.com>
20074
20075         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
20076         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
20077         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
20078
20079 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
20080
20081         * lib/argp-namefrob.h: Bugfix. Remove stray #
20082
20083 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
20084
20085         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
20086         so that we test the test.
20087         Check for yet another HP-UX cc bug involving *bool |= bool.
20088
20089 2006-01-25  Karl Berry  <karl@gnu.org>
20090
20091         * config/srclist.txt (vasnprintf.c): sync lost.
20092
20093 2006-01-25  Jim Meyering  <jim@meyering.net>
20094
20095         Sync from the stable (b5) branch of coreutils:
20096
20097         * lib/fts.c (fts_children): Don't let close() clobber errno from
20098         failed fchdir().
20099
20100         * lib/fts.c (fts_stat): When following a symlink-to-directory,
20101         don't necessarily interpret stat-fails+lstat-succeeds as indicating
20102         a dangling symlink.  That can also happen at least for ELOOP.
20103         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
20104         FYI, this bug predates the inclusion of fts.c in coreutils.
20105
20106         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
20107         in their own block, so pre-c99 compilers don't object.
20108
20109         Avoid the double-free (first in fts_read, second in fts_close) that
20110         would occur when an `active' directory is made inaccessible (e.g.,
20111         via chmod a-x) during a traversal.
20112         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
20113         before returning.  Reproduce this failure by
20114         mkdir -p a/b; cd a; chmod a-x . b
20115         Reported by Stavros Passas.
20116
20117 2006-01-25  Jim Meyering  <jim@meyering.net>
20118
20119         * lib/fileblocks.c: Remove more useless parentheses.
20120         * lib/readutmp.h: Likewise.
20121
20122 2006-01-25  Bruno Haible  <bruno@clisp.org>
20123
20124         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
20125         warnings.
20126         Reported by Paul Eggert.
20127
20128 2006-01-25  Bruno Haible  <bruno@clisp.org>
20129
20130         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
20131         rid of a trap command. For Solaris sh.
20132         Reported by Mark D. Baushke <mdb@gnu.org>.
20133
20134 2006-01-24  Simon Josefsson  <jas@extundo.com>
20135
20136         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
20137         Bruno.
20138
20139 2006-01-24  Karl Berry  <karl@gnu.org>
20140
20141         * config/srclist.txt (argp-namefrob.h): sync lost.
20142
20143 2006-01-24  Jim Meyering  <jim@meyering.net>
20144
20145         * modules/openat (Files): Add lib/intprops.h.
20146         From Mark D. Baushke.
20147
20148 2006-01-24  Jim Meyering  <jim@meyering.net>
20149
20150         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
20151         Reported by Mark D. Baushke.
20152
20153 2006-01-24  Jim Meyering  <jim@meyering.net>
20154
20155         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
20156
20157 2006-01-24  Bruno Haible  <bruno@clisp.org>
20158
20159         * modules/strnlen (Maintainer): Change from glibc to all.
20160
20161 2006-01-24  Bruno Haible  <bruno@clisp.org>
20162
20163         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
20164         Patch by Paul Eggert.
20165
20166 2006-01-24  Bruno Haible  <bruno@clisp.org>
20167
20168         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
20169         already has it.
20170         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
20171         2005-11-26.
20172
20173         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
20174         'signed char' to avoid problems with the built-in _Bool type.
20175         Reported by Paul Eggert on 2005-11-26.
20176
20177 2006-01-24  Bruno Haible  <bruno@clisp.org>
20178
20179         * gnulib-tool (func_import): Avoid constructing complicated sed
20180         expressions inside backquote.
20181         Report and solution by Mark D. Baushke <mdb@gnu.org>.
20182
20183 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
20184
20185         These changes imported from libc.
20186         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
20187         test and two separate function calls.
20188         * lib/strndup.c (__strndup): Add libc_hidden_def.
20189
20190 2006-01-23  Simon Josefsson  <jas@extundo.com>
20191
20192         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
20193         Remove the test_*_SOURCES variable: automake infers it by default.
20194         * modules/tls-tests: Likewise.
20195
20196 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
20197
20198         Work around porting bugs reported by Dieter in
20199         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
20200         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
20201         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
20202         Include "getopt.h" first, to check interface.
20203         (getenv): Declare only if defined HAVE_DECL_GETENV &&
20204         !HAVE_DECL_GETENV.
20205         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
20206         (__strndup): Revert to K&R-style function dfns, the glibc style.
20207         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
20208         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
20209         Include strnlen.h first, to get prototype properly.
20210         (strnlen): Renamed from __strnlen.
20211         Remove weak alias.
20212
20213 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
20214
20215         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
20216
20217 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
20218
20219         * config/srclist.txt: Adjust to reflect glibc reorganization.
20220         This affects only comments.
20221
20222 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
20223
20224          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
20225          Reported by Bruce Korb <bkorb@gnu.org>.
20226
20227 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
20228
20229         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
20230         to pacify gcc -Wswitch-default.
20231
20232 2006-01-22  Bruno Haible  <bruno@clisp.org>
20233
20234         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
20235         temporary buffer for sprintf, take into account the precision also
20236         for 'd', 'i', 'u', 'o', 'x', 'X'.
20237
20238 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
20239
20240         * modules/argp-tests: New module
20241         * tests/test-argp.c: New file
20242         * tests/test-argp-2.sh: New file
20243
20244 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
20245
20246         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
20247         (__argp_base_name): Removed
20248         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
20249         typo.
20250         (__argp_base_name): Provide macro definition or extern declaration
20251         depending on the configuration
20252
20253 2006-01-20  Simon Josefsson  <jas@extundo.com>
20254
20255         * modules/inet_ntop (Depends-on): Depend on sys_socket.
20256
20257 2006-01-20  Simon Josefsson  <jas@extundo.com>
20258
20259         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
20260
20261 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
20262
20263         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
20264         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
20265         Suggested by Bruno Haible.
20266
20267 2006-01-20  Karl Berry  <karl@gnu.org>
20268
20269         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
20270         until changes propagate, I guess.
20271
20272 2006-01-19  Simon Josefsson  <jas@extundo.com>
20273
20274         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
20275
20276 2006-01-19  Simon Josefsson  <jas@extundo.com>
20277
20278         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
20279
20280 2006-01-19  Simon Josefsson  <jas@extundo.com>
20281
20282         * gnulib-tool: Set check_PROGRAMS.
20283
20284         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
20285         modules/des-tests, modules/gc-arcfour-tests,
20286         modules/gc-arctwo-tests, modules/gc-des-tests,
20287         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
20288         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
20289         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
20290         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
20291         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
20292         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
20293         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
20294         test_*_SOURCES.
20295
20296 2006-01-18  Simon Josefsson  <jas@extundo.com>
20297
20298         * modules/socklen (Depends-on): Depend on sys_socket.
20299
20300 2006-01-18  Simon Josefsson  <jas@extundo.com>
20301
20302         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
20303         modules/des-tests, modules/gc-arcfour-tests,
20304         modules/gc-arctwo-tests, modules/gc-des-tests,
20305         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
20306         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
20307         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
20308         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
20309         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
20310         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
20311         $(EXEEXT) to automake TESTS variable, for mingw32.
20312
20313 2006-01-17  Simon Josefsson  <jas@extundo.com>
20314
20315         * modules/socklen (Include): Need sys/socket.h.
20316
20317 2006-01-17  Bruno Haible  <bruno@clisp.org>
20318
20319         * modules/ssize_t (Include): Add <sys/types.h>.
20320
20321 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
20322
20323         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
20324         it's not portable and it doesn't work with cross-compiles.
20325         Problem reported by Bruno Haible.  Fix missing-$ typo in
20326         'test "gl_cv_ignore_unused_libraries" ...' that prevented
20327         -zignore from being used with Sun's C compiler.
20328
20329 2006-01-12  Simon Josefsson  <jas@extundo.com>
20330
20331         * lib/base64.c: Fix warning, reported by Bruno Haible
20332         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
20333
20334 2006-01-12  Bruno Haible  <bruno@clisp.org>
20335
20336         * modules/ldd: New file.
20337         * build-aux/ldd.sh.in: New file.
20338         * MODULES.html.sh (Support for building libraries and executables): Add
20339         ldd.
20340
20341 2006-01-12  Bruno Haible  <bruno@clisp.org>
20342
20343         * m4/ldd.m4: New file.
20344
20345 2006-01-12  Bruno Haible  <bruno@clisp.org>
20346
20347         * gnulib-tool (func_import, func_create_testdir): Don't go into an
20348         endless loop while replacing $auxdir with build-aux.
20349
20350 2006-01-11  Simon Josefsson  <jas@extundo.com>
20351
20352         * lib/stdint_.h (SIZE_MAX): Add missing (.
20353
20354 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
20355
20356         Sync from coreutils.
20357         * lib/md5.c: Fix commentary typos.
20358         (alignof, UNALIGNED_P): No need for a GCC-specific version.
20359         * lib/md5.h (__attribute__): Remove; unused.
20360         * lib/sha1.c: Fix commentary to match md5 better.
20361         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
20362         so that we don't need to worry about alignment.  All uses changed.
20363         This merges the 2005-10-28 md5 change into sha1.
20364
20365 2006-01-11  Jim Meyering  <jim@meyering.net>
20366
20367         Sync from coreutils.
20368         * lib/md5.c (OP): Fix spacing.
20369
20370 2006-01-11  Bruno Haible  <bruno@clisp.org>
20371
20372         Ensure automatic ordering between gl_LOCK and gl_ARGP.
20373         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
20374         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
20375
20376 2006-01-11  Bruno Haible  <bruno@clisp.org>
20377
20378         Ensure automatic ordering between gl_LOCK and gl_ARGP.
20379         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
20380         the "early" section as well.
20381
20382 2006-01-11  Bruno Haible  <bruno@clisp.org>
20383
20384         Avoid "ar: no archive members specified" error on MacOS X.
20385         * gnulib-tool (func_modules_add_dummy): New function.
20386         (func_import, func_create_testdir): Invoke it.
20387
20388 2006-01-11  Bruno Haible  <bruno@clisp.org>
20389
20390         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
20391         with $auxdir in AC_CONFIG_FILES statements.
20392
20393 2006-01-11  Bruno Haible  <bruno@clisp.org>
20394
20395         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20396         Initialize also noinst_HEADERS to empty.
20397
20398 2006-01-11  Bruno Haible  <bruno@clisp.org>
20399
20400         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
20401         variables.
20402         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
20403         autoreconf.
20404
20405 2006-01-11  Bruno Haible  <bruno@clisp.org>
20406
20407         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
20408         overridable by the user.
20409         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20410
20411 2006-01-10  Simon Josefsson  <jas@extundo.com>
20412
20413         * modules/sys_socket: New file.
20414
20415 2006-01-10  Simon Josefsson  <jas@extundo.com>
20416
20417         * m4/sys_socket_h.m4: New file.
20418
20419 2006-01-10  Simon Josefsson  <jas@extundo.com>
20420
20421         * lib/socket_.h: New file.
20422
20423 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
20424
20425         * modules/readutmp (Maintainer): Add myself.
20426
20427 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
20428
20429         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
20430         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
20431         People who are still concerned with buggy memcmp implementations
20432         can invoke gl_FUNC_MEMCMP themselves.
20433
20434 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
20435
20436         * lib/regex_internal.h (BITSET_WORD_BITS):
20437         Work around a bug in 64-bit PGC (before version 6.1-2), where the
20438         preprocessor mishandles large unsigned values as if they were signed.
20439         Problem reported by Claudio Fontana in
20440         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
20441
20442 2006-01-10  Jim Meyering  <jim@meyering.net>
20443
20444         Avoid the double-free (first in fts_read, second in fts_close) that
20445         would occur when an `active' directory is made inaccessible (e.g.,
20446         via chmod a-x) during a traversal.
20447         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
20448         before returning.  Reproduce this failure by
20449         mkdir -p a/b; cd a; chmod a-x . b
20450         Reported by Stavros Passas.
20451
20452         Sync from coreutils.
20453         * lib/sha1.c: Tweak grammar in a comment.
20454
20455 2006-01-10  Jim Meyering  <jim@meyering.net>
20456
20457         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
20458         Patch by Joerg Sonnenberger.
20459
20460 2006-01-10  Bruno Haible  <bruno@clisp.org>
20461
20462         * modules/readutmp: Depend on module free.
20463         * modules/strtok_r: Depend on module restrict.
20464
20465 2006-01-10  Bruno Haible  <bruno@clisp.org>
20466
20467         * modules/gettext (configure.ac): Add an invocation of
20468         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
20469
20470 2006-01-10  Bruno Haible  <bruno@clisp.org>
20471
20472         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
20473         Reported by Werner Lemberg <wl@gnu.org>.
20474
20475 2006-01-10  Bruno Haible  <bruno@clisp.org>
20476
20477         * lib/localcharset.c: Update from GNU gettext.
20478
20479 2006-01-10  Bruno Haible  <bruno@clisp.org>
20480
20481         * lib/argp.h (__const): Remove macro. Use const instead.
20482         * lib/argp-fmtstream.h (__const): Likewise.
20483         * lib/glob_.h (__const): Remove macro.
20484         * lib/glob-libc.h: Use const instead of __const.
20485
20486 2006-01-10  Bruno Haible  <bruno@clisp.org>
20487
20488         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
20489         variable.
20490         Needed to avoid an automake error regarding the 'gettext' module.
20491
20492 2006-01-09  Simon Josefsson  <jas@extundo.com>
20493
20494         * modules/inet_ntop (Depends-on): Add restrict.
20495
20496 2006-01-09  Simon Josefsson  <jas@extundo.com>
20497
20498         * modules/gc-rijndael-tests (License): Put under LGPL.
20499
20500         * modules/gc-des-tests (License): Likewise.
20501
20502         * modules/gc-arcfour-tests (License): Likewise.
20503
20504         * modules/gc-arctwo-tests (License): Likewise.
20505
20506         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
20507
20508         * modules/gc-hmac-sha1-tests (Files): Likewise.
20509
20510         * modules/gc-hmac-md5-tests (License): Likewise.
20511
20512         * modules/gc-sha1-tests (License): Likewise.
20513
20514         * modules/gc-md5-tests (License): Likewise.
20515
20516         * modules/gc-md4-tests (License): Likewise.
20517
20518         * modules/gc-md2-tests (License): Likewise.
20519
20520         * modules/gc-tests (License): Likewise.
20521
20522         * modules/des-tests (License): Likewise.
20523
20524         * modules/md4-tests (License): Likewise.
20525
20526         * modules/md2-tests (License): Likewise.
20527
20528 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
20529
20530         Sync from coreutils:
20531
20532         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
20533         * modules/lib-ignore: New file.
20534         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
20535         chdir-safer.m4, lchmod.m4.
20536         * modules/openat: Add mkdirat.c, openat-priv.h.
20537
20538 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
20539
20540         Sync from coreutils.
20541         * m4/lib-ignore.m4: New file.
20542         * m4/lchmod.m4: New file.
20543
20544 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
20545
20546         Sync from coreutils.
20547         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
20548         for write access: POSIX says that must fail.
20549         * lib/fts.c (diropen): Likewise.
20550         * lib/save-cwd.c (save_cwd): Likewise.
20551         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
20552         well, for minor improvements on hosts that lack O_DIRECTORY.
20553         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
20554         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
20555         Fall back on chown if open failed with EACCES.
20556
20557         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
20558         Report an error at compile-time if only a 1-second nominal clock
20559         resolution is found.
20560
20561         * lib/lchmod.h: New file.
20562         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
20563         (make_dir_parents): Use lchown rather than chown, and
20564         lchmod rather than chmod.
20565
20566         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
20567         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
20568         "proc" reported by n0dalus.
20569
20570         * lib/mountlist.c: Include <limits.h>.
20571         (dev_from_mount_options)
20572         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
20573         New function.  It no longer assumes "dev=" has the System V meaning
20574         on Linux (since it doesn't).  It also parses "dev=" more carefully.
20575         (read_file_system_list)
20576         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
20577         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
20578         dev= in that case.
20579
20580         * lib/posixtm.h (PDS_PRE_2000): New macro.
20581         * lib/posixtm.c (year): Arg is now syntax_bits rather than
20582         allow_century.  All usages changed.  Reject dates outside the range
20583         1969-1999 if PDS_PRE_2000 is used.
20584
20585 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
20586
20587         Sync from coreutils.
20588         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
20589         (Time of day items): Mention the possibility of leap seconds.
20590         Problem reported by Dr. David Alan Gilbert.
20591
20592 2006-01-09  Jim Meyering  <jim@meyering.net>
20593
20594         Sync from coreutils.
20595
20596         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
20597
20598         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
20599
20600         * lib/modechange.c (mode_compile): Reject an invalid mode string
20601         that starts with an octal digit.  From Andreas Gruenbacher.
20602
20603         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
20604         and dup to open_safer and dup_safer, respectively.
20605         (openat_permissive): Fix typo in comment.
20606
20607         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
20608         "gettext.h"; either no longer needed or are guaranteed by openat.h.
20609         (_): Remove; no longer needed.
20610         (openat): Renamed from rpl_openat; no need for rpl_openat
20611         since openat.h renames openat for us.
20612         Replace most of the body with a call to openat_permissive,
20613         to avoid duplicate code.
20614         Port to (probably hypothetical) environments were mode_t is
20615         wider than int.
20616         (openat_permissive): Require mode arg, so that we can check
20617         types better.  Put it just after flags.  Change cwd failure
20618         indicator from pointer-to-bool to pointer-to-errno-value.
20619         All callers changed.
20620         Invoke openat_save_fail and/or openat_restore_fail if
20621         cwd_errno is null, so that openat can call us.
20622         (openat_permissive, fdopendir, fstatat, unlinkat):
20623         Simplify errno handling to avoid some duplicate code,
20624         as it's OK to set errno on success.
20625         * lib/openat.h: Revamp code so that function macros depend on
20626         __OPENAT_PREFIX only, not also on AT_FDCWD.
20627         (openat_ro): Remove.  Caller changed to use openat_permissive.
20628         (openat_permissive): Now a macro, if not a function.
20629         (openat_restore_fail, openat_save_fail): Now always functions,
20630         since mkdirat needs them even if __OPENAT_PREFIX is defined.
20631
20632         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
20633         and openat.c.
20634         * lib/mkdirat.c: Include openat-priv.h.
20635         Remove definitions of macros defined therein.
20636         * lib/openat.c: Likewise.
20637
20638         * lib/mkdirat.c (mkdirat): New file and function.
20639         * lib/openat.h (mkdirat): Declare.
20640
20641         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
20642
20643         * lib/openat.h (openat_permissive): Declare.
20644         (openat_ro): Define.
20645
20646         * lib/openat.c (EXPECTED_ERRNO): New macro.
20647         (openat_permissive): New function -- used in remove.c rewrite.
20648         (all functions): Set errno just before returning, only if there
20649         was an actual failure.
20650         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
20651
20652         Emulate openat-family functions using Linux's procfs, if possible.
20653         Idea and some code based on Ulrich Drepper's glibc changes.
20654
20655         * lib/openat.c: (BUILD_PROC_NAME): New macro.
20656         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
20657         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
20658         before falling back on save_cwd and restore_cwd.
20659         (fdopendir, fstatat, unlinkat): Likewise.
20660
20661         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
20662         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
20663
20664         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
20665         as second argument to va_arg.  Otherwise, some versions of gcc
20666         warn that `if this code is reached, the program will abort'.
20667
20668 2006-01-09  Jim Meyering  <jim@meyering.net>
20669
20670         Sync from coreutils.
20671         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
20672         Require openat-priv.h.
20673
20674 2006-01-09  Bruno Haible  <bruno@clisp.org>
20675
20676         * modules/strnlen (Include): Use strnlen.h.
20677
20678 2006-01-09  Bruno Haible  <bruno@clisp.org>
20679
20680         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
20681
20682 2006-01-09  Bruno Haible  <bruno@clisp.org>
20683
20684         * lib/sysexit_.h (EX_OK): New macro.
20685         Suggested by Martin Lambers <marlam@marlam.de>.
20686
20687 2006-01-09  Bruno Haible  <bruno@clisp.org>
20688
20689         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
20690         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
20691
20692 2006-01-09  Bruno Haible  <bruno@clisp.org>
20693
20694         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
20695         numbers.
20696
20697 2006-01-09  Bruno Haible  <bruno@clisp.org>
20698
20699         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
20700         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
20701         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
20702         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
20703
20704 2006-01-09  Bruno Haible  <bruno@clisp.org>
20705
20706         * build-aux/javacomp.sh.in: New file, moved from lib/.
20707         * modules/javacomp-script (Files): Update.
20708         (configure.ac): Add AC_CONFIG_FILES invocation.
20709         (EXTRA_DIST): Remove variable.
20710
20711         * build-aux/javaexec.sh.in: New file, moved from lib/.
20712         * modules/javaexec (Files): Update.
20713         (configure.ac): Add AC_CONFIG_FILES invocation.
20714         (EXTRA_DIST): Remove javaexec.sh.in.
20715
20716         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
20717         * modules/csharpcomp-script (Files): Update.
20718         (configure.ac): Add AC_CONFIG_FILES invocation.
20719         (EXTRA_DIST): Remove variable.
20720
20721         * build-aux/csharpexec.sh.in: New file, moved from lib/.
20722         * modules/csharpexec (Files): Update.
20723         (configure.ac): Add AC_CONFIG_FILES invocation.
20724         (EXTRA_DIST): Remove csharpexec.sh.in.
20725
20726 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
20727
20728         Sync from coreutils.
20729
20730         Add POSIX ACL support
20731         * lib/acl.h (copy_acl, set_acl): Add declarations.
20732         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
20733         systems other than Linux.
20734         (chmod_or_fchmod): New function: use fchmod when possible,
20735         and chmod otherwise.
20736         (file_has_acl): Add a POSIX ACL implementation, with a
20737         Linux-specific subcase.
20738         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
20739         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
20740         acls are unsupported.
20741         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
20742         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
20743         are unsupported.
20744
20745 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
20746
20747         Sync from coreutils.
20748         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
20749
20750 2006-01-07  Bruno Haible  <bruno@clisp.org>
20751
20752         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
20753         gl_EARLY.
20754
20755 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
20756
20757         * lib/strftime.c (tzname): Don't declare if it is already #defined.
20758         Problem reported for Mingw by Mark Junker.
20759
20760 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
20761
20762         * README: Gnulib normally doesn't generate a tarball.
20763
20764 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
20765
20766         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
20767         long int, not int, for nanosecond counts, so that people who are
20768         used to POSIX struct timespec won't be surprised.  Reported by Jim
20769         Meyering.
20770
20771 2005-12-28  Bruno Haible  <bruno@clisp.org>
20772
20773         * build-aux/config.rpath: Update from GNU gettext.
20774
20775 2005-12-16  Jim Meyering  <jim@meyering.net>
20776
20777         * modules/fprintftime: New module.
20778         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
20779
20780 2005-12-16  Jim Meyering  <jim@meyering.net>
20781
20782         * m4/fprintftime.m4: New file.
20783
20784 2005-12-16  Jim Meyering  <jim@meyering.net>
20785
20786         * lib/fprintftime.c, lib/fprintftime.h: New files.
20787
20788 2005-12-15  Simon Josefsson  <jas@extundo.com>
20789
20790         * modules/socklen (configure.ac): Fix M4 macro name, to align with
20791         new m4/socklen.m4.
20792
20793 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
20794
20795         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
20796         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
20797
20798 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
20799
20800         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
20801         * lib/argp-help.c (fill_in_uparams): Check if the constructed
20802         struct uparams is valid. Fall back to the default values if it is
20803         not.
20804
20805 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
20806
20807         * modules/argp (Files): Add argp-pin.c
20808         (Depends-on): dirname
20809         (lib_SOURCES): Add argp-pin.c
20810
20811 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
20812
20813         * m4/argp.m4:  Check if program_invocation_name and
20814         program_invocation_short_name are declared and define appropriate
20815         macros if they are not.
20816
20817 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
20818
20819         * lib/argp-help.c (__argp_base_name): New function
20820         (__argp_short_program_name): Rewrite using __argp_base_name
20821         * lib/argp-namefrob.h: Define program_invocation_name and
20822         program_invocation_short_name if requested
20823         (__argp_base_name): Add prototype
20824         * lib/argp-parse.c (argp_def): Use gettext wrappers
20825         (argp_default_parser): Use __argp_base_name
20826         * lib/argp-pin.c: New file. Defines program_invocation_name and
20827         program_invocation_short_name on systems that lack them.
20828
20829 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
20830
20831         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
20832         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
20833         porting problem reported by Georg Schwarz in
20834         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
20835
20836 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
20837
20838         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
20839         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
20840         porting problem reported by Georg Schwarz in
20841         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
20842
20843 2005-12-05  Bruno Haible  <bruno@clisp.org>
20844
20845         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
20846         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
20847         Reported by Mark Junker <mjscod@gmx.de>.
20848
20849 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
20850
20851         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
20852         Use implementation from Albert Chin, with some
20853         comments/corrections by Stepan Kasal and myself.
20854
20855 2005-12-02  Bruno Haible  <bruno@clisp.org>
20856
20857         * gnulib-tool (func_import): Accept GPLed build tool modules when
20858         --lgpl is given.
20859         * modules/csharpcomp-script: New file.
20860         * modules/csharpcomp: Depend on it.
20861         * modules/javacomp-script: New file.
20862         * modules/javacomp: Depend on it.
20863         Suggested by Simon Josefsson.
20864
20865 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
20866
20867         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
20868         statement, to work around an HP-UX 10.20 compiler bug reported by
20869         Peter O'Gorman.
20870
20871 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
20872
20873         * modules/savedir (Depends-on): Add openat.
20874
20875 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
20876
20877         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
20878         (uintmax_t) [defined uintmax_t]: Do not declare.
20879         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
20880         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
20881         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
20882         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
20883         sake of portability to weird hosts that C allows (though we don't
20884         know of any practical examples).
20885
20886         * lib/savedir.h (fdsavedir): New decl.
20887         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
20888         contains most of the former guts of savedir.
20889         (savedir): Use savedirstream.
20890         Include "openat.h".
20891
20892 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
20893
20894         * modules/obstack (Files): Add m4/ulonglong.m4.
20895         Problem reported by Davide Angelocola.
20896
20897 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
20898
20899         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
20900         coreutils no longer futzes with rounding modes.
20901
20902 2005-11-14  Jim Meyering  <jim@meyering.net>
20903
20904         * lib/mkstemp-safer.c: Include <config.h>, required for possible
20905         replacement of mkstemp.
20906
20907 2005-11-10  Simon Josefsson  <jas@extundo.com>
20908
20909         * lib/readline.c: Remove EOL.
20910
20911 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
20912
20913         * modules/gethrxtime (Depends-on): Add gettime.
20914
20915 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
20916
20917         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
20918         or gettimeofday; no longer needed.
20919
20920 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
20921
20922         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
20923         time business.
20924         (gethrxtime) [! (HAVE_NANOUPTIME
20925         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
20926         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
20927         our own approximation.
20928
20929 2005-11-08  Eric Blake  <ebb9@byu.net>
20930
20931         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
20932
20933 2005-11-08  Eric Blake  <ebb9@byu.net>
20934
20935         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
20936
20937 2005-11-04  Bruno Haible  <bruno@clisp.org>
20938
20939         * gnulib-tool: Implement --update mode.
20940
20941 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
20942
20943         Fix porting problem reported by Theodoros V. Kalamatianos.
20944         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
20945         Don't assume that futimes failing means we must fail.
20946
20947 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
20948
20949         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
20950         variables to suggest the intended function of the PATH_MAX check.
20951
20952 2005-10-30  Kean Johnston  <jkj@sco.com>
20953
20954         Trivial changes to support SCO systems.
20955         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
20956         as PATH_MAX.
20957         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
20958         where __ptr is null when no I/O is pending.
20959
20960 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
20961
20962         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
20963         leave errno alone.  Problem reported by Dmitry V. Levin.
20964
20965 2005-10-28  Simon Josefsson  <jas@extundo.com>
20966
20967         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
20968         Test more.
20969
20970         * tests/test-gc-md2.c, tests/test-md2.c: New files.
20971
20972         * modules/md2, modules/md2-tests: New files.
20973
20974 2005-10-28  Simon Josefsson  <jas@extundo.com>
20975
20976         * m4/inet_ntop.m4: More tests.
20977
20978         * m4/gc-md2.m4, md2.m4: New file.
20979
20980 2005-10-28  Simon Josefsson  <jas@extundo.com>
20981
20982         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
20983         "restrict" keywords, as per POSIX.  Protect the function
20984         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
20985         Don't use K&R prototypes.  Check the sprintf return values.
20986         Re-define EAFNOSUPPORT if not present.  Indent.
20987
20988         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
20989         suggested by Bruno Haible <bruno@clisp.org>.
20990
20991         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
20992
20993         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
20994
20995         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
20996         libgcrypt).
20997
20998         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
20999
21000         * lib/md2.h, lib/md2.c: New files.
21001
21002 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
21003
21004         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
21005         errno alone.  Problem reported by Frederic Jolliton.
21006
21007 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
21008
21009         * modules/verify (License): Change from GPL to LGPL.  This is a
21010         tiny module and there are apparently near-equivalents that are
21011         under the BSD license.
21012
21013 2005-10-24  Simon Josefsson  <jas@extundo.com>
21014
21015         * modules/sha1: Relicense to LGPL.
21016
21017 2005-10-24  Simon Josefsson  <jas@extundo.com>
21018
21019         * lib/md4.h: Shrink buffer size, now that we changed the type.
21020
21021 2005-10-23  Simon Josefsson  <jas@extundo.com>
21022
21023         * gnulib-tool (func_import): Fix --tests-base.
21024
21025 2005-10-22  Simon Josefsson  <jas@extundo.com>
21026
21027         * modules/arcfour (Depends-on): Need stdint.
21028
21029 2005-10-22  Simon Josefsson  <jas@extundo.com>
21030
21031         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
21032         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
21033
21034 2005-10-22  Simon Josefsson  <jas@extundo.com>
21035
21036         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
21037         suggested by Bruno Haible <bruno@clisp.org>.
21038
21039 2005-10-22  Simon Josefsson  <jas@extundo.com>
21040
21041         * lib/crc.h: Include stddef.h, for size_t.
21042
21043 2005-10-22  Simon Josefsson  <jas@extundo.com>
21044
21045         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
21046         arcfour_context struct (simplify test vector testing in GNU
21047         Shishi).
21048
21049 2005-10-21  Simon Josefsson  <jas@extundo.com>
21050
21051         * modules/des, modules/des-tests: New files.
21052
21053         * modules/gc-des, modules/gc-des-tests: New files.
21054
21055         * tests/test-des.c, tests/test-gc-des.c: New file.
21056
21057 2005-10-21  Simon Josefsson  <jas@extundo.com>
21058
21059         * modules/arctwo, modules/arctwo-tests: New files.
21060
21061         * tests/test-arctwo.c: New file.
21062
21063         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
21064
21065         * tests/test-gc-arctwo.c: New file.
21066
21067 2005-10-21  Simon Josefsson  <jas@extundo.com>
21068
21069         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
21070         Bruno Haible <bruno@clisp.org>.
21071
21072         * m4/gc-des.m4: New file.
21073
21074 2005-10-21  Simon Josefsson  <jas@extundo.com>
21075
21076         * m4/arctwo.m4: New file.
21077
21078         * m4/gc-arctwo.m4: New file.
21079
21080 2005-10-21  Simon Josefsson  <jas@extundo.com>
21081
21082         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
21083         block.
21084
21085 2005-10-21  Simon Josefsson  <jas@extundo.com>
21086
21087         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
21088         <bruno@clisp.org>.
21089
21090         * lib/hmac-sha1.c (hmac_sha1): Likewise.
21091
21092         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
21093         Bruno Haible <bruno@clisp.org>.
21094
21095         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
21096         <bruno@clisp.org>.
21097
21098 2005-10-21  Simon Josefsson  <jas@extundo.com>
21099
21100         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
21101
21102 2005-10-21  Simon Josefsson  <jas@extundo.com>
21103
21104         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
21105
21106 2005-10-21  Simon Josefsson  <jas@extundo.com>
21107
21108         * lib/des.h, lib/des.c: New files.
21109
21110         * lib/gc-gnulib.c: Support DES.c
21111
21112 2005-10-21  Simon Josefsson  <jas@extundo.com>
21113
21114         * lib/arctwo.h, lib/arctwo.c: New files.
21115
21116         * lib/gc-gnulib.c: Support ARCTWO.
21117
21118 2005-10-21  Simon Josefsson  <jas@extundo.com>
21119
21120         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
21121         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
21122
21123 2005-10-21  Simon Josefsson  <jas@extundo.com>
21124
21125         * gnulib-tool (func_import, func_create_testdir): Define automake
21126         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
21127         Makefile.am snippet),
21128         suggested by Bruno Haible <bruno@clisp.org>.
21129
21130         * modules/gc (Makefile.am): Use it.
21131
21132 2005-10-21  Bruno Haible  <bruno@clisp.org>
21133
21134         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
21135         patch.
21136
21137 2005-10-19  Simon Josefsson  <jas@extundo.com>
21138
21139         * tests/test-gc-rijndael.c: New file.
21140
21141         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
21142
21143 2005-10-19  Simon Josefsson  <jas@extundo.com>
21144
21145         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
21146         interface too.
21147
21148 2005-10-19  Simon Josefsson  <jas@extundo.com>
21149
21150         * tests/test-gc-arcfour.c: New file.
21151
21152         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
21153
21154 2005-10-19  Simon Josefsson  <jas@extundo.com>
21155
21156         * modules/gc-md4, modules/gc-md4-tests: New file.
21157
21158         * tests/test-gc-md4.c: New file.
21159
21160 2005-10-19  Simon Josefsson  <jas@extundo.com>
21161
21162         * m4/gc-md4.m4: New file.
21163
21164 2005-10-19  Simon Josefsson  <jas@extundo.com>
21165
21166         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
21167         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
21168         <kasal@ucw.cz>.
21169
21170 2005-10-19  Simon Josefsson  <jas@extundo.com>
21171
21172         * m4/gc-arcfour.m4: New file.
21173
21174         * m4/gc-rijndael.m4: New file.
21175
21176 2005-10-19  Simon Josefsson  <jas@extundo.com>
21177
21178         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
21179
21180 2005-10-19  Simon Josefsson  <jas@extundo.com>
21181
21182         * lib/gc-gnulib.c: Support ARCFOUR.
21183
21184 2005-10-19  Simon Josefsson  <jas@extundo.com>
21185
21186         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
21187         support.
21188
21189         * lib/gc.h: Add ECB enum type.
21190
21191         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
21192
21193 2005-10-18  Simon Josefsson  <jas@extundo.com>
21194
21195         * tests/test-md5.c: New file.
21196
21197         * modules/md5-tests: New file.
21198
21199 2005-10-18  Simon Josefsson  <jas@extundo.com>
21200
21201         * tests/test-md4.c: New file.
21202
21203         * modules/md4, modules/md4-tests: New files.
21204
21205 2005-10-18  Simon Josefsson  <jas@extundo.com>
21206
21207         * m4/md4.m4: New file.
21208
21209 2005-10-18  Simon Josefsson  <jas@extundo.com>
21210
21211         * lib/md4.h, lib/md4.c: New files, based on md5.?.
21212
21213 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
21214
21215         * gnulib-tool (func_create_testdir): Omit the second check whether
21216         BUILT_SOURCES in nonempty.
21217
21218 2005-10-17  Simon Josefsson  <jas@extundo.com>
21219
21220         * tests/test-rijndael.c: New file.
21221
21222 2005-10-17  Simon Josefsson  <jas@extundo.com>
21223
21224         * modules/sha1: Depend on stdint instead of md5.
21225
21226         * modules/md5: Depend on stdint, remove uint32_t.
21227
21228 2005-10-17  Simon Josefsson  <jas@extundo.com>
21229
21230         * modules/gc-sha1-tests: New file.
21231
21232         * tests/test-gc-sha1.c: New file.
21233
21234 2005-10-17  Simon Josefsson  <jas@extundo.com>
21235
21236         * m4/md5.m4: Remove call to uint32_t.m4.
21237
21238 2005-10-17  Simon Josefsson  <jas@extundo.com>
21239
21240         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
21241
21242         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
21243         md5.h.
21244
21245         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
21246
21247         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
21248
21249 2005-10-17  Simon Josefsson  <jas@extundo.com>
21250
21251         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
21252
21253 2005-10-17  Simon Josefsson  <jas@extundo.com>
21254
21255         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
21256
21257 2005-10-17  Simon Josefsson  <jas@extundo.com>
21258
21259         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
21260
21261         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
21262
21263 2005-10-17  Bruno Haible  <bruno@clisp.org>
21264
21265         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
21266         that it can also be used in a test.
21267
21268 2005-10-16  Bruno Haible  <bruno@clisp.org>
21269
21270         * gnulib-tool (func_emit_tests_Makefile_am): Also define
21271         TESTS_ENVIRONMENT, so that individual tests can augment it.
21272
21273         * gnulib-tool (func_create_testdir): Use an intermediate target for
21274         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
21275         macros, like $(ALLOCA_H), which cannot be passed through the command
21276         line.
21277
21278 2005-10-15  Simon Josefsson  <jas@extundo.com>
21279
21280         * modules/rijndael-tests: New file.
21281
21282         * modules/rijndael: New file.
21283
21284 2005-10-15  Simon Josefsson  <jas@extundo.com>
21285
21286         * m4/rijndael.m4: New file.
21287
21288 2005-10-15  Simon Josefsson  <jas@extundo.com>
21289
21290         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
21291
21292         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
21293
21294 2005-10-14  Simon Josefsson  <jas@extundo.com>
21295
21296         * tests/test-arcfour.c: New file.
21297
21298         * modules/arcfour, modules/arcfour-tests: New files.
21299
21300 2005-10-14  Simon Josefsson  <jas@extundo.com>
21301
21302         * m4/arcfour.m4: New file.
21303
21304 2005-10-14  Simon Josefsson  <jas@extundo.com>
21305
21306         * lib/arcfour.h, lib/arcfour.c: New files.
21307
21308 2005-10-14  Roland McGrath  <roland@redhat.com>
21309
21310         Import from libc.  [BZ #1331]
21311         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
21312         macro argument.
21313         Reported by Matej Vela <vela@debian.org>.
21314
21315 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
21316
21317         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
21318         include <wchar.h>; no longer needed.
21319
21320 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
21321
21322         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
21323
21324 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
21325         and  Ulrich Drepper  <drepper@redhat.com>
21326
21327         Import from libc.
21328         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
21329         instead of inline stream orientation test and two separate
21330         function calls.  Pay no attention to USE_IN_LIBIO.
21331
21332 2005-10-13  Simon Josefsson  <jas@extundo.com>
21333
21334         * modules/gc-hmac-md5-tests: New file.
21335
21336         * tests/test-gc-hmac-sha1.c: New file.
21337
21338         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
21339
21340         * modules/gc-hmac-md5-tests: New file.
21341
21342         * tests/test-gc-md5.c: New file.
21343
21344         * modules/gc-md5-tests: New file.
21345
21346 2005-10-13  Simon Josefsson  <jas@extundo.com>
21347
21348         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
21349         Move memory allocation outside of loop.
21350
21351 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
21352
21353         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
21354         intermediate directory is in a read-only file system.  Problem
21355         reported by Eric Blake.
21356
21357 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
21358
21359         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
21360
21361 2005-10-12  Simon Josefsson  <jas@extundo.com>
21362
21363         * tests/test-hmac-sha1.c: New file.
21364
21365         * modules/hmac-sha1-tests: New file.
21366
21367         * modules/hmac-sha1: New file.
21368
21369 2005-10-12  Simon Josefsson  <jas@extundo.com>
21370
21371         * modules/gc-sha1: New file.
21372
21373 2005-10-12  Simon Josefsson  <jas@extundo.com>
21374
21375         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
21376
21377         * tests/test-gc-pbkdf2-sha1.c: New file.
21378
21379 2005-10-12  Simon Josefsson  <jas@extundo.com>
21380
21381         * modules/gc-md5, modules/gc-hmac-md5: New files.
21382
21383         * modules/gc (Files): Remove md5, memxor and hmac files.
21384
21385 2005-10-12  Simon Josefsson  <jas@extundo.com>
21386
21387         * m4/gc-pbkdf2-sha1.m4: New file.
21388
21389         * m4/gc-hmac-sha1.m4: New file.
21390
21391         * m4/gc-sha1: New file.
21392
21393         * m4/hmac-sha1.m4: New file.
21394
21395 2005-10-12  Simon Josefsson  <jas@extundo.com>
21396
21397         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
21398
21399         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
21400
21401 2005-10-12  Simon Josefsson  <jas@extundo.com>
21402
21403         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
21404         suggested by Bruno Haible <bruno@clisp.org>.
21405
21406 2005-10-12  Simon Josefsson  <jas@extundo.com>
21407
21408         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
21409
21410 2005-10-12  Simon Josefsson  <jas@extundo.com>
21411
21412         * lib/gc-pbkdf2-sha1.c: New file.
21413
21414         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
21415
21416 2005-10-12  Simon Josefsson  <jas@extundo.com>
21417
21418         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
21419
21420         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
21421
21422 2005-10-12  Simon Josefsson  <jas@extundo.com>
21423
21424         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
21425         GC_USE_HMAC_MD5, respectively.
21426
21427         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
21428         (gc_md5): Fix typo.
21429
21430         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
21431
21432         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
21433
21434         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
21435
21436 2005-10-12  Bruno Haible  <bruno@clisp.org>
21437
21438         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
21439         Reported by Stepan Kasal <kasal@ucw.cz>.
21440
21441 2005-10-11  Simon Josefsson  <jas@extundo.com>
21442
21443         * tests/test-crc.c: New file.
21444
21445         * modules/crc, modules/crc-tests: New files.
21446
21447 2005-10-11  Simon Josefsson  <jas@extundo.com>
21448
21449         * m4/crc.m4: New file.
21450
21451 2005-10-11  Simon Josefsson  <jas@extundo.com>
21452
21453         * lib/gc.h: Add gc_hash and gc_hash_buffer.
21454
21455         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
21456
21457         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
21458
21459 2005-10-11  Simon Josefsson  <jas@extundo.com>
21460
21461         * lib/crc.h, lib/crc.c: New files.
21462
21463         * lib/gc.h (gc_hash_buffer): Add doc.
21464
21465 2005-10-11  Bruno Haible  <bruno@clisp.org>
21466
21467         * modules/c-strcasestr: New file.
21468         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
21469
21470 2005-10-11  Bruno Haible  <bruno@clisp.org>
21471
21472         * modules/c-strcase: New file.
21473         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
21474
21475 2005-10-11  Bruno Haible  <bruno@clisp.org>
21476
21477         * lib/strcasecmp.c: Include limits.h.
21478         (strcasecmp): Avoid integer overflow on exotic platforms.
21479         * lib/strncasecmp.c: Include limits.h.
21480         (strncasecmp): Avoid integer overflow on exotic platforms.
21481         Reported by Paul Eggert.
21482
21483 2005-10-11  Bruno Haible  <bruno@clisp.org>
21484
21485         * lib/c-strcasestr.h: New file, from GNU gettext.
21486         * lib/c-strcasestr.c: New file, from GNU gettext.
21487
21488 2005-10-11  Bruno Haible  <bruno@clisp.org>
21489
21490         * lib/c-strcase.h: New file, from GNU gettext.
21491         * lib/c-strcasecmp.c: New file, from GNU gettext.
21492         * lib/c-strncasecmp.c: New file, from GNU gettext.
21493
21494 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
21495
21496         * modules/mempcpy (License): GPL -> LGPL.
21497         * modules/strchrnul (License): Likewise.
21498         * modules/sysexits (License): Likewise.
21499
21500 2005-10-08  Simon Josefsson  <jas@extundo.com>
21501
21502         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
21503
21504 2005-10-07  Simon Josefsson  <jas@extundo.com>
21505
21506         * m4/memxor.m4: Remove gl_C_RESTRICT call.
21507
21508 2005-10-06  Simon Josefsson  <jas@extundo.com>
21509
21510         * tests/test-hmac-md5.c: New file.
21511
21512         * modules/hmac-md5-tests: New file.
21513
21514         * modules/hmac-md5: New file.
21515
21516 2005-10-06  Simon Josefsson  <jas@extundo.com>
21517
21518         * m4/hmac-md5.m4: New file.
21519
21520         * m4/memxor.m4: Require gl_C_RESTRICT.
21521
21522 2005-10-06  Simon Josefsson  <jas@extundo.com>
21523
21524         * lib/memxor.c (memxor): Avoid casts and warnings.
21525
21526 2005-10-06  Simon Josefsson  <jas@extundo.com>
21527
21528         * lib/hmac-md5.c: New file.
21529
21530         * lib/hmac.h: New file.
21531
21532 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
21533
21534         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
21535         promotes to int, not unsigned int, to catch the AIX 5.3
21536         compiler bug.
21537
21538 2005-10-05  Simon Josefsson  <jas@extundo.com>
21539
21540         * modules/memxor: New file.
21541
21542         * modules/iconv (Files): Move config.rpath to havelib, it is used
21543         there.
21544
21545         * modules/havelib (Files): Add config.rpath.
21546
21547 2005-10-05  Simon Josefsson  <jas@extundo.com>
21548
21549         * m4/memxor.m4: New file.
21550
21551 2005-10-05  Simon Josefsson  <jas@extundo.com>
21552
21553         * lib/memxor.c (memxor): Fix compiler error.
21554
21555         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
21556         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
21557
21558         * lib/memxor.h, lib/memxor.c: New files.
21559
21560         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
21561         we assume all systems have it, suggested by Jim Meyering
21562         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
21563         any systems lack sys/socket.h; mingw32 is known to lack it, but we
21564         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
21565         same reasons.
21566
21567 2005-10-05  Simon Josefsson  <jas@extundo.com>
21568
21569         * config/srclist.txt: Add glibc bug 1423 for md5.h.
21570
21571 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
21572
21573         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
21574         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
21575         needed, since the source code now assumes these .h files.
21576
21577 2005-10-05  Derek Price  <derek@ximbiot.com>
21578
21579         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
21580
21581 2005-10-05  Bruno Haible  <bruno@clisp.org>
21582
21583         * modules/stdint (License): Change to LGPL.
21584
21585 2005-10-04  Simon Josefsson  <jas@extundo.com>
21586
21587         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
21588         D. Baushke" <mdb@gnu.org>.
21589
21590 2005-10-04  Bruno Haible  <bruno@clisp.org>
21591
21592         * lib/verify.h (verify_true): Provide alternative definition for C++.
21593
21594 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
21595
21596         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
21597         (SSIZE_MAX): New macro, if not already defined.
21598         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
21599         than 2 GiB.
21600
21601 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21602
21603         Sync from coreutils.
21604         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
21605         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
21606         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
21607         ULLONG_MAX doesn't work with 2.7.2.1.
21608
21609 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21610
21611         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
21612         From Ben Pfaff.
21613
21614         * modules/exclude (Depends-on): Depend on verify.
21615         * modules/strtoimax (Depends-on): Likewise.
21616         * modules/utimecmp (Depends-on): Likewise.
21617
21618 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21619
21620         * lib/exclude.c: Include verify.h.
21621         (verify): Remove.  All callers changed to use verify.h's version.
21622         * lib/strtoimax.c: Likewise.
21623         * lib/utimecmp.c: Likewis.e
21624
21625         Sync from coreutils.
21626         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
21627         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
21628         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
21629         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
21630         bother returning ENOSYS if settimeofday or stime fails; just let
21631         them return whatever errno they want to return.
21632         * lib/utimens.c: Include unistd.h, for dup2.
21633         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
21634         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
21635
21636 2005-10-02  Jim Meyering  <jim@meyering.net>
21637
21638         Sync from coreutils.
21639         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
21640         from glibc-2.2.5 that fails for read-only files.
21641
21642 2005-10-02  Jim Meyering  <jim@meyering.net>
21643
21644         Sync from coreutils.
21645         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
21646         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
21647         `#if HAVE_CONFIG_H'.
21648         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
21649         Remove AT_FDCWD test.
21650         Do not consume the fd unless successful.
21651         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
21652         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
21653         block, so that we don't even try to compile it if settimeofday is
21654         available.  This works around a compilation failure on OSF1 V5.1,
21655         due to stime requiring a `long int*' while tv_sec is `int'.
21656
21657 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
21658
21659         Sync from coreutils.
21660         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
21661         against `yes', rather than just testing for nonempty.
21662
21663 2005-10-01  Simon Josefsson  <jas@extundo.com>
21664
21665         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
21666         and Darwin.
21667
21668         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
21669         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
21670         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
21671         freeaddrinfo and gai_strerror are declared by the POSIX headers.
21672         Check if struct addrinfo is declared.
21673
21674 2005-10-01  Simon Josefsson  <jas@extundo.com>
21675
21676         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
21677         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
21678         AI_* and EAI_* definitions.  Protect function declarations.
21679
21680 2005-10-01  Jim Meyering  <jim@meyering.net>
21681
21682         Sync from coreutils.
21683
21684         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
21685         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
21686         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
21687         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
21688         in the inet and nsl libraries.  Required on Solaris 5.7.
21689
21690 2005-10-01  Jim Meyering  <jim@meyering.net>
21691
21692         Sync from coreutils.
21693         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
21694         in the inet and nsl libraries.  Required on Solaris 5.7.
21695
21696 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
21697
21698         * lib/getdelim.c (getdelim): Remove unused variables.
21699
21700 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
21701
21702         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
21703         so that the code works even with ancient cpp.  Portability problem
21704         with GCC 2.7.2.1 reported by Thomas M.Ott.
21705
21706 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
21707
21708         * modules/regex (Depends-on): Add strcase.
21709
21710         * modules/gethostname (Licence): Change from GPL to LGPL, since
21711         gethostname.c is a trivial implementation of a standard library
21712         function.
21713         * modules/poll (License): Change from GPL to LGPL, since it's
21714         derived from LGPL code.
21715
21716 2005-09-27  Jim Meyering  <jim@meyering.net>
21717
21718         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
21719         HAVE_CONFIG_H.
21720
21721         * lib/intprops.h (signed_type_or_expr__): Define.
21722         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
21723         for unsigned types.
21724
21725 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
21726
21727         * lib/verify.h (verify_expr): Remove, replacing with:
21728         (verify_true): New macro that returns true instead of void.
21729         (verify_type__): Remove.
21730         (verify): Use verify_true rather than verify_type__.
21731
21732 2005-09-26  Bruno Haible  <bruno@clisp.org>
21733
21734         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
21735         is necessary.
21736         (lib_SOURCES): Remove mbchar.c.
21737         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
21738         (Files): Add m4/mbrtowc.m4.
21739         * modules/mbiter: Likewise.
21740         * modules/mbuiter: Likewise.
21741
21742 2005-09-26  Bruno Haible  <bruno@clisp.org>
21743
21744         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
21745         compile mbchar.c if they are not both present.
21746         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
21747         * m4/mbiter.m4 (gl_MBITER): Likewise.
21748         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
21749         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
21750         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
21751
21752 2005-09-25  Jim Meyering  <jim@meyering.net>
21753
21754         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
21755         also uses socklen_t.
21756
21757 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21758
21759         * lib/utimens.c (ENOSYS): Define if not already defined.
21760         (futimens): Support having a null PATH if the file descriptor
21761         is nonnegative.
21762
21763         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
21764         Remove.
21765         (__attribute): Define to empty unless GCC 3.1 or later.
21766         This works around a core dump on OpenBSD 3.4, which has GCC
21767         2.95.3, which dumps core when given __attribute__(()).  It also
21768         simplifies other tests, since we really don't want to bother with
21769         worrying about which ancient version of GCC supported what.
21770         Original problem reported by Yoann Vandoorselaere, with part of
21771         the fix suggested by Derek Price.
21772
21773 2005-09-24  Jim Meyering  <jim@meyering.net>
21774
21775         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
21776         so we can once again use a positive bitfield width of 1 -- now we
21777         don't have to explain why we were using a bitfield width of 2.
21778
21779 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
21780
21781         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
21782         and similarly for the other external symbols.  Problem reported
21783         by James Gallager.
21784
21785         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
21786         bug reported by Jim Meyering.
21787
21788         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
21789         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
21790         not needed, since socklen is a prerequisite module.
21791
21792 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
21793
21794         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
21795         Problem reported by Eric Blake.
21796         (getaddrinfo): Initialize se so that it's not garbage.
21797         Redo internal storage allocation so that it doesn't make unportable
21798         assumptions about alignment.
21799         Fix a memory leak.
21800
21801         * lib/utimens.c (futimens): Use futimesat if available.
21802         Prefer it to futimes since it doesn't have the futimes bug.
21803
21804         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
21805         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
21806         Instead, declare a function that returns a pointer to an array,
21807         and use verify_type__ to declare the size of the array.
21808         Problem and germ of a solution reported by Bruno Haible.
21809         (verify_type__): Use 2, not 1, for bitfield size, to avoid
21810         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
21811
21812 2005-09-23  Jim Meyering  <jim@meyering.net>
21813
21814         Sync from coreutils.
21815         Correct build failure (socklen_t not defined) on at least
21816         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
21817         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
21818
21819 2005-09-23  Jim Meyering  <jim@meyering.net>
21820
21821         * modules/getaddrinfo (Depends-on): Add socklen.
21822
21823 2005-09-23  Bruno Haible  <bruno@clisp.org>
21824
21825         * tests/test-verify.c: New file.
21826
21827 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
21828
21829         Sync from coreutils.
21830
21831         * modules/argmatch (Depends-on): Add verify.
21832         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
21833         unistd-safer.
21834         * modules/save-cwd (Depends-on): Likewise.
21835
21836         * modules/openat (Files): Add lib/openat-die.c.
21837         (Depends-on): Remove error, exitfail.
21838         Add dirname.
21839
21840         * modules/verify: New file.
21841         * MODULES.html.sh (Diagnostics <assert.h>): New section,
21842         with "verify" module.
21843
21844 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
21845
21846         Sync from coreutils.
21847
21848         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
21849         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
21850         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
21851         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
21852         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
21853         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
21854         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
21855         Don't bother checking for string.h, stdlib.h, unistd.h.
21856         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
21857         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
21858         module's job.
21859         * m4/jm-macros.m4 (gl_MACROS): Likewise.
21860         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
21861
21862         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
21863         (gl_GETDATE): Use it.
21864
21865         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
21866
21867 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
21868
21869         Sync from coreutils.
21870
21871         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
21872         stat-time.h.
21873         * lib/argmatch.h: Include verify.h
21874         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
21875         (ARGMATCH_ASSERT): Remove; unused.
21876         * lib/canonicalize.c: Assume STDC_HEADERS.
21877         * lib/exclude.c: Include "strcase.h".
21878         * lib/regex_internal.h [!defined _LIBC]: Likewise.
21879         * lib/getusershell.c: Include stdio--.h rather than stdio.h
21880         and stdio-safer.h.
21881         (getusershell): Call fopen, not fopen_safer.
21882         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
21883         Do not include unistd-safer.h.
21884         (save_cwd): Don't call fd_safer; no longer needed
21885         now that we include fcntl--.h.
21886
21887         * lib/getdate.y (relative_time): New type.
21888         (RELATIVE_TIME_0): New constant.
21889         (parser_control): Use relative_time instead of doing it ourselves.
21890         (%union): Add new relative_time rel member.
21891         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
21892         Now typeless.
21893         (relunit, relunit_snumber): Now of type rel.
21894         (zone, rel, relunit, get_date): Adjust to above changes.
21895
21896         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
21897         Do not include unistd-safer.h.
21898         (getloadavg): Don't call fd_safer; no longer needed
21899         now that we include fcntl--.h.
21900
21901         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
21902         (make_dir_parents): Treat ENOSYS like EEXIST.
21903
21904         Improve quality of diagnostics on restore_cwd failure.
21905         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
21906         (make_dir_parents): Last arg is now int * (for errno), not bool *.
21907         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
21908         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
21909         each time through the loop.  Do not diagnose restore_cwd failure;
21910         that is the caller's job (and perhaps the caller does not care).
21911
21912         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
21913         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
21914         If the file already exists but is not a directory, don't bother
21915         to try to make its parents.
21916         Close potential file descriptor leak if we can't chdir("/") (!).
21917         Don't always return true if chdir($PWD) fails; return true only
21918         if the requested action was done successfully (except for the
21919         chdir($PWD)).
21920         Don't log final directory unless we actually made it.
21921         Refactor to avoid duplicate code to fix up permissions.
21922         Don't attempt to fix up parent permissions if chdir($PWD) fails.
21923
21924         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
21925         to make it a bit faster and (I hope) clearer.
21926         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
21927         Fix bug in formats like %2N.
21928
21929         * lib/verify.h: New file.
21930
21931 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
21932
21933         Sync from coreutils.
21934         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
21935
21936 2005-09-22  Jim Meyering  <jim@meyering.net>
21937
21938         Sync from coreutils.
21939
21940         * m4/lstat.m4 (gl_FUNC_LSTAT):
21941         Use AC_LIBSOURCES to require lstat.c and lstat.h.
21942         Remove obsolete comment.
21943         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
21944         * m4/xstrtod.m4: Likewise.
21945
21946         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
21947
21948 2005-09-22  Jim Meyering  <jim@meyering.net>
21949
21950         Sync from coreutils.
21951
21952         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
21953
21954         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
21955         the .tm_year member, since otherwise gcc-4.0 would now warn about
21956         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
21957
21958         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
21959         order to avoid an unsuppressible warning from gcc on 64-bit systems.
21960
21961         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
21962         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
21963         when run in a time zone for which daylight savings time is in effect
21964         for the starting date.
21965
21966         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
21967         stop us from restricting permissions of just-created absolute-named
21968         directories.
21969         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
21970         to restore initial working directory.
21971         * lib/mkdir-p.c (make_dir_parents): New parameter:
21972         different_working_dir, to tell caller if/when we change the working
21973         directory and are unable to return to the initial one.
21974         * lib/mkdir-p.h (make_dir_parents): Update prototype.
21975         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
21976         `return false'.  This fixes a bug introduced on 2004-07-30.
21977
21978         * lib/openat.c (fdopendir): Be sure to close the supplied
21979         file descriptor before returning.  This makes our replacement
21980         implementation a little closer to Solaris's, where fdopendir
21981         ties the file descriptor to the returned DIR* pointer.
21982         * lib/openat.c (unlinkat): New function.
21983         * lib/openat.h (unlinkat): Add prototype.
21984         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
21985         (openat_restore_fail): Rename from openat_restore_die.
21986         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
21987
21988         Provide an alternative to exiting immediately upon save_cwd or
21989         restore_cwd failure.  Now, an application can arrange e.g.,
21990         to perform a longjump in that case.
21991         * lib/openat.c: Include dirname.h.
21992         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
21993         (rpl_openat, fdopendir, fstatat): Call openat_save_die
21994         and openat_restore_die rather than calling error directly.
21995         Don't include "error.h" or "exitfail.h"; they're no longer needed.
21996
21997         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
21998         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
21999         define.
22000
22001         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
22002         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
22003                             int utc, int nanoseconds);
22004         Background:
22005         date should not have to allocate a megabyte of virtual memory to
22006         handle a format argument like +%1048575T.  When implemented with
22007         strftime, it must allocate such a buffer, use strftime to fill it
22008         in, print it, then free it.
22009         With fprintftime, it simply prints everything and exits.
22010         With no need for memory allocation, that's one fewer way to fail.
22011         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
22012         optional field width, not before, so we accept %9:z, not %:9z.
22013         (my_strftime): Be sure to use L_('x') for literals.
22014
22015         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
22016         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
22017         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
22018         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
22019         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
22020         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
22021         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
22022         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
22023         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
22024         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
22025         * lib/xgethostname.c, lib/xreadlink.c:
22026         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
22027
22028         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
22029         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
22030         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
22031         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
22032         and don't include <sys/file.h>).
22033
22034 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
22035
22036         Sync from coreutils.
22037
22038         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
22039         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
22040         [!LDAV_DONE]: Avoid unused variable warning.
22041
22042 2005-09-21  Bruno Haible  <bruno@clisp.org>
22043
22044         * lib/unicodeio.h (unicode_to_mb): New declaration.
22045
22046 2005-09-20  Derek Price  <derek@ximbiot.com>
22047
22048         * lib/getaddrinfo.c: Don't include <netdb.h> included from
22049         getaddrinfo.h.
22050
22051 2005-09-20  Bruno Haible  <bruno@clisp.org>
22052
22053         * gnulib-tool: Remove trailing slashes from the values specified for
22054         --source-base, --m4-base, --tests-base, --aux-dir.
22055         Suggested by Simon Josefsson <jas@extundo.com>.
22056
22057 2005-09-20  Bruno Haible  <bruno@clisp.org>
22058
22059         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
22060         func_modules_to_filelist, func_import, func_create_testdir): Make all
22061         sorting results locale-independent, so that gnulib-cache.m4 doesn't
22062         change when gnulib-tool is invoked in a different locale.
22063
22064 2005-09-19  Simon Josefsson  <jas@extundo.com>
22065
22066         * m4/socklen.m4: Fix typo.
22067
22068 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22069
22070         Use a consistent style for including <config.h>.
22071         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
22072         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
22073         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
22074         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
22075         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
22076         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
22077         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
22078         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
22079         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
22080         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
22081         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
22082         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
22083         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
22084         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
22085         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
22086         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
22087         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
22088         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
22089         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
22090         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
22091         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
22092         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
22093         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
22094         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
22095         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
22096         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
22097         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
22098         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
22099         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
22100         lib/xstrtoumax.c, lib/yesno.c:
22101         Standardize inclusion of config.h.
22102         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
22103         lib/inttostr.h:  Removed inclusion of config.h from header files.
22104         * lib/inttostr.c:  Adjusted in-tree users.
22105         * lib/timespec.h: Remove superfluous warning to include config.h.
22106         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
22107         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
22108         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
22109         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
22110         config.h with HAVE_CONFIG_H.
22111
22112 2005-09-19  Jim Meyering  <jim@meyering.net>
22113
22114         * modules/pathmax (License): Change to LGPL.
22115
22116 2005-09-19  Derek Price  <derek@ximbiot.com>
22117
22118         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
22119
22120 2005-09-19  Bruno Haible  <bruno@clisp.org>
22121
22122         * gnulib-tool (import): Provide default for --tests-base.
22123
22124 2005-09-19  Bruno Haible  <bruno@clisp.org>
22125
22126         * doc/quote.texi: New file, extracted from gnulib.texi.
22127         * doc/ctime.texi: New file, extracted from gnulib.texi.
22128         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
22129         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
22130         * doc/gnulib.texi: Include them.
22131
22132 2005-09-18  Bruno Haible  <bruno@clisp.org>
22133
22134         Portability fix.
22135         * gnulib-tool (func_readlink): New function.
22136         (func_ln_if_changed): Use it.
22137
22138 2005-09-18  Bruno Haible  <bruno@clisp.org>
22139
22140         * gnulib-tool: Support --with-tests also with --import.
22141         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
22142         (func_import): Use variables $testsbase and $inctests. Emit a
22143         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
22144         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
22145         SUBDIRS += $testsdir.
22146         (func_create_testdir): Update.
22147
22148 2005-09-18  Bruno Haible  <bruno@clisp.org>
22149
22150         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
22151         instead of $dry_run.
22152         (func_cp_if_changed, func_mv_if_changed): Remove functions.
22153         (func_ln_if_changed): Don't handle dry-run here.
22154         (func_import): In dry-run mode, detect more precisely which actions
22155         would be performed, and don't use "...ing" verbs.
22156
22157 2005-09-18  Bruno Haible  <bruno@clisp.org>
22158
22159         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
22160         (func_import): Use join on two temporary files instead of three nested
22161         loops, in order to determine which files are new or old.
22162
22163 2005-09-18  Bruno Haible  <bruno@clisp.org>
22164
22165         * gnulib-tool (func_import): Comment out code that spits out the
22166         new files with --dry-run.
22167
22168 2005-09-18  Bruno Haible  <bruno@clisp.org>
22169
22170         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
22171
22172 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
22173
22174         * lib/stat-time.h: New file.
22175         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
22176         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
22177         in a different way.
22178         (timespec_cmp): New function.
22179         * lib/utimecmp.c: Include stat-time.h.
22180         (SYSCALL_RESOLUTION): Depend on whether various struct stat
22181         members exist, not on the obsolescent ST_MTIM_NSEC.
22182         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
22183
22184 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
22185
22186         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
22187
22188 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
22189
22190         * MODULES.html.sh (File system functions): Add stat-time.
22191         * modules/stat-time: New file.
22192         * modules/timespec (Files): Remove m4/st_mtim.m4; this
22193         is now done in a different way, by the stat-time module.
22194         * modules/utimecmp (Depends-on): Add stat-time.
22195
22196 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
22197
22198         * m4/st_mtim.m4: Remove.  Superseded by...
22199         * m4/stat-time.m4: New file.
22200         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
22201         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
22202
22203 2005-09-15  Derek Price  <derek@ximbiot.com>
22204
22205         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
22206
22207 2005-09-15  Derek Price  <derek@ximbiot.com>
22208
22209         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
22210         * lib/regex_internal.c: Ditto, using this...
22211         (__GNUC_PREREQ): ...new macro.
22212         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
22213         using...
22214         (__GNUC_PREREQ): ...this new macro.
22215
22216         * lib/strstr.h: Include string.h. Define strstr as a macro here.
22217
22218 2005-09-15  Derek Price  <derek@ximbiot.com>
22219             Paul Eggert  <eggert@cs.ucla.edu>
22220
22221         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
22222         changes, consolidating in...
22223         * lib/regex_internal.h: ...this file.
22224
22225 2005-09-13  Jim Meyering  <jim@meyering.net>
22226
22227         * lib/canon-host.c: Filter through gnu indent and reword comments
22228         slightly.
22229         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
22230
22231 2005-09-13  Derek Price  <derek@ximbiot.com>
22232
22233         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
22234         failure.
22235         Reported by Jim Meyering  <jim@meyering.net>.
22236
22237 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
22238
22239         * lib/base64.c: Typo.
22240         (base64_encode): Put b64str in initialized data section.
22241
22242 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
22243
22244         Merge glibc and coreutils changes into gnulib, plus a few
22245         extra fixes.
22246         * lib/md5.c: Use #error rather than a string.
22247         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
22248         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
22249         (__attribute__): Define to empty for non recent-GCC.
22250         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
22251         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
22252         Renamed from their non-__ counterparts, with new macros replacing
22253         them if not _LIBC.  Add __THROW attribute.
22254         (rol): Remove.
22255         (struct md5_ctx): Align buffer if using GCC.
22256         * lib/sha1.h (struct sha1_ctx): Likewise.
22257         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
22258         The old name was backwards.
22259         (NOTSWAP): Remove; not used.
22260         (rol): New macro, moved here from md5.h.
22261         (sha1_process_block): Remove a FIXME that doesn't make sense.
22262
22263 2005-09-12  Derek Price  <derek@ximbiot.com>
22264
22265         Return usable errors from canon-host.
22266         * lib/canon-host.h: New file.
22267         * lib/canon-host.c (canon_host): Wrap...
22268         (canon_host_r): ...this new function, which now relies exclusively on
22269         getaddrinfo.
22270         (ch_strerror): New function.
22271         (last_cherror): New global.
22272         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
22273         interface.
22274         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
22275         void *.
22276         (freeaddrinfo): Free ai->ai_canonname when set.
22277
22278 2005-09-12  Derek Price  <derek@ximbiot.com>
22279
22280         Make canon-host require getaddrinfo.
22281         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
22282         AC_LIBSOURCE canon-host.h.  Call...
22283         (gl_PREREQ_CANON_HOST): ...this new function, which requires
22284         gl_GETADDRINFO.
22285         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
22286
22287 2005-09-12  Derek Price  <derek@ximbiot.com>
22288
22289         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
22290         LGPL.
22291         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
22292
22293 2005-09-12  Derek Price  <derek@ximbiot.com>
22294
22295         * lib/gai_strerror.c: Include config.h when available.  Include
22296         getaddrinfo.h before other headers to test interface.
22297         Reported by Larry Jones <lawrence.jones@ugs.com>.
22298
22299 2005-09-12  Derek Price  <derek@ximbiot.com>
22300             Paul Eggert  <eggert@cs.ucla.edu>
22301
22302         * modules/glob (Files): Add glob-libc.h.
22303
22304 2005-09-12  Derek Price  <derek@ximbiot.com>
22305             Paul Eggert  <eggert@cs.ucla.edu>
22306
22307         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
22308         glob_.h, glob-libc.h.
22309         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
22310
22311 2005-09-12  Derek Price  <derek@ximbiot.com>
22312             Paul Eggert  <eggert@cs.ucla.edu>
22313
22314         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
22315         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
22316         protecting things that should be done only in gnulib contexts.
22317         * lib/glob_.h: New file, containing only the glob things needed for
22318         gnulib.
22319         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
22320         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
22321         (glob, globfree, glob_pattern_p): Now defined simply in terms of
22322         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
22323         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
22324         and to respect the namespace rules better.
22325
22326 2005-09-08  Simon Josefsson  <jas@extundo.com>
22327
22328         * modules/socklen: New file.
22329
22330 2005-09-08  Simon Josefsson  <jas@extundo.com>
22331
22332         * m4/socklen.m4: New file.
22333
22334 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
22335
22336         * modules/utimens (Files): Add m4/utimbuf.m4, since
22337         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
22338         Reported by Sergey Poznyakoff.
22339
22340 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
22341
22342         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
22343         definitions, since that's the preferred style in glibc.
22344         Fix a minor spacing issue, and update copyright notice to match
22345         glibc's.
22346
22347 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
22348
22349         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
22350
22351 2005-09-06  Simon Josefsson  <jas@extundo.com>
22352
22353         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
22354         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
22355
22356 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
22357
22358         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
22359         warning.
22360
22361 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
22362
22363         * config/srclist.txt: Add glibc bug 1302.
22364
22365 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
22366
22367         Change bitset word type from unsigned int to unsigned long int,
22368         as this has better performance on typical 64-bit hosts.
22369         Port bitset code to hosts with unusual word sizes.
22370         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
22371         (build_collating_symbol):
22372         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
22373         argument is a bitset.  This is merely a style issue, but it makes
22374         it clearer that an entire array is expected.
22375         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
22376         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
22377         Port to the case where bitset_word is not the same as unsigned int.
22378         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
22379         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
22380         Likewise.
22381         * lib/regexec.c (check_dst_limits_calc_pos_1,
22382         check_subexp_matching_top):
22383         (build_trtable, group_nodes_into_DFAstates):
22384         Likewise.
22385         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
22386         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
22387         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
22388         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
22389         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
22390         * lib/regcomp.c (optimize_subexps, lower_subexp):
22391         Work even if bitset_word has holes in its bitwise representation.
22392         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
22393         * lib/regexec.c (check_dst_limits_calc_pos_1,
22394         check_subexp_matching_top):
22395         Likewise.
22396         * lib/regex_internal.c (re_string_reconstruct):
22397         Don't assume UCHAR_MAX == 255.
22398         * lib/regex_internal.h (bitset_set_all): Likewise.
22399         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
22400         All uses changed.
22401         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
22402         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
22403         All uses changed.
22404         (BITSET_WORD_MAX): New macro.
22405         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
22406         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
22407         (bitset_empty, bitset_copy):
22408         Prefer sizeof (bitset) to multiplying it out ourselves.
22409         (bitset_not_merge): Remove; unused.
22410         (bitset_contain): Return bool, not unsigned int with one bit on.
22411         All callers changed.
22412         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
22413         alignment than re_node_set; do this by defining a new internal
22414         type struct dests_alloc and using it to allocate memory.
22415
22416 2005-09-05  Bruno Haible  <bruno@clisp.org>
22417
22418         * gnulib-tool (func_import): Fix comparison in handling of symbolic
22419         links.
22420
22421 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
22422
22423         * modules/size_max (Makefile.am): Add size_max.h
22424
22425 2005-09-04  Derek Price  <derek@ximbiot.com>
22426
22427         * gnulib-tool (func_import): Fix reversed $symbolic logic.
22428
22429 2005-09-03  Simon Josefsson  <jas@extundo.com>
22430
22431         * gnulib-tool: Fix typo.
22432
22433 2005-09-03  Simon Josefsson  <jas@extundo.com>
22434
22435         * config/srclist.txt: Add glibc bug 1293.
22436
22437 2005-09-03  Derek Price  <derek@ximbiot.com>
22438
22439         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
22440         From Larry Jones <lawrence.jones@ugs.com>.
22441
22442 2005-09-02  Simon Josefsson  <jas@extundo.com>
22443
22444         * modules/socklen: New file.
22445
22446 2005-09-02  Simon Josefsson  <jas@extundo.com>
22447
22448         * modules/havelib: New module.
22449
22450         * modules/gettext, modules/iconv, modules/lock, modules/readline:
22451         Use havelib.
22452
22453 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
22454
22455         Check for arithmetic overflow when calculating sizes, to prevent
22456         some buffer-overflow issues.  These patches are conservative, in the
22457         sense that when I couldn't determine whether an overflow was possible,
22458         I inserted a run-time check.
22459         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
22460         macros.
22461         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
22462         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
22463         (re_xnrealloc, re_x2nrealloc): New inline functions.
22464         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
22465         parse_bracket_exp):
22466         (build_equiv_class, build_charclass): Check for arithmetic overflow
22467         in size expression calculations.
22468         * lib/regex_internal.c (re_string_realloc_buffers):
22469         (build_wcs_upper_buffer, re_node_set_add_intersect):
22470         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
22471         (re_dfa_add_node, register_state): Likewise.
22472         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
22473         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
22474         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
22475         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
22476
22477 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
22478
22479         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
22480         m4/ulonglong.m4.  Problem reported by Martin Lambers.
22481
22482 2005-09-02  Bruno Haible  <bruno@clisp.org>
22483
22484         Support for lib vs. lib64 distinction on biarch platforms.
22485         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
22486         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
22487         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
22488
22489 2005-09-02  Bruno Haible  <bruno@clisp.org>
22490
22491         * gnulib-tool (import): In the other first-use case, provide defaults
22492         as well.
22493
22494 2005-09-02  Bruno Haible  <bruno@clisp.org>
22495
22496         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
22497         patches not yet found in the latest gettext release.
22498
22499 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
22500
22501         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
22502         to avoid a collision with bits/local_lim.h in glibc.
22503         All uses changed.  Problem reported by Dmitry V. Levin in
22504         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
22505
22506         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
22507         bugs in int versus size_t comparisons.
22508         (re_string_context_at): Fix bug where the code assumed that
22509         Idx is signed.
22510
22511         Use bool where appropriate.
22512         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
22513         All callers changed.
22514         (calc_eclosure_iter): Likewise, for ROOT arg.
22515         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
22516         (build_charclass_op): Likewise, for NON_MATCH arg.
22517         * lib/regex_internal.c (re_string_allocate, re_string_construct):
22518         (re_string_construct_common): Likewise, for ICASE arg.
22519         * lib/regexec.c (re_search_2_stub, re_search_stub):
22520         Likewise, for RET_LEN arg.
22521         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
22522         (set_regs): Likewise, for FL_BACKTRACK arg.
22523         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
22524         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
22525         (calc_eclosure_iter, parse_bracket_exp):
22526         Use bool for internal variables that are booleans.
22527         * lib/regexec.c (re_search_internal, check_matching,
22528         proceed_next_node):
22529         (set_regs, build_sifted_states, sift_states_bkref):
22530         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
22531         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
22532         (find_collation_sequence_value):
22533         Likewise.
22534         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
22535         (re_node_set_compare):
22536         Return bool, not int. All callers changed.
22537         * lib/regexec.c (check_halt_node_context, check_dst_limits):
22538         (build_trtable, check_node_accept): Likewise.
22539         * lib/regex_internal.h: Include stdbool.h.
22540
22541         Fix bugs uncovered when converting to bool.
22542         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
22543         failure instead of charging ahead blindly.
22544         * lib/regex_internal.c (register_state): Likewise.
22545         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
22546         for freeing internal storage.
22547         (group_nodes_into_DFA_states): Use unsigned int, not int, for
22548         bitset pieces used as boolean, to avoid undefined behavior
22549         on hosts that do int overflow checking.
22550
22551 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
22552
22553         * config/srclist.txt: Add glibc bugs 1285-1287.
22554
22555 2005-09-01  Jim Meyering  <jim@meyering.net>
22556
22557         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
22558         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
22559         Require gl_STAT_MACROS, too.
22560
22561 2005-09-01  Bruno Haible  <bruno@clisp.org>
22562
22563         * gnulib-tool (import): In the first-use case, provide defaults.
22564
22565 2005-09-01  Bruno Haible  <bruno@clisp.org>
22566
22567         * gnulib-tool (func_import): Remove the .tmp files.
22568
22569 2005-09-01  Bruno Haible  <bruno@clisp.org>
22570
22571         * gnulib-tool (func_import): Fix handling of symbolic links.
22572
22573 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
22574
22575         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
22576         old glibc regex code mishandles strings longer than 2**31 bytes.
22577         This patch fixes this when the regex code is used in gnulib
22578         (i.e., outside glibc).
22579
22580         This patch should not affect the use of the regex code inside
22581         glibc.  No doubt this problem also needs to be handled for glibc
22582         as well, but the result will be an incompatible change to the
22583         glibc ABI, and the old ABI will have to be supported too.  That
22584         can be the the subject for another patch.
22585
22586         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
22587         governing whether the rest of this patch is active.  By default,
22588         the macro is disabled and the patch has no effect.
22589         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
22590         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
22591         (struct re_pattern_buffer, re_search, re_search_2, re_match):
22592         (re_match_2, re_set_registers): Use the new types.
22593         * lib/regex_internal.h (Idx, re_hashval_t): New types.
22594         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
22595         New macros.
22596         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
22597         (re_string_context_at, bin_tree_t, re_dfastate_t):
22598         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
22599         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
22600         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
22601         (re_string_char_size_at, re_string_wchar_at):
22602         (re_string_elem_size_at):
22603         Use the new types and macros to port to 64-bit hosts.
22604         Use unsigned types for internal values, so that the code
22605         mostly works even for arrays larger than SSIZE_MAX.
22606         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
22607         (search_duplicated_node, calc_eclosure_iter, fetch_number):
22608         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
22609         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
22610         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
22611         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
22612         (calc_inveclosure, parse_dup_op, build_range_exp):
22613         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
22614         (fetch_number, create_token_tree, mark_opt_subexp):
22615         Likewise.
22616         * lib/regex_internal.c (re_string_construct_common,
22617         create_ci_newstate):
22618         (create_cd_newstate, re_string_allocate, re_string_construct):
22619         (re_string_realloc_buffers, build_wcs_upper_buffer):
22620         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
22621         (re_string_reconstruct, re_string_peek_byte_case):
22622         (re_string_fetch_byte_case, re_string_context_at):
22623         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
22624         (re_node_set_init_copy, re_node_set_add_intersect):
22625         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
22626         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
22627         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
22628         (re_acquire_state, re_acquire_state_context, register_state):
22629         Likewise.
22630         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
22631         search_cur_bkref_entry):
22632         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
22633         (re_search_internal, re_search_2_stub, re_search_stub)
22634         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
22635         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
22636         (update_cur_sifted_state, check_dst_limits):
22637         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
22638         (check_subexp_limits, sift_states_bkref, merge_state_array):
22639         (check_subexp_matching_top, get_subexp, get_subexp_sub):
22640         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
22641         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
22642         (expand_bkref_cache, check_node_accept_bytes):
22643         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
22644         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
22645         (acquire_init_state_context, check_halt_node_context):
22646         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
22647         (sift_states_backward, clean_state_log_if_needed):
22648         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
22649         (find_recover_state, transit_state_sb, transit_state_mb):
22650         (transit_state_bkref, build_trtable, match_ctx_clean):
22651         Likewise.
22652         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
22653         to work around an assumption that REG_MISSING is negative.
22654
22655         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
22656         (seek_collating_symbol_entry) [defined _LIBC]:
22657         (lookup_collation_sequence_value) [defined _LIBC]:
22658         (build_range_exp, build_collating_symbol) [defined _LIBC]:
22659         Use prototypes rather than old-style function definitions.
22660         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
22661         (transit_state_sb) [0]:
22662         (find_collation_sequence_value) [defined _LIBC]: Likewise.
22663
22664         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
22665         rm_eo.
22666
22667         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
22668         (optimize_subexps, lower_subexp):
22669         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
22670         since the signed shift might overflow.  Use 1u<<31 instead.
22671         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
22672         Likewise.
22673         * lib/regexec.c (check_dst_limits_calc_pos_1,
22674         check_subexp_matching_top): Likewise.
22675
22676         * lib/regcomp.c (optimize_subexps, lower_subexp):
22677         Use CHAR_BIT rather than 8, for clarity.
22678         * lib/regexec.c (check_dst_limits_calc_pos_1):
22679         (check_subexp_matching_top): Likewise.
22680         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
22681         have to worry about portability issues when shifting it left.
22682         Remove no-longer-needed test for table_size > 0.
22683         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
22684         in a word, as the resulting behavior is undefined.
22685         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
22686         in one case, a <= should have been an <, and in another case the
22687         whole test was missing.
22688         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
22689         the standard name CHAR_BIT.
22690         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
22691         this is not true on one's complement and signed-magnitude hosts.
22692
22693         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
22694         next_last_offset.
22695         (struct re_dfa_t): Remove unused member states_alloc.
22696         * lib/regcomp.c (init_dfa): Don't initialize unused members.
22697
22698 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
22699
22700         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
22701         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
22702         and large-file glibc and in 32-bit large-file Solaris.
22703
22704 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
22705
22706         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
22707         lengths fit in regoff_t; this isn't true if regoff_t is the same
22708         width as size_t.
22709         * lib/regex.c (re_search_internal): 5th arg is LAST_START
22710         (= START + RANGE) instead of RANGE.  This avoids overflow
22711         problems when regoff_t is the same width as size_t.
22712         All callers changed.
22713         (re_search_2_stub): Check for overflow when adding the
22714         sizes of the two strings.
22715         (re_search_stub): Check for overflow when adding START
22716         to RANGE; if it occurs, substitute the extreme value.
22717
22718 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
22719
22720         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
22721
22722 2005-08-31  Jim Meyering  <jim@meyering.net>
22723
22724         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
22725         a pointer-to-const.
22726         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
22727         (register_state): Likewise.
22728         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
22729         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
22730         (group_nodes_into_DFAstates): Likewise.
22731
22732 2005-08-31  Jim Meyering  <jim@meyering.net>
22733
22734         * check-module: Add a FIXME comment.
22735
22736 2005-08-31  Eric Blake  <ebb9@byu.net>
22737
22738         * modules/unistd-safer (Files): Add unistd--.h.
22739         * modules/stdio-safer (Files): Add stdio--.h.
22740
22741 2005-08-31  Derek Price  <derek@ximbiot.com>
22742
22743         * lib/getdelim.c (getdelim): Return EOF on EOF.
22744         Reported by Larry Jones <lawrence.jones@ugs.com>.
22745
22746 2005-08-31  Bruno Haible  <bruno@clisp.org>
22747
22748         Avoid unnecessary diffs in the generated lib/Makefile.am.
22749         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
22750         the generated files.
22751         (func_import): Don't set cmd.
22752
22753 2005-08-31  Bruno Haible  <bruno@clisp.org>
22754
22755         * lib/strstr.c: Include <stddef.h>, for NULL.
22756         * lib/strcasestr.c: Likewise.
22757         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22758
22759 2005-08-31  Bruno Haible  <bruno@clisp.org>
22760
22761         * gnulib-tool: New option --macro-prefix.
22762         (func_import): Use macro_prefix.
22763         (import): Handle option --macro-prefix.
22764
22765 2005-08-31  Bruno Haible  <bruno@clisp.org>
22766
22767         * gnulib-tool (import): Rename most ac_* variables to cached_*.
22768         Also use new variables cached_lgpl, cached_libtool.
22769
22770 2005-08-31  Bruno Haible  <bruno@clisp.org>
22771
22772         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
22773         always instantiating them.
22774
22775 2005-08-31  Bruno Haible  <bruno@clisp.org>
22776
22777         * gnulib-tool (func_import): Read the previous cached settings
22778         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
22779         earlier added by gnulib but are now dropped. Warn when a gnulib file
22780         overwrites a non-gnulib file.
22781
22782 2005-08-31  Bruno Haible  <bruno@clisp.org>
22783
22784         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
22785         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
22786         projects that don't keep autogenerated files in CVS. Put into
22787         actioncmd only the specified modules, not the transitive closure.
22788
22789 2005-08-31  Bruno Haible  <bruno@clisp.org>
22790
22791         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
22792         Create directories that shall be filled.
22793         (import): Don't look for gl_* macros in configure.ac. Recurse across
22794         all directories containing a gnulib-cache.m4 files, if meaningful.
22795
22796 2005-08-31  Bruno Haible  <bruno@clisp.org>
22797
22798         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
22799         (import): Set seen_libtool when we see gl_LIBTOOL.
22800
22801 2005-08-31  Bruno Haible  <bruno@clisp.org>
22802
22803         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
22804         declaration macro definitions from generated gnulib.m4.
22805
22806 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
22807
22808         * lib/iconvme.h: Add prototype for iconv_alloc.
22809
22810 2005-08-29  Simon Josefsson  <jas@extundo.com>
22811
22812         * lib/iconvme.c: Fix errno.
22813
22814 2005-08-29  Bruno Haible  <bruno@clisp.org>
22815
22816         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
22817         that it works when the directory contains spaces.
22818
22819 2005-08-29  Bruno Haible  <bruno@clisp.org>
22820
22821         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
22822
22823 2005-08-29  Bruno Haible  <bruno@clisp.org>
22824
22825         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
22826         Emit more advice.
22827
22828 2005-08-29  Bruno Haible  <bruno@clisp.org>
22829         and Stepan Kasal  <kasal@ucw.cz>
22830
22831         * check-module: If more parameters are given, check each of them
22832         separately; add more exceptions, as noted by Jim Meyering.
22833         (check_module): New procedure.
22834         (%exempt_header): Now contains all exceptions.
22835
22836 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
22837
22838         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
22839
22840 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
22841
22842         * lib/iconvme.c: Split iconv_string into iconv_alloc.
22843
22844 2005-08-28  Bruno Haible  <bruno@clisp.org>
22845
22846         * m4/gnulib-tool.m4: New file.
22847
22848 2005-08-27  Jim Meyering  <jim@meyering.net>
22849
22850         * modules/unistd-safer (Files): Add pipe-safer.c.
22851         * modules/fcntl-safer (Files): Add creat-safer.c.
22852
22853 2005-08-27  Jim Meyering  <jim@meyering.net>
22854
22855         * m4/stdlib-safer.m4: New file.  From coreutils.
22856         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
22857         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
22858         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
22859         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
22860         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
22861
22862 2005-08-27  Jim Meyering  <jim@meyering.net>
22863
22864         * lib/fopen-safer.c: Merge minor changes from coreutils.
22865         * lib/dup-safer.c: Likewise.
22866         * lib/fd-safer.c: Likewise.
22867
22868         Merge from coreutils.
22869         * lib/stdio--.h: New file.
22870         * lib/stdlib--.h: New file.
22871         * lib/mkstemp-safer.c: New file.
22872
22873         GNU tar needs these.
22874         * lib/pipe-safer.c: New file.
22875         * lib/creat-safer.c: New file.
22876         * lib/fcntl--.h (creat): Define to creat_safer.
22877         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
22878         * lib/unistd--.h (pipe): Define to pipe_safer.
22879         * lib/unistd-safer.h: Declare pipe_safer.
22880
22881 2005-08-26  Simon Josefsson  <jas@extundo.com>
22882
22883         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
22884         Haible <bruno@clisp.org>.
22885
22886 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22887
22888         * lib/regex_internal.h: Remove all references to
22889         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
22890         or better.
22891         (bitset_not, bitset_merge, bitset_not_merge):
22892         (bitset_mask, re_string_allocate, re_string_construct):
22893         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
22894         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
22895         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
22896         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
22897         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
22898         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
22899         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
22900         (re_acquire_state_context):
22901         Remove unnecessary forward decls.
22902         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
22903         Put __attribute at function definition,
22904         now that the function decl has been removed.
22905         * lib/regex_internal.c (re_string_peek_byte_case):
22906         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
22907         Likewise.
22908
22909 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
22910
22911         * m4/regex.m4: Add AC_PREREQ(2.50).
22912         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
22913
22914 2005-08-25  Simon Josefsson  <jas@extundo.com>
22915
22916         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
22917         __fsetlocking.
22918
22919 2005-08-25  Simon Josefsson  <jas@extundo.com>
22920
22921         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
22922         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
22923         GLIBC specific code.
22924
22925 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22926
22927         Make regex safe for g++.  This fixes one real bug (an "err"
22928         that should have been "*err").  g++ problem reported by
22929         Sam Steingold.
22930         * lib/regex_internal.h (re_calloc): New macro, consistent with
22931         re_malloc etc.  All callers of calloc changed to use re_calloc.
22932         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
22933         not int.  All callers changed.
22934         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
22935         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
22936         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
22937         (find_recover_state): Change "err" to "*err"; this fixes what
22938         appears to be a real bug.
22939         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
22940         versus int.
22941
22942 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22943
22944         * modules/regex (Depends-on): Add malloc, since the code
22945         assumes that !malloc(0) means failure.
22946
22947 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22948
22949         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
22950
22951         alloca modernization/simplification for regex.
22952         * lib/regex.c: Remove portability cruft for alloca.  This no longer
22953         needs to be at the start of the file, and can be moved into
22954         regex_internal.h and simplified.
22955         * lib/regex_internal.h: Include <alloca.h>.
22956         (__libc_use_alloca) [!defined _LIBC]: New macro.
22957         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
22958         now works outside glibc.
22959
22960 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22961
22962         * config/srclist.txt: Add glibc bugs 1241, 1245.
22963
22964 2005-08-25  Jim Meyering  <jim@meyering.net>
22965
22966         * lib/open-safer.c: Include <config.h>.
22967         Otherwise, we'd lose LARGEFILE support in any file using
22968         e.g. "fcntl--.h"
22969
22970 2005-08-25  Bruno Haible  <bruno@clisp.org>
22971
22972         * m4/minmax.m4: Require autoconf 2.52.
22973         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
22974         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
22975         alternatives of translit over the alphabet.
22976         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
22977
22978 2005-08-24  Simon Josefsson  <jas@extundo.com>
22979
22980         * tests/test-getpass.c: New file.
22981
22982 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22983
22984         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
22985         for GNU regex features.
22986
22987 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22988
22989         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
22990         * lib/regex.h (regerror): Likewise.
22991
22992         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
22993         requires this.  (The code never needed it.)
22994
22995         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
22996         All uses of recently-renamed identifiers changed to use the new,
22997         POSIX-compliant names.  The code will build and run just fine
22998         without these changes, but it's better to eat our own dog food
22999         and use the standard-conforming names.
23000
23001         * lib/regex.h: Fix a multitude of POSIX name space violations.
23002         These changes have an effect only for programs that define
23003         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
23004         do not change anything for programs compiled in the normal way.
23005         Also, there is no effect on the ABI.
23006
23007         (_REGEX_SOURCE): New macro.
23008         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
23009         defined and _GNU_SOURCE is not; this fixes a name space violation.
23010
23011         Rename the following macros to obey POSIX requirements.
23012         The old names are still visible as macros if _REGEX_SOURCE is defined.
23013         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
23014         RE_BACKSLASH_ESCAPE_IN_LISTS.
23015         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
23016         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
23017         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
23018         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
23019         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
23020         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
23021         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
23022         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
23023         (REG_INTERVALS): renamed from RE_INTERVALS.
23024         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
23025         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
23026         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
23027         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
23028         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
23029         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
23030         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
23031         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
23032         RE_UNMATCHED_RIGHT_PAREN_ORD.
23033         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
23034         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
23035         (REG_DEBUG): renamed from RE_DEBUG.
23036         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
23037         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
23038         unusual, since we can't clash with the POSIX REG_ICASE.
23039         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
23040         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
23041         (REG_NO_SUB): renamed from RE_NO_SUB.
23042         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
23043         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
23044         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
23045         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
23046         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
23047         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
23048         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
23049         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
23050         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
23051         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
23052         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
23053         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
23054         RE_SYNTAX_POSIX_MINIMAL_BASIC.
23055         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
23056         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
23057         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
23058         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
23059         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
23060         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
23061         (REG_FIXED): Renamed from REGS_FIXED.
23062         (REG_NREGS): Renamed from RE_NREGS.
23063
23064         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
23065         of other REG_* macros, since POSIX says the user is allowed to
23066         #undef these macros selectively.
23067
23068         (reg_errcode_t): Update comment stating what other tables need
23069         to be consistent.
23070
23071         Rename the following enum values to obey POSIX requirements.
23072         The old names are still visible as macros.
23073         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
23074         is not defined, since GNU is supposed to be a superset of POSIX as
23075         much as possible, and since we want reg_errcode_t to be a signed
23076         type for implementation consistency.
23077         (_REG_NOERROR): Renamed from REG_NOERROR.
23078         (_REG_NOMATCH): Renamed from REG_NOMATCH.
23079         (_REG_BADPAT): Renamed from REG_BADPAT.
23080         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
23081         (_REG_ECTYPE): Renamed from REG_ECTYPE.
23082         (_REG_EESCAPE): Renamed from REG_EESCAPE.
23083         (_REG_ESUBREG): Renamed from REG_ESUBREG.
23084         (_REG_EBRACK): Renamed from REG_EBRACK.
23085         (_REG_EPAREN): Renamed from REG_EPAREN.
23086         (_REG_EBRACE): Renamed from REG_EBRACE.
23087         (_REG_BADBR): Renamed from REG_BADBR.
23088         (_REG_ERANGE): Renamed from REG_ERANGE.
23089         (_REG_ESPACE): Renamed from REG_ESPACE.
23090         (_REG_BADRPT): Renamed from REG_BADRPT.
23091         (_REG_EEND): Renamed from REG_EEND.
23092         (_REG_ESIZE): Renamed from REG_ESIZE.
23093         (_REG_ERPAREN): Renamed from REG_ERPAREN.
23094         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
23095         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
23096         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
23097         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
23098
23099         (_REG_RE_NAME, _REG_RM_NAME): New macros.
23100         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
23101         changed.  But support the old name if the new one is not defined
23102         and if _REGEX_SOURCE.
23103
23104         Change the following member names in struct re_pattern_buffer.
23105         The old names are still supported if !_REGEX_SOURCE.
23106         The new names are always supported, regardless of _REGEX_SOURCE.
23107         (re_buffer): Renamed from buffer.
23108         (re_allocated): Renamed from allocated.
23109         (re_used): Renamed from used.
23110         (re_syntax): Renamed from syntax.
23111         (re_fastmap): Renamed from fastmap.
23112         (re_translate): Renamed from translate.
23113         (re_can_be_null): Renamed from can_be_null.
23114         (re_regs_allocated): Renamed from regs_allocated.
23115         (re_fastmap_accurate): Renamed from fastmap_accurate.
23116         (re_no_sub): Renamed from no_sub.
23117         (re_not_bol): Renamed from not_bol.
23118         (re_not_eol): Renamed from not_eol.
23119         (re_newline_anchor): Renamed from newline_anchor.
23120
23121         Change the following member names in struct re_registers.
23122         The old names are still supported if !_REGEX_SOURCE.
23123         The new names are always supported, regardless of _REGEX_SOURCE.
23124         (rm_num_regs): Renamed from num_regs.
23125         (rm_start): Renamed from start.
23126         (rm_end): Renamed from end.
23127
23128         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
23129         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
23130         Prepend __ to parameter names.
23131
23132         Undo yesterday's changes.
23133
23134 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
23135
23136         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
23137         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
23138         lib/regex.c.
23139
23140 2005-08-24  Jim Meyering  <jim@meyering.net>
23141
23142         Sync from coreutils.
23143         * m4/fcntl-safer.m4: New file.
23144
23145         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
23146         and object files for this module.
23147
23148 2005-08-24  Jim Meyering  <jim@meyering.net>
23149
23150         Sync from coreutils.
23151         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
23152
23153 2005-08-24  Jim Meyering  <jim@meyering.net>
23154
23155         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
23156         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
23157
23158 2005-08-24  Jim Meyering  <jim@meyering.net>
23159
23160         * modules/fcntl-safer: New module.
23161         * modules/fts (Depends-on): Add fcntl-safer.
23162         * MODULES.html.sh (File descriptor based Input/Output):
23163         Add fcntl-safer.
23164
23165 2005-08-24  Bruno Haible  <bruno@clisp.org>
23166
23167         Support for unit test modules.
23168         * modules/README: Mention tests modules.
23169         * modules/TEMPLATE-TESTS: New file.
23170         * gnulib-tool: New options --extract-tests-module, --with-tests and
23171         --tests-base (unused for the moment).
23172         (testsbase, inctests): New variables.
23173         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
23174         (func_verify_module): Exclude TEMPLATE-TESTS.
23175         (func_verify_nontests_module, func_verify_tests_module): New functions.
23176         (func_get_dependencies): Add implicit dependency for tests modules.
23177         (func_get_tests_module): New function.
23178         (func_modules_transitive_closure): When --with-tests was specified,
23179         include the unit tests as well, unless explicitly avoided.
23180         (func_emit_lib_Makefile_am): Ignore the tests modules here.
23181         (func_emit_tests_Makefile_am): New function.
23182         (func_create_testdir): When --with-tests was specified, emit a
23183         tests/ directory.
23184         * MODULES.html.sh (Future developments): Update.
23185
23186 2005-08-24  Bruno Haible  <bruno@clisp.org>
23187
23188         * modules/tls-tests: New file.
23189         * tests/test-tls.c: New file, from GNU gettext.
23190
23191 2005-08-24  Bruno Haible  <bruno@clisp.org>
23192
23193         * modules/lock-tests: New file.
23194         * tests/test-lock.c: New file, from GNU gettext.
23195
23196 2005-08-24  Bruno Haible  <bruno@clisp.org>
23197
23198         * lib/lock.h: Add multiple inclusion guard.
23199         * lib/tls.h: Add multiple inclusion guard.
23200
23201 2005-08-24  Bruno Haible  <bruno@clisp.org>
23202
23203         * gnulib-tool: Add support for the --aux-dir option to
23204         --create-testdir, --create-megatestdir, --test, --megatest.
23205         (func_create_testdir, func_create_megatestdir): Optionally emit a
23206         AC_CONFIG_AUX_DIR directive.
23207         (create-testdir, create-megatestdir, test, megatest): Provide a
23208         default value for $auxdir.
23209
23210 2005-08-24  Bruno Haible  <bruno@clisp.org>
23211
23212         * gnulib-tool (import): Use compound statement instead of subshell
23213         where possible.
23214
23215 2005-08-24  Bruno Haible  <bruno@clisp.org>
23216
23217         * gnulib-tool (import): Change --aux-dir default to "build-aux".
23218
23219 2005-08-24  Bruno Haible  <bruno@clisp.org>
23220
23221         * gnulib-tool (func_version): Update.
23222
23223 2005-08-24  Bruno Haible  <bruno@clisp.org>
23224
23225         * gnulib-tool (func_import, func_create_testdir,
23226         func_create_megatestdir): Quote all autoconf macro arguments.
23227
23228 2005-08-24  Bruno Haible  <bruno@clisp.org>
23229
23230         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
23231         option --force, because --force causes the aclocal.m4 of each
23232         subdirectory to be newer than the corresponding config.h.in.
23233
23234 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
23235
23236         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
23237         All contents moved to gl_REGEX.
23238         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
23239         assume that it does.
23240
23241 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
23242
23243         * lib/regex.h (REG_NOSYS)
23244         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
23245         Define, since POSIX requires it as of 2001.
23246         (_REG_ENOSYS)
23247         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
23248         New private symbol, used to keep the enum signed in all cases.
23249         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
23250         Youngman in
23251         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
23252
23253         * lib/regex_internal.c (re_string_skip_chars, register_state):
23254         (calc_state_hash):
23255         Remove forward decls; no longer needed now that we use prototypes.
23256         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
23257         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
23258         (clean_state_log_if_needed): Likewise.
23259
23260 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
23261
23262         * config/srclist.txt: Add glibc bugs 1231-1233.
23263
23264 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23265
23266         Fix problems reported by Sam Steingold in
23267         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
23268         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
23269         assumed that reg_errcode_t is a signed type, which is not
23270         necessarily true if _XOPEN_SOURCE is not defined.
23271         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
23272         since some compilers warn about it otherwise.
23273
23274 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23275
23276         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
23277         (init_word_char, create_initial_state, duplicate_node_closure):
23278         (fetch_token, peek_token_bracket, build_range_exp):
23279         (build_collating_symbol): Remove forward decls; no longer needed
23280         now that we use prototypes.
23281
23282         * lib/regcomp.c:
23283         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
23284         (re_compile_fastmap_iter, regcomp, regerror, regfree):
23285         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
23286         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
23287         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
23288         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
23289         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
23290         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
23291         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
23292         (build_range_exp, build_collating_symbol, parse_bracket_exp):
23293         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
23294         (build_charclass, build_charclass_op, fetch_number, create_tree):
23295         (create_token_tree, mark_opt_subexp, duplicate_tree):
23296         Use prototypes rather than old-style definitions.
23297
23298         * lib/regex_internal.c:
23299         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
23300         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
23301         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
23302         (re_string_reconstruct, re_string_peek_byte_case):
23303         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
23304         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
23305         (re_node_set_init_copy, re_node_set_add_intersect):
23306         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
23307         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
23308         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
23309         (re_acquire_state, re_acquire_state_context, register_state):
23310         (create_ci_newstate, create_cd_newstate, free_state):
23311         Likewise.
23312         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
23313         re_search_2):
23314         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
23315         (re_search_internal, prune_impossible_nodes):
23316         (acquire_init_state_context, check_matching, static):
23317         (check_halt_node_context, check_halt_state_context, proceed_next_node):
23318         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
23319         (update_regs, sift_states_backward, build_sifted_states):
23320         (clean_state_log_if_needed, merge_state_array):
23321         (update_cur_sifted_state, add_epsilon_src_nodes):
23322         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
23323         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
23324         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
23325         (find_recover_state, check_subexp_matching_top, transit_state_mb):
23326         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
23327         (check_arrival, check_arrival_add_next_nodes):
23328         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
23329         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
23330         (check_node_accept_bytes, check_node_accept, extend_buffers):
23331         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
23332         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
23333         (sift_ctx_init):
23334         Likewise.
23335
23336         * lib/regex_internal.h:
23337         (re_string_allocate, re_string_construct, re_string_reconstruct):
23338         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
23339         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
23340         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
23341         (re_string_context_at, re_string_peek_byte_case):
23342         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
23343         is defined, since we now use prototypes always.
23344
23345         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
23346         C89 or better.  All uses removed.
23347
23348 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23349
23350         * config/srclist.txt: Add glibc bugs 1220-1227.
23351
23352 2005-08-20  Jim Meyering  <jim@meyering.net>
23353
23354         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
23355         of unused local, dfa.
23356
23357 2005-08-20  Bruno Haible  <bruno@clisp.org>
23358
23359         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
23360
23361 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23362
23363         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
23364         (re_node_set_insert_last, re_dfa_add_node):
23365         Rename local variables to avoid GCC shadowing warnings.
23366
23367 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23368
23369         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
23370         [defined lint]: Suppress bogus uninitialized-variable warnings.
23371
23372         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
23373         and let the caller return REG_ESPACE if out of space.  This
23374         removes an uninitialied-variable warning with GCC 4.0.1, and also
23375         avoids taking the address of a local variable.  All callers
23376         changed.
23377
23378 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23379
23380         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
23381         $LIBCSRC/posix/regexec.c.
23382         Add glibc bug 1217 for regcomp.c.
23383
23384 2005-08-19  Jim Meyering  <jim@meyering.net>
23385
23386         * lib/regexec.c (proceed_next_node): Redo local variables to
23387         avoid GCC shadowing warnings.
23388
23389 2005-08-18  Bruno Haible  <bruno@clisp.org>
23390
23391         * lib/strstr.c (strstr): Fix return value in multibyte case.
23392         * lib/strcasestr.c (strcasestr): Likewise.
23393
23394 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23395
23396         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
23397
23398 2005-08-17  Jim Meyering  <jim@meyering.net>
23399
23400         Make the %s format (seconds since the epoch) work for a negative
23401         number and when used with a zero-padded field width, e.g. %015s.
23402
23403         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
23404         label so that it precedes the code to set `digits'.  Otherwise,
23405         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
23406         print `00-22'.  Now, it prints `-0022', as it should.
23407
23408 2005-08-17  Bruno Haible  <bruno@clisp.org>
23409
23410         * modules/strstr (Files): Add m4/mbrtowc.m4.
23411         (Depends-on): Add mbuiter.
23412
23413 2005-08-17  Bruno Haible  <bruno@clisp.org>
23414
23415         * modules/strcasestr: New file.
23416         * MODULES.html.sh (String handling, based on ANSI C 89): Add
23417         strcasestr.
23418
23419 2005-08-17  Bruno Haible  <bruno@clisp.org>
23420
23421         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
23422
23423 2005-08-17  Bruno Haible  <bruno@clisp.org>
23424
23425         * modules/mbuiter: New file.
23426         * MODULES.html.sh (Extended multibyte and wide character utilities):
23427         Add mbuiter.
23428
23429 2005-08-17  Bruno Haible  <bruno@clisp.org>
23430
23431         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
23432         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
23433
23434 2005-08-17  Bruno Haible  <bruno@clisp.org>
23435
23436         * m4/strcasestr.m4: New file.
23437
23438 2005-08-17  Bruno Haible  <bruno@clisp.org>
23439
23440         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
23441         * lib/strstr.c: Completely rewritten, with multibyte locale support.
23442
23443 2005-08-17  Bruno Haible  <bruno@clisp.org>
23444
23445         * lib/strcasestr.h: New file.
23446         * lib/strcasestr.c: New file.
23447
23448 2005-08-17  Bruno Haible  <bruno@clisp.org>
23449
23450         * lib/strcasecmp.c: Use mbuiter.h.
23451
23452 2005-08-17  Bruno Haible  <bruno@clisp.org>
23453
23454         * lib/mbuiter.h: New file.
23455
23456 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
23457
23458         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
23459         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
23460         and gl_GETOPT are both invoked via different paths (as happens
23461         with GNU tar CVS because it uses both argp and getopt), the former
23462         wins.
23463
23464 2005-08-16  Bruno Haible  <bruno@clisp.org>
23465
23466         * modules/tls: New file.
23467         * MODULES.html.sh (Multithreading): Add tls.
23468
23469 2005-08-16  Bruno Haible  <bruno@clisp.org>
23470
23471         * modules/strnlen1: New file.
23472         * MODULES.html.sh (String handling): Add strnlen1.
23473
23474 2005-08-16  Bruno Haible  <bruno@clisp.org>
23475
23476         * modules/strcase (Files): Add m4/mbrtowc.m4.
23477         (Depends-on): Add strnlen1, mbchar.
23478
23479 2005-08-16  Bruno Haible  <bruno@clisp.org>
23480
23481         * modules/mbiter: New file.
23482         * MODULES.html.sh (Extended multibyte and wide character utilities):
23483         Add mbiter.
23484
23485 2005-08-16  Bruno Haible  <bruno@clisp.org>
23486
23487         * modules/mbfile: New file.
23488         * MODULES.html.sh (Extended multibyte and wide character utilities):
23489         Add mbfile.
23490
23491 2005-08-16  Bruno Haible  <bruno@clisp.org>
23492
23493         * modules/mbchar: New file.
23494         * MODULES.html.sh (Extended multibyte and wide character utilities):
23495         New section.
23496
23497 2005-08-16  Bruno Haible  <bruno@clisp.org>
23498
23499         * m4/tls.m4: New file, from GNU gettext.
23500
23501 2005-08-16  Bruno Haible  <bruno@clisp.org>
23502
23503         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
23504         always.
23505         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
23506
23507 2005-08-16  Bruno Haible  <bruno@clisp.org>
23508
23509         * m4/mbiter.m4: New file.
23510
23511 2005-08-16  Bruno Haible  <bruno@clisp.org>
23512
23513         * m4/mbfile.m4: New file.
23514
23515 2005-08-16  Bruno Haible  <bruno@clisp.org>
23516
23517         * m4/mbchar.m4: New file.
23518
23519 2005-08-16  Bruno Haible  <bruno@clisp.org>
23520
23521         * lib/tls.h: New file, from GNU gettext.
23522         * lib/tls.c: New file, from GNU gettext.
23523
23524 2005-08-16  Bruno Haible  <bruno@clisp.org>
23525
23526         * lib/strnlen1.h: New file.
23527         * lib/strnlen1.c: New file.
23528
23529 2005-08-16  Bruno Haible  <bruno@clisp.org>
23530
23531         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
23532         (mbi_init): Update.
23533         (mbi_avail, mbi_advance): Let the iteration end before the terminating
23534         NUL byte, not after it.
23535
23536 2005-08-16  Bruno Haible  <bruno@clisp.org>
23537
23538         * lib/strcase.h (strcasecmp): Add note in comments.
23539         * lib/strncasecmp.c: Use code from strcasecmp.c.
23540         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
23541         (strcasecmp): Work correctly in multibyte locales.
23542
23543 2005-08-16  Bruno Haible  <bruno@clisp.org>
23544
23545         * lib/mbiter.h: New file.
23546
23547 2005-08-16  Bruno Haible  <bruno@clisp.org>
23548
23549         * lib/mbfile.h: New file.
23550
23551 2005-08-16  Bruno Haible  <bruno@clisp.org>
23552
23553         * lib/mbchar.h: New file.
23554         * lib/mbchar.c: New file.
23555
23556 2005-08-16  Bruno Haible  <bruno@clisp.org>
23557
23558         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
23559         the valid ones. Makes the comparison operations transitive:
23560         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
23561         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
23562
23563 2005-08-15  Simon Josefsson  <jas@extundo.com>
23564
23565         * modules/ssize_t (License): Change to 'unlimited'.
23566
23567         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
23568
23569 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23570
23571         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
23572         Add comments for each pending glibc patch.
23573
23574 2005-08-15  Bruno Haible  <bruno@clisp.org>
23575
23576         * lib/regex.h (__restrict_arr): Don't define to __restrict if
23577         __cplusplus is defined.
23578
23579 2005-08-14  Jim Meyering  <jim@meyering.net>
23580
23581         Sync from coreutils.
23582
23583         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
23584         Use the hash-table-based cycle-detection code not just when
23585         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
23586         Reported by James Youngman in
23587         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
23588         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
23589         FTS_TIGHT_CYCLE_CHECK.
23590         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
23591         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
23592         once again.
23593         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
23594         * lib/fts.c (fd_safer): Remove decl.
23595         Include fcntl--.h rather than unistd-safer.h
23596         (fts_safe_changedir): Don't call fd_safer; no longer needed
23597         now that we include fcntl--.h.
23598
23599 2005-08-12  Simon Josefsson  <jas@extundo.com>
23600
23601         * modules/getndelim2: Use ssize_t module.
23602         * modules/getnline: Likewise.
23603         * modules/safe-read: Likewise.
23604         * modules/xreadlink: Likewise.
23605
23606         * modules/ssize_t: New file.
23607
23608 2005-08-12  Simon Josefsson  <jas@extundo.com>
23609
23610         * m4/readline.m4: Look for termcap, curses or ncurses if required.
23611
23612 2005-08-12  Simon Josefsson  <jas@extundo.com>
23613
23614         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23615         ssize_t.
23616
23617 2005-08-12  Simon Josefsson  <jas@extundo.com>
23618
23619         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
23620         readline, getdelim and check_version.
23621         (Support for systems lacking ISO C 99: Sizes of integer types):
23622         Add size_max.
23623
23624 2005-08-12  Bruno Haible  <bruno@clisp.org>
23625
23626         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
23627
23628 2005-08-11  Simon Josefsson  <jas@extundo.com>
23629
23630         * modules/readline: New file.
23631
23632         * modules/strnlen (Files): Add strnlen.h.
23633
23634 2005-08-11  Simon Josefsson  <jas@extundo.com>
23635
23636         * m4/readline.m4: New file.
23637
23638 2005-08-11  Simon Josefsson  <jas@extundo.com>
23639
23640         * lib/readline.h, readline.c: New file.
23641
23642 2005-08-11  Simon Josefsson  <jas@extundo.com>
23643
23644         * doc/gnulib.texi (Initial import, Finishing touches): Mention
23645         gl_AVOID.
23646
23647 2005-08-11  Bruno Haible  <bruno@clisp.org>
23648
23649         * lib/strnlen.h (strnlen): Change parameter name to match comment.
23650
23651 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
23652
23653         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
23654
23655 2005-08-10  Simon Josefsson  <jas@extundo.com>
23656
23657         * tests/test-iconvme.c: New file.
23658
23659 2005-08-10  Simon Josefsson  <jas@extundo.com>
23660
23661         * m4/strnlen.m4: New file.
23662
23663         * m4/strndup.m4: Don't check for strnlen declaration, done in
23664         strnlen.m4.
23665
23666 2005-08-10  Simon Josefsson  <jas@extundo.com>
23667
23668         * lib/strndup.c: Use strnlen.h.
23669
23670         * lib/strnlen.h: New file.
23671
23672 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
23673
23674         * README: Typos.
23675
23676 2005-08-02  Simon Josefsson  <jas@extundo.com>
23677
23678         * modules/readline: New file.
23679
23680 2005-08-02  Simon Josefsson  <jas@extundo.com>
23681
23682         * modules/getdelim: New file.
23683
23684         * modules/getline: Rewrite, don't use getndelim2.
23685
23686 2005-08-02  Simon Josefsson  <jas@extundo.com>
23687
23688         * m4/getline.m4: Separate out getdelim stuff into separate module.
23689
23690         * m4/getdelim.m4: New file.
23691
23692 2005-08-02  Simon Josefsson  <jas@extundo.com>
23693
23694         * lib/getline.h, getline.c: Rewrite.
23695
23696         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
23697
23698 2005-07-31  Bruno Haible  <bruno@clisp.org>
23699
23700         * lib/lock.h (gl_lock_initializer): New macro.
23701         (gl_lock_define_initialized): Use it.
23702         (gl_rwlock_initializer): New macro.
23703         (gl_rwlock_define_initialized): Use it.
23704         (gl_recursive_lock_initializer): New macro.
23705         (gl_recursive_lock_define_initialized): Use it.
23706
23707 2005-07-30  Karl Berry  <karl@gnu.org>
23708
23709         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
23710         Report from Ben Pfaff, regarding getopt.
23711
23712 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
23713
23714         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
23715         normal way.
23716         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
23717         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
23718         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
23719         (gl_GETOPT): Use the new macros.  Most of the implementation
23720         is moved to the new macros.  This is for programs like Emacs
23721         that don't want all the functionality of gl_GETOPT.
23722
23723 2005-07-26  Bruno Haible  <bruno@clisp.org>
23724
23725         * m4/lock.m4: Update from GNU gettext.
23726
23727 2005-07-26  Bruno Haible  <bruno@clisp.org>
23728
23729         * lib/lock.h: Update from GNU gettext.
23730         * lib/lock.c: Update from GNU gettext.
23731
23732 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
23733
23734         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
23735         obsolescent AC_TRY_RUN.  Include the default includes files, for
23736         'exit'.
23737
23738 2005-07-24  Bruno Haible  <bruno@clisp.org>
23739
23740         * modules/visibility: New file.
23741         * MODULES.html.sh (Misc): Add visibility.
23742
23743 2005-07-24  Bruno Haible  <bruno@clisp.org>
23744
23745         * m4/visibility.m4: New file.
23746
23747 2005-07-24  Bruno Haible  <bruno@clisp.org>
23748
23749         * doc/visibility.texi: New file.
23750
23751 2005-07-22  Bruno Haible  <bruno@clisp.org>
23752
23753         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
23754         $(ALLOCA_H), redundant through BUILT_SOURCES.
23755         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
23756         redundant through BUILT_SOURCES.
23757         * modules/byteswap (Makefile.am): Remove explicit dependency on
23758         $(BYTESWAP_H), redundant through BUILT_SOURCES.
23759         * modules/fnmatch (Makefile.am): Remove explicit dependency on
23760         $(FNMATCH_H), redundant through BUILT_SOURCES.
23761         * modules/getopt (Makefile.am): Remove explicit dependency on
23762         $(GETOPT_H), redundant through BUILT_SOURCES.
23763         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
23764         redundant through BUILT_SOURCES.
23765         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
23766         redundant through BUILT_SOURCES.
23767         * modules/stdbool (Makefile.am): Remove explicit dependency on
23768         $(STDBOOL_H), redundant through BUILT_SOURCES.
23769         * modules/stdint (Makefile.am): Remove explicit dependency on
23770         $(STDINT_H), redundant through BUILT_SOURCES.
23771         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
23772         Remove explicit dependency on $(SYSEXITS_H).
23773         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
23774
23775 2005-07-18  Simon Josefsson  <jas@extundo.com>
23776
23777         * lib/check-version.c (check_version): Accept identical versions too.
23778
23779 2005-07-18  Bruno Haible  <bruno@clisp.org>
23780
23781         * modules/lock: New file.
23782         * MODULES.html.sh (Multithreading): New section.
23783
23784 2005-07-18  Bruno Haible  <bruno@clisp.org>
23785
23786         * m4/lock.m4: New file, from GNU gettext.
23787
23788 2005-07-18  Bruno Haible  <bruno@clisp.org>
23789
23790         * lib/lock.h: New file, from GNU gettext.
23791         * lib/lock.c: New file, from GNU gettext.
23792
23793 2005-07-18  Bruno Haible  <bruno@clisp.org>
23794
23795         * lib/lock.h (gl_once_t): New type.
23796         (gl_once_define, gl_once): New macros.
23797         * lib/lock.c (fresh_once): New variable.
23798         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
23799         functions.
23800
23801 2005-07-16  Simon Josefsson  <jas@extundo.com>
23802
23803         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
23804         workaround, suggested by Bruno.
23805
23806 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
23807
23808         * modules/xalloc (Depends-on): Add xalloc-die.
23809         * modules/xvasprintf (Depends-on): Add xalloc-die.
23810
23811 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
23812
23813         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
23814         with a minor change.
23815
23816 2005-07-15  Bruno Haible  <bruno@clisp.org>
23817
23818         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
23819         When using lib/poll.c, define poll as rpl_poll.
23820
23821 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
23822
23823         * modules/argp (Depends-on): Remove unlocked-io.
23824
23825 2005-07-14  Derek Price  <derek@ximbiot.com>
23826
23827         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
23828         for glob symlink bug.
23829
23830 2005-07-14  Bruno Haible  <bruno@clisp.org>
23831
23832         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
23833         Instead, test for *_unlocked function declarations directly.
23834
23835 2005-07-11  Simon Josefsson  <jas@extundo.com>
23836
23837         * modules/size_max: New file.
23838
23839         * modules/xsize: Depend on size_max module for size_max.m4.
23840
23841 2005-07-11  Simon Josefsson  <jas@extundo.com>
23842
23843         * lib/size_max.h: New file.
23844
23845 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
23846
23847         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
23848         copyright symbol and the year.
23849         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
23850         (version_etc_va): Use parameterized copyright notice.
23851         Reword to conform to the current GNU coding standards.
23852
23853 2005-07-11  Karl Berry  <karl@gnu.org>
23854
23855         * doc/gnulib.texi (Quoting): new node.
23856         (Initial import): more info, from Patrice.
23857
23858 2005-07-11  Bruno Haible  <bruno@clisp.org>
23859
23860         * gnulib-tool (func_usage): Document option --avoid.
23861         (Command line options): Handle --avoid.
23862         (func_acceptable): New function.
23863         (func_modules_transitive_closure): Use it.
23864
23865 2005-07-11  Bruno Haible  <bruno@clisp.org>
23866
23867         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
23868         Reported by Jim Meyering.
23869
23870 2005-07-10  Bruno Haible  <bruno@clisp.org>
23871
23872         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
23873         Needed when size_t is smaller than 'unsigned int'.
23874         Reported by Paul Eggert.
23875
23876 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
23877
23878         * modules/argp (Depends-on): Add unlocked-io
23879
23880 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
23881
23882         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
23883         block of defines.
23884
23885 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
23886
23887         * config/srclist.txt: Comment out regcomp.c, since we have a porting
23888         fix now.
23889
23890 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
23891         and Paul Eggert  <eggert@cs.ucla.edu>
23892
23893         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
23894         in wint_t, not wchar_t.  Remove now-unnecessary cast.
23895
23896 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
23897
23898         * modules/regex (Files): Add lib/regex_internal.c,
23899         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
23900         (Depends-on): Add extensions.
23901         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
23902
23903 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
23904
23905         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
23906         pathconf.
23907         * m4/same.m4 (gl_SAME): Likewise.
23908         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
23909
23910         * m4/regex.m4: Adjust to new libc regex implementation.
23911         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
23912         all the .c and .h parts of (the new) regex.
23913         Quote the m4 stuff better.
23914         Check for RE_ICASE bug of old gnulib.
23915         Check for REG_STARTEND of recent libc.
23916         Rename local variables from jm_* to gl_*.
23917         Quote operand of "test -f".
23918         Say "recent enough" version of libc, not "version 2".
23919         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
23920         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
23921         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
23922         Remove check for btowc, isascii.
23923         Require AM_LANGINFO_CODESET.
23924
23925 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
23926
23927         * lib/regex.c, regex.h: Sync from libc.
23928         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
23929         * lib/regexec.c:
23930         New files, synced from libc, except that regex_internal.h
23931         currently has a small porting fix.
23932
23933 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
23934
23935         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
23936         regex_internal.c, regexec.c.
23937         Add regex_internal.h too, but as a comment, since the libc version
23938         is currently broken in gnulib mode.
23939
23940 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
23941
23942         Support programs like Emacs that use gnulib but not gettext.
23943         * MODULES.html.sh (Internationalization functions): Add gettext-h.
23944         * modules/gettext-h: New file.
23945         * modules/gettext (Files): Remove lib/gettext.h.
23946         (Depends-on): Add gettext-h.
23947         (Makefile.am): Remove lib_SOURCES.
23948         * modules/argmatch, modules/c-stack, modules/closeout:
23949         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
23950         * modules/execute, modules/file-type, modules/getaddrinfo:
23951         * modules/getopt, modules/human, modules/javacomp:
23952         * modules/javaexec, modules/mkdir-p, modules/obstack:
23953         * modules/openat, modules/pagealign_alloc, modules/pipe:
23954         * modules/quotearg, modules/regex, modules/rpmatch:
23955         * modules/unicodeio, modules/userspec, modules/version-etc:
23956         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
23957         * modules/xsetenv:
23958         Depend on gettext-h, not gettext.
23959
23960 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
23961
23962         * gnulib-tool (func_import): Add support for 'public domain' license.
23963         * modules/alloca, modules/atexit, modules/memmove:
23964         Now public domain, not GPL.
23965         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
23966         * modules/realloc, modules/strerror, modules/strtod:
23967         Now LGPL, not GPL.
23968
23969 2005-07-05  Bruno Haible  <bruno@clisp.org>
23970
23971         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
23972         autoconf CVS. Needed for mingw.
23973
23974 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
23975
23976         Remove the dependency of the strftime module on the tzset module.
23977         * modules/strftime (Depends-on): Remove dependency on tzset.
23978
23979 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
23980
23981         Remove the dependency of the strftime module on the tzset module.
23982         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
23983         gl_FUNC_TZSET_CLOBBER.
23984
23985 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
23986
23987         Remove the dependency of the strftime module on the tzset module.
23988         * lib/strftime.c (my_strftime)
23989         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
23990         Copy the input structure, to work around some of the bug with
23991         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
23992         Solaris releases, you should also use the tzset module, but we won't
23993         require it as a dependency any more since we don't want LGPLed code
23994         to depend on GPLed code.
23995
23996 2005-07-02  Jim Meyering  <jim@meyering.net>
23997
23998         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
23999         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
24000         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
24001         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
24002
24003 2005-07-02  Jim Meyering  <jim@meyering.net>
24004
24005         * lib/backupfile.c (backup_args): Change a `0' to NULL.
24006
24007 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
24008
24009         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
24010         declares only 'struct timespec;' (!).
24011
24012 2005-07-01  Jim Meyering  <jim@meyering.net>
24013
24014         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
24015         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
24016         * lib/save-cwd.c, tempname.c:
24017         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
24018         and don't include <sys/file.h>).
24019
24020 2005-06-29  Jim Meyering  <jim@meyering.net>
24021
24022         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
24023         type name.  Use the variable name instead.
24024         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
24025         Likewise.
24026
24027 2005-06-28  Simon Josefsson  <jas@extundo.com>
24028
24029         * modules/check-version (Files): Add check-version.m4.
24030
24031 2005-06-28  Simon Josefsson  <jas@extundo.com>
24032
24033         * m4/check-version.m4: New file, suggested by Jim Meyering
24034         <jim@meyering.net>.
24035
24036 2005-06-28  Simon Josefsson  <jas@extundo.com>
24037
24038         * lib/check-version.h, lib/check-version.c: New files.
24039
24040 2005-06-28  Simon Josefsson  <jas@extundo.com>
24041
24042         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
24043         collision with global variable.  Better indentation.  Don't
24044         increment buffer pointer beyond buffer end.  Based on comments
24045         from Paul Eggert <eggert@cs.ucla.edu>.
24046
24047         * lib/base64.h: Indent.
24048
24049 2005-06-28  Simon Josefsson  <jas@extundo.com>
24050
24051         * doc/gnulib.texi (Library version handling): New section.
24052
24053 2005-06-28  Jim Meyering  <jim@meyering.net>
24054
24055         * check-module (find_included_lib_files): Hard-code another
24056         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
24057         but modules/fts-lgpl (correctly) does not list those files.
24058
24059         * modules/canonicalize (Files): Add lib/pathmax.h.
24060
24061 2005-06-25  Simon Josefsson  <jas@extundo.com>
24062
24063         * modules/check-version: New file.
24064
24065 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
24066
24067         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
24068         initializer of struct addrinfo, as an indication that we don't
24069         care how many members the structure has.
24070
24071 2005-06-24  Derek Price  <derek@ximbiot.com>
24072         and Bruno Haible  <bruno@clisp.org>
24073
24074         Remove stat module & update lstat.
24075         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
24076         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
24077         * m4/stat.m4: Remove this file.
24078
24079 2005-06-24  Derek Price  <derek@ximbiot.com>
24080         and Bruno Haible  <bruno@clisp.org>
24081
24082         Remove stat module & update lstat.
24083         * lib/stat.c: Remove this file...
24084         (slash_aware_lstat): ...moving this content and its support...
24085         * lib/lstat.c (rpl_lstat): ...into here.
24086         * lib/lstat.h: New file.
24087
24088 2005-06-24  Derek Price  <derek@ximbiot.com>
24089         and Bruno Haible  <bruno@clisp.org>
24090
24091         Remove stat module & update lstat.
24092         * config/srclist.txt (libc sources): Remove stat.
24093
24094 2005-06-24  Derek Price  <derek@ximbiot.com>
24095         and Bruno Haible  <bruno@clisp.org>
24096
24097         Remove stat module & update lstat.
24098         * MODULES.html.sh (stat): Remove.
24099         * MODULES.html: Regenerated.
24100         * modules/lstat (Description): Correct function name.
24101         (Files): Add "lstat.h".
24102         (Depends-on): Remove stat, add xalloc, stat-macros.
24103         * modules/stat: Remove this file.
24104         (Include): Add "lstat.h", remove <sys/stat.h>.
24105
24106 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
24107
24108         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
24109         (ranged_convert): Don't save conversion in a temporary struct.
24110         This causes a warning with GCC 4.0.0, and anyway in the typical
24111         case it's not worth the extra 100 bytes or so of code.
24112         (ranged_convert, __mktime_internal): When calling a function via a
24113         pointer P, use P () rather than (*P) (), as we now assume C89 or
24114         better.
24115
24116 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24117
24118         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
24119         "who -r" failed to give output.  Problem reported by Tim Waugh.
24120
24121         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
24122         (xcalloc): Use it to avoid needless tests.
24123         Problem reported by Jim Meyering.
24124
24125 2005-06-20  Derek Price  <derek@ximbiot.com>
24126
24127         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
24128         unnecessary for Autoconfs > 2.59c.
24129
24130 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24131
24132         * lib/argp.h (__option_is_short): Check upper limit of
24133         __key. Isprint() requires its argument to have the value
24134         of an unsigned char or EOF.
24135
24136 2005-06-16  Jim Meyering  <jim@meyering.net>
24137
24138         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
24139         when either N or S is zero.
24140
24141 2005-06-16  Derek Price  <derek@ximbiot.com>
24142
24143         * m4/bison.m4: Declare YACC & YFLAGS precious.
24144
24145 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
24146
24147         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
24148         multibyte string or pattern, fall back on unibyte matching.
24149         Problem reported by James Youngman.
24150
24151 2005-06-08  Bruno Haible  <bruno@clisp.org>
24152
24153         * modules/csharpcomp: New file.
24154         * MODULES.html.sh (C#): Add csharpcomp.
24155
24156 2005-06-08  Bruno Haible  <bruno@clisp.org>
24157
24158         * m4/csharpcomp.m4: New file, from GNU gettext.
24159
24160 2005-06-08  Bruno Haible  <bruno@clisp.org>
24161
24162         * lib/csharpcomp.h: New file, from GNU gettext.
24163         * lib/csharpcomp.c: New file, from GNU gettext.
24164         * lib/csharpcomp.sh.in: New file, from GNU gettext.
24165
24166 2005-06-08  Bruno Haible  <bruno@clisp.org>
24167
24168         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
24169         warning on mingw.
24170
24171 2005-06-07  Derek Price  <derek@ximbiot.com>
24172
24173         Sync from CVS.
24174         * lib/glob_.h: Indent nested #ifdef.
24175
24176 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
24177
24178         Sync from coreutils.
24179         Use "file name" when talking about file names, instead of "filename"
24180         or "path", as per the GNU coding standards.
24181         * lib/mkdir-p.c: Renamed from makepath.c.
24182         (make_dir_parents): Renamed from make_path.  All callers changed.
24183         * lib/mkdir-p.h: Likewise.  All includers changed.
24184         * lib/filenamecat.c: Renamed from path-concat.c.
24185         (file_name_concat): Renamed from path_concat.  All callers changed.
24186         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
24187         * lib/filenamecat.h: Likewise.  All includers changed.
24188         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
24189         in comments or local variable names.
24190         * lib/basename.c: Likewise.
24191         * lib/canonicalize.c, canonicalize.h: Likewise.
24192         * lib/dirname.c, dirname.h: Likewise.
24193         * lib/euidaccess.c: Likewise.
24194         * lib/exclude.c: Likewise
24195         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
24196         * lib/fsusage.c, fsuage.h: Likewise.
24197         * lib/fts.c, fts_.h: Likewise.
24198         * lib/getcwd.c: Likewise.
24199         * lib/getloadavg.c: Likewise.
24200         * lib/mkstemp.c: Likewise.
24201         * lib/mountlist.c, mountlist.h: Likewise.
24202         * lib/openat.c, openat.h: Likewise.
24203         * lib/readlink-stub.c: Likewise.
24204         * lib/readutmp.c, readutmp.h: Likewise.
24205         * lib/rename.c: Likewise.
24206         * lib/rmdir.c: Likewise.
24207         * lib/same.c: Likewise.
24208         * lib/savedir.c: Likewise.
24209         * lib/stripslash.c: Likewise.
24210         * lib/tempname.c: Likewise.
24211         * lib/xreadlink.c: Likewise.
24212         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
24213         All uses changed.
24214         * lib/exclude.h: Likewise.
24215
24216         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
24217         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
24218         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
24219         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
24220         * lib/pathmax.h: Include <limits.h> unconditionally, since other
24221         files have been getting away with it for years (MORE/BSD 4.3
24222         is extinct now).
24223         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
24224         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
24225
24226         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
24227         Define to 256, not 255, as per modern POSIX.
24228
24229 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
24230
24231         Sync from coreutils.
24232         Use "file name" when talking about file names, instead of "filename"
24233         or "path", as per the GNU coding standards.
24234         * MODULES.html.sh: mkdir-p renamed from makepath.
24235         filenamecat renamed from path-concat.
24236         * modules/filenamecat: Renamed from modules/path-concat.
24237         (Files): filenamecat.h and filenamecat.c renamed from
24238         path-concat.h and path-concat.c.
24239         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
24240         (Include): filenamecat.h, not path-concat.h.
24241         * modules/mkdir-p: Renamed from modules/makepath.
24242         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
24243         makepath.c.
24244         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
24245         (Include): mkdir-p.h, not makepath.h.
24246
24247 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
24248
24249         Sync from coreutils.
24250         * m4/mkdir-p.m4: Renamed from makepath.m4.
24251         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
24252         Rename files from makepath.c to mkdir-p.c, and from
24253         makepath.h to mkdir-p.h.
24254         * m4/filenamecat.m4: Renamed from path-concat.m4.
24255         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
24256         Rename files from path-concat.c to filenamecat.c,
24257         and from path-concat.h to filenamecat.h.
24258         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
24259         "file name" in local variables or comments.
24260         * m4/rename.m4: Likewise.
24261
24262 2005-06-01  Bruno Haible  <bruno@clisp.org>
24263
24264         * modules/csharpexec: New file.
24265         * MODULES.html.sh (C#): New section.
24266
24267 2005-06-01  Bruno Haible  <bruno@clisp.org>
24268
24269         * m4/csharp.m4: New file, from GNU gettext.
24270         * m4/csharpexec.m4: New file, from GNU gettext.
24271
24272 2005-06-01  Bruno Haible  <bruno@clisp.org>
24273
24274         * lib/csharpexec.h: New file, from GNU gettext.
24275         * lib/csharpexec.c: New file, from GNU gettext.
24276         * lib/csharpexec.sh.in: New file, from GNU gettext.
24277
24278 2005-05-31  Derek Price  <derek@ximbiot.com>
24279             Paul Eggert  <eggert@cs.ucla.edu>
24280
24281         Sync from cvs.
24282         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
24283
24284 2005-05-31  Derek Price  <derek@ximbiot.com>
24285             Paul Eggert  <eggert@cs.ucla.edu>
24286
24287         Sync from cvs.
24288         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
24289
24290 2005-05-29  Derek Price  <derek@ximbiot.com>
24291
24292         * config/srclist.txt (glob_.h, glob.c): Add these files.
24293
24294 2005-05-29  Derek Price  <derek@ximbiot.com>
24295
24296         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
24297         * modules/glob: New file.
24298         * modules/getlogin_r: Add link to POSIX spec in description.
24299
24300 2005-05-29  Derek Price  <derek@ximbiot.com>
24301             Paul Eggert  <eggert@cs.ucla.edu>
24302
24303         * m4/glob.m4: New file.
24304
24305 2005-05-29  Derek Price  <derek@ximbiot.com>
24306             Paul Eggert  <eggert@cs.ucla.edu>
24307
24308         * lib/glob_.h, lib/glob.c: New files.
24309
24310 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
24311
24312         * modules/fts (Files): Remove m4/inttypes-pri.m4.
24313         * modules/fts-lgpl (Depends-on): Remove gettext.
24314
24315 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
24316
24317         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
24318         and don't require gt_INTTYPES_PRI.
24319
24320 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
24321
24322         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
24323
24324         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
24325         the configuration hassle isn't worth it.
24326         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
24327         (LONGEST_MODIFIER, PRIuMAX): Remove.
24328
24329 2005-05-27  Bruno Haible  <bruno@clisp.org>
24330
24331         * lib/getlogin_r.h: Remove second include of <stddef.h>.
24332
24333 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
24334
24335         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
24336         _POSIX_PTHREAD_SEMANTICS for Solaris.
24337
24338 2005-05-25  Derek Price  <derek@ximbiot.com>
24339
24340         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
24341
24342 2005-05-25  Derek Price  <derek@ximbiot.com>
24343             Paul Eggert  <eggert@cs.ucla.edu>
24344
24345         * modules/getlogin_r, m4/getlogin_r.m4: New files.
24346         * lib/getlogin_r.c, getlogin_r.h: New files.
24347
24348 2005-05-25  Bruno Haible  <bruno@clisp.org>
24349             Derek Price  <derek@ximbiot.com>
24350
24351         * lib/getlogin_r.h: Simplify API documentation.
24352
24353 2005-05-23  Derek Price  <derek@ximbiot.com>
24354
24355         * modules/minmax (Files): Add m4/minmax.m4.
24356         (configure.ac): Add gl_MINMAX.
24357
24358 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
24359
24360         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
24361         so that unistd-safer.h (GPL'ed code) need not be included.
24362
24363 2005-05-22  Bruno Haible  <bruno@clisp.org>
24364
24365         * m4/minmax.m4: New file.
24366         Based on a patch by Derek Price <derek@ximbiot.com>.
24367
24368 2005-05-22  Bruno Haible  <bruno@clisp.org>
24369
24370         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
24371         (INT64_MIN): Fix definition.
24372         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
24373
24374         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
24375         NEED_SIGNED_INT_TYPES.
24376
24377         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
24378         HAVE_SYSTEM_INTTYPES.
24379
24380 2005-05-22  Bruno Haible  <bruno@clisp.org>
24381
24382         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
24383         Also include <sys/param.h> if it defines MIN, MAX.
24384         Based on a patch by Derek Price <derek@ximbiot.com>.
24385
24386 2005-05-21  Jim Meyering  <jim@meyering.net>
24387
24388         * modules/fts (Files): Add m4/inttypes-pri.m4.
24389         (Depends-on): Add lstat and remove gettext.  Alphabetize.
24390
24391 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24392
24393         New fts module.
24394         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
24395         (setup_dir, free_dir): New functions.
24396         (enter_dir, leave_dir): Define trivial
24397         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
24398         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
24399         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
24400         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
24401         Move to fts-cycle.c.
24402         (fts_open): Use setup_dir.
24403         (fts_close): Use free_dir.
24404         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
24405         This adds a label and some gotos, but the alternatives were messier.
24406         Check for memory allocation failure when entering a dir.
24407         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
24408         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
24409         (FTS): New member fts_cycle, that is a union that contains the
24410         old active_dir_ht and cycle_state.  All uses changed to mention
24411         fts_cycle.ht and fts_cycle.state.
24412         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
24413         fts.c, with the following changes:
24414         (setup_dir, free_dir): New functions.
24415         (enter_dir): Now returns bool.  Return true if successful, false
24416         if memory exhausted.  All callers changed.
24417         Do not bother partly cleaning up on
24418         memory allocation failure; that is free_dir's job.
24419         However, free ad if hash_insert fails, to avoid memory leak.
24420         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
24421         fts->fts_options to see which union member to use.
24422
24423 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24424
24425         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
24426         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
24427
24428 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24429
24430         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
24431
24432 2005-05-20  Jim Meyering  <jim@meyering.net>
24433
24434         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
24435         Now a macro, to pacify GCC.
24436
24437 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
24438
24439         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
24440         of -1.
24441
24442 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
24443
24444         * lib/chown.c (rpl_chown): Return -1 on failure.
24445
24446 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
24447
24448         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
24449         Don't check for stddef.h.
24450         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
24451         don't use its results.
24452         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
24453         since we include them unconditionally.  Don't require
24454         AM_STDBOOL_H, since stdbool is a prerequisite.
24455         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
24456         since we assume C89 or better.
24457         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
24458         as we don't use their results.
24459         Don't check for fchdir, memmove, memset, strrchr, as we use
24460         them unconditionally.
24461         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
24462         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
24463
24464 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
24465
24466         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
24467         Include <stddef.h> unconditionally, since we assume C89 now.
24468         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
24469         * lib/fts.c: Include fts_.h first, to check interface.
24470         Do not include intprops.h; no longer needed.
24471         Include cycle-check.h and hash.h, since fts_.h no longer does.
24472         Remove unnecessary casts of closedir to void.
24473         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
24474         decide whether to decrement nlinks.
24475         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
24476         (FTS): Use struct hash_table * instead of Hash_table, so that
24477         we no longer need to include hash.h here.
24478
24479 2005-05-18  Jim Meyering  <jim@meyering.net>
24480
24481         * modules/dirfd (License): Change to LGPL.  Most of the code
24482         is already in the public domain.
24483
24484 2005-05-18  Jim Meyering  <jim@meyering.net>
24485
24486         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
24487         Reported by Yoann Vandoorselaere.
24488
24489 2005-05-17  Jim Meyering  <jim@meyering.net>
24490
24491         * m4/fts.m4: New file, from coreutils.
24492
24493 2005-05-17  Jim Meyering  <jim@meyering.net>
24494
24495         * lib/fts.c, lib/fts_.h: New files, from coreutils.
24496
24497 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
24498
24499         Sync from coreutils.
24500         * m4/unlinkdir.m4: New file.
24501
24502 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
24503
24504         Sync from coreutils.
24505         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
24506         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
24507         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
24508         White space changes only.
24509         * lib/makepath.c (make_path): Port to hosts where leading "//" is
24510         special.
24511         * lib/yesno.c: Include getline.h, not ctype.h.
24512         (yesno): Don't remove leading white space; POSIX doesn't allow it.
24513         Use getline to remove arbitrary restriction on response length.
24514
24515 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
24516
24517         * config/srclist-update: Spell out "Street" in FSF postal
24518         mail address; this is the style the FSF seems to prefer.
24519
24520         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
24521         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
24522         this updates FSF postal mail address.
24523
24524         Sync from coreutils.
24525         * modules/unlinkdir: New file.
24526         * modules/yesno (Depends-on): Add getline.
24527         * MODULES.html.sh (File system functions): Add unlinkdir.
24528
24529 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
24530
24531         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
24532         lib/strsep.h:
24533         Change the initial comment to refer to GPL, not LGPL.
24534         gnulib-tool will change it to LGPL as needed.
24535
24536         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
24537         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
24538         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
24539         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
24540         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
24541         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
24542         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
24543         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
24544         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
24545         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
24546         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
24547         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
24548         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
24549         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
24550         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
24551         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
24552         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
24553         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
24554         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
24555         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
24556         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
24557         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
24558         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
24559         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
24560         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
24561         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
24562         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
24563         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
24564         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
24565         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
24566         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
24567         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
24568         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
24569         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
24570         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
24571         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
24572         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
24573         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
24574         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
24575         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
24576         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
24577         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
24578         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
24579         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
24580         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
24581         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
24582         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
24583         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
24584         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
24585         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
24586         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
24587         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
24588         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
24589         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
24590         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
24591         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
24592         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
24593         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
24594         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
24595         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
24596         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
24597         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
24598         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
24599         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
24600         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
24601         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
24602         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
24603         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
24604         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
24605         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
24606         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
24607         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
24608         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
24609         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
24610         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
24611         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
24612         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
24613         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
24614         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
24615         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
24616         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
24617         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
24618         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
24619         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
24620         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
24621         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
24622         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
24623         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
24624         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
24625         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
24626         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
24627         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
24628         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
24629         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
24630         lib/yesno.c, lib/yesno.h:
24631         Update FSF postal mail address.
24632
24633 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
24634
24635         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
24636         tests/test-memmem.c, tests/test-stpncpy.c:
24637         Update FSF postal mail address.
24638
24639 2005-05-13  Bruno Haible  <bruno@clisp.org>
24640
24641         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
24642         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
24643         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
24644         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
24645         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
24646         Add support for 64-bit integers in the MSVC compiler.
24647
24648 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24649
24650         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
24651
24652 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
24653
24654         * gnulib-tool (func_import): Sort and uniquify recommended includes.
24655
24656 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
24657
24658         * doc/getdate.texi (General date syntax): Don't say that date
24659         date --iso-8601=ns generates acceptable dates; it doesn't yet.
24660         Problem reported by Nic Ferrier.
24661
24662 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24663
24664         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
24665         specified in ai_socktype. Fix invalid ai_protocol
24666         check. ai_protocol is usually set to 0 or depending on
24667         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
24668         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
24669         ai_socktype / ai_protocol in the returned addrinfo structure.
24670
24671 2005-05-10  Simon Josefsson  <jas@extundo.com>
24672
24673         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
24674         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
24675
24676 2005-05-10  Karl Berry  <karl@gnu.org>
24677
24678         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
24679         (from http://www.gnu.org/licenses).
24680         * doc/COPYING.LIB: also rename to COPYING.LESSER.
24681         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
24682         fdl.texi suffices.
24683
24684 2005-05-10  Karl Berry  <karl@gnu.org>
24685
24686         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
24687         (COPYING.DOC): remove.
24688
24689         * config/srclist-update: new FSF address.
24690
24691 2005-05-10  Derek Price  <derek@ximbiot.com>
24692
24693         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
24694         possible.
24695
24696 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24697             Bruno Haible  <bruno@clisp.org>
24698
24699         * modules/inet_ntop: New file.
24700         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24701         inet_ntop.
24702
24703 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24704             Bruno Haible  <bruno@clisp.org>
24705
24706         * m4/inet_ntop.m4: New file.
24707
24708 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24709             Bruno Haible  <bruno@clisp.org>
24710
24711         * lib/inet_ntop.h: New file.
24712         * lib/inet_ntop.c: New file, from glibc with modifications.
24713
24714 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
24715
24716         * modules/time_r (License): Change to LGPL.
24717         * modules/extensions (License): Change to LGPL.  Actually,
24718         the license is more permissive than that, but currently gnulib-tool
24719         doesn't know how to handle more-permissive licenses.
24720
24721         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
24722         Problem reported by Dave Love.
24723
24724 2005-05-08  Jim Meyering  <jim@meyering.net>
24725
24726         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
24727         blank.
24728
24729 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
24730
24731         * modules/argmatch (Depends-on): Add stdbool.
24732         * modules/backupfile (Depends-on): Likewise.
24733         * modules/chdir-long (Depends-on): Likewise.
24734         * modules/closeout (Depends-on): Likewise.
24735         * modules/cycle-check (Depends-on): Likewise.
24736         * modules/dirname (Depends-on): Likewise.
24737         * modules/fnmatch (Depends-on): Likewise.
24738         * modules/fsusage (Depends-on): Likewise.
24739         * modules/fwriteerror (Depends-on): Likewise.
24740         * modules/getcwd (Depends-on): Likewise.
24741         * modules/getloadavg (Depends-on): Likewise.
24742         * modules/hard-locale (Depends-on): Likewise.
24743         * modules/makepath (Depends-on): Likewise.
24744         * modules/mountlist (Depends-on): Likewise.
24745         * modules/nanosleep (Depends-on): Likewise.
24746         * modules/posixtm (Depends-on): Likewise.
24747         * modules/quotearg (Depends-on): Likewise.
24748         * modules/readtokens (Depends-on): Likewise.
24749         * modules/readtokens0 (Depends-on): Likewise.
24750         * modules/readutmp (Depends-on): Likewise.
24751         * modules/save-cwd (Depends-on): Likewise.
24752         * modules/strftime (Depends-on): Likewise.
24753         * modules/userspec (Depends-on): Likewise.
24754         * modules/utimecmp (Depends-on): Likewise.
24755         * modules/xgetcwd (Depends-on): Likewise.
24756         * modules/xnanosleep (Depends-on): Likewise.
24757         * modules/xstrtod (Depends-on): Likewise.
24758         * modules/yesno (Depends-on): Likewise.
24759
24760 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
24761
24762         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
24763         needless checks.
24764
24765 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
24766
24767         Merge from coreutils.  Among other things,
24768         add bulletproofing for cases where stdin, stdout, or stderr are closed.
24769         * lib/fd-safer.c: New file.
24770         * lib/fcntl-safer.h, open-safer.c: Remove.
24771         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
24772         * lib/dup-safer.c: Include unistd-safer.h first.
24773         Don't include errno.h.
24774         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
24775         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
24776         * lib/file-type.c: Rely on file-type.h change.
24777         * lib/getloadavg.c: Include unistd-safer.h.
24778         (getloadavg): Use safer open.
24779         * lib/getusershell.c: Include "stdio-safer.h".
24780         (getusershell): Use safer fopen.
24781         * lib/long-options.c (long_options): Use NULL rather than 0.
24782         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
24783         'free'.
24784         * lib/modechange.c: Likewise.
24785         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
24786         (MODE_DONE): New constant.
24787         (struct mode_change): Remove 'next' member.
24788         (make_node_op_equals): New function; like the old one of the
24789         same name, except it allocates an array.
24790         (mode_compile, mode_create_from_ref): Use it.
24791         (mode_compile): Allocate result as an array, not a linked list.
24792         Parse octal string ourself, so that we catch mistakes like "+0".
24793         (mode_adjust): Arg is an array, not a linked list.
24794         * lib/modechange.c: Include stat-macros.h, xalloc.h.
24795         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
24796         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
24797         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
24798         Remove.  This is now stat-macros.h's job.
24799         (talloc): Remove.  All callers replaced by xalloc, so that
24800         our invokers don't have to worry about reporting memory failures.
24801         (make_node_op_equals): Remove.
24802         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
24803         New constants.
24804         (struct mode_change): Moved here from modechange.h.
24805         (mode_append_entry): Remove.
24806         (mode_compile): Remove MASKED_OPS arg, since it encouraged
24807         apps to have incorrect behavior.  Use simpler algorithm for head
24808         and tail.  Don't futz with umask; that's now the job of mode_adjust.
24809         Detect more invalid usages rather than having somewhat-random behavior.
24810         Don't insert an "a=" action, as that leads to incorrect behavior.
24811         (mode_compile, mode_create_from_ref): Return NULL on error instead
24812         of an enum, since now there's only one way to have an error.  All
24813         callers changed.
24814         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
24815         at the correct time.  Simplify calculation of "+u" and its ilk.
24816         Don't mishandle "+X".
24817         (mode_free): Remove "register" and localize decls.
24818         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
24819         (struct mode_change): Move to modechange.c; callers don't
24820         need to see this stuff.
24821         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
24822         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
24823         (mode_change, mode_adjust): Reflect the new signatures noted above.
24824         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
24825         that might redefine system include files.
24826         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
24827         (my_usleep): Use NULL rather than (void *) 0.
24828         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
24829         Use siginterrupt to specify that system calls should be interrupted.
24830         (rpl_nanosleep): Move initialization of suspended closer to call of
24831         my_usleep.
24832         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
24833         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
24834         (desirable_utmp_entry): New function.
24835         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
24836         using x2nrealloc, to simplify logic.
24837         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
24838         size calculation.  Do not assume utmp file is a regular file.
24839         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
24840         (READ_UTMP_CHECK_PIDS): New constant.
24841         * lib/save-cwd.c: Include unistd-safer.h.
24842         (save_cwd): Use fd_safer.
24843         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
24844         [!_LIBC] Include "stat-macros.h" instead.
24845         * lib/unistd-safer.h (fd_safer): New decl.
24846
24847 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
24848
24849         * modules/getloadavg (Depends-on): Add unistd-safer.
24850         * modules/getusershell (Depends-on): Add stdio-safer.
24851         * modules/lstat (Depends-on): Remove xalloc.
24852         * modules/mkstemp (Depends-on): Add stat-macros.
24853         * modules/modechange (Depends-on): Remove xstrtol.
24854         Add stat-macros, xalloc.
24855         * modules/save-cwd (Depends-on): Add unistd-safer.
24856         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
24857         * modules/unistd-safer (Files): Add lib/fd-safer.c
24858         (Makefile.am): Remove lib_SOURCES.
24859
24860         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
24861         Remove fcntl-safer; unistd-safer supersedes it.
24862
24863 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
24864
24865         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
24866         AC_HEADER_STAT.
24867         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
24868         (gl_PREREQ_CHOWN): Remove.
24869         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
24870         it.  Don't require AC_HEADER_STAT.
24871         (gl_PREREQ_LSTAT): Remove.
24872         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
24873         Don't require AC_HEADER_STAT.
24874         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
24875         (gl_PREREQ_RMDIR): Remove.
24876         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
24877         mention stat-macros.h or AC_HEADER_STAT, since we'll make
24878         the stat-macros module a prerequisite.
24879         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
24880         * m4/filemode.m4 (gl_FILEMODE): Likewise.
24881         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
24882         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
24883         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
24884         variable names.
24885         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
24886         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
24887         variable prefixes.
24888         * m4/fcntl-safer.m4: Remove.
24889         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
24890         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
24891         Invoke gl_PREREQ_FD_SAFER.
24892         (gl_PREREQ_FD_SAFER): New macro.
24893         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
24894         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
24895         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
24896         Remove duplicate call to AC_LIBOBJ(readutmp).
24897         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
24898
24899         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
24900         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
24901
24902 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
24903
24904         * MODULES.html.sh (Misc): Add byteswap.
24905
24906 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
24907
24908         * modules/getcwd (Depends-on): Add extensions.
24909         * modules/openat (Depends-on): Likewise.
24910
24911 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
24912
24913         * modules/byteswap: New file.
24914
24915 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
24916
24917         * m4/byteswap.m4: New file.
24918
24919 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
24920
24921         * lib/byteswap_.h: New file.
24922
24923 2005-04-25  Karl Berry  <karl@gnu.org>
24924
24925         * m4/gettext.m4: Update from GNU gettext 0.14.4.
24926
24927 2005-04-25  Albert Chin  <china@thewrittenword.com>
24928
24929         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
24930         Toolkit C bug.
24931
24932 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
24933
24934         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
24935         (func_ln_if_changed) Remove forcibly for no error message
24936         in case file does not exist.
24937
24938 2005-04-19  Simon Josefsson  <jas@extundo.com>
24939
24940         * gnulib-tool (Options): Make --symlink mean --symbolic.
24941
24942 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
24943
24944         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
24945
24946 2005-04-16  Simon Josefsson  <jas@extundo.com>
24947
24948         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
24949
24950 2005-04-15  Simon Josefsson  <jas@extundo.com>
24951
24952         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
24953
24954 2005-04-15  Simon Josefsson  <jas@extundo.com>
24955
24956         * gnulib-tool: Rename --symlink to --symbolic.
24957
24958 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
24959
24960         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
24961         symbolic links to files instead of copying/moving.  Add --aux-dir,
24962         specifying directory relative --dir where auxiliary build tools
24963         are placed.
24964
24965 2005-04-14  Bruno Haible  <bruno@clisp.org>
24966
24967         * modules/allocsa (License): Change to LGPL.
24968         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
24969
24970 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
24971
24972         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
24973         that "UTC +1 second" continues to work.  Problem reported
24974         by Dmitry V. Levin.
24975         (relunit_snumber): New rule.
24976         (relunit): Use it.
24977
24978 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
24979
24980         * lib/getdate.y (universal_time_zone_table): New constant.
24981         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
24982         universal_time_zone_table.
24983         (lookup_zone): Prefer universal_time_zone_table to
24984         local_time_zone_table, so that "GMT" time stamps are allowed in
24985         London during the summer.  Problem reported by Ian Abbott.
24986
24987 2005-04-12  Jim Meyering  <jim@meyering.net>
24988
24989         * lib/human.c (humblock): Set *options even when returning due to
24990         xstrtoumax conversion failure.  Thanks to a used-uninitialized
24991         warning from gcc-4.
24992
24993 2005-04-09  Jim Meyering  <jim@meyering.net>
24994
24995         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
24996         -Wuninitialized: initialize tm0.tm_year.
24997
24998 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
24999
25000         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
25001         count, since there's no maximum.  All uses changed.
25002         Add member dsts_seen.
25003         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
25004         not being INT_MAX.
25005         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
25006         Use pc_rels_seen to decide whther a date is absolute.
25007
25008         * lib/getdate.y (number): Don't overwrite year.
25009         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
25010         check.
25011
25012 2005-04-02  Simon Josefsson  <jas@extundo.com>
25013
25014         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
25015         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
25016
25017 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
25018
25019         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
25020         where no absolute path name can be longer than PATH_MAX.
25021
25022 2005-03-27  Jim Meyering  <jim@meyering.net>
25023
25024         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
25025
25026 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
25027
25028         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
25029         "one's complement" -> "ones' complement" in comment, as per Knuth.
25030         "value of type" -> "type or expression" in comment.
25031         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
25032
25033 2005-03-26  Jim Meyering  <jim@meyering.net>
25034
25035         Comment nits.
25036         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
25037         Correct typos: s/or/of/.
25038
25039 2005-03-26  Jim Meyering  <jim@meyering.net>
25040
25041         * modules/check-include-files: Move to ../ and rename to...
25042         * check-module: ...this.
25043
25044 2005-03-25  Jim Meyering  <jim@meyering.net>
25045
25046         * modules/xvasprintf (Files): Add xalloc.h.
25047
25048 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
25049
25050         * modules/gettext (Files): config/config.rpath ->
25051         build-aux/config.rpath
25052         * modules/iconv (Files): Likewise.
25053         Problem reported by Oskar Liljeblad.
25054
25055 2005-03-23  Jim Meyering  <jim@meyering.net>
25056
25057         * modules/check-include-files: New script to check for
25058         missing dependencies, multiple includes, etc.
25059
25060         * modules/c-strtold (Depends-on): Add xalloc.
25061         * modules/c-strtod (Depends-on): Add xalloc.
25062         * modules/hash (Depends-on): Add xalloc.
25063         (Files): Remove lib/xalloc.h.
25064
25065         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
25066         * modules/userspec (Files): Add lib/inttostr.h.
25067
25068 2005-03-23  Jim Meyering  <jim@meyering.net>
25069
25070         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
25071
25072 2005-03-22  Jim Meyering  <jim@meyering.net>
25073
25074         * modules/stat-macros: New module.
25075         * modules/canonicalize, modules/euidaccess, modules/file-type,
25076         * modules/filemode, modules/lchown, modules/makepath,
25077         * modules/rmdir, modules/stat: Depend on new stat-macros module
25078         rather than listing lib/stat-macros.h manually.
25079         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
25080
25081 2005-03-22  Jim Meyering  <jim@meyering.net>
25082
25083         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
25084
25085 2005-03-22  Bruno Haible  <bruno@clisp.org>
25086
25087         * config/srclist.txt: Replace target directory 'config' with
25088         'build-aux'.
25089         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
25090         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
25091         ../build-aux/.
25092
25093 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
25094
25095         * modules/chdir-long (Depends-on): Add mempcpy.
25096
25097         * modules/acl, modules/backupfile, modules/c-strtod,
25098         modules/c-strtold, modules/canon-host, modules/canonicalize,
25099         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
25100         modules/exclude, modules/exitfail, modules/file-type,
25101         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
25102         modules/getdate, modules/getline, modules/getpagesize,
25103         modules/getpass, modules/getugroups, modules/group-member,
25104         modules/hard-locale, modules/hash, modules/human, modules/idcache,
25105         modules/inttostr, modules/long-options, modules/makepath,
25106         modules/md5, modules/memcasecmp, modules/memcoll,
25107         modules/modechange, modules/mountlist, modules/path-concat,
25108         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
25109         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
25110         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
25111         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
25112         modules/strftime, modules/strndup, modules/strverscmp,
25113         modules/timespec, modules/unlocked-io, modules/userspec,
25114         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
25115         modules/yesno:
25116         Remove lib_SOURCES line from Makefile.am section, as this is now
25117         done automatically by the corresponding Autoconf macro.
25118
25119 2005-03-21  Jim Meyering  <jim@meyering.net>
25120
25121         Changes imported from coreutils.
25122
25123         * lib/cycle-check.c: Don't include xalloc.h.
25124
25125         * lib/path-concat.c: Don't include assert.h.
25126         (path_concat): Remove assertion that would have triggered
25127         for ABASE starting with more than one slash.
25128         Reported by Andreas Schwab.
25129
25130         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
25131         properly when ABASE is an absolute file name.
25132         Correct the description of this function.
25133         Include <assert.h>.
25134         Add an assertion and a test driver.
25135         This fixes a bug introduced on 2004-07-02.
25136         Andreas Schwab reported the resulting failure of cp --parents:
25137         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
25138
25139 2005-03-21  Jim Meyering  <jim@meyering.net>
25140
25141         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
25142         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
25143
25144 2005-03-21  Jim Meyering  <jim@meyering.net>
25145         and  Paul Eggert  <eggert@cs.ucla.edu>
25146
25147         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
25148         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
25149         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
25150         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
25151         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
25152         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
25153         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
25154         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
25155         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
25156         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
25157         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
25158         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
25159         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
25160         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
25161         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
25162         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
25163         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
25164         for these modules.
25165
25166 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
25167
25168         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
25169         (which shouldn't happen), generate nothing instead of returning 0
25170         immediately, so that nstrftime (NULL, ...) doesn't return 0.
25171
25172 2005-03-16  Bruno Haible  <bruno@clisp.org>
25173
25174         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
25175         HAVE_LONGLONG_64BIT.
25176
25177 2005-03-16  Bruno Haible  <bruno@clisp.org>
25178
25179         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
25180         HAVE_LONGLONG_64BIT.
25181
25182 2005-03-16  Bruno Haible  <bruno@clisp.org>
25183
25184         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
25185         HAVE_LONGLONG_64BIT.
25186
25187 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
25188
25189         * lib/strftime.c (my_strftime): Prepend space to format so that we can
25190         reliably distinguish strftime failure from empty output on POSIX
25191         hosts.
25192
25193 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
25194
25195         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
25196         (iconv_string): Don't guess a size-zero buffer, as that might cause
25197         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
25198         result would be 'too large', where 'too large' is (heuristically)
25199         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
25200         overflow concerns.  This will prevent some unwanted malloc failures
25201         when the inputs are very large.
25202
25203 2005-03-15  Karl Berry  <karl@gnu.org>
25204
25205         * config/srclist.txt (config.rpath): from gettext.
25206         * config/config.rpath: update.
25207
25208 2005-03-15  Bruno Haible  <bruno@clisp.org>
25209
25210         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
25211         to 'negate'.
25212
25213         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
25214         variable.
25215
25216         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
25217         results.
25218
25219 2005-03-14  Simon Josefsson  <jas@extundo.com>
25220
25221         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
25222         <fx@gnu.org>.
25223
25224 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
25225
25226         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
25227         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
25228         intprops.h.
25229         * lib/strtol.c: Likewise.
25230
25231 2005-03-14  Jim Meyering  <jim@meyering.net>
25232
25233         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
25234         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
25235         to be nonzero so that we (and caller) can detect the difference
25236         between a valid zero-length expansion and an error return, even
25237         when the underlying strftime fails before writing anything into
25238         that location.
25239
25240 2005-03-14  Bruno Haible  <bruno@clisp.org>
25241
25242         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
25243         Update from GNU gettext 0.14.3.
25244
25245 2005-03-10  Jim Meyering  <jim@meyering.net>
25246
25247         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
25248
25249 2005-03-10  Jim Meyering  <jim@meyering.net>
25250
25251         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
25252         so that this module works on systems without fchdir.
25253
25254 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
25255
25256         Factor int-properties macros into a single file, except for
25257         glibc-related files.
25258         * lib/intprops.h: New file.
25259         * lib/getloadavg.c: Include it instead of limits.h.
25260         (INT_STRLEN_BOUND): Remove.
25261         * lib/human.c: Include intprops.h.
25262         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
25263         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
25264         302/1000.
25265         * lib/inttostr.h: Include intprops.h instead of limits.h.
25266         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
25267         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
25268         for consistency with intprops.h.
25269         (time_t_is_integer, twos_complement_arithmetic): Use them.
25270         * lib/sig2str.h: Include <signal.h>, intprops.h.
25271         (INT_STRLEN_BOUND): Remove.
25272         * lib/strftime.c (TYPE_SIGNED): Remove.
25273         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
25274         * lib/strtol.c: Adjust comments to match intprops.h.
25275         * lib/userspec.c: Include intprops.h.
25276         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
25277         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
25278         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
25279         instead of rolling our own expressions.
25280         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
25281
25282         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
25283         instead of int.
25284         (my_strftime): Do not mishandle years close to INT_MAX, by doing
25285         the right thing even if adding 1900 would overflow.  Similarly
25286         for tm_mon + 1 and tm_yday + 1.
25287         Make %Y always equivalent to %C%y, and similarly for %G and %g.
25288         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
25289         (DO_SIGNED_NUMBER): New macro.
25290         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
25291
25292 2005-03-07  Bruno Haible  <bruno@clisp.org>
25293
25294         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
25295
25296 2005-03-07  Bruno Haible  <bruno@clisp.org>
25297
25298         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
25299
25300 2005-03-04  Derek R. Price  <derek@ximbiot.com>
25301
25302         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
25303         (func_import): Only replace files via --import when they have actually
25304         changed.
25305
25306 2005-03-03  Derek R. Price  <derek@ximbiot.com>
25307
25308         * m4/mmap-anon.m4: New file.
25309         * m4/pagealign_alloc.m4: New file.
25310
25311 2005-03-03  Derek R. Price  <derek@ximbiot.com>
25312             Bruno Haible  <bruno@clisp.org>
25313
25314         * modules/pagealign_alloc: New file.
25315         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
25316
25317 2005-03-03  Derek R. Price  <derek@ximbiot.com>
25318             Bruno Haible  <bruno@clisp.org>
25319
25320         * lib/pagealign_alloc.h: New file.
25321         * lib/pagealign_alloc.c: New file.
25322
25323 2005-03-03  Bruno Haible  <bruno@clisp.org>
25324
25325         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
25326         Use an all-permissive copyright notice, recommended by RMS.
25327
25328 2005-03-02  Bruno Haible  <bruno@clisp.org>
25329
25330         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
25331         of AIX, the replacement has to be done only after <string.h> is
25332         included, therefore not in config.h. stpncpy.h does the replacement,
25333         and stpncpy.c uses it.
25334
25335 2005-03-02  Bruno Haible  <bruno@clisp.org>
25336
25337         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
25338         stpncpy.c uses it.
25339
25340 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25341
25342         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
25343         The workaround isn't strictly needed for POSIX conformance, and
25344         it's too much of a pain to configure and maintain.  We'll ask
25345         people to fix their kernels instead.
25346         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
25347         (NANOSLEEP_BUG_WORKAROUND): Remove.
25348         (xnanosleep): Remove the workaround.
25349
25350 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25351
25352         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
25353         Reported by Derek Price.
25354         (Include): Add "timespec.h".
25355
25356         * modules/xnanosleep (Depends-on): Remove gethrxtime.
25357
25358 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25359
25360         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
25361         to detect nanosleep bug.
25362
25363 2005-03-01  Bruno Haible  <bruno@clisp.org>
25364
25365         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
25366
25367 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
25368
25369         * modules/gethrxtime: New file.
25370         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
25371         (Depends-on): Add gethrxtime.
25372         (configure.ac): Add gl_XNANOSLEEP.
25373         (Makefile.am): Remove lib_SOURCES line.
25374
25375 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
25376
25377         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
25378         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
25379
25380 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
25381
25382         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
25383         * lib/timespec.h (gettime): Return void, since it always
25384         succeeds now.  All uses changed.
25385         * lib/gettime.c (gettime) Likewise.
25386         [HAVE_NANOTIME]: Prefer nanotime.
25387         Assume gettimeofday succeeds, as POSIX requires.
25388         Assime time () succeeds, since other code already does.
25389         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
25390         (timespec_subtract): Remove.
25391         (NANOSLEEP_BUG_WORKAROUND): New constant.
25392         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
25393         things considerably.  Use it only on GNU/Linux hosts, since the
25394         workaround shouldn't be needed elsewhere.
25395
25396 2005-02-24  Bruno Haible  <bruno@clisp.org>
25397
25398         * modules/gettext (Files): Add m4/glibc2.m4.
25399
25400 2005-02-24  Bruno Haible  <bruno@clisp.org>
25401
25402         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
25403         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
25404         * m4/progtest.m4:
25405         Update from GNU gettext 0.14.2.
25406         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
25407
25408 2005-02-24  Bruno Haible  <bruno@clisp.org>
25409
25410         * lib/localcharset.c: Update from GNU gettext 0.14.2.
25411         * lib/config.charset: Update from GNU gettext 0.14.2.
25412
25413 2005-02-24  Bruno Haible  <bruno@clisp.org>
25414
25415         * lib/gettext.h: Update from GNU gettext 0.14.2.
25416
25417 2005-02-23  Simon Josefsson  <jas@extundo.com>
25418
25419         * m4/iconvme.m4: New file.
25420
25421 2005-02-23  Jim Meyering  <jim@meyering.net>
25422
25423         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
25424         change.
25425         Thanks to Bruno Haible for catching it.
25426
25427 2005-02-22  Simon Josefsson  <jas@extundo.com>
25428
25429         * modules/iconvme: New file.
25430
25431         * MODULES.html.sh: Add iconvme.
25432
25433 2005-02-22  Simon Josefsson  <jas@extundo.com>
25434
25435         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
25436
25437 2005-02-22  Simon Josefsson  <jas@extundo.com>
25438
25439         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
25440
25441 2005-02-22  Jim Meyering  <jim@meyering.net>
25442
25443         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
25444         s/ifndef/ifdef/.
25445
25446 2005-02-20  Neil Conway  <neilc@samurai.com>
25447
25448         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
25449         returned by OSX/Darwin if the specified buffer is not large
25450         enough for the hostname.
25451
25452 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25453
25454         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
25455         pass it to _help, otherwise the latter coredumps trying to
25456         dereference state.root_argp.
25457
25458 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
25459
25460         * modules/chdir-long (Depends-on): Add memrchr.
25461         * modules/memrchr (Files): Add lib/memrchr.h.
25462         (Include): "memrchr.h".
25463
25464 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
25465
25466         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
25467
25468 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
25469
25470         * lib/memrchr.h: New file.
25471         * lib/chdir-long.c: Include it.
25472         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
25473         Don't bother including stddef.h.
25474
25475 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
25476
25477         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
25478         inclusion.
25479         Include <sys/types.h>, for dev_t.
25480         (ME_DUMMY, ME_REMOTE): Move from here....
25481         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
25482         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
25483         Dmitry V. Levin.
25484         Include mountlist.h first, to test the interface.
25485
25486 2005-01-29  Bruno Haible  <bruno@clisp.org>
25487
25488         * lib/progname.c (program_name): Initialize.
25489         Needed when linking statically on MacOS X.
25490
25491 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
25492
25493         Sync from coreutils.
25494         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
25495         (Depends-on): Add c-strtod.
25496         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
25497
25498 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
25499
25500         Sync from coreutils.
25501         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
25502
25503         Remove files that are specific to coreutils.
25504         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
25505
25506 2005-01-28  Bruno Haible  <bruno@clisp.org>
25507
25508         * modules/javacomp: New file.
25509         * MODULES.html.sh (Java): Add javacomp.
25510
25511 2005-01-28  Bruno Haible  <bruno@clisp.org>
25512
25513         * m4/javacomp.m4: New file, from GNU gettext.
25514
25515 2005-01-28  Bruno Haible  <bruno@clisp.org>
25516
25517         * lib/javacomp.sh.in: New file, from GNU gettext.
25518         * lib/javacomp.h: New file, from GNU gettext.
25519         * lib/javacomp.c: New file, from GNU gettext.
25520
25521 2005-01-26  Simon Josefsson  <jas@extundo.com>
25522
25523         * lib/gai_strerror.c: Use GPL in header.
25524
25525 2005-01-26  Bruno Haible  <bruno@clisp.org>
25526
25527         * modules/javaexec: New file.
25528         * MODULES.html.sh (Java): Add javaexec.
25529
25530 2005-01-26  Bruno Haible  <bruno@clisp.org>
25531
25532         * m4/javaexec.m4: New file, from GNU gettext.
25533
25534 2005-01-26  Bruno Haible  <bruno@clisp.org>
25535
25536         * lib/javaexec.sh.in: New file, from GNU gettext.
25537         * lib/javaexec.h: New file, from GNU gettext.
25538         * lib/javaexec.c: New file, from GNU gettext.
25539
25540 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25541
25542         * modules/lchown (Depends-on): Remove lchown.h
25543
25544 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25545
25546         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
25547         must be defined if the header file was not found, in order
25548         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
25549
25550 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25551
25552         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
25553         initializers for struct pentry_state.
25554         (__argp_error): Check return value of __asprintf
25555         (__argp_failure): Translate error message
25556
25557         * lib/argp-parse.c: Removed braces around the expansion of N_()
25558
25559 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
25560
25561         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
25562         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
25563         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
25564         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
25565         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
25566         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
25567         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
25568         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
25569         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
25570         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
25571         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
25572         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
25573         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
25574         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
25575         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
25576         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
25577         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
25578         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
25579         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
25580         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
25581         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
25582         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
25583         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
25584         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
25585         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
25586         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
25587         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
25588         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
25589         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
25590         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
25591         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
25592         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
25593         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
25594         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
25595         xstrtol.m4, xstrtoumax.m4, yesno.m4:
25596         Use an all-permissive copyright notice, recommended by RMS.
25597
25598 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
25599
25600         * modules/chdir-long (Depends-on): Remove mempcpy.
25601
25602 2005-01-21  Jim Meyering  <jim@meyering.net>
25603
25604         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
25605         same value as for Solaris 9.
25606
25607         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
25608         component length.  This included changing the parameter to be
25609         of type `char *' rather than `char const *'.
25610         * lib/chdir-long.h (chdir_long): Update prototype.
25611
25612         * lib/openat.c (fdopendir, fstatat): New functions.
25613         * lib/openat.h: Include headers required for use of DIR and struct
25614         stat.
25615         [AT_SYMLINK_NOFOLLOW]: Define.
25616         (fdopendir, fstatat): Add prototypes.
25617
25618 2005-01-21  Bruno Haible  <bruno@clisp.org>
25619
25620         * modules/classpath: New file.
25621         * MODULES.html.sh (Java): Add classpath.
25622
25623 2005-01-21  Bruno Haible  <bruno@clisp.org>
25624
25625         * lib/classpath.h: New file, from GNU gettext.
25626         * lib/classpath.c: New file, from GNU gettext.
25627
25628 2005-01-20  Simon Josefsson  <jas@extundo.com>
25629
25630         * modules/version-etc-fsf: New file.
25631
25632 2005-01-20  Simon Josefsson  <jas@extundo.com>
25633
25634         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
25635         * lib/version-etc.c: Remove version_etc_copyright.
25636         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
25637         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
25638
25639 2005-01-20  Simon Josefsson  <jas@extundo.com>
25640
25641         * lib/base64.h (isbase64): Add.
25642
25643         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
25644         using a unsigned prototype, don't inline.
25645         (base64_decode): Use it.
25646
25647 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
25648
25649         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
25650         it.
25651
25652 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
25653
25654         * lib/save-cwd.c (save_cwd): Remove code to support the case
25655         where fchdir is missing or flaky.
25656
25657 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
25658
25659         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
25660
25661 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
25662
25663         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
25664         AC_LIBSOURCES now does this.
25665         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
25666         with new ullong_max module.
25667
25668 2005-01-19  Bruno Haible  <bruno@clisp.org>
25669
25670         * modules/sh-quote: New file.
25671         * MODULES.html.sh (Executing programs): Add sh-quote.
25672
25673 2005-01-19  Bruno Haible  <bruno@clisp.org>
25674
25675         * lib/sh-quote.h: New file, from GNU gettext.
25676         * lib/sh-quote.c: New file, from GNU gettext.
25677
25678 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
25679
25680         Merge from coreutils.
25681         * m4/ullong_max.m4: New file.
25682         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
25683         (gl_MACROS): Assume localeconv exists.
25684
25685 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
25686
25687         Merge changes from coreutils, as described below in several
25688         changelogs dated today.
25689
25690         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
25691         (O_DIRECTORY): Remove; not needed here, since "." must be
25692         a directory.  All uses removed.
25693         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
25694         universal on Suns, and we also need to test for IRIX.
25695         Revamp code to use 'if' rather than '#if'.
25696         Avoid unnecessary comparison of cwd->desc to 0.
25697
25698         * lib/utimens.c (futimens): Robustify the previous patch, by checking
25699         for known valid error numbers rather than observed invalid ones.
25700
25701 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
25702
25703         * modules/ullong_max: New file.
25704
25705         * modules/chdir-long, modules/openat: New files.
25706         * modules/save-cwd (Depends-on): Depend on chdir-long.
25707         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
25708
25709 2005-01-18  Jim Meyering  <jim@meyering.net>
25710
25711         Merge from coreutils.
25712         * m4/chdir-long.m4, m4/openat.m4: New files.
25713         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
25714         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
25715         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
25716         is sane and DOES follow symlinks.  Besides, testing 20 different
25717         systems found no broken chown implementations.
25718         Prompted by a change in rsync's copy of this macro.
25719         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
25720
25721         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
25722
25723         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
25724         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
25725         NULL-means-set-to-current-time semantics.
25726         Remove temporary file immediately, rather than waiting
25727         for configure's at-exit trap code to do it.
25728
25729 2005-01-18  Jim Meyering  <jim@meyering.net>
25730
25731         * lib/version-etc.c (version_etc_copyright): Update copyright date.
25732
25733         * lib/utimens.c (futimens): Account for the fact that futimes
25734         can also fail with errno == ENOSYS or errno == ENOENT.
25735         Patch from Dmitry V. Levin.
25736
25737         Change the name of the robust chdir function from chdir to chdir_long.
25738         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
25739         (restore_cwd): Use chdir_long, not chdir.
25740         * lib/chdir-long.c: Renamed from chdir.c.
25741         * lib/chdir-long.h: Renamed from chdir.h.
25742         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
25743         Hurd.
25744
25745 2005-01-18  Bruno Haible  <bruno@clisp.org>
25746
25747         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
25748         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
25749         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
25750         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
25751         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
25752         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
25753         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
25754         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
25755         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
25756         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
25757         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
25758         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
25759         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
25760         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
25761         Use an all-permissive copyright notice, recommended by RMS.
25762
25763 2005-01-18  Bob Proulx  <bob@proulx.com>
25764
25765         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
25766         simplify offsetof() macro construct to avoid compile failure with
25767         native HP-UX 11.0 ANSI C compiler.
25768
25769 2005-01-17  Bruno Haible  <bruno@clisp.org>
25770
25771         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
25772         redundant because stpncpy.m4 takes care of it.
25773
25774 2005-01-17  Bruno Haible  <bruno@clisp.org>
25775
25776         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
25777
25778 2005-01-17  Bruno Haible  <bruno@clisp.org>
25779
25780         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
25781         used.
25782
25783 2005-01-17  Bruno Haible  <bruno@clisp.org>
25784
25785         * lib/fwriteerror.h (fwriteerror): Change specification to include
25786         fclose.
25787         * lib/fwriteerror.c: Include <stdbool.h>.
25788         (fwriteerror): At the end, close the file stream. Record whether
25789         stdout was already closed.
25790
25791 2005-01-17  Bruno Haible  <bruno@clisp.org>
25792
25793         * lib/execute.c (environ): Declare if needed.
25794         * lib/pipe.c (environ): Likewise.
25795         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
25796
25797 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25798
25799         * modules/argp: Depend on vsnprintf
25800
25801 2005-01-10  Jim Meyering  <jim@meyering.net>
25802
25803         * modules/closeout (Depends-on): Add atexit.
25804
25805 2005-01-06  Bruno Haible  <bruno@clisp.org>
25806
25807         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
25808
25809 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
25810
25811         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
25812         definitions to be after all include files, to avoid collisions.
25813         Problem reported by Bob Proulx.
25814
25815 2005-01-04  Jim Meyering  <jim@meyering.net>
25816
25817         Changes imported from coreutils.
25818         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
25819         as the mkstemp template, use a temporary directory and an
25820         8.3-friendly template to avoid trouble on systems like DJGPP.
25821         Reported by Juan M. Guerrero via Stepan Kasal.
25822         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
25823         close. Remove the temporary directory right away, rather than waiting
25824         for configure's at-exit trap code to do it.
25825         Suggestion from Stepan Kasal.
25826
25827 2005-01-01  Simon Josefsson  <jas@extundo.com>
25828
25829         * gnulib-tool: Print #include directives when --import'ing.
25830
25831 2004-12-28  Simon Josefsson  <jas@extundo.com>
25832
25833         * tests/test-base64.c: Include required header files.  Remove
25834         unused variables.
25835
25836 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
25837
25838         * modules/error (Depends-on): Remove gettext.
25839
25840 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
25841
25842         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
25843         not needed.  This removes a dependency on the gettext module.
25844         [defined _LIBC]: Do not include <libintl.h>; not needed.
25845
25846 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
25847
25848         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
25849         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
25850
25851 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
25852
25853         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
25854         HAVE_DECL_STRTOLD.
25855
25856 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
25857
25858         * modules/getdate (Depends-on): Remove alloca-opt.
25859
25860 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
25861
25862         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
25863
25864 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
25865
25866         * lib/argp-parse.c: Include <stddef.h>.
25867         (alignof, alignto): New macros.
25868         (parser_init): Don't assume that void * is aligned sufficiently
25869         for struct option.
25870
25871         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
25872         need to extend the stack.
25873         (YYINITDEPTH): New macro, so that the initial stack isn't overly
25874         large.
25875
25876 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25877
25878         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
25879
25880 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
25881
25882         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
25883         (2004-10-24) change.  Apparently this was a false alarm.
25884
25885         * modules/getdate: Depend on alloca-opt, not alloca.
25886
25887 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
25888
25889         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
25890         Remove now-obsolete comment about AIX.
25891         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
25892         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
25893         (YYMAXDEPTH): New macro.
25894
25895 2004-12-18  Simon Josefsson  <jas@extundo.com>
25896
25897         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
25898
25899 2004-12-18  Bruno Haible  <bruno@clisp.org>
25900
25901         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
25902
25903 2004-12-18  Bruno Haible  <bruno@clisp.org>
25904
25905         * lib/fatal-signal.c (fatal_signals): Make non-const.
25906         (init_fatal_signals): New function.
25907         (uninstall_handlers, install_handlers): Ignore signals that were set to
25908         SIG_IGN.
25909         (at_fatal_signal): Call init_fatal_signals.
25910         (init_fatal_signal_set): Likewise. Ignore signals that were set to
25911         SIG_IGN.
25912         Reported by Paul Eggert.
25913
25914 2004-12-18  Bruno Haible  <bruno@clisp.org>
25915
25916         * doc/alloca.texi: New file.
25917         * doc/alloca-opt.texi: New file.
25918
25919 2004-12-17  Jim Meyering  <jim@meyering.net>
25920
25921         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
25922         Otherwise, install-sh could exit with improper exit status when
25923         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
25924
25925 2004-12-16  Simon Josefsson  <jas@extundo.com>
25926
25927         * tests/test-base64.c: Add license.
25928
25929 2004-12-15  Stepan Kasal  <address@hidden>
25930
25931         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
25932
25933 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
25934
25935         * modules/getcwd (Files): Add m4/d-ino.m4.
25936         Suggested by Mark D. Baushke.
25937
25938 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
25939
25940         * lib/getdate.y (textint): New member "negative".
25941         (time_zone_hhmm): New function.
25942         Expect 14 shift-reduce conflicts, not 13.
25943         (o_colon_minutes): New rule.
25944         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
25945         (yylex): Set the "negative" member of signed numbers.
25946
25947 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
25948
25949         * doc/getdate.texi (Time of day items, Time zone items):
25950         Describe new formats +00:00, UTC+00:00.
25951
25952 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
25953
25954         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
25955         spurious "-l"s.  Problem reported by Stepan Kasal.
25956
25957 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
25958
25959         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
25960         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
25961
25962 2004-12-04  Simon Josefsson  <jas@extundo.com>
25963
25964         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
25965         Vandoorselaere <yoann@prelude-ids.org>.
25966
25967 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
25968
25969         Changes imported from coreutils.
25970         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
25971         exist.
25972         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
25973
25974 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
25975
25976         Changes imported from coreutils.
25977         * lib/hard-locale.c: Assume <locale.h> exists.
25978         Include "strdup.h".
25979         (GLIBC_VERSION): New macro.
25980         (hard_locale): Assume setlocale exists.
25981         Rewrite to avoid #ifdef.
25982         Use strdup rather than malloc + strcpy.
25983         * lib/human.c: Assume <locale.h> exists.
25984         (human_readable): Assume localeconv exists.
25985
25986 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
25987
25988         * modules/hard-locale (Depends-on): Add strdup.
25989
25990 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
25991
25992         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
25993         convert T2, not T.  (Imported from libc.)
25994
25995 2004-11-30  Simon Josefsson  <jas@extundo.com>
25996
25997         * modules/restrict (License): Change to LGPL.
25998
25999 2004-11-30  Simon Josefsson  <jas@extundo.com>
26000
26001         * m4/restrict.m4: Add copyright and copying conditions.
26002
26003 2004-11-30  Simon Josefsson  <jas@extundo.com>
26004
26005         * m4/base64.m4: New file.
26006
26007 2004-11-30  Simon Josefsson  <jas@extundo.com>
26008
26009         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
26010         base64.
26011
26012         * tests/test-base64.c: New file.
26013
26014         * modules/base64: New file.
26015
26016 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
26017
26018         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
26019         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
26020
26021         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
26022
26023 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
26024
26025         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
26026         (__getcwd.c): Don't restore errno; glibc doesn't.
26027         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
26028         first, falling back to our code only if its results look suspicious.
26029         Ensure that the resulting buffer is only as large as necessary.
26030
26031         * lib/readutmp.c: Include readutmp.h first.
26032         Include <errno.h>, since readutmp.h no longer does that.
26033         * lib/readutmp.h: Don't include <errno.h>,
26034         <sys/param.h>, <time.h>; not needed to establish interface.
26035         (errno): Remove decl.
26036         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
26037         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
26038         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
26039
26040 2004-11-28  Simon Josefsson  <jas@extundo.com>
26041
26042         * lib/base64.h, base64.c: New file.
26043
26044 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
26045
26046         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
26047
26048 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
26049
26050         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
26051         (Depends-on): Remove pathmax, same.  Add mempcpy.
26052         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
26053         (Makefile.am): Append getcwd.h to lib_SOURCES.
26054         (Include): Add getcwd.h.
26055         (Maintainer): Change from Jim Meyering to "all, glibc",
26056         since getdate now uses intended-for-glibc code.
26057         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
26058         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
26059
26060 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
26061
26062         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
26063         HP's ANSI C compiler.
26064         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
26065         Declaring int functions causes warnings on some modern systems and
26066         shouldn't be needed to compile on ancient ones.
26067         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
26068         defined.
26069
26070         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
26071         with the following changes.
26072         (__set_errno): Parenthesize properly.
26073         Include <stdbool.h>.
26074         (MIN, MAX, MATCHING_INO): New macros.
26075         (__getcwd): Define with prototype, not K&R form.
26076         Use heuristics to allocate default buffer on stack if possible.
26077         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
26078         behavior, and to avoid the PATH_MAX limit when computing
26079         ../../../../...
26080         Use MATCHING_INO to compare inode number to file.
26081         Check for arithmetic overflow in size calculations.
26082         Fix bug in reallocation of dot array that caused getcwd to fail
26083         on directories nested deeper than 75.
26084         Be more careful about saving errno on error.
26085         Do not use realloc; use only free+malloc, as this is a bit
26086         more flexible and avoids a needless copy operation.
26087         Do not inspect st_dev and st_ino for symbolic links; POSIX
26088         doesn't specify the latter.
26089         Check for closedir errors.
26090         Avoid needless casts.
26091         Use "#ifdef weak_alias" around weak_alias, to be like other
26092         glibc code.
26093         The following changes to getcwd.c have effect only when used in
26094         gnulib; they have no effect inside glibc proper.
26095         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
26096         as alloca isn't used.
26097         (alloca, __alloca): Likewise.
26098         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
26099         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
26100         unconditionally, as gnulib assumes C89 or better.
26101         Do not include <sys/param.h>.
26102         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
26103         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
26104         better.
26105         (NULL) [!defined NULL]: Remove; we assume C89 or better.
26106         Include <dirent.h> in a way that is compatible with modern Autoconf.
26107         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
26108         New macros, if not already defined.
26109         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
26110         Use "_LIBC", not "defined _LIBC", for consistency.
26111         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
26112         a mempcpy module.
26113         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
26114         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
26115         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
26116         credit only to Jim Meyering and adjust the copyright dates.
26117         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
26118         <stdlib.h>, <unistd.h>, "pathmax.h".
26119         Instead, include "xgetcwd.h" (first) and "getcwd.h".
26120         (INITIAL_BUFFER_SIZE): Remove.
26121         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
26122
26123 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
26124
26125         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
26126         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
26127         Use the _ONCE methods, for efficiency.
26128         Check for fcntl.h.  In test program, include <errno.h>
26129         and <fcntl.h> if available.  Remove old K&R cruft from
26130         test program.  Check for common errors in GNU/Linux,
26131         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
26132         don't do AC_LIBOBJ, as that's getcwd.m4's job.
26133         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
26134         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
26135         name accordingly.
26136         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
26137         accommodate new getcwd.c.
26138         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
26139         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
26140         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
26141         that's all we need now.
26142
26143 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
26144
26145         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
26146         argp-parse.c depends on getopt internals, that means we should
26147         always use our getopt, to be on the safe side.
26148         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
26149         order not to spoil the result of an eventual previous invocation
26150         of gl_GETOPT_SUBSTITUTE.
26151
26152 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
26153
26154         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
26155         redefinition warnings. To avoid them, include the defines
26156         in `#if !defined __need_getopt ... #endif'. The only place
26157         where __getopt_argv_const is used is in definitions
26158         of getopt_long and getopt_long_only below, which are as well
26159         protected by `#ifndef __need_getopt'.
26160         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
26161         __need_getopt after including <stdio.h> and <unistd.h> These
26162         headers might have defined it.
26163
26164 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
26165
26166         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
26167
26168 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
26169
26170         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
26171         (futimens): New function, which uses futimes if available.
26172         (futimens, utimens): Support timespec==NULL, with same semantics
26173         as utime and utimens.
26174         * lib/utimens.h (futimens): New decl.
26175
26176 2004-11-23  Jim Meyering  <jim@meyering.net>
26177
26178         * lib/getopt_.h: Remove trailing blanks.
26179
26180 2004-11-23  Jim Meyering  <jim@meyering.net>
26181
26182         * lib/__fpending.c: Add comment.
26183
26184 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
26185
26186         * modules/canonicalize (Depends-on): Add xreadlink.
26187         Problem reported by James Youngman.
26188
26189 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
26190
26191         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
26192         New macros.
26193         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
26194         optopt): Use them instead of invoking ## directly; otherwise, the
26195         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
26196
26197 2004-11-19  Bruno Haible  <bruno@clisp.org>
26198
26199         * lib/strtok_r.c: Move comments from here...
26200         * lib/strtok_r.h: ... to here.
26201
26202 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
26203
26204         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
26205         implementations that mishandle size_t overflow.
26206
26207 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
26208
26209         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
26210         might fail.  Problem reported by Yoann Vandoorselaere.
26211         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
26212         implementations that mishandle size_t overflow.
26213
26214 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
26215
26216         * modules/canon-host (Depends-on): Add strdup.
26217
26218 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
26219
26220         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
26221
26222 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
26223
26224         * lib/canon-host.c: Include "strdup.h".
26225         (canon_host): Use getaddrinfo if available, so that IPv6 works.
26226         Use strdup instead of malloc/strcpy to duplicate strings.
26227
26228         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
26229         (human_space_before_unit): New constant.
26230         * lib/human.c (human_readable): Support it.
26231
26232         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
26233         (xgetcwd): Set errno correctly when failing.
26234         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
26235         the failure is actually due to a PATH_MAX problem.
26236
26237         Further getopt changes to make it more likely that glibc will
26238         buy the changes back.
26239         * lib/getopt.c (POSIXLY_CORRECT): New constant.
26240         (getopt): Use it, so to preserve glibc semantic
26241         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
26242         when compiling for libc.
26243         * lib/getopt_.h (__getopt_argv_const): Bring it back.
26244         (getopt_long, getopt_long_only): Use it.
26245
26246         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
26247         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
26248         (getopt): Argv is now char * const *, as per standard.
26249         (_getopt_internal_r, _getopt_internal): Argv is now char **,
26250         not char *__getopt_argv_const *.
26251         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
26252         _getopt_long_only_r): Likewise.
26253         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
26254         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
26255         _getopt_long_r, _getopt_long_only_r): Likewise.
26256         * lib/getopt_.h (__getopt_argv_const): Remove.
26257         (getopt): Argv is now char * const *, as per standard.
26258
26259         * lib/getdate.y (tORDINAL): New token.
26260         (day, relunit): Allow it for relative times.
26261         (relative_time_table): Use tORDINAL for ordinals.
26262
26263 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
26264
26265         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
26266         Document that "second" isn't allowed as an ordinal number.
26267
26268 2004-11-16  Jim Meyering  <jim@meyering.net>
26269
26270         * modules/closeout (Depends-on): Add fpending.
26271
26272 2004-11-15  Jim Meyering  <jim@meyering.net>
26273
26274         * lib/closeout.c: Include "__fpending.h" once again.
26275         Include <stdbool.h>.
26276         (close_stdout): Don't fail just because stdout was closed initially,
26277         since some programs don't write to stdout in the normal course of
26278         operation (other than --version and --help), and we don't want this
26279         function to make e.g. `touch file >&-' fail.
26280         But do fail if it was closed and someone has tried to write to it.
26281         E.g., `printf foo >&-' must fail.
26282
26283 2004-11-13  Jim Meyering  <jim@meyering.net>
26284
26285         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
26286
26287 2004-11-12  Simon Josefsson  <jas@extundo.com>
26288
26289         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
26290         small doc fix is still pending.
26291
26292 2004-11-11  Simon Josefsson  <jas@extundo.com>
26293
26294         * modules/strtok_r: New file.
26295
26296         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
26297         strtok_r.
26298
26299 2004-11-11  Simon Josefsson  <jas@extundo.com>
26300
26301         * m4/strtok_r.m4: New file.
26302
26303         * m4/getopt.m4: Replace opterr.
26304
26305 2004-11-11  Simon Josefsson  <jas@extundo.com>
26306
26307         * lib/strtok_r.h, strtok_r.c: New file.
26308
26309 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
26310
26311         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
26312         of replacing opterr, getopt, etc.  This should handle the
26313         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
26314
26315 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
26316
26317         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
26318         we can stop lying to compilers about the constness of argv when we
26319         are compiled outside glibc.
26320         (getopt, getopt_long, getopt_long_only): Use it.
26321         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
26322         _getopt_internal, getopt): Likewise.
26323         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
26324         _getopt_long_only_r): Likewise.
26325         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
26326         _getopt_long_r, _getopt_long_only_r): Likewise.
26327
26328         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
26329         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
26330         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
26331         the other external symbols.
26332         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
26333         declaration, since the above renaming now works around collisions.
26334
26335 2004-11-11  Jim Meyering  <jim@meyering.net>
26336
26337         * lib/linebreak.c: Remove trailing blanks.
26338         * lib/alloca_.h: Likewise.
26339         * lib/acosl.c: Likewise.
26340         * lib/euidaccess.c: Likewise.
26341         * lib/allocsa.h: Likewise.
26342
26343 2004-11-10  Simon Josefsson  <jas@extundo.com>
26344
26345         * m4/getaddrinfo.m4: New file.
26346
26347 2004-11-10  Simon Josefsson  <jas@extundo.com>
26348
26349         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
26350
26351 2004-11-10  Simon Josefsson  <jas@extundo.com>
26352
26353         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
26354         getaddrinfo.
26355
26356         * modules/getaddrinfo: New file.
26357
26358 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
26359
26360         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
26361
26362 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
26363
26364         * lib/mktime.c (SHR): New macro, which is a portable
26365         substitute for >> that should work even on Crays.
26366         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
26367         Problem reported by Mark D. Baushke in
26368         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
26369         * lib/getdate.y (SHR): Likewise.
26370         (tm_diff): Use it.
26371         * lib/strftime.c (SHR): Likewise.
26372         (tm_diff): Use it.
26373         * lib/quotearg.c (struct quoting_options): Use unsigned int for
26374         quote_these_too, so that right shifts are well defined.  All uses
26375         changed.
26376
26377 2004-11-10  Jim Meyering  <jim@meyering.net>
26378
26379         Ensure that no close failure goes unreported.
26380         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
26381         return early when it seems there's nothing to flush.
26382         Don't include __fpending.h.
26383
26384 2004-11-10  Jim Meyering  <jim@meyering.net>
26385
26386         * modules/closeout (Depends-on): Remove fpending.
26387
26388 2004-11-10  Jim Meyering  <jim@meyering.net>
26389
26390         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
26391
26392 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
26393
26394         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
26395         gl_FUNC_STRFTIME.
26396         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
26397         and AC_REQUIRE when possible, to avoid duplicate checks.
26398         Check for <wchar.h>.
26399
26400 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
26401
26402         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
26403
26404 2004-11-09  Bruno Haible  <bruno@clisp.org>
26405
26406         * m4/sockpfaf.m4: New file.
26407
26408 2004-11-05  Bruno Haible  <bruno@clisp.org>
26409
26410         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
26411         Reported by Mark D. Baushke <mdb@cvshome.org>.
26412
26413 2004-11-04  Bruno Haible  <bruno@clisp.org>
26414
26415         2004-09-11  Bruno Haible  <bruno@clisp.org>
26416                 * allocsa.valgrind: New file.
26417         2004-02-06  Bruno Haible  <bruno@clisp.org>
26418                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
26419                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
26420                 Reported by Christopher Seip <chris.seip@hp.com>.
26421
26422 2004-11-04  Bruno Haible  <bruno@clisp.org>
26423
26424         * modules/allocsa (Files): Add lib/allocsa.valgrind.
26425         (Makefile.am): Distribute it.
26426
26427 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
26428
26429         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
26430         with errno == ERANGE if the buffer is too small.
26431         Problem reported by Mark D. Baushke.
26432
26433 2004-11-03  Albert Chin  <china@thewrittenword.com>
26434             Paul Eggert  <eggert@cs.ucla.edu>
26435
26436         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
26437         equivalent, substitute $ac_type for equivalent type rather than
26438         blindly using uint32_t *always* which won't work if uint32_t is not
26439         available.  Define _UINT32_T to work around typedef of uint32_t if
26440         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
26441         2.5.1.
26442
26443 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
26444
26445         * m4/jm-macros.m4: Sync from coreutils.
26446         (gl_MACROS): Check for mbrlen, for pathchk.
26447         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
26448
26449 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
26450
26451         * lib/xreadlink.c (MAXSIZE): New macro.
26452         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
26453         size does not exceed MAXSIZE.  Avoid cast.
26454         As suggested by Mark D. Baushke in
26455         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
26456         if readlink fails with buffer size just under MAXSIZE, try again
26457         with MAXSIZE.
26458
26459 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
26460
26461         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
26462
26463 2004-11-02  Derek R. Price  <derek@ximbiot.com>
26464         and  Paul Eggert  <eggert@cs.ucla.edu>
26465
26466         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
26467         (get_date): Overparenthesize to avoid GCC warning.
26468
26469 2004-11-02  Bruno Haible  <bruno@clisp.org>
26470
26471         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
26472         returns void.
26473
26474 2004-11-02  Bruno Haible  <bruno@clisp.org>
26475
26476         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
26477         function returns void.
26478
26479 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
26480
26481         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
26482         fflush_unlocked, flockfile, funlockfile, funlockfile,
26483         fputs_unlocked, putc_unlocked.
26484
26485 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
26486
26487         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
26488         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
26489         already declared.
26490
26491 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
26492
26493         * modules/getdate (Files): Add doc/getdate.texi.
26494         (Depends-on): Add setenv, xalloc.
26495
26496 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
26497
26498         * lib/getdate.y: Add support for TZ="foo" within a date string.
26499         Fix some bugs near time_t boundaries.  Reject dates with
26500         out-of-range components, e.g., "Sept 31".
26501         Include <stdlib.h>, "setenv.h", "xalloc.h".
26502         (ISDIGIT_LOCALE): Remove; unused.
26503         Note that the TZ and time functions used here are not reentrant.
26504         (mktime_ok, get_tz): New functions.
26505         (TZBUFSIZE): New constant.
26506         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
26507         This requires that we sometimes generate our own TZ="XXX..." setting.
26508
26509 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
26510
26511         * doc/getdate.texi: New file, from coreutils with modifications for
26512         the new TZ parsing.
26513
26514 2004-10-27  Derek R. Price  <derek@ximbiot.com>
26515
26516         * lib/mktime.c (not_equal_tm): Remove redundant check.
26517
26518 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
26519
26520         * modules/regex (lib_SOURCES): Add regex.c.
26521         Reported by James Youngman in
26522         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
26523
26524 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
26525
26526         * lib/getdate.y: Use Bison 1.875 features, and some minor
26527         code cleanups.  This change does not affect semantics.
26528         Don't include <stdlib.h>; no longer needed.
26529         Don't include unlocked-io.h; only the "#if TEST" code uses
26530         stdio, and performance isn't crucial there.
26531         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
26532         Bison 1.875 features as described below.
26533         All uses of "PC." replaced by "pc->".
26534         (YYSTYPE): Add a forward declaration.
26535         (yylex, yyerror): Use full prototypes in forward decls.
26536         Use "%pure-parser" rather than obsolescent "%pure_parser".
26537         Use %parse-param and %lex-param instead of obsolescent
26538         YYPARSE_PARAM and YYLEX_PARAM.
26539         (meridian_table, month_and_day_table, time_units_table,
26540         relative_time_table, time_zone_table, military_table,
26541         lookup_zone, lookup_word, get_date):
26542         Use NULL instead of 0 where appropriate.
26543         (to_hour): Avoid abort (), to avoid a dependency on
26544         stdlib.h.
26545         (yyerror, yylex): Now accepts parser_control * arg.
26546         (main) [TEST]: Use '\0' rather than 0 for char.
26547
26548 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
26549
26550         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
26551
26552 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
26553
26554         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
26555         It's now the caller's responsibility to handle the case where
26556         !HAVE_GETPAGESIZE && !defined getpagesize.
26557
26558         * lib/mktime.c (leapyear): Arg is long int, not int.
26559
26560 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
26561
26562         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
26563
26564 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
26565
26566         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
26567         missing.  Problem reported by James Youngman.
26568
26569 2004-10-16  Simon Josefsson  <jas@extundo.com>
26570
26571         * gnulib-tool: Fix comments.  Fix parse problem.
26572         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
26573
26574 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
26575
26576         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
26577         implementation of getopt_long.  Problem reported by Alexander Taler in:
26578         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
26579
26580 2004-10-15  Bruno Haible  <bruno@clisp.org>
26581
26582         * gnulib-tool: Untabify. Initialize supplied_libname.
26583         (func_usage): More homogenous output.
26584         (func_modules_transitive_closure, func_modules_to_filelist,
26585         func_emit_lib_Makefile_am): New functions.
26586         (func_import): New function, extracted from big case statement. Use
26587         func_get_license, func_modules_transitive_closure,
26588         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
26589         opt_lgpl. Don't use test -a, as it's not portable.
26590         (func_create_testdir): Use func_modules_transitive_closure,
26591         func_modules_to_filelist, func_emit_lib_Makefile_am.
26592
26593 2004-10-15  Bruno Haible  <bruno@clisp.org>
26594
26595         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
26596
26597 2004-10-15  Bruno Haible  <bruno@clisp.org>
26598
26599         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
26600         the portions belonging to each module.
26601         Suggested by Derek Robert Price <derek@ximbiot.com>.
26602
26603 2004-10-12  Simon Josefsson  <jas@extundo.com>
26604
26605         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
26606         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
26607         to real functions.
26608
26609 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26610
26611         * modules/vsnprintf: New file.
26612
26613 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26614
26615         * m4/vsnprintf.m4: New file.
26616
26617 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26618
26619         * lib/vsnprintf.h: New file.
26620         * lib/vsnprintf.c: New file.
26621
26622 2004-10-11  Bruno Haible  <bruno@clisp.org>
26623
26624         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
26625         vsnprintf.
26626
26627 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
26628
26629         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
26630
26631 2004-10-07  Bruno Haible  <bruno@clisp.org>
26632
26633         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
26634         fits into the provided buffer.
26635
26636 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
26637
26638         * lib/diacrit.c, diacrit.h: Add GPL notice.
26639
26640         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
26641         notice.
26642         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
26643         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
26644         This avoids a potential constant-folding bug.
26645
26646 2004-10-05  Bruno Haible  <bruno@clisp.org>
26647
26648         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
26649         for the declaration of strsep.
26650
26651 2004-10-05  Bruno Haible  <bruno@clisp.org>
26652
26653         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
26654
26655 2004-10-04  Simon Josefsson  <jas@extundo.com>
26656
26657         * modules/memmem: New file.
26658         * tests/test-memmem.c: New file.
26659         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
26660
26661 2004-10-04  Simon Josefsson  <jas@extundo.com>
26662
26663         * m4/memmem.m4: New file.
26664
26665 2004-10-04  Simon Josefsson  <jas@extundo.com>
26666
26667         * lib/memmem.h: New file.
26668         * lib/memmem.c: New file, taken from glibc.
26669
26670 2004-10-04  Simon Josefsson  <jas@extundo.com>
26671
26672         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
26673         '#ifdef USE_UNLOCKED_IO'.
26674
26675 2004-10-04  Simon Josefsson  <jas@extundo.com>
26676
26677         * config/srclist.txt: Add memmem from glibc.
26678
26679 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
26680
26681         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
26682
26683         * modules/argmatch, modules/argp, modules/closeout, modules/error,
26684         modules/exclude, modules/getdate, modules/getline,
26685         modules/getndelim2, modules/getpass, modules/getpass-gnu,
26686         modules/getusershell, modules/linebuffer, modules/md5,
26687         modules/mountlist, modules/posixtm, modules/readtokens,
26688         modules/readutmp, modules/regex, modules/sha1,
26689         modules/version-etc, modules/yesno:
26690         Remove dependency on unlocked-io.
26691
26692 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
26693
26694         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
26695
26696         * m4/unlocked-io.m4: Add copyright notice.
26697         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
26698
26699 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
26700
26701         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
26702         * lib/xmalloc.c (xmemdup): Likewise.
26703         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
26704         XFREE): Remove these long-obsolescent macros.
26705         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
26706         * lib/xstrdup.c: Remove.
26707
26708         * lib/regex.c (re_comp): Cast gettext return value to char *,
26709         Problem reported by Martin Neitzel via Mark D. Baushke.
26710
26711 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
26712
26713         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
26714         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
26715         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
26716         regex.c, sha1.c, version-etc.c, yesno.c:
26717         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
26718         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
26719         the includer's responsibility.
26720
26721         Sync from coreutils.
26722
26723         * lib/modechange.c (mode_compile): Don't decrement a pointer that
26724         points to the start of a string, as the C Standard says the
26725         resulting behavior is undefined.
26726
26727         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
26728         simple -> simple_backups, numbered_existing ->
26729         numbered_existing_backups, numbered -> numbered_backups
26730         to avoid shadowing problems.  All uses changed.
26731         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
26732         * lib/backupfile.c (check_extension, numbered_backup):
26733         Rename locals to avoid shadowing 'basename'.
26734         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
26735         once.
26736
26737         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
26738         * lib/.cvsignore: Add getopt.h.
26739
26740 2004-10-04  Bruno Haible  <bruno@clisp.org>
26741
26742         * modules/README: New file.
26743         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
26744         not a module.
26745
26746 2004-10-02  Jim Meyering  <jim@meyering.net>
26747
26748         * lib/dirfd.h, getpagesize.h: Add copyright notice.
26749
26750 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26751
26752         * modules/strsep: New file.
26753
26754 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26755
26756         * m4/strsep.m4: New file.
26757
26758 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26759
26760         * lib/strsep.h: New file.
26761         * lib/strsep.c: New file.
26762
26763 2004-10-01  Simon Josefsson  <jas@extundo.com>
26764
26765         * lib/snprintf.c (snprintf): Handle size==0.
26766
26767 2004-10-01  Simon Josefsson  <jas@extundo.com>
26768             Bruno Haible  <bruno@clisp.org>
26769
26770         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
26771         (snprintf): Declare 'args'.
26772
26773 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
26774
26775         * lib/snprintf.c: Remove comments as to why each header is needed.
26776
26777 2004-10-01  Bruno Haible  <bruno@clisp.org>
26778
26779         * MODULES.html.sh: Add strsep.
26780
26781 2004-09-30  Simon Josefsson  <jas@extundo.com>
26782
26783         * modules/snprintf: New file.
26784
26785 2004-09-30  Simon Josefsson  <jas@extundo.com>
26786
26787         * m4/snprintf.m4: New file.
26788
26789 2004-09-30  Simon Josefsson  <jas@extundo.com>
26790
26791         * lib/snprintf.h, lib/snprintf.c: New files.
26792
26793 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
26794
26795         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
26796         (hol_entry_help): Never translate an empty string.
26797         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
26798         * lib/argp.h (OPTION_NO_TRANS): New option.
26799
26800 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
26801
26802         * modules/argp (Maintainer): Replace Simon Josefsson
26803         by Sergey Poznyakoff.
26804
26805 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
26806
26807         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
26808         changes merged back into glibc.
26809
26810 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
26811
26812         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
26813
26814 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
26815
26816         * lib/xvasprintf.c: Include xalloc.h.
26817         (xvasprintf): Use xalloc_die, not xmalloc_die.
26818
26819 2004-09-29  Bruno Haible  <bruno@clisp.org>
26820
26821         * modules/alloca-opt: New file, derived from modules/alloca.
26822         * modules/allocsa: Depend on alloca-opt instead of alloca.
26823         * modules/setenv: Likewise.
26824         * modules/vasnprintf: Likewise.
26825         * MODULES.html.sh: Add alloca-opt.
26826
26827 2004-09-28  Simon Josefsson  <jas@extundo.com>
26828
26829         * gnulib-tool: New parameter --lgpl, to asseert that modules are
26830         LGPL, and to replace license template from GPL to LGPL.
26831
26832 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
26833
26834         * modules/dummy: Change license to LGPL.
26835
26836 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
26837
26838         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
26839
26840 2004-09-24  Simon Josefsson  <jas@extundo.com>
26841
26842         * modules/minmax (License): Change from GPL to LGPL.
26843
26844 2004-09-23  Simon Josefsson  <jas@extundo.com>
26845
26846         * gnulib-tool (--import): Typo.
26847
26848 2004-09-23  Simon Josefsson  <jas@extundo.com>
26849
26850         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
26851
26852 2004-09-22  Bruno Haible  <bruno@clisp.org>
26853
26854         * modules/*: Add 'License' field.
26855         * gnulib-tool: Accept --extract-license option.
26856         (func_get_license): New function.
26857
26858 2004-09-21  Bruno Haible  <bruno@clisp.org>
26859
26860         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
26861         Reported by Simon Josefsson.
26862
26863 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
26864
26865         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
26866         gl_AC_TYPE_LONG_LONG.
26867
26868 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
26869
26870         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
26871
26872 2004-09-18  Simon Josefsson  <jas@extundo.com>
26873         and  Paul Eggert  <eggert@cs.ucla.edu>
26874
26875         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
26876         calls with autoreconf.  Define GL_LIB.
26877
26878 2004-09-14  Karl Berry  <karl@gnu.org>
26879
26880         * config/srclist.txt: unsync setenv.c, sigh.
26881
26882 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
26883
26884         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
26885         Problem reported by Bruno Haible in:
26886         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
26887
26888 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
26889
26890         * config/srclist.txt: Comment out argp-pvh.c.
26891
26892 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
26893
26894         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
26895         in case some system header has #define'd it.  Problem reported by
26896         Soeren D. Schulze in
26897         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
26898
26899 2004-09-09  Karl Berry  <karl@gnu.org>
26900
26901         * regex.[ch]: delete from the root.  These were supposed to be
26902                 synced with emacs cvs, but this has not happened for about
26903                 a year, and anyway nothing else uses emacs regex.[ch].
26904                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
26905                 lib/regex[.ch] is untouched.
26906
26907 2004-09-09  Bruno Haible  <bruno@clisp.org>
26908
26909         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
26910
26911 2004-09-09  Bruno Haible  <bruno@clisp.org>
26912
26913         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
26914         modifications.
26915         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
26916
26917 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
26918
26919         * modules/xvasprintf: New file.
26920         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
26921
26922 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
26923
26924         * lib/xvasprintf.h: New file.
26925         * lib/xvasprintf.c: New file.
26926         * lib/xasprintf.c: New file.
26927
26928 2004-09-08  Bruno Haible  <bruno@clisp.org>
26929
26930         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
26931
26932 2004-09-08  Bruno Haible  <bruno@clisp.org>
26933
26934         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
26935         length is > INT_MAX.
26936         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
26937         more.
26938
26939 2004-09-08  Bruno Haible  <bruno@clisp.org>
26940
26941         * lib/stdint_.h: New file, taken from GNU clisp.
26942
26943 2004-09-08  Bruno Haible  <bruno@clisp.org>
26944             Oskar Liljeblad  <oskar@osk.mine.nu>
26945
26946         * modules/stdint: New file.
26947         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
26948
26949 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26950
26951         Import from coreutils.
26952         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
26953         strings on unbounded length.  alloca's performance benefits aren't
26954         that important here.
26955         (V_STRDUP): Remove.
26956         (parse_with_separator): New function, with most of the internals
26957         of the old parse_user_spec.  Allow user to omit both user and group,
26958         for compatibility with FreeBSD.
26959         Clone only the user name, not the entire spec.
26960         Do not set *uid, *gid unless entirely successful.
26961         Avoid memory leak in some failing cases.
26962         Fix regression for USER.GROUP reported by Dmitry V. Levin in
26963         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
26964         (parse_user_spec): Rewrite to use parse_with_separator.
26965
26966 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26967
26968         * modules/userspec: Don't depend on alloca.
26969
26970 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26971
26972         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
26973
26974 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26975
26976         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
26977         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
26978         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
26979
26980 2004-08-16  Simon Josefsson  <jas@extundo.com>
26981
26982         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
26983         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
26984         Add --dry-run for --import.
26985         Let user provided command line parameters override configure.ac
26986         settings.
26987
26988 2004-08-12  Simon Josefsson  <jas@extundo.com>
26989
26990         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
26991         as discussed with Paul Eggert in threads rooted at
26992         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
26993         and
26994         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
26995         Before, the test was empty, and relied on ELIDE_CODE in source
26996         code.)
26997         (gl_PREREQ_GETOPT): New macro.
26998         (gl_GETOPT): Use them.
26999
27000 2004-08-12  Simon Josefsson  <jas@extundo.com>
27001
27002         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
27003         * lib/getopt_.h: Renamed from getopt.h.
27004
27005 2004-08-12  Simon Josefsson  <jas@extundo.com>
27006
27007         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
27008         Change default library name from libfoo to libgnu.
27009         Now, if you have a configure.ac that says:
27010                 gl_SOURCE_BASE(gl)
27011                 gl_M4_BASE(gl/m4)
27012                 gl_MODULES(error getopt etcetera)
27013                 gl_INIT
27014         you can import all you need by running:
27015                 ../gnulib/gnulib-tool --import
27016
27017         * modules/getopt (Files): Rename getopt.h to getopt_.h.
27018         (Makefile.am): Rewrite, use logic from argz.
27019         (Include): Use <getopt.h> instead of "getopt.h".
27020
27021 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
27022
27023         * modules/argp (Files): Add m4/unlocked-io.m4.
27024         (Depends-on): Add extensions.
27025
27026 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
27027
27028         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
27029         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
27030         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
27031         Check for program_invocation_name, program_invocation_short_name,
27032         flockfile, funlockfile, features.h, _getopt_long_only_r.
27033
27034 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
27035
27036         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
27037         its complicated substitute.
27038         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
27039         and program_invocation_name.
27040         (__argp_basename) [!_LIBC]: Remove; the only use was
27041         replaced by its body.
27042         (__argp_short_program_name): Change condition from
27043         !defined __argp_short_program_name to
27044         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
27045         to match argp-namefrob.h.
27046         (__argp_failure): Don't assume strerror_r returns char *.
27047         * lib/argp-parse.c (N_): Define unconditionally.
27048         (argp_default_options): Fill out initializers with 0 to avoid
27049         gcc warnings.
27050
27051 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
27052
27053         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
27054         getopt1.c.
27055
27056 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
27057
27058         Merge from coreutils.
27059
27060         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
27061
27062         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
27063         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
27064
27065 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
27066
27067         Merge from coreutils.
27068
27069         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
27070         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
27071         for Reliant Unix 5.43.
27072
27073         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
27074         (union fooround): Use uintmax_t, not long int.
27075         The rest is a merge from libc:
27076         [defined _LIBC]: Include <shlib-compat.h>.
27077         (_obstack) [defined _LIBC]: Remove after 2.3.4.
27078
27079         * lib/settime.c (settime): Recode to avoid warning with
27080         Sun Forte C 6U2.
27081
27082         * lib/strverscmp.c: Convert to UTF-8.
27083
27084 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
27085
27086         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
27087         m4/uintmax_t.m4.
27088
27089 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27090
27091         * modules/xalloc-die: New file.
27092         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
27093
27094         * modules/md5 (Files): Add m4/uint32_t.m4.
27095         * modules/sha1: Renamed from modules/sha.
27096         (Files):
27097         Rename lib/sha.h to lib/sha1.h.
27098         Rename lib/sha.c to lib/sha1.c.
27099         Rename m4/sha.m4 to m4/sha1.m4.
27100         (lib_SOURCES): Likewise.
27101         (configure.ac): Rename gl_SHA to gl_SHA1.
27102         (Include): sha.h -> sha1.h.
27103
27104 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27105
27106         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
27107         * m4/sha1.m4: Renamed from sha.m4.
27108         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
27109
27110 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27111
27112         * lib/obstack.h (obstack_empty_p):
27113         Don't assume that chunk->contents is suitably aligned.
27114         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
27115         Likewise. Problem reported by Benno in
27116         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
27117
27118         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
27119         readable.  This could be improved further but it'd take some work.
27120
27121 2004-08-08  Simon Josefsson  <jas@extundo.com>
27122
27123         * modules/xgethostname (Depends-on): Remove exit and error (not
27124         used).
27125
27126         * modules/getpass-gnu: Add getpass.h.
27127         (Depends-on): Add stdbool.
27128         * modules/getpass: Add getpass.h.
27129
27130 2004-08-08  Simon Josefsson  <jas@extundo.com>
27131
27132         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
27133         Check getpass declaration.
27134
27135 2004-08-08  Simon Josefsson  <jas@extundo.com>
27136
27137         * lib/xgethostname.c: Don't include error.h (not used).
27138
27139         * lib/getpass.h: Add.
27140         * lib/getpass.c: Include getpass.h first.
27141
27142 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
27143
27144         * lib/xalloc-die.c: New file.
27145         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
27146         All uses removed.
27147         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
27148         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
27149         xalloc-die.c.
27150         (_, N_, xalloc_die): Move to xalloc-die.c.
27151         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
27152         so that we needn't mess with xalloc_msg_memory_exhausted.
27153
27154         * lib/sha1.h: Renamed from sha.h.
27155         (SHA1_H): Renamed from _SHA_H.
27156         (sha1_ctx): Renamed from sha_ctx.
27157         (sha1_init_ctx): Renamed from sha_init_ctx.
27158         (sha1_process_block): Renamed from sha_process_block.
27159         (sha1_process_bytes): Renamed from sha_process_bytes.
27160         (sha1_finish_ctx): Renamed from sha_finish_ctx.
27161         (sha1_read_ctx): Renamed from sha_read_ctx.
27162         (sha1_stream): Renamed from sha_stream.
27163         (sha1_buffer): Renamed from sha_buffer.
27164         * lib/sha1.c: Likewise; renamed from sha.c.
27165         Do not include <sys/types.h>.
27166         Include <stddef.h> rather than <stdlib.h>.
27167
27168 2004-08-08  Bruno Haible  <bruno@clisp.org>
27169
27170         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
27171         FILESYSTEM_PREFIX_LEN.
27172         * lib/progreloc.c: Likewise.
27173         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
27174
27175 2004-08-06  Simon Josefsson  <jas@extundo.com>
27176
27177         * modules/progname (Depends-on): Don't depend on stdbool.
27178
27179 2004-08-06  Simon Josefsson  <jas@extundo.com>
27180
27181         * modules/getsubopt: New file.
27182         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
27183         getsubopt.
27184
27185 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
27186
27187         More merge from coreutils.
27188
27189         * m4/utimens.m4, m4/utimecmp.m4: New files.
27190         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
27191         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
27192         prereq.m4, sha.m4: Import changes from coreutils.
27193
27194 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
27195
27196         More merge from coreutils.
27197         * modules/raise, modules/readtokens0, modules/utimens:
27198         * modules/utimecmp, module/xnanosleep: New files.
27199         * modules/strftime: Add lib/strftime.h.
27200         Change include from <time.h> to "strftime.h".
27201         * modules/yesno: Add lib/yesno.h.
27202         * modules/backupfile: Remove lib/addext.c.
27203         * modules/euidaccess: Add stat-macros.h.
27204         * modules/canonicalize, modules/euidaccess,
27205         modules/filemode, modules/lchown, modules/makepath,
27206         modules/rmdir, modules/stat: Likewise.
27207
27208 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
27209
27210         Merge from tar.
27211         * lib/argp-help.c (make_hol, hol_append): Don't assume that
27212         SIZE_MAX is a valid preprocessor constant.
27213         (__argp_basename): Change from "#ifndef _LIBC"
27214         to "#ifndef __argp_short_program_name", so that
27215         we don't compile these functions for tar.
27216
27217         More merges from coreutils.
27218         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
27219         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
27220         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
27221         * lib/addext.c: Remove; no longer needed.
27222         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
27223         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
27224         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
27225         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
27226         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
27227         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
27228         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
27229         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
27230         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
27231         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
27232         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
27233         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
27234         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
27235         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
27236         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
27237         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
27238         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
27239         Import changes from coreutils.
27240
27241 2004-08-05  Simon Josefsson  <jas@extundo.com>
27242
27243         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
27244
27245 2004-08-05  Simon Josefsson  <jas@extundo.com>
27246
27247         * m4/getsubopt.m4: New file.
27248
27249 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
27250
27251         Merge from coreutils.
27252
27253         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
27254         * m4/getcwd-path-max.m4: New files.
27255
27256         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
27257         FILESYSTEM_PREFIX_LEN ->
27258         FILE_SYSTEM_PREFIX_LEN.
27259         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
27260         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
27261         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
27262         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
27263
27264         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
27265         prerequisite modules now handle the DOS stuff.
27266         Don't check for unistd.h.
27267
27268 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
27269
27270         Merge from coreutils.
27271
27272         * lib/.gdb-history: Remove; this doesn't belong here.
27273
27274         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
27275         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
27276         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
27277         * lib/getcwd.c: New files.
27278
27279         * lib/dirname.h: Include <stdbool.h>.
27280         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
27281         for consistency with POSIX terminology.  All uses changed.
27282         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
27283         (strip_trailing_slashes): Use bool for booleans.
27284         * lib/stripslash.c (strip_trailing_slashes): Likewise.
27285
27286         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
27287         sometimes returns a positive errno value even when it succeeds.
27288         (print_errno_message) [!LIBC]: Fall back on strerror if
27289         __strerror_r fails.
27290
27291         * lib/path-concat.c (mempcpy): Don't define if a system header defines
27292         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
27293         (longest_relative_suffix): New function.
27294         (path_concat): Use it.  Assume first argument is not NULL.
27295         Port to DOS.  Omit redundant separators.
27296         Report an error instead of returning NULL.
27297         Use mempcpy instead of memcpy.
27298         (xpath_concat): Remove: not declared or used.
27299
27300         * lib/same.h: Include <stdbool.h>
27301         (same_name): Return bool, not int.
27302         * lib/same.c (same_name): Likewise.
27303         (errno): Don't declare; we assume C89 or better now.
27304
27305         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
27306         if not already defined.
27307
27308         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
27309         * lib/dup-safer.c (errno): Likewise.
27310
27311 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
27312
27313         Merge from coreutils.
27314         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
27315         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
27316         * modules/path-concat: Don't depend on strdup.
27317
27318 2004-08-03  Simon Josefsson  <jas@extundo.com>
27319
27320         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
27321         * lib/progname.h: Don't include stdbool.h.
27322
27323 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
27324
27325         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
27326         * MODULES.html.sh (func_all_modules): Remove fatal.
27327
27328 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
27329
27330         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
27331
27332 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
27333
27334         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
27335         working.
27336
27337 2004-08-02  Simon Josefsson  <jas@extundo.com>
27338
27339         * lib/getsubopt.h: New file, with comments from Bruno Haible.
27340         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
27341         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
27342
27343 2004-08-01  Simon Josefsson  <jas@extundo.com>
27344
27345         * lib/xgetdomainname.c: Include stdlib.h, for free().
27346
27347 2004-07-19  Bruno Haible  <bruno@clisp.org>
27348
27349         * MODULES.html.sh (func_all_modules): Add dummy.
27350
27351 2004-07-16  Simon Josefsson  <jas@extundo.com>
27352
27353         * modules/dummy: New file.
27354
27355 2004-07-16  Simon Josefsson  <jas@extundo.com>
27356
27357         * lib/dummy.c: New file.
27358
27359 2004-07-16  Bruno Haible  <bruno@clisp.org>
27360
27361         * lib/backupfile.h: Add extern "C" for C++.
27362         * lib/closeout.h: Likewise.
27363         * lib/copy-file.h: Likewise.
27364         * lib/findprog.h: Likewise.
27365         * lib/full-write.h: Likewise.
27366         * lib/pathname.h: Likewise.
27367         * lib/progname.h: Likewise.
27368         * lib/stpcpy.h: Likewise.
27369         * lib/stpncpy.h: Likewise.
27370         * lib/strcase.h: Likewise.
27371         * lib/strstr.h: Likewise.
27372         * lib/xalloc.h: Likewise.
27373
27374         * lib/mbswidth.h: Add extern "C" for C++.
27375         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
27376
27377 2004-07-13  Robert Millan  <robertmh@gnu.org>
27378
27379         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
27380
27381 2004-07-09  Simon Josefsson  <jas@extundo.com>
27382
27383         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
27384         failed without this.)
27385
27386 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
27387
27388         * modules/chown (Files): Add lib/fchown-stub.c, since
27389         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
27390
27391 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
27392
27393         * lib/fchown-stub.c: New file.
27394
27395 2004-06-24  Jim Meyering  <jim@meyering.net>
27396
27397         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
27398
27399 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
27400
27401         * modules/argz: Omit "#include".
27402
27403         * MODULES.html.sh (func_all_modules): Add calloc, to match
27404         2004-06-01 addition of calloc module.
27405
27406 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
27407
27408         * m4/argz.m4: New file, which is autoupdated from libtool.
27409
27410 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
27411
27412         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
27413         libtool.
27414
27415 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
27416
27417         * config/srclist-update: Don't insist on "USA." before the
27418         close-comment, as libtool omits the period and puts the */ on a
27419         separate line.
27420         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
27421         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
27422
27423 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
27424
27425         * modules/argz: New file.
27426         * MODULES.html.sh (func_all_modules): Add argz.
27427
27428 2004-06-12  Jim Meyering  <jim@meyering.net>
27429         and  Paul Eggert  <eggert@cs.ucla.edu>
27430
27431         * modules/hash (Files): Add lib/xalloc.h.
27432         * modules/pipe (Depends-on): Add wait-process.
27433         * modules/stat (Depends-on): Add xalloc.
27434         * modules/userspec (Files): Add lib/userspec.h.
27435         * modules/xstrto
27436
27437         Upgrade from gettext-0.13.
27438         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
27439         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
27440         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
27441
27442 2004-06-10  Jim Meyering  <jim@meyering.net>
27443
27444         * lib/calloc.c: New file.
27445
27446 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
27447
27448         * lib/getdate.y (yylex): Allow space between sign and number.
27449         Problem reported by Dan Jacobson.
27450
27451 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
27452
27453         Merge from coreutils CVS.
27454
27455         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
27456         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
27457         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
27458         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
27459         xstrtol.m4: Fix copyright date and/or serial number.
27460
27461         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
27462         See if we need an fchown replacement.
27463         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
27464         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
27465         and use the replacement function if we detect either defect.
27466
27467         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
27468         gl_UTIMECMP.
27469
27470 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
27471         and  Jim Meyering  <jim@meyering.net>
27472
27473         Merge from coreutils CVS.
27474
27475         * lib/stat-macros.h: New file, with contents from file-type.h
27476         and coreutils' system.h.
27477         * lib/file-type.c: Include "stat-macros.h".
27478         * lib/file-type.h (file_type): Move all macro definitions to new file,
27479         stat-macros.h.
27480
27481         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
27482         Wrap old code with this conditional.
27483         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
27484         function that does not dereference symlinks.
27485         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
27486
27487         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
27488         dependency problems.
27489         (xreadlink): Accept new arg SIZE, for efficiency.
27490         All decls and uses changed.
27491         * lib/xreadlink.h: Include <stddef.h>, for size_t.
27492
27493         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
27494         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
27495
27496         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
27497         sysexits.h.
27498
27499 2004-06-01  Jim Meyering  <jim@meyering.net>
27500
27501         * m4/calloc.m4: New file.
27502
27503 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
27504
27505         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
27506         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
27507         Also, fix a typo in a diagnostic.
27508
27509 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
27510
27511         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
27512         or AC_FUNC_REALLOC.
27513
27514 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
27515
27516         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
27517         macros to be defined.
27518         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
27519         the allocator returns NULL because the requested size is zero.
27520
27521 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
27522
27523         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
27524         var.  Add comment explaining why libc still defines it.  This
27525         merges the following patch from glibc:
27526         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
27527
27528 2004-05-20  Andreas Schwab  <schwab@suse.de>
27529
27530         * m4/free.m4: Replace free if it not known to work, not the other
27531         way round.
27532
27533 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
27534
27535         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
27536         present in glibc since revision 1.1 of this file.
27537         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
27538         obstack_alignment_mask, obstack_alloc, obstack_base,
27539         obstack_blank, obstack_blank_fast, obstack_chunk_size,
27540         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
27541         obstack_grow0, obstack_init, obstack_int_grow,
27542         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
27543         obstack_next_free, obstack_object_size, obstack_ptr_grow,
27544         obstack_ptr_grow_fast, obstack_room): Remove declarations of
27545         nonexistent functions.
27546
27547 2004-05-18  Karl Berry  <karl@gnu.org>
27548
27549         * config/srclist.txt: break link for vasnprintf.c.
27550
27551 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
27552
27553         Port obstack to the AS/400, where pointers are 16 bytes wide and
27554         you cannot cast an integer to a valid pointer.  This patch is
27555         currently waiting to be integrated into glibc; see
27556         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
27557
27558         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
27559         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
27560         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
27561         (struct obstack): temp member is now a union of a pointer and
27562         an integer, instead of an integer.  All integer uses changed.
27563         This does not affect the physical layout of struct obstack,
27564         except on hosts (like the AS/400) where the size or alignment of
27565         void * is greater than that of ptrdiff_t.
27566         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
27567         __STDC__)]: Store temporary in pointer member of union, not
27568         integer member.
27569         * lib/obstack.c: Include <stddef.h>, for offsetof.
27570         (struct fooalign): Remove; it doesn't need a name.
27571         (union fooround): Change double to long double, and add void *.
27572         (DEFAULT_ALIGNMENT): Use offsetof to compute.
27573         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
27574         not a macro.  Hence the values are always int; so remove all
27575         casts-to-int in uses.
27576
27577 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
27578
27579         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
27580         we can get this patch merged into glibc.
27581
27582 2004-05-17  Derek R. Price  <derek@ximbiot.com>
27583             Paul Eggert  <eggert@cs.ucla.edu>
27584
27585         * m4/argp: Depend on alloca.
27586
27587 2004-05-17  Derek R. Price  <derek@ximbiot.com>
27588             Paul Eggert  <eggert@cs.ucla.edu>
27589
27590         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
27591         freecoding.
27592
27593 2004-05-17  Bruno Haible  <bruno@clisp.org>
27594
27595         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
27596         precision that consists of a '.' followed by an empty digit string.
27597         Patch by Tor Lillqvist <tml@iki.fi>.
27598
27599 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
27600
27601         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
27602         for backward compatibility with older code.  We need our own
27603         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
27604         it under some other name, and our alloca.h will define it.
27605
27606 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
27607             Derek Price  <derek@ximbiot.com>
27608
27609         * lib/alloca.c: Include <alloca.h>, to get our interface.
27610         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
27611         include <alloca.h> first.  Use C89 prototype for alloca; this
27612         requires including <stddef.h> for size_t.  Use extern "C" if C++.
27613         Use #elif for simplicity, since we can assume C89 now.
27614         Don't try to source the system alloca.h since it will not be found
27615         and to prevent recursively including its replacement.
27616         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
27617         * lib/regex.c: Likewise.
27618
27619 2004-05-16  Derek Price  <derek@ximbiot.com>
27620             Paul Eggert  <eggert@cs.ucla.edu>
27621
27622         getline cleanup.  This changes the getndelim2 API: both order of
27623         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
27624         no delimiter).
27625
27626         * lib/getline.c: Don't include stddef.h or stdio.h, since our
27627         interface does that.
27628         (getline): Always use getdelim, so that we don't have two
27629         copies of this code.
27630         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
27631         if available.
27632         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
27633         (GETNDELIM2_MAXIMUM): New macro.
27634         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
27635         instead of the old practice of delim2==0.  All callers changed.
27636         Return -1 on overflow, instead of returning junk.
27637         Do not set *linesize unless allocation succeeds.
27638         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
27639         that we include sys/types.h.
27640         * lib/getnline.h: Likewise.
27641         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
27642         (getndelim2): Reorder arguments.
27643         * lib/getnline.c (getnline, getndelim):
27644         Don't discard the NMAX argument.
27645         (getnline): Invoke getndelim, to avoid code duplication.
27646         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
27647         of (size_t) -1 by callers of the getnline family.
27648
27649 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
27650
27651         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
27652         Check for gettimeofday.
27653         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
27654         Check for settimeofday, stime.
27655
27656 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
27657
27658         * lib/nanosleep.c (suspended): Change its type from int to
27659         sig_atomic_t volatile.
27660         (first_call): Make it private to rpl_nanosleep, and have it
27661         be zero initially as that's a bit faster.
27662         (my_usleep): Round up fractional times instead of truncating them,
27663         as this is the usual meaning for 'sleep'.
27664
27665         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
27666         doesn't work.
27667         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
27668         (ENOSYS): Define if not defined.
27669         (settime): Fall back on stime if it exists and settimeofday fails.
27670         But don't bother with fallbacks if a method fails with errno == EPERM.
27671
27672 2004-05-11  Jim Meyering  <jim@meyering.net>
27673
27674         Prior to this change, the save_cwd caller required read access to the
27675         current directory on most systems (ones with the fchdir function).
27676
27677         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
27678         fails, try write-only, and finally, resort to using xgetcwd.
27679
27680 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
27681
27682         * lib/obstack.c, obstack.h: Import changes from libc.
27683
27684 2004-04-28  Bruno Haible  <bruno@clisp.org>
27685
27686         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
27687         also implicitly appends .exe to executables.
27688         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
27689         accepts Windows pathnames.
27690         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
27691         Treat Cygwin like Windows, since it now accepts Windows pathnames.
27692         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
27693         Treat Cygwin like Windows, since it now accepts Windows pathnames.
27694         Reported by Derek Robert Price <derek@ximbiot.com>.
27695
27696 2004-04-21  Karl Berry  <karl@gnu.org>
27697
27698         * config/srclist.txt (localcharset.c): break sync.
27699
27700 2004-04-20  Paul Eggert  <eggert@twinsun.com>
27701
27702         * m4/host-os.m4: Add a copyright notice.
27703
27704 2004-04-20  Jim Meyering  <jim@meyering.net>
27705
27706         Change UTILS_ to gl_ in AC_DEFINE'd names.
27707         Change utils_- and jm_-prefixed variables, too.
27708         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
27709         UTILS_FUNC_MKDIR_TRAILING_SLASH.
27710         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
27711
27712         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
27713         Don't emit trailing blanks.
27714         Also rename jm_-prefixed variables to have gl_ prefix.
27715
27716         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
27717         Also rename jm_-prefixed variables to have gl_ prefix.
27718
27719         * m4/jm-macros.m4: Reflect the renamings.
27720         * m4/prereq.m4: Likewise.
27721
27722 2004-04-20  Jim Meyering  <jim@meyering.net>
27723
27724         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
27725         memory.
27726
27727 2004-04-20  Jim Meyering  <jim@meyering.net>
27728             Bruno Haible  <bruno@clisp.org>
27729
27730         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
27731         memory when realloc fails.
27732
27733 2004-04-19  Jim Meyering  <jim@meyering.net>
27734
27735         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
27736         now that readutmp.c may call `free (0)'.
27737
27738 2004-04-19  Bruno Haible  <bruno@clisp.org>
27739
27740         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
27741         * m4/inttypes_h.m4: Likewise.
27742         * m4/stdint_h.m4: Likewise.
27743         * m4/intmax_t.m4: Likewise.
27744         * m4/uintmax_t.m4: Likewise.
27745
27746 2004-04-18  Jim Meyering  <jim@meyering.net>
27747
27748         * m4/prereq.m4: Don't forbid jm_ prefix.
27749
27750         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
27751         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
27752         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
27753         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
27754         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
27755         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
27756         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
27757         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
27758         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
27759         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
27760         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
27761         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
27762         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
27763         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
27764         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
27765         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
27766         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
27767         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
27768         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
27769
27770 2004-04-18  Jim Meyering  <jim@meyering.net>
27771
27772         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
27773         failure, don't leak memory and do call END_UTMP_ENT.
27774
27775 2004-04-16  Jim Meyering  <jim@meyering.net>
27776
27777         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
27778         coreutils' stat program.
27779         (gl_PREREQ): Don't require jm_PREREQ_STAT.
27780
27781 2004-04-11  Paul Eggert  <eggert@twinsun.com>
27782
27783         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
27784         C89.
27785         (CHAR_BIT): Remove, since we assume C89.
27786         Include <stdint.h> if available, as per current Autoconf CVS advice.
27787
27788 2004-03-31  Jim Meyering  <jim@meyering.net>
27789
27790         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
27791         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
27792         * m4/xalloc.m4: Likewise.
27793
27794 2004-03-30  Paul Eggert  <eggert@twinsun.com>
27795
27796         Merge from coreutils.
27797
27798         * m4/inttostr.m4: New file.
27799         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
27800         Require AM_STDBOOL_H and gl_TIMESPEC instead.
27801         Require gl_CLOCK_TIME.
27802         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
27803
27804 2004-03-30  Paul Eggert  <eggert@twinsun.com>
27805
27806         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
27807         not bool, to be more consistent with Unix conventions.
27808         Suggested by Bruno Haible.
27809
27810         Merge from coreutils.
27811
27812         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
27813         * lib/umaxtostr.c: New files.
27814
27815         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
27816         the usual <time.h> dance.
27817         (get_date): Change signature to support fractional time stamps.
27818         All callers changed.
27819         * lib/getdate.y: Include "getdate.h" first, as we can now
27820         assume C89 and don't need to worry about 'const'.
27821         Similarly, include "unlocked-io.h" near start, not in middle.
27822         Include <limits.h>.
27823         (textint.value): Use long int rather than int.
27824         (textint.digits): Use size_t rather than int.
27825         (BILLION, LOG10_BILLION): New constants.
27826         (parser_control): New member rel_ns.  Members day_ordinal,
27827         time_zone, month, day, hour, minutes, rel_year, rel_month,
27828         rel_day, rel_hour, rel_minutes, rel_seconds
27829         are now long int, not int.  Member seconds is now struct timespec,
27830         not int.  New member timespec_seen.  Members dates_seen, days_seen,
27831         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
27832         not int.
27833         (%union.intval): Now long int, not int.
27834         New member timespec.
27835         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
27836         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
27837         (spec): Now is a timespec or an item list.
27838         (timespec, items): New nonterminals.
27839         (time, rel, relunit, number, get_date):
27840         Add support for fractional seconds.
27841         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
27842         (gmtime, localtime, mktime): Remove decls; not needed with C89.
27843         (to_hour): First arg is now long int, not int.
27844         (to_year): Returns long int, not int.
27845         Don't treat year -70 like 70.
27846         (tm_diff): Returns long int, not int.
27847         (lookup_word): Use bool instead of int when appropriate.
27848         (yylex): Use size_t for count, not int.
27849         Detect overflow when parsing large integer constants.
27850         Add support for fractions.
27851         (get_date): Make pointers 'const' if possible.
27852         Use more-portable code to detect integer overflow.
27853         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
27854         Don't use ctime; it's not reliable if the year has >4 digits.
27855
27856         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
27857         This is for compatibility with BSD.
27858
27859         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
27860         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
27861         From coreutils' system.h.
27862
27863         * lib/userspec.c: Don't include "posixver.h".
27864         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
27865         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
27866         compatible extension.  Simplify code by removing a boolean int
27867         that was always nonzero if a string was nonnull.
27868
27869 2004-03-30  Jim Meyering  <jim@meyering.net>
27870
27871         Merge from coreutils.
27872
27873         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
27874         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
27875         on some systems one must include <grp.h> before it.
27876         Reported by Christian Krackowizer.
27877
27878 2004-03-30  Jim Meyering  <jim@meyering.net>
27879
27880         Merge from coreutils.
27881
27882         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
27883
27884         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
27885         an empty input stream.
27886
27887         * lib/readtokens.c: Include <stdbool.h>.
27888         (readtoken): Use `size_t' rather than int/long.
27889         All callers adjusted.
27890         Use `bool' rather than `int' where appropriate.
27891         Use memset rather than an explicit loop.
27892         Use x2nrealloc rather than xrealloc.
27893         Allow the use of `\0' as a delimiter.
27894         (readtokens): Likewise.
27895         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
27896
27897 2004-03-30  Jim Meyering  <jim@meyering.net>
27898
27899         * m4/realloc.m4: Remove file, since now it does no more than
27900         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
27901         the `configure.ac' section of module/realloc.
27902         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
27903
27904 2004-03-30  Bruno Haible  <bruno@clisp.org>
27905
27906         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
27907         nonnull.
27908
27909 2004-03-29  Paul Eggert  <eggert@twinsun.com>
27910
27911         Merge changes to getloadavg.c from coreutils and Emacs.
27912
27913         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
27914         Define to an expression, not to the empty string.
27915         Include cloexec.h and xalloc.h.
27916         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
27917         Use set_cloexec_flag rather than rolling our own.
27918         * lib/cloexec.c, lib/cloexec.h: New files.
27919
27920 2004-03-29  Paul Eggert  <eggert@twinsun.com>
27921
27922         * m4/cloexec.m4: New file.
27923
27924 2004-03-18  Paul Eggert  <eggert@twinsun.com>
27925
27926         * lib/getopt.h: Sync with libc CVS.
27927
27928 2004-03-18  Paul Eggert  <eggert@twinsun.com>
27929             Bruno Haible  <bruno@clisp.org>
27930
27931         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
27932         mbswidth.
27933
27934 2004-03-18  Paul Eggert  <eggert@twinsun.com>
27935             Bruno Haible  <bruno@clisp.org>
27936
27937         * lib/mbswidth.h: Include <wchar.h> only if
27938         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
27939         <wchar.h>.
27940         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
27941
27942 2004-03-09  Paul Eggert  <eggert@twinsun.com>
27943
27944         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
27945         Sync with libc CVS.
27946         * lib/getopt_int.h: New file, also synced from libc.
27947
27948 2004-03-09  Paul Eggert  <eggert@twinsun.com>
27949
27950         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
27951         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
27952         Bring back getopt.c, getopt.h, getopt1.c.
27953
27954 2004-03-07  Paul Eggert  <eggert@twinsun.com>
27955
27956         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
27957         All uses changed.  Check for sa_sigaction member; this fixes
27958         a bug first reported by Jason Andrade in
27959         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
27960
27961 2004-03-07  Paul Eggert  <eggert@twinsun.com>
27962
27963         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
27964         '#if' expressions.  Unlike the code it replaces, it does not
27965         depend on (defined _SC_PAGESIZE).  However, it does depend on
27966         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
27967         first reported by Jason Andrade in
27968         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
27969
27970 2004-02-25  Simon Josefsson  <jas@extundo.com>
27971
27972         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
27973
27974 2004-02-25  Simon Josefsson  <jas@extundo.com>
27975
27976         * lib/strdup.h: New file.
27977         * lib/strdup.c: Include it.
27978         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
27979         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
27980
27981 2004-02-23  Karl Berry  <karl@gnu.org>
27982
27983         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
27984         (from fencepost.gnu.org:/gd/gnuorg).
27985
27986 2004-02-23  Karl Berry  <karl@gnu.org>
27987
27988         * config/srclistvars.sh (GNUORG) [karl]: redefine.
27989         * config/srclist.txt: add maintain/standards documents.
27990
27991 2004-02-18  Bruno Haible  <bruno@clisp.org>
27992
27993         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
27994         Reported by Derek Robert Price <derek@ximbiot.com>.
27995
27996 2004-02-16  Karl Berry  <karl@gnu.org>
27997
27998         * config/mkinstalldirs, install-sh: update from automake.
27999
28000 2004-02-06  Karl Berry  <karl@gnu.org>
28001
28002         * m4/po.m4: update from gettext 0.14.1.
28003
28004 2004-02-06  Karl Berry  <karl@gnu.org>
28005
28006         * lib/config.charset: update from gettext 0.14.1.
28007
28008 2004-02-05  Paul Eggert  <eggert@twinsun.com>
28009
28010         Add comments and code, prompted by suggestions from Bruno Haible
28011         for sh-quote.
28012         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
28013         describing the enum quoting_style values.
28014         * lib/quotearg.c (quotearg_alloc): New function.
28015         (quotearg_buffer_restyled): Treat lone { and } as special.
28016         Treat = as special.  Work around bug with older shells
28017         that "see" a '\' that is really the 2nd byte of a multibyte char.
28018         Quote empty string with shell_quoting_style.
28019
28020 2004-02-03  Bruno Haible  <bruno@clisp.org>
28021
28022         * m4/pipe.m4: New file, from GNU gettext.
28023
28024 2004-02-03  Bruno Haible  <bruno@clisp.org>
28025
28026         * lib/pipe.h: New file, from GNU gettext.
28027         * lib/pipe.c: New file, from GNU gettext.
28028
28029 2004-01-27  Bruno Haible  <bruno@clisp.org>
28030
28031         * m4/execute.m4: New file, from GNU gettext.
28032
28033 2004-01-27  Bruno Haible  <bruno@clisp.org>
28034
28035         * lib/execute.h: New file, from GNU gettext.
28036         * lib/execute.c: New file, from GNU gettext.
28037         * lib/w32spawn.h: New file, from GNU gettext.
28038
28039 2004-01-24  Paul Eggert  <eggert@twinsun.com>
28040
28041         Merge from diffutils.
28042
28043         * lib/file-type.c (file_type): Add typed memory objects.
28044         * lib/file-type.h (S_TYPEISTMO): New macro.
28045
28046         * lib/c-stack.h (c_stack_action): Remove argv argument.
28047         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
28048         (die): Don't calculate message unless segv_action returns.
28049         (get_stack_location, min_address_from_argv, max_address_from_argv,
28050         volatile stack_base, volatile_stack_size): Remove.
28051         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
28052         that every segmentation violation is a stack overflow.  (Ouch!)
28053         See Debian bug 136249 (still outstanding) for more info about why
28054         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
28055
28056 2004-01-24  Paul Eggert  <eggert@twinsun.com>
28057
28058         Exit-status fix from coreutils.
28059
28060         Use exit_failure consistently in place of EXIT_FAILURE,
28061         so that program exit statuses are consistent on failure.
28062
28063         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
28064         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
28065         * lib/argmatch.h: Comment fix to match the above.
28066         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
28067         Now a macro referring to exit_failure, instead of a separate
28068         variable.  Include "exitfail.h" to get it.
28069         * lib/xstrtol.h: Include "exitfail.h".
28070         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
28071
28072         * lib/long-options.c (parse_long_options): Use prototype
28073         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
28074         for clarity.
28075
28076 2004-01-21  Jim Meyering  <jim@meyering.net>
28077
28078         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
28079         so as not to conflict with a different-sized __mktime_internal
28080         function in GNU libc.
28081         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
28082         Problem building statically-linked `ls' reported by Michael Brunnbauer.
28083
28084 2004-01-20  Karl Berry  <karl@gnu.org>
28085
28086         * config/config.guess: update from config.
28087
28088         * config/srclistvars.sh: GNUWWWLICENSES for karl.
28089
28090 2004-01-20  Bruno Haible  <bruno@clisp.org>
28091
28092         Safer stack allocation.
28093         * lib/setenv.c: Include allocsa.h.
28094         (alloca): Remove fallback definition.
28095         (freea): Remove macro.
28096         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
28097         instead of freea.
28098
28099 2004-01-20  Bruno Haible  <bruno@clisp.org>
28100
28101         * m4/eealloc.m4: New file, from GNU gettext.
28102
28103 2004-01-20  Bruno Haible  <bruno@clisp.org>
28104
28105         * m4/allocsa.m4: New file, from GNU gettext.
28106
28107 2004-01-20  Bruno Haible  <bruno@clisp.org>
28108
28109         * lib/xallocsa.h: New file, from GNU gettext.
28110         * lib/xallocsa.c: New file, from GNU gettext.
28111
28112 2004-01-20  Bruno Haible  <bruno@clisp.org>
28113
28114         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
28115
28116 2004-01-20  Bruno Haible  <bruno@clisp.org>
28117
28118         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
28119         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
28120         specially.
28121
28122 2004-01-20  Bruno Haible  <bruno@clisp.org>
28123
28124         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
28125         patch.
28126
28127 2004-01-20  Bruno Haible  <bruno@clisp.org>
28128
28129         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
28130
28131 2004-01-20  Bruno Haible  <bruno@clisp.org>
28132
28133         * lib/eealloc.h: New file.
28134
28135 2004-01-20  Bruno Haible  <bruno@clisp.org>
28136
28137         * lib/binary-io.h: Avoid warnings on Cygwin.
28138
28139 2004-01-20  Bruno Haible  <bruno@clisp.org>
28140
28141         * lib/allocsa.h: New file, from GNU gettext.
28142         * lib/allocsa.c: New file, from GNU gettext.
28143
28144 2004-01-18  Karl Berry  <karl@gnu.org>
28145
28146         * doc/gpl.texi, doc/lgpl.texi: new files.
28147
28148 2004-01-18  Karl Berry  <karl@gnu.org>
28149
28150         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
28151         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
28152
28153 2004-01-15  Paul Eggert  <eggert@twinsun.com>
28154
28155         Merge from coreutils.
28156
28157         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
28158         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
28159         (gl_DEFAULT_POSIX2_VERSION): Move
28160         the documentation from 'configure' into 'config.hin',
28161         so that 'configure --help' isn't burdened by it and
28162         we don't have to worry about its formatting there.
28163         Reword the documentation so that it's more succinct
28164         and can be run together into a single paragraph.
28165         * m4/same.m4 (gl_SAME): Check for pathconf.
28166
28167 2004-01-15  Paul Eggert  <eggert@twinsun.com>
28168
28169         Merge from coreutils.
28170
28171         * lib/posixver.c: Include posixver.h.
28172
28173         * lib/same.c: Include <stdbool.h>, <limits.h>.
28174         (_POSIX_NAME_MAX): Define if not defined.
28175         (MIN): New macro.
28176         (same_name): If file names are silently truncated, report
28177         that the file names are the same if they are the same after
28178         the silent truncation.
28179
28180         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
28181         conversion function.
28182         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
28183         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
28184         longer needed.
28185
28186 2004-01-15  Jim Meyering  <jim@meyering.net>
28187
28188         Merge from coreutils.
28189
28190         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
28191         if no library is required.
28192         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
28193         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
28194         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
28195         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
28196         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
28197         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
28198         value, $ac_cv_search_crypt, if it's "none required".
28199         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
28200         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
28201         not gl_FUNC_GETLOADAVG.
28202         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
28203         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
28204
28205 2004-01-15  Jim Meyering  <jim@meyering.net>
28206
28207         Merge from coreutils.
28208
28209         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
28210         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
28211         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
28212
28213         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
28214         optional configure-time default.
28215
28216         * lib/version-etc.c (version_etc_copyright): Update copyright date.
28217
28218         * lib/xreadlink.c (xreadlink): Correct outdated comment.
28219
28220 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
28221
28222         Merge from coreutils.
28223
28224         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
28225         value, $ac_cv_search_nanosleep, if it's "none required".
28226
28227 2004-01-14  Paul Eggert  <eggert@twinsun.com>
28228
28229         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
28230         with like-named macro in fnmatch.c.
28231         (EXT): Use an internal constant instead.
28232
28233         Merge fnmatch patches from glibc.
28234         * lib/fnmatch.c (mbsinit): Remove define.
28235         Add libc_hidden_ver (__fnmatch, fnmatch).
28236         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
28237         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
28238
28239 2004-01-14  Karl Berry  <karl@gnu.org>
28240
28241         * config/install-sh: update from automake.
28242
28243 2004-01-13  Karl Berry  <karl@gnu.org>
28244
28245         * config/install-sh: update from automake.
28246
28247 2004-01-09  Karl Berry  <karl@gnu.org>
28248
28249         * config/install-sh: update from automake.
28250
28251 2004-01-05  Karl Berry  <karl@gnu.org>
28252
28253         * config/config.{sub,guess}: update from config.
28254
28255 2003-12-31  Karl Berry  <karl@gnu.org>
28256
28257         * config/depcomp: update from automake.
28258
28259 2003-12-14  Karl Berry  <karl@gnu.org>
28260
28261         * lib/config.charset: update from gettext-runtime.
28262
28263 2003-12-03  Paul Eggert  <eggert@twinsun.com>
28264
28265         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
28266         Bug reported by Alfred M. Szmidt.
28267
28268 2003-12-03  Bruno Haible  <bruno@clisp.org>
28269
28270         * m4/gettext.m4: Upgrade from gettext-0.13.
28271         * m4/po.m4: Upgrade from gettext-0.13.
28272         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
28273         * m4/intmax.m4: New file, from gettext-0.13.
28274         * m4/printf-posix.m4: New file, from gettext-0.13.
28275
28276 2003-11-29  Karl Berry  <karl@gnu.org>
28277
28278         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
28279
28280 2003-11-25  Paul Eggert  <eggert@twinsun.com>
28281             Bruno Haible  <bruno@clisp.org>
28282
28283         * lib/printf-parse.h: Don't include sys/types.h.
28284         (ARG_NONE): New macro.
28285         (char_directive): Change type of *arg_index fields to size_t.
28286         * lib/printf-parse.c: Don't include sys/types.h.
28287         (SSIZE_MAX): Remove macro.
28288         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
28289         Remove unnecessary overflow check.
28290         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
28291         fields.
28292
28293 2003-11-25  Bruno Haible  <bruno@clisp.org>
28294
28295         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
28296
28297 2003-11-25  Bruno Haible  <bruno@clisp.org>
28298
28299         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
28300         gt_TYPE_SSIZE_T.
28301
28302 2003-11-24  Paul Eggert  <eggert@twinsun.com>
28303
28304         * modules/alloca: Remove dependency on xalloc.
28305
28306 2003-11-24  Paul Eggert  <eggert@twinsun.com>
28307
28308         * lib/alloca.c: Remove dependency on xalloc module.
28309         (xalloc_die): Remove.
28310         (memory_full) [!defined emacs]: New macro.
28311         [!defined emacs]: Don't include xalloc.h.
28312         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
28313         address arithmetic overflows.  Change datatypes a bit to avoid
28314         unnecessary casts.
28315
28316 2003-11-22  Jim Meyering  <jim@meyering.net>
28317
28318         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
28319         s/size/size_t/.
28320
28321 2003-11-21  Karl Berry  <karl@gnu.org>
28322
28323         * config/config.{sub,guess}: update from config.
28324
28325 2003-11-18  Karl Berry  <karl@gnu.org>
28326
28327         * config/config.{sub,guess}: update from config.
28328
28329         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
28330
28331 2003-11-17  Paul Eggert  <eggert@twinsun.com>
28332
28333         * README: Mention that S+T cannot overflow if S is the size of
28334         an existing object and T is sufficiently small.
28335
28336 2003-11-17  Jim Meyering  <jim@meyering.net>
28337
28338         On systems without utime and without a utimes function capable of
28339         dealing with a NULL struct utimbuf* argument, this utime replacement
28340         could -- in unusual circumstances -- leak a file descriptor.
28341         * lib/utime.c: Include <unistd.h> and <errno.h>.
28342         (utime_null): Be sure to close `fd' and to preserve errno.
28343         Reported by Geoff Collyer via Arnold Robbins.
28344
28345 2003-11-17  Bruno Haible  <bruno@clisp.org>
28346
28347         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
28348         (Depends-on): Add xsize.
28349
28350 2003-11-17  Bruno Haible  <bruno@clisp.org>
28351
28352         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
28353
28354 2003-11-17  Bruno Haible  <bruno@clisp.org>
28355
28356         * lib/vasnprintf.c (alloca): Remove fallback definition.
28357         (freea): Remove definition.
28358         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
28359         Reported by Paul Eggert.
28360
28361 2003-11-16  Paul Eggert  <eggert@twinsun.com>
28362             Bruno Haible  <bruno@clisp.org>
28363
28364         Protect against address arithmetic overflow.
28365         * lib/printf-args.h: Include stddef.h.
28366         (arguments): Change type of field 'count' to size_t.
28367         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
28368         'unsigned int' where appropriate.
28369         * lib/printf-parse.h: Include sys/types.h.
28370         (char_directive): Change type of *arg_index fields to ssize_t.
28371         (char_directives): Change type of fields 'count', max_*_length to
28372         size_t.
28373         * lib/printf-parse.c: Include sys/types.h and xsize.h.
28374         (SSIZE_MAX): Define fallback value.
28375         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
28376         instead of 'int' where appropriate. Check a_allocated, d_allocated
28377         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
28378         * lib/vasnprintf.c: Include xsize.h.
28379         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
28380         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
28381         overflow. Avoid wraparound when converting a width or precision from
28382         decimal to binary.
28383
28384 2003-11-16  Bruno Haible  <bruno@clisp.org>
28385
28386         Update from GNU gettext.
28387         * lib/printf-parse.c: Generalize to it can be compiled for wide
28388         strings.
28389         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
28390         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
28391         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
28392         SNPRINTF): New macros.
28393         Don't include <alloca.h> if the file is used inside libintl.
28394         (local_wcslen): New function, for Solaris 2.5.1.
28395         (VASNPRINTF): Use it instead of wcslen.
28396
28397 2003-11-16  Bruno Haible  <bruno@clisp.org>
28398
28399         * lib/xsize.h (xmax): New function.
28400         (xsum, xsum3, xsum4): Declare as "pure" functions.
28401
28402 2003-11-12  Paul Eggert  <eggert@twinsun.com>
28403
28404         * modules/xalloc (Files): Undo latest change, since xalloc.h
28405         no longer needs SIZE_MAX or PTRDIFF_MAX.
28406
28407 2003-11-12  Paul Eggert  <eggert@twinsun.com>
28408
28409         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
28410         gl_PTRDIFF_MAX.
28411
28412 2003-11-12  Paul Eggert  <eggert@twinsun.com>
28413
28414         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
28415         "return", to pacify some unknown compiler.  Problem reported
28416         by Joerg Schilling.
28417
28418 2003-11-12  Paul Eggert  <eggert@twinsun.com>
28419
28420         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
28421         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
28422         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
28423         heuristic is just as accurate as far as we know, and it removes a
28424         dependency on size_max.m4 and ptrdiff_max.m4.
28425
28426 2003-11-11  Bruno Haible  <bruno@clisp.org>
28427
28428         * modules/xsize (Files): Add m4/size_max.m4.
28429         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
28430
28431 2003-11-11  Bruno Haible  <bruno@clisp.org>
28432
28433         * m4/size_max.m4: New file.
28434         * m4/ptrdiff_max.m4: New file.
28435         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
28436         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
28437         (gl_XALLOC): Invoke it.
28438
28439 2003-11-11  Bruno Haible  <bruno@clisp.org>
28440
28441         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
28442         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
28443         defined.
28444
28445 2003-11-10  Paul Eggert  <eggert@twinsun.com>
28446
28447         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
28448         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
28449         rejected some allocations of exactly SIZE_MAX - 2 bytes.
28450         From Bruno Haible.
28451         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
28452         not (size_t) -1, since it's defined here.
28453
28454 2003-11-09  Karl Berry  <karl@gnu.org>
28455
28456         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
28457
28458 2003-11-06  Paul Eggert  <eggert@twinsun.com>
28459
28460         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
28461         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
28462         Reject sizes of exactly SIZE_MAX bytes.
28463         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
28464         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
28465
28466 2003-11-05  Bruno Haible  <bruno@clisp.org>
28467
28468         * lib/xsize.h: Include limits.h, to avoid a possible collision with
28469         SIZE_MAX defined in <limits.h> on Solaris.
28470
28471 2003-11-04  Jim Meyering  <jim@meyering.net>
28472
28473         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
28474         variable names, rather than @VAR@.
28475         * modules/poll: Likewise.
28476
28477 2003-11-04  Bruno Haible  <bruno@clisp.org>
28478
28479         * modules/xsize: New file.
28480         * modules/linebreak: Depend on xsize.
28481         * MODULES.html.sh (func_all_modules): Add xsize.
28482
28483 2003-11-04  Bruno Haible  <bruno@clisp.org>
28484
28485         * m4/xsize.m4: New file.
28486
28487 2003-11-04  Bruno Haible  <bruno@clisp.org>
28488
28489         * lib/xsize.h: New file.
28490         * lib/linebreak.c: Include xsize.h.
28491         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
28492         argument for overflow.
28493         Suggested by Paul Eggert.
28494
28495 2003-11-03  Karl Berry  <karl@gnu.org>
28496
28497         * config/config.{guess,sub}: update from config.
28498
28499 2003-11-03  Jim Meyering  <jim@meyering.net>
28500
28501         * modules/userspec (lib_SOURCES): Add userspec.h.
28502         (Include): Add "userspec.h".
28503         Improve description.
28504
28505 2003-11-03  Jim Meyering  <jim@meyering.net>
28506
28507         * lib/userspec.c: Include "userspec.h".
28508         * lib/userspec.h: New file.
28509
28510 2003-11-03  Bruno Haible  <bruno@clisp.org>
28511
28512         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
28513
28514 2003-11-03  Bruno Haible  <bruno@clisp.org>
28515
28516         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
28517         available, to avoid (extremely rare) race condition.
28518         Suggested by Paul Eggert.
28519
28520 2003-11-02  Karl Berry  <karl@gnu.org>
28521
28522         * config/srclist.txt (vasprintf.c): sync broken, sigh.
28523
28524 2003-10-31  Paul Eggert  <eggert@twinsun.com>
28525
28526         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
28527         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
28528         (read_filesystem_list): Set and use me_type_malloced.
28529         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
28530         whatever the type happens to be), for brevity and consistency.
28531         Check for size calculation overflow on Alphas running OSF/1.
28532
28533 2003-10-31  Jim Meyering  <jim@meyering.net>
28534
28535         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
28536
28537         * lib/linebuffer.c: Include <string.h> for declaration of memset.
28538
28539 2003-10-30  Paul Eggert  <eggert@twinsun.com>
28540             Bruno Haible  <bruno@clisp.org>
28541
28542         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
28543         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
28544
28545 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
28546
28547         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
28548         netbsd*-gnu*.  Suggested by Robert Millan.
28549
28550 2003-10-29  Paul Eggert  <eggert@twinsun.com>
28551
28552         * modules/group-member: Depend on stdbool.
28553
28554 2003-10-29  Paul Eggert  <eggert@twinsun.com>
28555
28556         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
28557
28558 2003-10-29  Paul Eggert  <eggert@twinsun.com>
28559
28560         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
28561         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
28562         after the 'gnu' in these cases.  This fixes some bugs in the
28563         previous change, and is based on suggestions by Robert Millan.
28564
28565 2003-10-29  Paul Eggert  <eggert@twinsun.com>
28566
28567         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
28568         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
28569         no longer needed.
28570         * lib/quotearg.c (quotearg_n_options): Use it.
28571         * lib/group-member.c: Include <stdbool.h>.
28572         (free_group_info): Arg is now const *; don't free arg.
28573         (get_group_info): Now returns bool and accepts struct group_info *,
28574         rather than returning a malloc'ed struct group_info *.
28575         All uses changed.  Check for overflow in internal size calculation.
28576
28577         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
28578         rather than xmalloc/xrealloc.
28579         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
28580         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
28581         conformance bug: the old code used a pointer after freeing the
28582         storage that it addressed.
28583         * lib/hash.c (hash_initialize): Simplify the code by using
28584         xalloc_oversized rather than doing it by hand.
28585         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
28586         the buffer preserved.  Use free and xmalloc instead.
28587         * lib/quotearg.c (quotearg_n_options): Likewise.
28588         Use a simpler test for size overflow.  Don't use xalloc_oversized
28589         because unsigned int might be wider than size_t (!); this suggests
28590         that we should switch from unsigned int to size_t for slot numbers.
28591
28592 2003-10-28  Paul Eggert  <eggert@twinsun.com>
28593
28594         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
28595         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
28596         NetBSD kernels.  Requested by Richard Stallman.
28597
28598 2003-10-27  Paul Eggert  <eggert@twinsun.com>
28599
28600         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
28601         to allocate the returned structure.  Do not allocate a subarray,
28602         as x2nrealloc will do that.
28603         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
28604         instead of xnrealloc.
28605         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
28606
28607 2003-10-27  Bruno Haible  <bruno@clisp.org>
28608
28609         * lib/stdbool_.h: Better support for BeOS.
28610
28611 2003-10-26  Paul Eggert  <eggert@twinsun.com>
28612
28613         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
28614         now uses inline.
28615
28616 2003-10-26  Paul Eggert  <eggert@twinsun.com>
28617
28618         * lib/xalloc.h (xalloc_oversized): New static inline function, for
28619         callers that want to do their own size-overflow checking.  Include
28620         <stdbool.h>, since xalloc_oversized returns bool.
28621         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
28622         to use xalloc_oversized.
28623
28624         Add two functions x2realloc, x2nrealloc, for programs that grow
28625         arrays dynamically by doubling their sizes.
28626         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
28627         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
28628         New functions.
28629
28630         Port to C99 semantics for 'inline' of external functions.
28631         Bug reported by Bruno Haible.
28632         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
28633         with the old contents of xnmalloc.
28634         (xnmalloc, xmalloc): Use it.
28635         (xnrealloc_inline): New static inline function,
28636         with the old contents of xnrealloc.
28637         (xnrealloc, xrealloc): Use it.
28638
28639         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
28640         that.
28641
28642 2003-10-26  Karl Berry  <karl@gnu.org>
28643
28644         * config/srclist.txt (COPYING.DOC): no longer available from
28645         /gd/gnuorg; don't know where the ultimate source is.
28646
28647 2003-10-25  Paul Eggert  <eggert@twinsun.com>
28648
28649         Fix several address-calculation bugs in the hash modules,
28650         plus some minor code cleanup.
28651
28652         * lib/hash.h: Include <stdbool.h>, for bool.
28653         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
28654         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
28655         hash_get_n_entries, hash_get_max_bucket_length,
28656         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
28657         hash_rehash): Use size_t rather than unsigned.
28658         * lib/hash.c (struct hash_table, hash_get_n_buckets,
28659         hash_get_n_buckets_used, hash_get_n_entries,
28660         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
28661         hash_get_entries, hash_do_for_each, hash_string, is_prime,
28662         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
28663         Likewise.
28664         (SIZE_MAX): Define if not defined.
28665         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
28666         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
28667         hash_print):
28668         Use const * when possible.
28669         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
28670         (check_tuning): Fix bug: if tuning parameters were very close to
28671         0 or 1, rounding errors could have caused subscript violations.
28672         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
28673         (hash_initialize): Add 'fail:' label
28674         to free table and return NULL, and use it to simplify code.
28675         Use calloc rather than clearing the storage ourself.
28676         (hash_initialize, hash_rehash): Check for arithmetic overflow in
28677         buffer size calculations.
28678         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
28679         Include <stddef.h>, for size_t.
28680         * lib/hash-pjw.c (hash_pjw): Likewise.
28681         Switch to method described by Bruno Haible.
28682         Include <limits.h>, for CHAR_BIT.
28683         (SIZE_BITS): New macro.
28684
28685 2003-10-23  Paul Eggert  <eggert@twinsun.com>
28686
28687         * m4/getline.m4 (AM_FUNC_GETLINE):
28688         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
28689         hosts.  Problem reported by Derek Robert Price in
28690         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
28691         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
28692         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
28693
28694 2003-10-21  Paul Eggert  <eggert@twinsun.com>
28695
28696         * lib/getndelim2.c (getndelim2): When size calculation overflows,
28697         ceiling the allocation at NMAX bytes rather than silently
28698         discarding input bytes before NMAX is reached.  This makes
28699         a difference only if NMAX exceeds SIZE_MAX / 2.
28700
28701         * lib/obstack.c: Merge from glibc.
28702         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
28703         Add libc_hidden_def (_obstack_newchunk).
28704         (_obstack_free) [! defined _LIBC]: Remove.
28705         [defined _LIBC]: Make a strong alias from obstack_free, rather than
28706         a clone of the function body.
28707         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
28708         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
28709
28710         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
28711         glibc.
28712         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
28713         arg to memcpy.
28714
28715         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
28716         (obstack_ptr_grow_fast, obstack_int_grow_fast):
28717         Don't use lvalue casts, as GCC plans to remove support for them
28718         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
28719         was also present in the non-GCC version, indicating that this
28720         code had always been buggy and had never been widely used.
28721         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
28722         Use the fast variant of each macro, rather than copying the
28723         definiens of the fast variant; that way, we'll be more likely to
28724         catch future bugs in the fast variants.
28725
28726 2003-10-20  Bruno Haible  <bruno@clisp.org>
28727
28728         * modules/wait-process: New file.
28729         * MODULES.html.sh (func_all_modules): Add wait-process.
28730
28731 2003-10-20  Bruno Haible  <bruno@clisp.org>
28732
28733         * m4/wait-process.m4: New file.
28734
28735 2003-10-20  Bruno Haible  <bruno@clisp.org>
28736
28737         * lib/wait-process.h: New file, from GNU gettext.
28738         * lib/wait-process.c: New file, from GNU gettext.
28739
28740 2003-10-19  Jim Meyering  <jim@meyering.net>
28741
28742         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
28743         HPUX 10.20.
28744
28745 2003-10-18  Karl Berry  <karl@gnu.org>
28746
28747         * config/config.guess: update from config.
28748
28749 2003-10-16  Paul Eggert  <eggert@twinsun.com>
28750
28751         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
28752         (getgroups): First arg is int, not size_t.
28753         Don't let 'free' mangle errno.
28754
28755 2003-10-16  Paul Eggert  <eggert@twinsun.com>
28756
28757         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
28758
28759 2003-10-16  Karl Berry  <karl@gnu.org>
28760
28761         * config/config.{guess,sub}: update from config.
28762
28763 2003-10-16  Jim Meyering  <jim@meyering.net>
28764
28765         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
28766         memcpy.
28767
28768 2003-10-15  Paul Eggert  <eggert@twinsun.com>
28769
28770         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
28771         (SIZE_MAX): Remove.
28772         (new_exclude, add_exclude_file): Initial size no longer needs to
28773         be a power of 2.
28774         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
28775         our own address arithmetic overflow checking.
28776
28777         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
28778         (fnmatch): Do not alloca more than 2000 wide characters;
28779         instead, use malloc for large buffers.
28780         Check for address arithmetic overflow, and return -1
28781         with errno set to ENOMEM in that case.
28782         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
28783         (NEW_PATTERN): Do not alloca more than 8000 bytes;
28784         instead, return -1.  Check for address arithmetic overflow.
28785
28786 2003-10-14  Paul Eggert  <eggert@twinsun.com>
28787
28788         Handle invalid suffixes and overflow independently, so that
28789         callers can treat them independently as needed.  Fix some bugs in
28790         suffix handling, e.g., "100k@" was not diagnosed as an invalid
28791         suffix for a human-readable blocksize.  The major caller-visible
28792         change is the addition of a new
28793         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
28794         that both overflow and suffix chars were found.
28795
28796         * lib/human.c (humblock): Don't check separately for invalid suffix
28797         char; that is xstrtoumax's job (now that its bug is fixed).
28798         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
28799         INTMAX_MAX]: New macros.
28800         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
28801         TYPE_MAXIMUM): New macros.
28802         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
28803         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
28804         if overflow occurs, as it's what __strtol does and it's more useful
28805         in practice.
28806         (__xstrtol): If __strtol reports some error other than ERANGE,
28807         reflect it to the caller as LONGINT_INVALID.  If it reports
28808         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
28809         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
28810         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
28811         value.
28812         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
28813         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
28814         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
28815         [defined UINTMAX_MAX]: New macros.
28816
28817 2003-10-14  Bruno Haible  <bruno@clisp.org>
28818
28819         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
28820
28821 2003-10-14  Bruno Haible  <bruno@clisp.org>
28822
28823         * m4/sig_atomic_t: New file, from GNU gettext.
28824         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
28825
28826 2003-10-14  Bruno Haible  <bruno@clisp.org>
28827
28828         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
28829         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
28830         Also use volatile where needed.
28831
28832 2003-10-12  Paul Eggert  <eggert@twinsun.com>
28833
28834         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
28835         Change maintainer from Bruno Haible to 'all'.
28836
28837 2003-10-12  Paul Eggert  <eggert@twinsun.com>
28838
28839         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
28840
28841 2003-10-12  Paul Eggert  <eggert@twinsun.com>
28842
28843         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
28844         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
28845         and define in terms of the other primitives.
28846         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
28847         (SIZE_MAX): Define if not already defined.
28848         (array_size_overflow): New function.
28849         (xalloc_die): Abort instead of exiting if 'error' returns.
28850         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
28851         (xmalloc, xrealloc): Use them.
28852         (xcalloc): Check for address arithmetic overflow.
28853         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
28854         a bit faster than strcpy.
28855
28856 2003-10-10  Simon Josefsson  <jas@extundo.com>
28857
28858         * modules/argp (Depends-on): Add restrict and strcase.
28859
28860 2003-10-10  Simon Josefsson  <jas@extundo.com>
28861
28862         * m4/argp.m4: Add AC_C_INLINE.
28863
28864 2003-10-08  Paul Eggert  <eggert@twinsun.com>
28865
28866         Merge getpass from libc, plus a few fixes.
28867
28868         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
28869         Include <stdbool.h>.
28870         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
28871         __fsetlocking to empty.
28872         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
28873         do include <bits/libc-lock.h>.
28874         Do not include <fcntl.h>; not needed.
28875         [_LIBC]: Include <wchar.h>.
28876         (NOTCANCEL_MODE): New macro.
28877         (flockfile, funlockfile) [_LIBC]: New macros.
28878         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
28879         [!_LIBC]: New macros.
28880         (call_fclose): New function.
28881         (getpass): Use it.  Save tty stream separately; this simplifies the
28882         code and makes it more reliable if stdin happens to equal stdout.
28883         Invoke __fsetlocking on tty.
28884         Handle thread cancellation if needed.
28885         Namespace cleanup (use __tcgetattr, __getline).
28886         Use bool for Booleans.
28887         [USE_IN_LIBIO]: Handle wide streams.
28888         [!_LIBC]: Unconditionally do the fseek, since we don't know what
28889         stream might go where.
28890
28891         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
28892         doesn't have to include <stdio.h> before us.
28893         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
28894         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
28895         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
28896         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
28897         if not declared, so that we can use getpass.c code from libc without
28898         rewriting it.
28899         (flockfile, ftrylockfile, funlockfile): New macros.
28900
28901 2003-10-08  Paul Eggert  <eggert@twinsun.com>
28902
28903         * modules/getpass: Depend on stdbool.
28904
28905 2003-10-08  Paul Eggert  <eggert@twinsun.com>
28906
28907         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
28908
28909 2003-10-07  Karl Berry  <karl@gnu.org>
28910
28911         * config/config.{guess,sub}: update from config.
28912
28913 2003-10-06  Jim Meyering  <jim@meyering.net>
28914             Bruno Haible  <bruno@clisp.org>
28915
28916         This lets translators provide better translations for the
28917         "Written by ..." part of --version output.
28918         * lib/version-etc.h: Include stdarg.h.
28919         (version_etc_copyright): Declare as readonly.
28920         (version_etc): Make this function variadic with a NULL-terminated list
28921         of author name strings.
28922         (version_etc_va): New declaration.
28923         * lib/version-etc.c: Include stdarg.h, stdlib.h.
28924         (version_etc_copyright): Declare as readonly.
28925         (version_etc_va): New function. Provide a different translatable string
28926         for each possible number of authors < 10. Abbreviate when there are 10
28927         authors or more.
28928         (version_etc): Make this function variadic. Call version_etc_va.
28929         Suggestion from Gary V. Vaughan.
28930
28931         * lib/long-options.h (parse_long_options): Change prototype: the
28932         authors string is moved to the end and becomes variadic.
28933         * lib/long-options.c: Include stdarg.h.
28934         (parse_long_options): Make this function variadic, too.
28935         Call version_etc_va, not version_etc.
28936
28937 2003-10-06  Bruno Haible  <bruno@clisp.org>
28938
28939         * modules/version-etc-2: Remove file.
28940         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
28941
28942 2003-10-06  Bruno Haible  <bruno@clisp.org>
28943
28944         * modules/fatal-signal: New file.
28945         * MODULES.html.sh (func_all_modules): Add fatal-signal.
28946
28947 2003-10-06  Bruno Haible  <bruno@clisp.org>
28948
28949         * m4/fatal-signal.m4: New file.
28950         * m4/signalblocking.m4: New file, from GNU gettext.
28951
28952 2003-10-06  Bruno Haible  <bruno@clisp.org>
28953
28954         * lib/version-etc-2.h: Remove file.
28955         * lib/version-etc-2.c: Remove file.
28956
28957 2003-10-06  Bruno Haible  <bruno@clisp.org>
28958
28959         * lib/fatal-signal.h: New file, from GNU gettext.
28960         * lib/fatal-signal.c: New file, from GNU gettext.
28961
28962 2003-10-05  Paul Eggert  <eggert@twinsun.com>
28963
28964         * README: Rework advice for preventing empty .o files.
28965         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
28966         not <sys/types.h>.
28967
28968 2003-10-04  Karl Berry  <karl@gnu.org>
28969
28970         * lib/argp*: update from libc.
28971
28972 2003-10-04  Karl Berry  <karl@gnu.org>
28973
28974         * config/config.{guess,sub}: update from config.
28975
28976 2003-10-02  Bruno Haible  <bruno@clisp.org>
28977
28978         * modules/lchown (Include): Add lchown.h.
28979         * modules/time_r (Include): Use "..." syntax.
28980         * modules/xgetdomainname (Include): Add xgetdomainname.h.
28981
28982 2003-10-01  Simon Josefsson  <jas@extundo.com>
28983
28984         * MODULES.html.sh (func_all_modules): Move gethostname from section
28985         'based on' to section 'lacking' POSIX:2001.
28986
28987 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
28988
28989         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
28990         to output mode on the same stream.
28991
28992 2003-09-29  Paul Eggert  <eggert@twinsun.com>
28993
28994         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
28995         Fix arg typo in previous patch.
28996
28997 2003-09-28  Jim Meyering  <jim@meyering.net>
28998
28999         * lib/error.c: Correct cpp indentation.
29000
29001 2003-09-27  Paul Eggert  <eggert@twinsun.com>
29002
29003         * modules/free: New file.
29004
29005 2003-09-27  Paul Eggert  <eggert@twinsun.com>
29006
29007         * m4/free.m4: New file.
29008
29009 2003-09-27  Paul Eggert  <eggert@twinsun.com>
29010
29011         * lib/minmax.h (MIN, MAX)
29012         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
29013         Omit the special code that used __typeof__, since we worry that
29014         it could be more trouble than it's worth.  See:
29015         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
29016         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
29017
29018         * lib/free.c: New file.
29019
29020 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
29021
29022         Trivial fixes to Makefile.am parts of module listings.
29023         * modules/strstr: Append strstr.h to lib_SOURCES.
29024         * modules/strcase: Likewise, for strcase.h.
29025
29026 2003-09-27  Karl Berry  <karl@gnu.org>
29027
29028         * config/mkinstalldirs: update from automake.
29029
29030 2003-09-26  Paul Eggert  <eggert@twinsun.com>
29031
29032         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
29033         (error_tail): Do not loop, reallocating temporary buffer, since
29034         the output cannot contain more wide characters than the input
29035         contains bytes, the size must be big enough already.  This avoids
29036         one potential size overflow calculation.  Check for size overflow
29037         when calculating temporary buffer size.  Free temporary buffer
29038         when done, if it was allocated with malloc; this plugs a memory
29039         leak.  Remove casts from void * to pointers, that are no longer
29040         needed now that we're assuming C89 or better.
29041
29042         Merge error changes from glibc.
29043
29044         * lib/error.c, error.h: Update copyright notice header to match glibc.
29045         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
29046         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
29047         Disable cancellation while printing error.
29048         * lib/error.h: Prepend __ to parameter names.
29049
29050 2003-09-26  Jim Meyering  <jim@meyering.net>
29051
29052         * lib/error.c (error_tail): Move some declarations
29053         into inner scope where the local variables are used.
29054
29055 2003-09-26  Bruno Haible  <bruno@clisp.org>
29056
29057         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
29058         stpncpy().
29059         Don't define stpncpy through config.h; it's now done through stpncpy.h.
29060
29061 2003-09-26  Bruno Haible  <bruno@clisp.org>
29062
29063         * lib/stpncpy.h (gnu_stpncpy): New declaration.
29064         (stpncpy): Define as alias for gnu_stpncpy.
29065         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
29066
29067 2003-09-25  Simon Josefsson  <jas@extundo.com>
29068
29069         * lib/xgetdomainname.h: New file.
29070         * lib/xgetdomainname.c: New file.
29071
29072 2003-09-25  Simon Josefsson  <jas@extundo.com>
29073             Bruno Haible  <bruno@clisp.org>
29074
29075         * modules/getdomainname: New file.
29076         * modules/xgetdomainname: New file.
29077         * MODULES.html.sh (func_all_modules): Add getdomainname,
29078         xgetdomainname.
29079
29080 2003-09-25  Simon Josefsson  <jas@extundo.com>
29081             Bruno Haible  <bruno@clisp.org>
29082
29083         * m4/getdomainname.m4: New file.
29084
29085 2003-09-25  Simon Josefsson  <jas@extundo.com>
29086             Bruno Haible  <bruno@clisp.org>
29087
29088         * lib/getdomainname.h: New file.
29089         * lib/getdomainname.c: New file.
29090
29091 2003-09-25  Karl Berry  <karl@gnu.org>
29092
29093         * lib/argp-fmtstream.c, argp-help.c: update from libc.
29094
29095 2003-09-25  Karl Berry  <karl@gnu.org>
29096
29097         * config/install-sh: update from automake.
29098
29099 2003-09-25  Bruno Haible  <bruno@clisp.org>
29100
29101         * modules/version-etc-2: New file, from modules/version-etc with
29102         modifications.
29103         * MODULES.html.sh (func_all_modules): Add version-etc-2.
29104
29105 2003-09-25  Bruno Haible  <bruno@clisp.org>
29106
29107         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
29108         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
29109
29110 2003-09-24  Simon Josefsson  <jas@extundo.com>
29111
29112         * modules/xgethostname: Add xgethostname.h.
29113
29114 2003-09-24  Paul Eggert  <eggert@twinsun.com>
29115
29116         * lib/linebuffer.c (freebuffer): Don't free the argument, just
29117         the buffer associated with the argument.  Bug reported by
29118         Simon Josefsson.
29119
29120 2003-09-24  Paul Eggert  <eggert@twinsun.com>
29121
29122         * README: Document assumptions that 'int' is at least 32 bits
29123         wide, that integer arithmetic is 2's complement without overflow,
29124         that there are no holes in integer values, that adding sizes of
29125         two nonoverlapping objects can't overflow, and that all-bits-zero
29126         yields scalar zero.  Fix spelling and capitalization typos.
29127
29128 2003-09-19  Karl Berry  <karl@gnu.org>
29129
29130         * lib/argp.h: update from libc.
29131
29132 2003-09-17  Paul Eggert  <eggert@twinsun.com>
29133
29134         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
29135         to avoid spurious warnings like "AC_RUN_IFELSE was called before
29136         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
29137
29138 2003-09-17  Paul Eggert  <eggert@twinsun.com>
29139
29140         * gnulib-tool: Use "test -h", not "test -L", for portability
29141         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
29142         (tags_regexp): Remove, since \| doesn't conform to POSIX.
29143         (sed_extract_prog): Issue s commands one-by-one, rather than
29144         using \| in one s command.
29145
29146 2003-09-16  Paul Eggert  <eggert@twinsun.com>
29147
29148         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
29149         input error, instead of returning NULL the next time we are called
29150         (and therefore losing track of errno).
29151
29152 2003-09-16  Bruno Haible  <bruno@clisp.org>
29153
29154         * gnulib-tool (func_create_testdir): Warn about duplicated
29155         dependencies.
29156
29157 2003-09-15  Paul Eggert  <eggert@twinsun.com>
29158
29159         * modules/argmatch, modules/fatal, modules/obstack,
29160         modules/xalloc, modules/xgethostname: Sort dependencies by
29161         importance, not alphabetically.
29162
29163 2003-09-15  Paul Eggert  <eggert@twinsun.com>
29164
29165         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
29166         fails, so that the caller gets the proper errno.
29167
29168         * lib/readutmp.c (read_utmp): Likewise.
29169         Check for fstat error.  Close stream and free storage
29170         when failing.
29171
29172 2003-09-14  Karl Berry  <karl@gnu.org>
29173
29174         * config/srclist.txt (strdup.c): disable for c89 changes.
29175
29176 2003-09-14  Jim Meyering  <jim@meyering.net>
29177
29178         * lib/getloadavg.c: Correct cpp indentation.
29179         * lib/strdup.c: Likewise.
29180         * lib/vasnprintf.c: Likewise.
29181
29182 2003-09-14  Bruno Haible  <bruno@clisp.org>
29183
29184         * modules/fwriteerror: New file.
29185         * MODULES.html.sh (func_all_modules): Add fwriteerror.
29186
29187 2003-09-14  Bruno Haible  <bruno@clisp.org>
29188
29189         * lib/fwriteerror.h: New file.
29190         * lib/fwriteerror.c: New file.
29191
29192 2003-09-12  Paul Eggert  <eggert@twinsun.com>
29193
29194         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
29195         modules/xgethostname, modules/xalloc: Depend on exit.
29196
29197 2003-09-12  Paul Eggert  <eggert@twinsun.com>
29198
29199         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
29200
29201         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
29202         and AC_MINIX, too, so that their extensions are available.
29203
29204         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
29205         This macro has been superseded by gl_BACKUPFILE.
29206
29207         More patches to assume C89 or better.
29208
29209         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
29210
29211         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
29212         unconditionally.
29213         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
29214         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
29215         Include <string.h>, <stdlib.h> unconditionally.
29216         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
29217         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
29218         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
29219         headers or for string.h.
29220         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
29221         or strtoul.
29222
29223         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
29224         headers.
29225         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
29226         * m4/userspec.m4 (gl_USERSPEC): Likewise.
29227         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
29228         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
29229         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
29230         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
29231         memcpy, memset.
29232         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
29233         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
29234         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
29235         strtol.
29236         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
29237         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
29238         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
29239         strtoul.
29240
29241 2003-09-12  Paul Eggert  <eggert@twinsun.com>
29242
29243         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
29244         * lib/obstack.c [!defined _LIBC]: Likewise.
29245         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
29246         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
29247         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
29248
29249         More changes to assume C89 or better.
29250
29251         * lib/error.c (error_tail): Assume vprintf.
29252
29253         * lib/argmatch.c (getenv): Remove decl.
29254         * lib/progreloc.c (get_full_program_name): Define via prototype.
29255         * lib/setenv.c (clearenv): Likewise.
29256         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
29257         needed.
29258         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
29259         (malloc, memcpy): Remove decls.
29260         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
29261         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
29262         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
29263         (memcpy): Remove macro.
29264         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
29265         (__P): Remove.  All uses removed.
29266         (PTR): Remove.  All uses changed to void *.
29267         (CHAR_BIT, NULL): Remove.
29268         (spaces, zeros, memset_space, memset_zero)
29269         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
29270         Remove.
29271         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
29272         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
29273         Define with prototype.
29274         Remove now-unnecessary prototype decl.
29275         (extra_args_spec): Assume ANSI C.  All uses changed.
29276         (extra_args_spec_iso): Remove.
29277         (my_strftime, emacs_strftimeu): Define via prototype.
29278         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
29279         unconditionally.
29280         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
29281         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
29282         (strtoul, strtol): Remove decls.
29283         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
29284         LONG_MAX): Remove.
29285         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
29286         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
29287         (LOCALE_PARAM_PROTO): New macro.
29288         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
29289         (INTERNAL (strtol), strtol): Define with a prototype.
29290         (PARAMS): Remove.  All uses removed.
29291         * lib/tempname.c: Include <string.h> unconditionally.
29292         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
29293         * lib/xgethostname.c (main): Define with a prototype.
29294         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
29295         Include <stdlib.h> unconditionally.
29296         (calloc, malloc, realloc, free): Remove decls.
29297         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
29298         Include <stdlib.h> unconditionally.  Sort include file names.
29299         (strtod): Remove.
29300         (xstrtod): Define with a prototype.
29301         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
29302         (strtol, strtoul): Remove decls.
29303
29304 2003-09-11  Paul Eggert  <eggert@twinsun.com>
29305
29306         More patches to assume C89 or better.
29307         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
29308         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
29309         string.h, memchr, STDC_HEADERS.
29310
29311 2003-09-11  Paul Eggert  <eggert@twinsun.com>
29312
29313         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
29314         Include <stdlib.h>, <string.h> unconditionally.
29315         Remove now-unnecessary cast to char *.
29316         * lib/strnlen.c: Include <string.h> unconditionally.
29317         * lib/yesno.c (yesno): Define with a prototype.
29318
29319 2003-09-11  Bruno Haible  <bruno@clisp.org>
29320
29321         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
29322
29323 2003-09-10  Jim Meyering  <jim@meyering.net>
29324
29325         * lib/error.c: Correct indentation of cpp directives.
29326
29327 2003-09-10  Bruno Haible  <bruno@clisp.org>
29328
29329         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
29330         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
29331         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
29332         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
29333         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
29334         <stdlib.h> and <string.h> checks.
29335         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
29336         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
29337
29338 2003-09-10  Bruno Haible  <bruno@clisp.org>
29339
29340         * lib/strcspn.c: Include <string.h> unconditionally.
29341         * lib/strpbrk.c: Include <string.h> unconditionally.
29342         * lib/strstr.c: Include <string.h> unconditionally.
29343         * lib/unicodeio.c: Include <string.h> unconditionally.
29344         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
29345         * lib/unsetenv.c: Likewise.
29346         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
29347         * lib/yesno.c: Include <stdlib.h> unconditionally.
29348         (rpmatch): Add prototype.
29349
29350 2003-09-09  Paul Eggert  <eggert@twinsun.com>
29351
29352         More patches to assume C89 or better.
29353         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
29354         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
29355         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
29356         or for string.h.
29357         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
29358         stdlib.h.
29359         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
29360         C headers.
29361         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
29362         string.h.
29363         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
29364         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
29365         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
29366         or for string.h.
29367         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
29368         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
29369         C headers.
29370         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
29371         memcpy.
29372         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
29373         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
29374         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
29375         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
29376         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
29377         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
29378         string.h, free.
29379         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
29380         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
29381         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
29382         C headers, or for string.h.
29383         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
29384         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
29385         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
29386         headers, memory.h, stdlib.h, string.h, strings.h.
29387         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
29388         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
29389         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
29390         strchr.
29391         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
29392         headers, memory.h, string.h.
29393         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
29394         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
29395         free.
29396         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
29397         headers.
29398         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
29399         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
29400         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
29401         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
29402         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
29403
29404 2003-09-09  Paul Eggert  <eggert@twinsun.com>
29405
29406         More K&R removal.
29407
29408         * lib/acosl.c (main): Use a prototype.
29409         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
29410         tanl.c: Likewise.
29411
29412         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
29413
29414         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
29415         (getopt, etopt_long, getopt_long_only, _getopt_internal)
29416         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
29417         with a prototype.
29418         * lib/getopt.c (const): Remove macro.
29419         Include <string.h> unconditionally.
29420         (my_index): Remove; all uses changed to strchr.
29421         (strlen): Remove decl.
29422         (exchange): Remove forward decl; no longer needed.
29423         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
29424         Define with prototype.
29425         * lib/getopt1.c (const): Remove macro.
29426         (getopt_long, getopt_long_only, main): Define with prototype.
29427
29428         * lib/getugroups.c: Include <string.h> unconditionally.
29429
29430         * lib/getusershell.c: Include <stdlib.h> unconditionally.
29431         (getusershell, setusershell, endusershell, readname, main):
29432         Define with prototypes.
29433
29434         * lib/group-member.c: Include group-member.h first.
29435         Include <stdlib.h> unconditionally.
29436
29437         * lib/hard-locale.c: Include hard-locale.h first.
29438         Include <stdlib.h>, <string.h> unconditionally.
29439
29440         * lib/hash.c (free, malloc): Remove decls.
29441         Include <stdlib.h> unconditionally.
29442
29443         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
29444         (getenv): Do not declare.
29445
29446         * lib/idcache.c: Include <string.h> unconditionally.
29447
29448         * lib/long-options.c: Include long-options.h first, to test interface.
29449         Include <stdlib.h> unconditionally.
29450
29451         * lib/makepath.c: Include makepath.h first, to test interface.
29452         Include <stdlib.h> and <string.h> unconditionally.
29453
29454         * lib/linebuffer.c: Include <stdlib.h>.
29455         (free): Remove decl.
29456
29457         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
29458         stddef.h. rpl_malloc returns void *, not char *.
29459         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
29460         prototype.
29461
29462         * lib/md5.h: Include <limits.h> unconditionally.
29463         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
29464         (__P): Remove; all uses removed.
29465         * lib/md5.c: Include "md5.h" first.
29466         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
29467         md5_buffer, md5_process_bytes, md5_process_block):
29468         Define with prototypes.
29469         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
29470         * lib/sha.c: Include "sha.h" first.
29471         Include <stdlib.h>, <string.h> unconditionally.
29472
29473         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
29474         * lib/memcmp.c (__ptr_t): Likewise.
29475         * lib/memrchr.c (__ptr_t): Likewise.
29476         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
29477         Include <string.h> unconditionally.
29478         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
29479         * lib/memchr.c: Include <stdlib.h> unconditionally.
29480         * lib/memchr.c (LONG_MAX): Remove.
29481         * lib/memrchr.c (LONG_MAX): Likewise.
29482         * lib/memchr.c (__memchr): Define via a prototype.
29483         * lib/memrchr.c (__memrchr): Likewise.
29484         * lib/memcmp.c (__P): Remove, and remove all uses.
29485         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
29486         Remove forward decls; no longer needed.
29487         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
29488         Use types required by C89 in prototype.
29489
29490         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
29491         * lib/savedir.c: Likewise.
29492         * lib/mkdir.c (free): Remove decl.
29493         * lib/rmdir.c (rmdir): Define with a prototype.
29494         * lib/savedir.c: Include savedir.h first, to test interface.
29495
29496         * lib/mktime.c (STDC_HEADERS): Remove.
29497         Include <stdlib.h>, <string.h> unconditionally.
29498
29499         * lib/modechange.c: Include <stdlib.h> unconditionally.
29500         (malloc): Remove decl.
29501
29502         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
29503         (free): Remove decl.
29504
29505         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
29506         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
29507         (This type really should be intptr_t, but that's a C99ism.)
29508         (_obstack_memcpy): Remove: all uses changed to memcpy.
29509         Include <string.h> unconditionally.
29510         (struct obstack): Assume __STDC__ for types of members
29511         chunkfun, freefun, extra_arg.
29512         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
29513         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
29514         obstack_begin, obstack_specify_allocation,
29515         obstack_specify_allocation_with_arg, obstack_chunkfun,
29516         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
29517         Remove unprototyped decls and the macros that use them.
29518         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
29519         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
29520         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
29521         (defined __STDC__ && __STDC__)]:
29522         Remove nonprototyped code.
29523         Include <stdlib.h> unconditionally.
29524         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
29525         _obstack_allocated_p, _obstack_free, obstack_free,
29526         _obstack_memory_used, print_and_abort):
29527         Define using prototypes.
29528         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
29529         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
29530         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
29531         obstack_next_free, obstack_object_size, obstack_room) [0]:
29532         Remove unused, unprototyped code.
29533
29534         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
29535
29536         * lib/physmem.c (physmem_total, physmem_available, main): Define
29537         with prototypes.
29538
29539         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
29540         (main): Define with a prototype.
29541
29542         * lib/posixver.c (getenv): Remove decl.
29543
29544         * lib/putenv.c (malloc): Returns void *, not char *.
29545         Include <string.h> unconditionally.
29546         (strchr, memcpy, NULL): Do not define.
29547
29548         * lib/readtokens.c: Include readtokens.h first, to test interface.
29549         Include <stdlib.h>, <string.h> unconditionally.
29550         (init_tokenbuffer): Define with a prototype.
29551
29552         * lib/regex.c (PARAMS): Remove.  All uses removed.
29553         All uses of _RE_ARGS removed, too.
29554         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
29555         unconditionally.
29556         (bzero): Assume memset exists.
29557         (memcmp, memcpy, NULL): Remove.
29558         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
29559         char, or assignments to local vars of type signed char.
29560         (init_syntax_once, PREFIX(extract_number_and_incr),
29561         PREFIX(print_partial_compiled_pattern),
29562         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
29563         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
29564         PREFIX(regex_grow_registers), PREFIX(regex_compile),
29565         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
29566         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
29567         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
29568         wcs_compile_range, byte_compile_range, truncate_wchar,
29569         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
29570         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
29571         count_mbs_length, wcs_re_match_2_internal,
29572         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
29573         PREFIX(alt_match_null_string_p),
29574         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
29575         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
29576         regfree, PREFIX(extract_number)): Define with prototype.  Remove
29577         now-unnecessary declaration, if any.
29578         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
29579         regcomp, regexec):
29580         Remove now-unnecessary casts among pointer types.
29581         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
29582
29583         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
29584         (free): Remove decl.
29585
29586         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
29587
29588         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
29589         (free): Remove decl.
29590
29591         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
29592         * lib/xgetcwd.c: Likewise.
29593
29594         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
29595         (free): Remove decl.
29596
29597         * lib/strchrnul.c (strchrnul): Define with a prototype.
29598         Fix bug: c_in was not converted to char before searching.
29599
29600         The following changes are not K&R related:
29601
29602         * lib/group-member.h: Include <sys/types.h>, so that this file is
29603         self-contained.
29604         * lib/makepath.h: Likewise.
29605
29606         * lib/getusershell.c (readname, default_index, line_size, readname):
29607         Use size_t, not int, for sizes.
29608         (readname): If the size overflows, report an error instead of
29609         looping forever.
29610
29611 2003-09-09  Paul Eggert  <eggert@twinsun.com>
29612
29613         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
29614         libc.
29615
29616 2003-09-09  Paul Eggert  <eggert@twinsun.com>
29617
29618         * README: New section: portability guidelines.
29619
29620 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
29621
29622         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
29623         C89 spec.
29624
29625 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
29626
29627         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
29628
29629 2003-09-08  Paul Eggert  <eggert@twinsun.com>
29630
29631         Assume C89 or better; remove K&R cruft.
29632         A few of these changes were first proposed by Derek Robert Price
29633         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
29634
29635         * lib/addext.c: Include <string.h> unconditionally.
29636         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
29637         Don't declare getenv or malloc.
29638
29639         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
29640         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
29641         (NULL): Remove.
29642         (find_stack_direction, alloca): Use prototypes.
29643
29644         * lib/atexit.c (atexit): Define using a prototype.
29645
29646         * lib/basename.c, dirname.c, stripslash.c:
29647         Include <string.h> unconditionally.
29648
29649         * lib/bcopy.c: Include <stddef.h>.
29650         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
29651
29652         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
29653
29654         * lib/error.h (error, error_at_line, error_print_progname)
29655         [! (defined (__STDC__) && __STDC__)]: Remove decls.
29656         * lib/error.c: Include error.h first, to check interface.
29657         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
29658         (VA_START): Remove; all uses changeed to va_start.
29659         (exit, strerror): Remove decls.
29660         (error_print_progname): Prototype uncondionally.
29661         Don't include <errno.h>; no longer needed.
29662         (private_strerror): Remove.
29663         (error_tail): Always define.
29664         (error, error_at_line): Assume C89 or better; always use prototypes.
29665         * lib/fatal.c: Include "fatal.h" first, to test interface.
29666         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
29667         (VA_START): Remove; all uses changed to va_start.
29668         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
29669         this case.
29670         (exit): Remove decl.
29671         (fatal): Prototype unconditionally.  Assume va_start works.
29672         Abort at end, to pacify gcc.
29673
29674         * lib/euidaccess.c (main): Define with a prototype.
29675
29676         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
29677
29678         * lib/exitfail.c: Include <stdlib.h> unconditionally.
29679
29680         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
29681         prototypes.
29682         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
29683         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
29684         (getenv): Remove decl.
29685         (fnmatch): Define using a prototype.
29686         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
29687         (FCT): Define using a prototype.
29688
29689         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
29690
29691         * lib/gethostname.c: Include <stddef.h>.
29692         (gethostname): Define with prototype.  Length is size_t, not int.
29693
29694 2003-09-08  Paul Eggert  <eggert@twinsun.com>
29695
29696         Assume C89 or better; remove K&R cruft.
29697         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
29698         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
29699         string.h, getenv, malloc.
29700         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
29701         headers.
29702         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
29703         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
29704         do not check for strerror.
29705         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
29706         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
29707         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
29708         do not check for doprnt or vprintf.
29709         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
29710         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
29711
29712 2003-09-08  Paul Eggert  <eggert@twinsun.com>
29713
29714         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
29715         getversion.c should have been removed then, but was accidentally
29716         preserved.
29717
29718         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
29719         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
29720
29721 2003-09-08  Karl Berry  <karl@gnu.org>
29722
29723         * config/config.sub, config.guess, srclistvars.sh: update from savannah
29724                 config, forget about prep.
29725
29726         * config/depcomp, missing: update from automake.
29727
29728 2003-09-07  Paul Eggert  <eggert@twinsun.com>
29729
29730         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
29731         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
29732
29733 2003-09-07  Paul Eggert  <eggert@twinsun.com>
29734
29735         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
29736         copy_tm_result.  Bug reported by Simon Josefsson in
29737         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
29738
29739 2003-09-06  Paul Eggert  <eggert@twinsun.com>
29740
29741         * m4/time_r.m4: New file.
29742         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
29743         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
29744         is. Check for timegm declaration.
29745         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
29746         Do not check for gmtime_r.
29747         Replace mktime if __mktime_internal does not exist and if mktime
29748         hasn't been replaced already.
29749
29750 2003-09-06  Paul Eggert  <eggert@twinsun.com>
29751
29752         * lib/time_r.c, lib/time_r.h: New files.
29753
29754         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
29755         __localtime_r.
29756         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
29757         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
29758
29759         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
29760         __gmtime_r.
29761         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
29762         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
29763         Include <time_r.h>.
29764
29765         * lib/timegm.c: Switch to glibc implementation, with the following
29766         changes:
29767         [defined HAVE_CONFIG_H]: Include <config.h>.
29768         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
29769         (__mktime_internal) [!defined _LIBC]: New decl.
29770         (__gmtime_r) [!defined _LIBC]: New macro and function.
29771         (timegm): Use a prototype, since gnulib assumes C89.
29772         Do not bother declaring tmp to be const, as it's not really usefu.
29773         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
29774         (timegm): Declare only if HAVE_DECL_TIMEGM.
29775
29776 2003-09-06  Paul Eggert  <eggert@twinsun.com>
29777
29778         * MODULES.html.sh (func_all_modules): Add time_r.
29779         * modules/time_r: New file.
29780         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
29781         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
29782
29783 2003-09-03  Paul Eggert  <eggert@twinsun.com>
29784
29785         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
29786         Bug reported by Lute Kamstra in
29787         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
29788
29789         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
29790         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
29791         course with correspondingly smaller numbers for tomorrow and
29792         yesterday.  From Tadayoshi Funaba.  Originally installed into
29793         sh-utils on 1999-08-07, but the patch got lost (I guess during the
29794         coreutils merge?).
29795
29796 2003-08-31  Simon Josefsson  <jas@extundo.com>
29797
29798         * modules/timegm: New file.
29799         * MODULES.html.sh (func_all_modules): Add timegm.
29800
29801 2003-08-31  Simon Josefsson  <jas@extundo.com>
29802
29803         * m4/timegm.m4: New file.
29804
29805 2003-08-31  Simon Josefsson  <jas@extundo.com>
29806
29807         * lib/timegm.h: New file.
29808         * lib/timegm.c: New file.  Based on
29809         wget-1.8.2/src/http.c:mktime_from_utc.
29810
29811 2003-08-31  Karl Berry  <karl@gnu.org>
29812
29813         * lib/argp.h: update from libc.
29814
29815 2003-08-28  Bruno Haible  <bruno@clisp.org>
29816
29817         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
29818         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
29819         followed by '#define fnmatch fnmatch_posix' gives an error.
29820
29821 2003-08-28  Bruno Haible  <bruno@clisp.org>
29822
29823         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
29824         warning on QNX, which defines O_BINARY to 000000.
29825
29826 2003-08-27  Jim Meyering  <jim@meyering.net>
29827
29828         * m4/mkstemp.m4: Require that the system mkstemp be able to create
29829         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
29830         would fail after 32.  Reported by Danny Levinson.  Details here:
29831         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
29832
29833 2003-08-24  Bruno Haible  <bruno@clisp.org>
29834
29835         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
29836         MSVC7 <stdio.h> is included later.
29837
29838 2003-08-22  Simon Josefsson  <jas@extundo.com>
29839
29840         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
29841
29842 2003-08-20  Karl Berry  <karl@gnu.org>
29843
29844         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
29845
29846 2003-08-20  Bruno Haible  <bruno@clisp.org>
29847
29848         * modules/progname: New file.
29849         * MODULES.html.sh (func_all_modules): Add progname.
29850
29851 2003-08-20  Bruno Haible  <bruno@clisp.org>
29852
29853         * lib/progname.h: New file, from GNU gettext.
29854         * lib/progname.c: New file, from GNU gettext.
29855         * lib/progreloc.c: New file, from GNU gettext.
29856
29857 2003-08-19  Jim Meyering  <jim@meyering.net>
29858
29859         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
29860         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
29861
29862 2003-08-19  Bruno Haible  <bruno@clisp.org>
29863
29864         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
29865         more.
29866
29867 2003-08-19  Bruno Haible  <bruno@clisp.org>
29868
29869         * lib/xstrdup.c: Assume <string.h> exists.
29870
29871 2003-08-18  Paul Eggert  <eggert@twinsun.com>
29872
29873         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
29874         in makefile rules.
29875
29876 2003-08-18  Jim Meyering  <jim@meyering.net>
29877
29878         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
29879         * m4/lib-ld.m4: Likewise.
29880
29881 2003-08-18  Jim Meyering  <jim@meyering.net>
29882
29883         * lib/setenv.h: Indent nested cpp directive.
29884         * lib/vasnprintf.c: Remove trailing blanks.
29885
29886 2003-08-17  Simon Josefsson  <jas@extundo.com>
29887
29888         * modules/xstrndup: New file.
29889         * MODULES.html.sh (func_all_modules): Add xstrndup.
29890
29891 2003-08-17  Simon Josefsson  <jas@extundo.com>
29892
29893         * modules/argp: Fix autoconf macro name. Add more dependencies.
29894
29895 2003-08-17  Simon Josefsson  <jas@extundo.com>
29896
29897         * m4/xstrndup.m4: New file.
29898
29899 2003-08-17  Simon Josefsson  <jas@extundo.com>
29900
29901         * m4/argp.m4: New file.
29902
29903 2003-08-17  Simon Josefsson  <jas@extundo.com>
29904             Bruno Haible  <bruno@clisp.org>
29905
29906         * lib/xstrndup.h: New file.
29907         * lib/xstrndup.c: New file.
29908
29909 2003-08-17  Bruno Haible  <bruno@clisp.org>
29910
29911         * modules/strndup (Files, Include): Add lib/strndup.h.
29912
29913 2003-08-17  Bruno Haible  <bruno@clisp.org>
29914
29915         * modules/euidaccess (Files): Add lib/euidaccess.h.
29916
29917 2003-08-17  Bruno Haible  <bruno@clisp.org>
29918
29919         * lib/strndup.h: New file.
29920
29921 2003-08-17  Bruno Haible  <bruno@clisp.org>
29922
29923         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
29924         like AC_GNU_SOURCE.
29925         * modules/extensions (configure.ac): Comment out the invocation of
29926         gl_USE_SYSTEM_EXTENSIONS.
29927
29928 2003-08-16  Paul Eggert  <eggert@twinsun.com>
29929
29930         Merges from coreutils, etc.
29931         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
29932         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
29933         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
29934         fixing a typo.
29935         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
29936         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
29937
29938 2003-08-16  Paul Eggert  <eggert@twinsun.com>
29939
29940         Document merge from coreutils.
29941         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
29942         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
29943         * modules/utime: Add m4/utimes-null.m4.
29944
29945 2003-08-16  Paul Eggert  <eggert@twinsun.com>
29946
29947         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
29948         space, undoing this 2003-08-12 change:
29949         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
29950
29951 2003-08-16  Paul Eggert  <eggert@twinsun.com>
29952
29953         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
29954         strtoul.c from libc, undoing this 2003-08-12 change:
29955         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
29956
29957 2003-08-16  Jim Meyering  <jim@meyering.net>
29958
29959         Merges from coreutils.
29960         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
29961         prefix.  Adjust cache variables similarly.  Create 500 rather than
29962         just 300 files, to exercise bug on Darwin6.5, too.
29963         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
29964         $missing_dir.
29965         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
29966         AM_SYS_POSIX_TERMIOS.
29967         Reported by mkc@mathdogs.com.
29968         Also change use of $am_cv_sys_posix_termios
29969         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
29970         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
29971         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
29972         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
29973         in /proc/mounts until it finds one with matching device number.  This
29974         is unnecessary when the FILE argument *is* a mount point.  No stat call
29975         is necessary in that case.  So, disable the statvfs-testing code on
29976         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
29977         as RedHat bug# 84846.
29978         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
29979         to 1MB, so as not to render systems with no stack size limit (e.g.,
29980         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
29981         Include <unistd.h>.  On some systems,
29982         it is required for the definition of _SC_PAGESIZE.
29983
29984 2003-08-16  Jim Meyering  <jim@meyering.net>
29985
29986         Merge from coreutils.
29987         * lib/xstrtoimax.c: #else #if -> #elif.
29988         * lib/xstrtoumax.c: Likewise.
29989
29990 2003-08-16  Jim Meyering  <jim@meyering.net>
29991
29992         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
29993         * m4/utimes.m4: Removed.
29994         * m4/utimes-null.m4: Renamed from utimes.m4.
29995
29996         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
29997         to 1MB, so as not to render systems with no stack size limit (e.g.,
29998         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
29999         Include <unistd.h>.  On some systems,
30000         it is required for the definition of _SC_PAGESIZE.
30001
30002 2003-08-16  Jim Meyering  <jim@meyering.net>
30003         and Paul Eggert  <eggert@cs.ucla.edu>
30004
30005         Merges from coreutils, etc.
30006
30007         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
30008         using the latest version from cvs.  This avoids problems with #line
30009         directives using a vendor (Sun) compiler.
30010         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
30011         Don't set GETGROUPS_LIB here; now it's
30012         done via getgroups.m4's wrapper function.
30013         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
30014         rather than just in sh-util/configure.in, so that the
30015         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
30016         same.
30017         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
30018         AC_FUNC_GETLOADAVG where to find getloadavg.c.
30019         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
30020         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
30021         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
30022         Remove code that is now done by the newly-required macros.
30023         Append $(EXEEXT) to DF_PROG.
30024         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
30025         Do not invoke or require the following here,
30026         since prereq.m4 or some gnulib .m4 now does this for us:
30027         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
30028         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
30029         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
30030         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
30031         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
30032         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
30033         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
30034         AC_FUNC_OBSTACK.
30035         Do not replace the following functions, as this is now the job
30036         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
30037         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
30038         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
30039         atexit getpass, strdup, getpagesize.
30040         Replace 'raise'.
30041         Do not check for the following functions, as this is now the job
30042         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
30043         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
30044         setregid.
30045         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
30046         Check for sys/sysctl.h.
30047         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
30048         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
30049         of checking for ssize_t ourselves.
30050
30051         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
30052         Require every macro that gnulib/modules/* suggests for us.
30053         (jm_PREREQ_ADDEXT): New macro.
30054         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
30055         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
30056
30057         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
30058         (gl_PHYSMEM): Use it.
30059         Also check for `table' function.
30060         Check for new headers and functions.
30061         Add check for sys/sysmp.h.
30062         With suggestions from Kaveh Ghazi.
30063         Ignore headers that are present but cannot be compiled.  This
30064         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
30065         C 5.4.
30066
30067 2003-08-15  Paul Eggert  <eggert@twinsun.com>
30068
30069         Document merge from coreutils.
30070         * modules/userspec: Depend on posixver.
30071         * modules/strftime: Depend on tzset.
30072
30073 2003-08-15  Paul Eggert  <eggert@twinsun.com>
30074
30075         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
30076         rather than tab, after '#' in shell-script copyright notices.
30077         Suggested by Bruno Haible.
30078
30079 2003-08-15  Paul Eggert  <eggert@twinsun.com>
30080
30081         * config/srclist-update: Use three spaces, rather than tab, after '#'
30082         in shell-script copyright notices.  Suggested by Bruno Haible.
30083         Remove unnecessary parenthesization in regular expression.
30084
30085 2003-08-15  Jim Meyering  <jim@meyering.net>
30086
30087         Merge from coreutils.
30088         * lib/xgethostname.c: Include <stdlib.h>.
30089         (xghostname): Don't exit for anything other than memory-related
30090         failure; just return NULL.
30091         * lib/userspec.c: Include "posixver.h".
30092         (parse_user_spec): Accept `.' as a separator only
30093         in pre-POSIX-200112 mode.
30094         * lib/strtoimax.c: Use #elif rather than #else #if.
30095         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
30096         Remove function, now that we can rely on a working tzset function.
30097         [!_LIBC]: Ensure that the required autoconf test has been run.
30098         [!defined _NL_CURRENT && HAVE_STRFTIME]:
30099         Use underlying_strftime for %r.
30100         * lib/sha.c: Merge in some clean-up and optimization changes from
30101         glibc.
30102         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
30103         Ensure that it is a multiple of 64.
30104         Rearrange loop exit tests so as to avoid performing an
30105         additional fread after encountering an error or EOF.
30106         * lib/realloc.c: Update copyright date.
30107
30108 2003-08-15  Jim Meyering  <jim@meyering.net>
30109         and Paul Eggert  <eggert@twinsun.com>
30110
30111         Merge from coreutils.
30112         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
30113         member but strut utmpx does not.  Needed for AIX 4.3.3.
30114         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
30115
30116 2003-08-15  Jim Meyering  <jim@meyering.net>
30117         and Paul Eggert  <eggert@cs.ucla.edu>
30118
30119         Merges from coreutils, etc.
30120         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
30121         Require gl_FUNC_TZSET_CLOBBER.
30122         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
30123         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
30124         members.
30125
30126 2003-08-14  Paul Eggert  <eggert@twinsun.com>
30127
30128         Help the merge from coreutils.
30129         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
30130         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
30131         * m4/tzset.m4: Use it too.
30132
30133 2003-08-14  Paul Eggert  <eggert@twinsun.com>
30134
30135         * modules/tzset: New file.
30136
30137 2003-08-14  Jim Meyering  <jim@meyering.net>
30138
30139         Merges from coreutils.
30140         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
30141         variable names, rather than @FNMATCH_H@.
30142         * modules/alloca: Likewise for $(ALLOCA_H).
30143
30144         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
30145         the three copies of the literal target, `fnmatch.h'.
30146         * modules/alloca (alloca.h): Likewise.
30147
30148 2003-08-14  Jim Meyering  <jim@meyering.net>
30149
30150         Merge from coreutils.
30151         * m4/tzset.m4: New file.
30152         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
30153         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
30154         otherwise, AIX 5.1 systems would end up using the latter.
30155         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
30156         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
30157         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
30158         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
30159
30160 2003-08-14  Jim Meyering  <jim@meyering.net>
30161
30162         Merge from coreutils.
30163         * lib/obstack.h: Whitespace changes.
30164         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
30165         and xcalloc return values.
30166         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
30167         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
30168         hang on OSF/1 5.1 for DIR on both local and remote file systems.
30169         Reported by (and fix confirmed by) Nelson H. F. Beebe.
30170         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
30171         error from mntctl.
30172         Use mntctl's return value to drive the entry-processing loop, since
30173         we can't rely on the value of the vmt_length member in the last
30174         entry.  On some systems doing so could result in exhausting
30175         virtual memory.  Based in part on a patch from Mike Jetzer.
30176
30177 2003-08-14  Jim Meyering  <jim@meyering.net>
30178         and Paul Eggert  <eggert@twinsun.com>
30179
30180         Merges from coreutils, plus other fixes.
30181         * lib/physmem.c: Merge in portability changes from gcc/libiberty
30182         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
30183         for credits and details.  Thanks to Kaveh Ghazi for helping
30184         to keep these files in sync.
30185         (ARRAY_SIZE): Define it.
30186         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
30187         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
30188         (memcasecmp): Don't assume size_t fits in unsigned int.
30189         Remove casts and duplicate code.
30190         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
30191         (memcpy): Remove definition.
30192         Merge in some clean-up and optimization changes from glibc.
30193         [BLOCKSIZE]: Move definition to top of file.
30194         Ensure that it is a multiple of 64.
30195         Rearrange loop exit tests so as to avoid performing an
30196         additional fread after encountering an error or EOF.
30197         * lib/md5.h (md5_uintptr): Define.
30198         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
30199         return to the initial working directory.  Preserve errno
30200         for caller.
30201         * lib/idcache.c: Include "xalloc.h".
30202         (xmalloc, xrealloc): Remove decls.
30203         (getuser): Remove casts no longer required in C89.
30204         * lib/human.c: Include stdio.h, for sprintf.
30205         * lib/group-member.c: Include "xalloc.h".
30206         (xmalloc, xrealloc): Remove decls.
30207         (get_group_info): Remove casts no longer required in C89.
30208         * lib/getusershell.c (readname): Remove casts no longer required in
30209         C89.
30210         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
30211         * lib/getline.c: Whitespace fix, from coreutils.
30212
30213 2003-08-13  Paul Eggert  <eggert@twinsun.com>
30214
30215         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
30216         Check for isascii.
30217
30218         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
30219         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
30220         Undo previous (whitespace-only) change.
30221
30222 2003-08-13  Paul Eggert  <eggert@twinsun.com>
30223
30224         * lib/exclude.c: Include <ctype.h>
30225         (IN_CTYPE_DOMAIN): New macro.
30226         (is_space): New fn.
30227         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
30228         and empty lines.
30229
30230         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
30231         Undo previous (whitespace-only) change.
30232
30233 2003-08-13  Paul Eggert  <eggert@twinsun.com>
30234
30235         * config/srclist-update: Change update back to the old behavior,
30236         leaving whitespace alone.  Use one 'sed' command rather than a
30237         pipeline.
30238         (fixlicense): Now a variable, not a function.
30239         (remove_trailing_blanks): Remove.
30240         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
30241         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
30242         Undo previous (whitespace-only) change.
30243
30244 2003-08-12  Paul Eggert  <eggert@twinsun.com>
30245
30246         Merge from coreutils.
30247         * modules/euidaccess: Add lib_SOURCES, include for new
30248         file euidaccess.h
30249
30250 2003-08-12  Paul Eggert  <eggert@twinsun.com>
30251
30252         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
30253         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
30254         Normalize leading white space and remove trailing white space.
30255
30256         Merge from coreutils
30257         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
30258
30259         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
30260         0.12.1.  These files are now being upgraded automatically by
30261         ../config/srclist-update.
30262
30263 2003-08-12  Paul Eggert  <eggert@twinsun.com>
30264
30265         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
30266         Normalize leading white space and remove trailing white space.
30267         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
30268         notice, as per ../config/srclist-update.
30269
30270         Merge from coreutils.
30271         * lib/euidaccess.h: New file.
30272         * lib/euidaccess.c: Include it.
30273         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
30274         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
30275         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
30276
30277 2003-08-12  Paul Eggert  <eggert@twinsun.com>
30278
30279         * config/srclist-update: Add copyright notice.
30280         (remove_id_lines, remove_trailing_blanks): New constants.
30281         (fixfile): Use them to normalize spacing a bit in copied files.
30282         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
30283         Normalize leading white space and remove trailing white space.
30284
30285         * config/texinfo.tex: Sync with texinfo.
30286
30287         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
30288         strtoul.c from libc, to merge coreutils whitespace changes.
30289
30290         * config/srclist.txt: Get the following m4 files from gettext:
30291         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
30292         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
30293         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
30294         wint_t.m4.
30295
30296 2003-08-12  Karl Berry  <karl@gnu.org>
30297
30298         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
30299         been made.
30300
30301 2003-08-11  Paul Eggert  <eggert@twinsun.com>
30302
30303         * modules/gnu-source, m4/gnu-source.m4:
30304         Remove; we're assuming Autoconf 2.54 or later now.
30305         Suggested by Bruno Haible.
30306         * MODULES.html.sh (func_all_modules): Remove gnu-source.
30307
30308 2003-08-11  Bruno Haible  <bruno@clisp.org>
30309
30310         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
30311
30312 2003-08-11  Bruno Haible  <bruno@clisp.org>
30313
30314         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
30315         (vasnprintf): Use it instead of wcslen.
30316
30317 2003-08-11  Bruno Haible  <bruno@clisp.org>
30318
30319         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
30320         value to ensure that _Bool promotes to int. Use #define for _Bool when
30321         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
30322
30323 2003-08-10  Karl Berry  <karl@gnu.org>
30324
30325         * lib/regex.h: update from libc (whitespace fix).
30326
30327 2003-08-09  Paul Eggert  <eggert@twinsun.com>
30328
30329         Merge some files from coreutils.  These changes were
30330         originally made by Jim Meyering.
30331         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
30332         many older Unixes require this.
30333         * lib/alloca.c (alloca): Remove cast to argument of free;
30334         no longer needed in C89.
30335         * lib/alloca_.h, regex.h: Fix white space to match
30336         what GNU indent does.
30337
30338 2003-08-09  Paul Eggert  <eggert@twinsun.com>
30339
30340         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
30341         apparently Emacs's Unicode mode got confused before my 2003-08-05
30342         checkin.
30343
30344 2003-08-08  Paul Eggert  <eggert@twinsun.com>
30345
30346         * m4/extensions.m4: New file.
30347         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
30348         Require gl_USE_SYSTEM_EXTENSIONS.
30349         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
30350         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
30351
30352 2003-08-08  Paul Eggert  <eggert@twinsun.com>
30353
30354         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
30355         * modules/extensions, modules/gnu-source: New files.
30356         * modules/timespec, modules/unlocked-io: Depend on extensions.
30357
30358 2003-08-07  Paul Eggert  <eggert@twinsun.com>
30359
30360         * modules/restrict: New file.
30361         * MODULES.html.sh (func_all_modules): Add restrict.
30362         * modules/regex: Depend on restrict.
30363
30364 2003-08-07  Paul Eggert  <eggert@twinsun.com>
30365
30366         * m4/restrict.m4: New file.
30367         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
30368
30369 2003-08-07  Bruno Haible  <bruno@clisp.org>
30370
30371         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
30372         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
30373
30374 2003-08-07  Bruno Haible  <bruno@clisp.org>
30375
30376         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
30377         makes the module 'getndelim2' compatible with the module 'getline'.
30378
30379 2003-08-05  Paul Eggert  <eggert@twinsun.com>
30380
30381         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
30382         byte with "\201" to avoid glitches when editing that source file
30383         with multi-gnome-terminal.
30384
30385 2003-08-05  Paul Eggert  <eggert@twinsun.com>
30386
30387         * lib/bumpalloc.h: Remove.
30388
30389 2003-08-05  Paul Eggert  <eggert@twinsun.com>
30390
30391         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
30392         * modules/bumpalloc: Remove.
30393
30394 2003-08-04  Paul Eggert  <eggert@twinsun.com>
30395
30396         * lib/getloadavg.c: Change copyright notice and spacing to conform to
30397         GNU coding style.
30398
30399         Merge from coreutils.
30400         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
30401         1. From glibc.
30402         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
30403         from Karl Berry, implemented by Jim Meyering.
30404         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
30405         from Dmitry V. Levin.
30406         Remove anachronistic cast of xrealloc.
30407         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
30408         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
30409         type. Otherwise, it wouldn't compile with at least /bin/cc on
30410         ymp-cray-unicos9.0.2.X.
30411         Combine two mostly-identical uses of alloca into one.
30412         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
30413
30414 2003-08-04  Dave Love  <d.love@dl.ac.uk>
30415
30416         [From Emacs.]
30417
30418         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
30419         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
30420         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
30421         obsolete NLIST_NAME_UNION.
30422         [__GNU__]: Undef BSD and FSCALE.
30423         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
30424
30425 2003-08-03  Paul Eggert  <eggert@twinsun.com>
30426
30427         * lib/stdbool_.h (_Bool): Make it signed char, instead of
30428         an enum type, so that it's guaranteed to promote to int.  See:
30429         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
30430
30431 2003-08-03  Karl Berry  <karl@gnu.org>
30432
30433         * config/depcomp: update from automake.
30434
30435 2003-07-31  Paul Eggert  <eggert@twinsun.com>
30436
30437         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
30438         (strerror): Don't assume that a printable int fits in 14 bytes.
30439
30440 2003-07-31  Bruno Haible  <bruno@clisp.org>
30441
30442         * modules/getpass-gnu: New file.
30443         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
30444
30445 2003-07-31  Bruno Haible  <bruno@clisp.org>
30446
30447         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
30448
30449 2003-07-24  Karl Berry  <karl@gnu.org>
30450
30451         * config/missing: update from automake.
30452
30453 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
30454             Bruno Haible  <bruno@clisp.org>
30455
30456         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
30457         * lib/getline.c (getline, getdelim): Likewise.
30458         Remove _GNU_SOURCE define; now it's defined in config.h through
30459         m4/getline.m4.
30460
30461 2003-07-23  Karl Berry  <karl@gnu.org>
30462
30463         * config/config.sub: update from prep.
30464
30465 2003-07-22  Paul Eggert  <eggert@twinsun.com>
30466
30467         * modules/xalloc (Depends-on): Add exitfail.
30468         * modules/xmemcoll: Likewise.
30469
30470 2003-07-22  Paul Eggert  <eggert@twinsun.com>
30471
30472         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
30473         over-parenthesization in macros.
30474
30475         Sync with coreutils.
30476
30477         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
30478         required by C99.
30479
30480         Use `exit_failure' for xalloc and xmemcoll instead of their own
30481         private exit-failure variables.
30482         * lib/xalloc.h (xalloc_exit_failure): Remove.
30483         * lib/xmalloc.c: Likewise.  Include exitfail.h.
30484         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
30485         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
30486         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
30487         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
30488
30489 2003-07-20  Jim Meyering  <jim@meyering.net>
30490
30491         * modules/closeout (Depends-on): Add exitfail.
30492         Suggestion from Bruno Haible.
30493
30494 2003-07-19  Karl Berry  <karl@gnu.org>
30495
30496         * config/config.sub: update from prep.
30497
30498 2003-07-18  Paul Eggert  <eggert@twinsun.com>
30499
30500         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
30501         Remove.
30502         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
30503         to test that it can stand by itself.  Include "exitfail.h".
30504         Clients should set exit_failure instead.
30505         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
30506
30507 2003-07-18  Bruno Haible  <bruno@clisp.org>
30508
30509         * modules/getndelim2: New file.
30510         * modules/getline: Share files with module getndelim2.
30511         * modules/getnline: Depend on getndelim2 instead of sharing files with
30512         it. Add getnline.c to lib_SOURCES.
30513         * MODULES.html.sh (func_all_modules): Add getndelim2.
30514
30515 2003-07-18  Bruno Haible  <bruno@clisp.org>
30516
30517         * m4/getndelim2.m4: New file.
30518         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
30519         invoke gl_PREREQ_GETNDELIM2.
30520         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
30521         gl_PREREQ_GETNDELIM2.
30522         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
30523         gl_GETNDELIM2.
30524
30525 2003-07-18  Bruno Haible  <bruno@clisp.org>
30526
30527         * lib/getndelim2.h: New file.
30528         * lib/getndelim2.c: Make into a module of its own. Include config.h,
30529         getndelim2.h.
30530         (getndelim2): Make non-static. Change return type to ssize_t.
30531         * lib/getline.h: Change argument names.
30532         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
30533         * lib/getnline.c: Include getndelim2.h.
30534
30535 2003-07-18  Andreas Schwab  <schwab@suse.de>
30536
30537         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
30538
30539 2003-07-17  Karl Berry  <karl@gnu.org>
30540
30541         * config/config.sub: update from prep.
30542
30543 2003-07-17  Bruno Haible  <bruno@clisp.org>
30544
30545         * modules/getnline: New file.
30546         * modules/getline: Add lib/getndelim2.c to source file list.
30547         * MODULES.html.sh (func_all_modules): Add getnline.
30548
30549 2003-07-17  Bruno Haible  <bruno@clisp.org>
30550
30551         * m4/getnline.m4: New file.
30552
30553 2003-07-17  Bruno Haible  <bruno@clisp.org>
30554
30555         * m4/Makefile.am.in: Remove file.
30556         * m4/Makefile.am: Remove file.
30557         * m4/Makefile.in: Remove file.
30558
30559 2003-07-17  Bruno Haible  <bruno@clisp.org>
30560
30561         * lib/getnline.h: New file.
30562         * lib/getnline.c: New file.
30563         * lib/getndelim2.c: New file, extracted from getline.c.
30564         (getndelim2): Renamed from getdelim2, with added nmax argument.
30565         * lib/getline.c: Include getndelim2.c.
30566         (getdelim2): Moved out to getndelim2.c.
30567         (getline, getdelim): Update.
30568
30569 2003-07-17  Bruno Haible  <bruno@clisp.org>
30570
30571         * lib/Makefile.am: Remove file.
30572         * lib/Makefile.in: Remove file.
30573
30574 2003-07-17  Bruno Haible  <bruno@clisp.org>
30575
30576         * configure.in: Remove file.
30577         * Makefile.in: Remove file.
30578
30579 2003-07-17  Bruno Haible  <bruno@clisp.org>
30580
30581         * MODULES.html.sh: Put the </BODY> right before </HTML>.
30582
30583 2003-07-16  Karl Berry  <karl@gnu.org>
30584
30585         * config/srclist-update: was running fixlicense twice, which caused
30586                 texinfo.tex to be nullified for some reason.  Simplify,
30587                 $gplsrc is no longer needed as far as I can see?
30588
30589 2003-07-16  Jim Meyering  <jim@meyering.net>
30590
30591         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
30592
30593 2003-07-15  Paul Eggert  <eggert@twinsun.com>
30594
30595         * config/srclist.txt: Get the following files from gettext-runtime/intl
30596         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
30597         ref-del.sin.  From Bruno Haible.
30598         * config/srclist-update (fixfile): Change grep pattern again, since the
30599         previous fix didn't work (there was another trailing $).  Use
30600         '[$]' to escape the $s.
30601
30602 2003-07-15  Karl Berry  <karl@gnu.org>
30603
30604         * lib/vasnprintf.c: update from gettext.
30605
30606 2003-07-15  Karl Berry  <karl@gnu.org>
30607
30608         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
30609         gets expanded when surrounded by '$'.
30610
30611 2003-07-15  Jim Meyering  <jim@meyering.net>
30612
30613         * modules/save-cwd: Don't depend on error.  From Derek Price.
30614
30615 2003-07-15  Jim Meyering  <jim@meyering.net>
30616
30617         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
30618
30619 2003-07-14  Simon Josefsson  <jas@extundo.com>
30620
30621         * modules/mempcpy: New file.
30622         * MODULES.html.sh (func_all_modules): Add mempcpy.
30623
30624 2003-07-14  Simon Josefsson  <jas@extundo.com>
30625
30626         * m4/mempcpy.m4: New file.
30627
30628 2003-07-14  Simon Josefsson  <jas@extundo.com>
30629
30630         * lib/mempcpy.h: New file.
30631         * lib/mempcpy.c: New file.
30632
30633 2003-07-14  Paul Eggert  <eggert@twinsun.com>
30634
30635         * modules/getdate, modules/posixtm: Depend on mktime.
30636
30637 2003-07-14  Paul Eggert  <eggert@twinsun.com>
30638
30639         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
30640         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
30641         unicodeio.c, unicodeio.h, unlocked-io.h:
30642         Switch from LGPL to GPL.
30643
30644 2003-07-14  Paul Eggert  <eggert@twinsun.com>
30645
30646         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
30647         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
30648         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
30649         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
30650         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
30651         updated automatically by ../config/srclist-update.  This changes
30652         their license from LPGL to GPL.
30653
30654 2003-07-14  Paul Eggert  <eggert@twinsun.com>
30655
30656         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
30657         assumed to refer to the root of the most recent stable gettext version.
30658         * config/srclistvars.sh: Add defaults for eggert.
30659         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
30660         Match "This program" as well as "The program".  This is needed
30661         for gettext.
30662
30663 2003-07-14  Jim Meyering  <jim@meyering.net>
30664
30665         Don't emit diagnostics.  Let callers do that.
30666         * lib/save-cwd.c: Don't include "error.h".
30667         (save_cwd): Don't call error.  Ensure that errno is valid
30668         when returning nonzero.
30669
30670         * lib/save-cwd.h (restore_cwd): Update prototype.
30671         * lib/save-cwd.c (restore_cwd): Remove two parameters.
30672         Simplify.  Don't call error upon failure.  Let callers do that.
30673         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
30674         when auditing is enabled.  But don't bother updating the #if.
30675
30676 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
30677
30678         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
30679         it breaks C++ compilation.
30680         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
30681
30682 2003-07-10  Simon Josefsson  <jas@extundo.com>
30683
30684         * modules/strchrnul (Makefile.am): Add strchrnul.h.
30685
30686 2003-07-10  Jim Meyering  <jim@meyering.net>
30687
30688         * m4/clock_time.m4: Remove trailing blank.
30689         * m4/intmax_t.m4: Likewise.
30690
30691 2003-07-10  Jim Meyering  <jim@meyering.net>
30692
30693         * lib/vasnprintf.c: Remove trailing blanks.
30694         Make cpp indentation consistent.
30695
30696 2003-07-09  Paul Eggert  <eggert@twinsun.com>
30697
30698         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
30699         posixver.c, strftime.c, strnlen.c, strverscmp.c:
30700         Switch from LGPL to GPL.
30701
30702 2003-07-09  Paul Eggert  <eggert@twinsun.com>
30703
30704         * config/srclist.txt: Sort sublists.  Add
30705         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
30706         that differ from gnulib for one reason or another; we'd like this list
30707         to be smaller but for now let's document what we have.
30708
30709 2003-07-08  Paul Eggert  <eggert@twinsun.com>
30710
30711         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
30712         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
30713         and sweeter "eval x=$x".
30714         * config/srclist.txt: Get lib/argp* from glibc.
30715
30716 2003-07-07  Paul Eggert  <eggert@twinsun.com>
30717
30718         * lib/mktime.c: Fix some boundary cases and remove need for floating
30719         point.
30720
30721         Issue a compile-time diagnostic if time_t is floating point, or if
30722         two's complement arithmetic is not in effect, or if arithmetic
30723         right shift does not propagate the sign.  These assumptions were
30724         all in the original code but they weren't checked.
30725
30726         (TIME_T_MIDPOINT, verify): New macros.
30727         (__isleap): Remove; it has integer overflow problems.
30728         (leapyear): New function, without those problems.
30729         (ydhms_tm_diff): Remove; splitting into two parts.
30730         (ydhms_diff): New function, containing the arithmetic part of
30731         the old ydhms_tm_diff function.  Issue a compile-time
30732         diagnostic if we are not using C99 integer division.
30733         Avoid casts when possible.
30734         (guess_time_tm): New function, containing the checking part of
30735         the old ydhms_tm_diff function.  Return the new value, rather than
30736         the difference between it and the old.  Accept a new argument T
30737         so that *T specifies the old value.  Check for overflow in the result.
30738
30739         (__mktime_internal): Use a time_t offset, not a long int offset.
30740         This undoes the 2003-06-04 change, which is no longer needed now
30741         that we have better overflow checking.
30742         (localtime_offset): Likewise.
30743
30744         (__mktime_internal): Avoid harmful overflow on hosts where time_t
30745         and long are 64-bit but int is only 32-bit.
30746         (ydhms_diff): Use long int to store year1 and yday1.
30747         Issue a compile-time diagnostic if long int is not wide enough.
30748
30749         (__mktime_internal): Use long int to store adjusted year and yday.
30750         Use plain C rather than preprocessor commands, if that doesn't
30751         affect efficiency.
30752         Check for overflow (and try to repair) after each probe
30753         rather than checking only at the very end.  This avoids some bugs
30754         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
30755         does not equal GMT offset at maximum time).
30756         Use integer to check for overflow rather than floating point; this
30757         is more portable to non-IEEE hosts, and is a tad faster.
30758         When we detect that we are oscillating between two values,
30759         don't check whether tm_isdst has the requested value, since
30760         we already know the answer.  When tm_isdst has the wrong value,
30761         use a different heuristic to find the right one, based on the
30762         extreme values actually observed in practice in tz2003a,
30763         rather than the (overly optimistic) "previous 3 calendar quarters".
30764
30765         (not_equal_tm, print_tm, check_result): Use "const T" rather than
30766         "T const" to accommodate glibc style.
30767         (check_result): Use less-confusing report format.  "long" -> "long int.
30768         (main): Likewise.
30769         Don't loop if the iteration overflows time_t.
30770         Allow a negative step in the iteration.
30771
30772 2003-07-06  Karl Berry  <karl@gnu.org>
30773
30774         * config/depcomp: update from automake.
30775         * config/config.sub: update from prep.
30776
30777 2003-07-03  Karl Berry  <karl@gnu.org>
30778
30779         * config/config.guess: update from prep.
30780
30781 2003-07-01  Paul Eggert  <eggert@twinsun.com>
30782
30783         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
30784         xreadlink.c now includes it unconditionally.
30785
30786 2003-07-01  Paul Eggert  <eggert@twinsun.com>
30787
30788         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
30789         having it depend on HAVE_SYS_TYPES_H.
30790
30791 2003-07-01  Bruno Haible  <bruno@clisp.org>
30792
30793         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
30794         <sys/types.h> should be sufficient.
30795         Reported by Paul Eggert.
30796
30797 2003-06-26  Karl Berry  <karl@gnu.org>
30798
30799         * config/depcomp: update from automake.
30800
30801 2003-06-26  Bruno Haible  <bruno@clisp.org>
30802
30803         * modules/human: Depend on module stdbool.
30804
30805 2003-06-25  Bruno Haible  <bruno@clisp.org>
30806
30807         * modules/readlink: New file.
30808         * modules/xreadlink: Depend on it.
30809         * MODULES.html.sh (func_all_modules): Add readlink.
30810
30811 2003-06-25  Bruno Haible  <bruno@clisp.org>
30812
30813         * m4/readlink.m4: New file.
30814
30815 2003-06-25  Bruno Haible  <bruno@clisp.org>
30816
30817         * lib/readlink.c: New file.
30818
30819 2003-06-22  Karl Berry  <karl@gnu.org>
30820
30821         * config/srclist.txt: update mkinstalldirs from automake.
30822         * config/mkinstalldirs: update.
30823
30824 2003-06-22  Bruno Haible  <bruno@clisp.org>
30825
30826         Portability to mingw32.
30827         * m4/ssize_t.m4: New file, from GNU gettext.
30828         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
30829         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
30830
30831 2003-06-22  Bruno Haible  <bruno@clisp.org>
30832
30833         * modules/safe-read: Add m4/ssize_t.m4.
30834         * modules/xreadlink: Add m4/ssize_t.m4.
30835
30836 2003-06-20  Bruno Haible  <bruno@clisp.org>
30837
30838         Assume C89, so PARAMS isn't needed.
30839         * lib/unicodeio.h (PARAMS): Remove.
30840         * lib/unicodeio.c: Don't use PARAMS.
30841
30842 2003-06-18  Karl Berry  <karl@gnu.org>
30843
30844         * config/config.{guess,sub}: update from prep.
30845
30846 2003-06-18  Jim Meyering  <jim@meyering.net>
30847
30848         Merge changes from coreutils.
30849         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
30850         Remove explicit declarations of xmalloc and realloc.
30851         Include xalloc.h.
30852         (read_utmp): Remove anachronistic cast of xmalloc.
30853
30854 2003-06-17  Paul Eggert  <eggert@twinsun.com>
30855
30856         Assume C89, so PARAMS isn't needed.
30857         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
30858         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
30859         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
30860         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
30861         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
30862         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
30863         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
30864         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
30865         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
30866         lib/xstrtod.h, lib/xstrtol.h: Likewise.
30867         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
30868         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
30869         no longer needed. Anyway, config.h should always be included before any
30870         other file.
30871
30872 2003-06-11  Simon Josefsson  <jas@extundo.com>
30873
30874         * modules/sysexits: New file.
30875         * MODULES.html.sh (func_all_modules): Add sysexits.
30876
30877 2003-06-11  Simon Josefsson  <jas@extundo.com>
30878
30879         * lib/sysexit_.h: New file.
30880
30881 2003-06-11  Derek Price  <derek@ximbiot.com>
30882
30883         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
30884         necessary.
30885
30886 2003-06-11  Bruno Haible  <bruno@clisp.org>
30887
30888         * m4/sysexits.m4: New file.
30889
30890 2003-06-10  Simon Josefsson  <jas@extundo.com>
30891
30892         * lib/argp.h: New file, from glibc.
30893         * lib/argp-ba.c: New file, from glibc.
30894         * lib/argp-eexst.c: New file, from glibc.
30895         * lib/argp-fmtstream.c: New file, from glibc.
30896         * lib/argp-fmtstream.h: New file, from glibc.
30897         * lib/argp-fs-xinl.c: New file, from glibc.
30898         * lib/argp-help.c: New file, from glibc.
30899         * lib/argp-namefrob.h: New file, from glibc.
30900         * lib/argp-parse.c: New file, from glibc.
30901         * lib/argp-pv.c: New file, from glibc.
30902         * lib/argp-pvh.c: New file, from glibc.
30903         * lib/argp-xinl.c: New file, from glibc.
30904
30905 2003-06-10  Simon Josefsson  <jas@extundo.com>
30906
30907         * modules/strchrnul: New file.
30908
30909 2003-06-10  Simon Josefsson  <jas@extundo.com>
30910
30911         * modules/argp: New file.
30912
30913 2003-06-10  Simon Josefsson  <jas@extundo.com>
30914
30915         * m4/strchrnul.m4: New file.
30916
30917 2003-06-10  Simon Josefsson  <jas@extundo.com>
30918
30919         * lib/strchrnul.h: New file.
30920         * lib/strchrnul.c: New file.
30921
30922 2003-06-10  Bruno Haible  <bruno@clisp.org>
30923
30924         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
30925
30926 2003-06-07  Karl Berry  <karl@gnu.org>
30927
30928         * config/config.{guess,sub}: update from prep.
30929
30930 2003-06-07  Jim Meyering  <jim@meyering.net>
30931
30932         * modules/strtod: Use $(...) notation, not @...@ for
30933         AC_REPLACE'd variables.
30934         * modules/localcharset: Likewise.
30935
30936 2003-06-07  Jim Meyering  <jim@meyering.net>
30937
30938         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
30939         in place of my name in the copyright comment.
30940         Remove definition and uses of __P.
30941
30942         From coreutils.
30943         * lib/stat.c: Don't declare xmalloc explicitly.
30944         Instead, include "xalloc.h".
30945         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
30946         xrealloc, and xcalloc return values.
30947         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
30948         Improve comment.
30949         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
30950
30951 2003-06-07  Bruno Haible  <bruno@clisp.org>
30952
30953         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
30954         avoid AC_CONFIG_LINKS.
30955         * modules/fnmatch (Makefile.am): Use explicit creation rule for
30956         fnmatch.h, to avoid AC_CONFIG_LINKS.
30957         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
30958
30959 2003-06-07  Bruno Haible  <bruno@clisp.org>
30960
30961         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
30962         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
30963         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
30964         directory.
30965         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
30966         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
30967         directory.
30968
30969 2003-06-06  Jim Meyering  <jim@meyering.net>
30970
30971         Merge from coreutils.
30972         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
30973         Consolidate declarations and initializations of *_base* locals.
30974
30975         Merge from coreutils.
30976         This avoids a core dump on systems without GNU putenv,
30977         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
30978         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
30979         (unsetenv): New static function, from GNU libc.
30980         (rpl_putenv): Use it.
30981
30982         * lib/modechange.c: Remove trailing blanks.
30983
30984         Merge from coreutils.
30985         * lib/fsusage.c: Remove declaration of statfs.
30986         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
30987
30988         * lib/posixtm.c: Include <stdbool.h> unconditionally.
30989
30990 2003-06-06  Jim Meyering  <jim@meyering.net>
30991
30992         * lib/stdbool_.h: Renamed from stdbool.h.in.
30993
30994 2003-06-06  Jim Meyering  <jim@meyering.net>
30995             Bruno Haible  <bruno@clisp.org>
30996
30997         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
30998         Adjust Makefile.am snippet not to redirect directly to target.
30999         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
31000
31001 2003-06-05  Paul Eggert  <eggert@twinsun.com>
31002
31003         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
31004         mismatch, look in future quarters as well as past.  This fixes a
31005         bug when processing fall-backwards gaps immediately after a long
31006         period of daylight-saving time.
31007
31008         * lib/mktime.c: Assume freestanding C89 or better.
31009         (HAVE_LIMITS_H): Remove.  Assume it's 1.
31010         (__P): Remove; not used.
31011         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
31012         (mktime, not_equal_tm, print_tm, check_result,
31013         main): Use prototypes.  Use const * where appropriate.
31014         (main): Fix typo in testing code that uncovered by above changes.
31015         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
31016
31017 2003-06-04  Paul Eggert  <eggert@twinsun.com>
31018
31019         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
31020         locale.h, localeconv.  This merges changes from coreutils.
31021
31022         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
31023         It can be removed after the next Autoconf is released.
31024         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
31025         needed.
31026
31027 2003-06-04  Paul Eggert  <eggert@twinsun.com>
31028
31029         * lib/mktime.c: Fix Debian bug 177940
31030         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
31031         (localtime_offset): Now long int, not time_t, because we want it
31032         to be guaranteed to be signed.  All uses changed.
31033         (__mktime_internal): If overflow would occur when adding offset,
31034         don't add it.
31035
31036         Merge 'human' changes from coreutils.  Rewrite to support
31037         locale-specific notations like thousands separators.
31038         * lib/human.c: Simplify authorship notice.
31039         Include human.h immediately after config.h.
31040         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
31041         <limits.h>: Do not include, since human.h does.
31042         (SIZE_MAX, UINTMAX_MAX): New macros.
31043         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
31044         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
31045         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
31046         (power_letter): Renamed from suffixes.
31047         (generate_suffix_backwards): Remove.
31048         (adjust_value): Now takes int style (because of human.h changes)
31049         and long double value (for greater precision on some platforms).
31050         (group_number): New function.
31051         (human_readable): Use it.  Use integer options, not enum.
31052         Put the options before the sizes in the arg list.
31053         Support all the new options.
31054         The old human_readable function has been removed;
31055         use inttostr.h instead.
31056         (human_readable, default_block_size, humblock):
31057         Use uintmax_t, not int, for block sizes.
31058         (human_readable_inexact, block_size_types): Remove.
31059         (block_size_opts): New constant.
31060         (human_options): Renamed from human_block_size, with new signature
31061         that allows block sizes up to UINTMAX_MAX.  All callers changed.
31062         * lib/human.h: Add copyright and authorship notice.
31063         Include <limits.h> and <stdbool.h> unconditionally.
31064         (PARAMS): Remove.  All uses removed.
31065         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
31066         (enum human_inexact_style): Remove tag; now a nameless enum.
31067         (human_floor, human_ceiling, human_round_to_even): Now have
31068         values 2, 0, 1 rather than -1, 1, 0.
31069         (human_group_digits, human_suppress_point_zero, human_autoscale,
31070         human_base_1024, human_SI, human_B): New constants.
31071         (human_readable_inexact, human_block_size): Remove.
31072         (human_readable): Size args are now uintmax_t, not int.
31073         (human_options): New decl.
31074
31075         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
31076         unnecessary now that we assume C89 or better.  This change
31077         imported from coreutils.
31078
31079         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
31080         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
31081         in the 2003-05-30 sync from glibc.
31082
31083         .h files should stand alone, but we shouldn't include <sys/types.h>
31084         if we can get away with just <stddef.h>.
31085
31086         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
31087         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
31088         rather than <sys/types.h>, as we merely need size_t.
31089         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
31090         to get size_t.
31091         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
31092         Include <stdio.h>, to get FILE.
31093         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
31094         memcasecmp.h has included <stddef.h> and all we need is size_t.
31095         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
31096         our interface, instead of including <sys/types.h>
31097
31098 2003-06-04  Paul Eggert  <eggert@twinsun.com>
31099
31100         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
31101         now, as glibc mktime is buggy on non-glibc systems.
31102
31103 2003-06-03  Karl Berry  <karl@gnu.org>
31104
31105         * config/config.sub: update from prep.
31106
31107 2003-06-02  Paul Eggert  <eggert@twinsun.com>
31108
31109         [from coreutils]
31110         Fix some minor time-related bugs with POSIX time arguments.
31111         Some valid time stamps were being rejected (notably -1, and
31112         time stamps before 1900 on 64-bit hosts).  And some invalid
31113         time stamps were being accepted, e.g. September 31.
31114
31115         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
31116         that we can return (time_t) -1 successfully.
31117         * lib/posixtm.c: Likewise.
31118         [HAVE_STDBOOL_H]: Include <stdbool.h>.
31119         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
31120         (t): Remove static var.
31121         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
31122         of static var.  All uses changed.
31123         (year): Do not reject years before 1900; they can occur with
31124         64-bit time_t.
31125         (posix_time_parse): Do not check for out-of-range components;
31126         that is now the caller's responsibility, since our checks were
31127         only approximations.
31128         (posixtime): Use mktime to check for out-of-range components,
31129         since it knows them exactly.
31130         If mktime returns (time_t) -1, check whether an error actually occurred
31131         by invoking localtime on -1.
31132         (main) [TEST_POSIXTIME]: Check for input data errors, and report
31133         posixtime failures better.
31134         Improve the test data (in comments only).
31135
31136 2003-06-02  Karl Berry  <karl@gnu.org>
31137
31138         * config/mkinstalldirs (version): new variable.
31139         (--version): new option.
31140         (usage): improve message.
31141
31142 2003-05-30  Karl Berry  <karl@gnu.org>
31143
31144         * lib/mktime.c: update from libc.
31145
31146 2003-05-30  Bruno Haible  <bruno@clisp.org>
31147
31148         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
31149         * config/config.rpath: Upgrade to gettext-0.12.1.
31150
31151 2003-05-30  Bruno Haible  <bruno@clisp.org>
31152
31153         * m4/gettext.m4: Upgrade to gettext-0.12.1.
31154         * m4/nls.m4: New file, from gettext-0.12.1.
31155         * m4/po.m4: New file, from gettext-0.12.1.
31156         * m4/progtest.m4: Upgrade to gettext-0.12.1.
31157
31158 2003-05-30  Bruno Haible  <bruno@clisp.org>
31159
31160         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
31161         * lib/localcharset.h: Likewise.
31162         * lib/localcharset.c: Likewise.
31163
31164 2003-05-29  Karl Berry  <karl@gnu.org>
31165
31166         * config/config.rpath: update from gettext.
31167
31168 2003-05-28  Paul Eggert  <eggert@twinsun.com>
31169
31170         Assume the headers required for C89 freestanding compilers.
31171         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
31172         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
31173         * m4/human.m4 (gl_HUMAN): Likewise.
31174         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
31175         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
31176         * m4/userspec.m4 (gl_USERSPEC): Likewise.
31177         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
31178         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
31179         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
31180
31181 2003-05-28  Paul Eggert  <eggert@twinsun.com>
31182
31183         Assume the headers required for C89 freestanding compilers.
31184         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
31185         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
31186         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
31187         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
31188         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
31189         define, since <limits.h> is guaranteed to do that.
31190         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
31191         * lib/exclude.c: Include <stdbool.h> unconditionally.
31192         * lib/tempname.c: Include <stddef.h> unconditionally.
31193         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
31194         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
31195         <stddef.h> does that.
31196         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
31197         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
31198         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
31199         needed.
31200         * lib/xstrtol.c: Likewise.
31201         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
31202         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
31203
31204         * lib/addext.c (addext): Use assignment rather than cast, to avoid
31205         warnings on some platforms.
31206
31207         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
31208         arbitrarily.
31209
31210 2003-05-26  Jim Meyering  <jim@meyering.net>
31211
31212         Merge in a change from coreutils:
31213         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
31214         that is guaranteed to be `no'.  Use `no_such_member' to indicate
31215         that condition, rather than `-1' which is slightly misleading.
31216         Change the name of the cache variable to have the gl_ prefix.
31217         Prompted by a patch from Richard Dawe for DJGPP.
31218
31219 2003-05-24  Karl Berry  <karl@gnu.org>
31220
31221         * config/config.guess: update from prep.
31222
31223 2003-05-22  Karl Berry  <karl@gnu.org>
31224
31225         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
31226
31227 2003-05-20  Karl Berry  <karl@gnu.org>
31228
31229         * config/config.guess: update from prep.
31230
31231 2003-05-18  Karl Berry  <karl@gnu.org>
31232
31233         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
31234         might actually be set by the user.
31235
31236         * config/depcomp, install-sh, mdate-sh: update from automake.
31237
31238 2003-05-17  Bruno Haible  <bruno@clisp.org>
31239
31240         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
31241         invalid expansion for AC_EGREP_CPP.
31242         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
31243         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
31244         Suggested by Akim Demaille <akim@epita.fr> in
31245         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
31246
31247 2003-05-12  Jim Meyering  <jim@meyering.net>
31248
31249         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
31250         the space-padded-by-default conversion specifiers, %e, %k, %l.
31251
31252 2003-05-12  Bruno Haible  <bruno@clisp.org>
31253
31254         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
31255         the string is longer than 4 KB.
31256
31257 2003-05-11  Karl Berry  <karl@gnu.org>
31258
31259         * config/config.{guess,sub}: update from prep.
31260
31261 2003-05-09  Bruno Haible  <bruno@clisp.org>
31262
31263         * modules/error: Add m4/strerror_r.m4 to file list.
31264
31265 2003-05-03  Bruno Haible  <bruno@clisp.org>
31266
31267         Upgrade to Unicode-4.0.
31268         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
31269         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
31270         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
31271         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
31272         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
31273         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
31274         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
31275         Change width of U+E0100..U+E01EF from 1 to 0.
31276
31277 2003-04-25  Jim Meyering  <jim@meyering.net>
31278
31279         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
31280         of type size_t, not int.
31281
31282 2003-04-25  Bruno Haible  <bruno@clisp.org>
31283
31284         * lib/copy-file.c: Include <stddef.h>, for size_t.
31285
31286 2003-04-21  Paul Eggert  <eggert@twinsun.com>
31287
31288         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
31289         code which expansion is under static control.  Patch imported from
31290         Akim Demaille's patch to Bison; see
31291         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
31292
31293 2003-04-14  Bruno Haible  <bruno@clisp.org>
31294
31295         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
31296
31297 2003-04-11  Jim Meyering  <jim@meyering.net>
31298
31299         Merge changes from Coreutils.
31300
31301         2003-03-22  Jim Meyering  <jim@meyering.net>
31302
31303         * lib/strftime.c (widen): Cast alloca return value to proper type.
31304
31305         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
31306
31307         From GNU libc.
31308         * lib/strftime.c (my_strftime): Handle very large width
31309         specifications for numeric values correctly.  Improve checks for
31310         overflow.
31311
31312         2003-01-19  Jim Meyering  <jim@meyering.net>
31313
31314         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
31315         definitions.
31316         (nl_get_alt_digit) [! defined my_strftime]: Define.
31317         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
31318         _nl_get_alt_digit and _nl_get_walt_digit.
31319
31320         * lib/strftime.c (my_strftime): Merge in locale-related changes from
31321         libc. These changes have no effect outside of _LIBC.
31322
31323 2003-04-10  Bruno Haible  <bruno@clisp.org>
31324
31325         * modules/findprog: New file.
31326         * MODULES.html.sh (func_all_modules): Add it.
31327
31328 2003-04-10  Bruno Haible  <bruno@clisp.org>
31329
31330         * m4/findprog.m4: New file.
31331         * m4/eaccess.m4: New file.
31332
31333 2003-04-10  Bruno Haible  <bruno@clisp.org>
31334
31335         * lib/findprog.h: New file, from GNU gettext.
31336         * lib/findprog.c: New file, from GNU gettext.
31337
31338 2003-04-05  Jim Meyering  <jim@meyering.net>
31339
31340         Merge changes from Coreutils.
31341
31342         * lib/exclude.h (PARAMS): Remove definition and uses.
31343         * lib/exclude.c: Remove uses of `PARAMS'.
31344
31345         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
31346         Add test-cases for DOS filenames. Declare program_name.
31347         (main): Set up program_name.  Patch by Rich Dawe.
31348
31349         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
31350         error from mntctl.
31351         Use mntctl's return value to drive the entry-processing loop, since
31352         we can't rely on the value of the vmt_length member in the last
31353         entry.  On some systems doing so could result in exhausting
31354         virtual memory.  Based in part on a patch from Mike Jetzer.
31355
31356 2003-04-04  Bruno Haible  <bruno@clisp.org>
31357
31358         * modules/linebreak: New file.
31359         * MODULES.html.sh (func_all_modules): Add it.
31360
31361 2003-04-04  Bruno Haible  <bruno@clisp.org>
31362
31363         * m4/linebreak.m4: New file.
31364
31365 2003-04-04  Bruno Haible  <bruno@clisp.org>
31366
31367         * lib/linebreak.h: New file, from GNU gettext.
31368         * lib/linebreak.c: New file, from GNU gettext with slight
31369         modifications.
31370         * lib/lbrkprop.h: New file, from GNU gettext.
31371
31372 2003-04-03  Bruno Haible  <bruno@clisp.org>
31373
31374         * modules/utf8-ucs4: New file.
31375         * modules/utf16-ucs4: New file.
31376         * modules/ucs4-utf8: New file.
31377         * modules/ucs4-utf16: New file.
31378         * MODULES.html.sh (func_all_modules): Add them.
31379
31380 2003-04-03  Bruno Haible  <bruno@clisp.org>
31381
31382         * m4/utf-ucs4.m4: New file.
31383         * m4/ucs4-utf.m4: New file.
31384
31385 2003-04-03  Bruno Haible  <bruno@clisp.org>
31386
31387         * lib/utf8-ucs4.h: New file, from GNU gettext.
31388         * lib/utf16-ucs4.h: New file, from GNU gettext.
31389         * lib/ucs4-utf8.h: New file, from GNU gettext.
31390         * lib/ucs4-utf16.h: New file, from GNU gettext.
31391
31392 2003-04-02  Bruno Haible  <bruno@clisp.org>
31393
31394         * modules/binary-io: New file.
31395         * MODULES.html.sh (func_all_modules): Add it.
31396
31397 2003-04-02  Bruno Haible  <bruno@clisp.org>
31398
31399         * lib/binary-io.h: New file, from GNU gettext.
31400
31401 2003-04-01  Bruno Haible  <bruno@clisp.org>
31402
31403         * modules/pathname: New file.
31404         * MODULES.html.sh (func_all_modules): Add it.
31405
31406 2003-04-01  Bruno Haible  <bruno@clisp.org>
31407
31408         * lib/pathname.h: New file, from GNU gettext.
31409         * lib/concatpath.c: New file, from GNU gettext.
31410
31411 2003-03-30  Bruno Haible  <bruno@clisp.org>
31412
31413         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
31414
31415 2003-03-30  Bruno Haible  <bruno@clisp.org>
31416
31417         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
31418         function chown() doesn't exist.
31419
31420 2003-03-28  Bruno Haible  <bruno@clisp.org>
31421
31422         * modules/copy-file: New file.
31423         * MODULES.html.sh (func_all_modules): Add it.
31424
31425 2003-03-28  Bruno Haible  <bruno@clisp.org>
31426
31427         * m4/copy-file.m4: New file.
31428
31429 2003-03-28  Bruno Haible  <bruno@clisp.org>
31430
31431         * lib/copy-file.h: New file, from GNU gettext.
31432         * lib/copy-file.c: New file, from GNU gettext.
31433
31434 2003-03-18  Jim Meyering  <jim@meyering.net>
31435
31436         * lib/quote.c (quote_n): Fix typo in comment.
31437
31438 2003-03-18  Bruno Haible  <bruno@clisp.org>
31439
31440         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
31441         checking.
31442         * m4/onceonly_2_57.m4: Likewise.
31443
31444 2003-03-17  Bruno Haible  <bruno@clisp.org>
31445
31446         * m4/onceonly.m4: Require autoconf 2.54 or newer.
31447         (m4_quote): Remove macro.
31448         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
31449
31450 2003-03-14  Jim Meyering  <jim@meyering.net>
31451
31452         Merge changes from Coreutils.
31453         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
31454         to be const, in order to avoid warnings.
31455         (obstack_room): Likewise.
31456         (obstack_empty_p): Likewise.
31457
31458 2003-03-14  Bruno Haible  <bruno@clisp.org>
31459
31460         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
31461         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
31462
31463 2003-03-13  Paul Eggert  <eggert@twinsun.com>
31464
31465         Merge changes from Bison.
31466         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
31467         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
31468         when compiling Bison 1.875's `bitset bset = obstack_alloc
31469         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
31470         * lib/hash.c: Include <stdbool.h> unconditionally.
31471
31472 2003-03-13  Paul Eggert  <eggert@twinsun.com>
31473
31474         * m4/onceonly.m4 (m4_quote): New macro.
31475         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
31476         Quote AC_FOREACH variable-expansions properly.
31477
31478 2003-03-13  Paul Eggert  <eggert@twinsun.com>
31479
31480         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
31481
31482 2003-03-09  Paul Eggert  <eggert@twinsun.com>
31483
31484         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
31485         Reported by Bruce Becker; see:
31486         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
31487
31488 2003-03-03  Paul Eggert  <eggert@twinsun.com>
31489             Bruno Haible  <bruno@clisp.org>
31490
31491         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
31492         Reported by John Hughes, see
31493         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
31494
31495 2003-02-20  Bruno Haible  <bruno@clisp.org>
31496
31497         * MODULES.html.sh (func_all_modules): Add poll.
31498
31499 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
31500
31501         * modules/poll: New file.
31502
31503 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
31504
31505         * lib/poll_.h: New file.
31506         * lib/poll.c: New file.
31507
31508 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
31509
31510         * m4/poll.m4: New file.
31511
31512 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
31513
31514         * modules/mathl: New file.
31515
31516 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
31517
31518         * lib/mathl.h: New file.
31519         * lib/acosl.c: New file.
31520         * lib/asinl.c: New file.
31521         * lib/atanl.c: New file.
31522         * lib/ceill.c: New file.
31523         * lib/cosl.c: New file.
31524         * lib/expl.c: New file.
31525         * lib/floorl.c: New file.
31526         * lib/frexpl.c: New file.
31527         * lib/ldexpl.c: New file.
31528         * lib/logl.c: New file.
31529         * lib/sincosl.c: New file.
31530         * lib/sinl.c: New file.
31531         * lib/sqrtl.c: New file.
31532         * lib/tanl.c: New file.
31533         * lib/trigl.c: New file.
31534         * lib/trigl.h: New file.
31535
31536 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
31537
31538         * m4/mathl.m4: New file.
31539
31540 2003-02-18  Bruno Haible  <bruno@clisp.org>
31541
31542         * MODULES.html.sh (func_all_modules): Add mathl.
31543
31544 2003-02-17  Bruno Haible  <bruno@clisp.org>
31545
31546         * modules/mkdtemp: New module.
31547         * MODULES.html.sh (func_all_modules): Add it.
31548
31549 2003-02-17  Bruno Haible  <bruno@clisp.org>
31550
31551         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
31552
31553 2003-02-17  Bruno Haible  <bruno@clisp.org>
31554
31555         * lib/mkdtemp.h: New file, from GNU gettext.
31556         * lib/mkdtemp.c: New file, from GNU gettext.
31557
31558 2003-02-02  Jim Meyering  <jim@meyering.net>
31559
31560         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
31561         e.g. glibc-2.2.93.
31562
31563 2003-01-31  Bruno Haible  <bruno@clisp.org>
31564
31565         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
31566         'rpl_rename'.
31567         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
31568         'rpl_strnlen'.
31569         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
31570         'rpl_strtod'.
31571         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
31572         'rpl_utime'.
31573
31574 2003-01-31  Bruno Haible  <bruno@clisp.org>
31575
31576         * lib/rename.c: #undef rename before defining rpl_rename.
31577         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
31578
31579 2003-01-30  Bruno Haible  <bruno@clisp.org>
31580
31581         * modules/vasnprintf, modules/vasprintf: New modules.
31582         * MODULES.html.sh (func_all_modules): Add them.
31583
31584 2003-01-30  Bruno Haible  <bruno@clisp.org>
31585
31586         * m4/signed.m4: New file, from GNU gettext.
31587         * m4/longdouble.m4: New file, from GNU gettext.
31588         * m4/wchar_t.m4: New file, from GNU gettext.
31589         * m4/wint_t.m4: New file, from GNU gettext.
31590         * m4/vasnprintf.m4: New file.
31591         * m4/vasprintf.m4: New file.
31592
31593 2003-01-30  Bruno Haible  <bruno@clisp.org>
31594
31595         * lib/printf-args.h: New file, from GNU gettext.
31596         * lib/printf-args.c: New file, from GNU gettext.
31597         * lib/printf-parse.h: New file, from GNU gettext.
31598         * lib/printf-parse.c: New file, from GNU gettext.
31599         * lib/vasnprintf.h: New file, from GNU gettext.
31600         * lib/vasnprintf.c: New file, from GNU gettext.
31601         * lib/asnprintf.c: New file, from GNU gettext.
31602         * lib/vasprintf.h: New file, from GNU gettext with modifications.
31603         * lib/vasprintf.c: New file, from GNU gettext.
31604         * lib/asprintf.c: New file, from GNU gettext.
31605
31606 2003-01-29  Bruno Haible  <bruno@clisp.org>
31607
31608         * modules/stpncpy: New module.
31609         * MODULES.html.sh (func_all_modules): Add it.
31610
31611 2003-01-29  Bruno Haible  <bruno@clisp.org>
31612
31613         * m4/stpncpy.m4: New file.
31614
31615 2003-01-29  Bruno Haible  <bruno@clisp.org>
31616
31617         * lib/stpncpy.h: New file, from GNU gettext with modifications.
31618         * lib/stpncpy.c: New file, from GNU gettext with modifications.
31619
31620 2003-01-28  Bruno Haible  <bruno@clisp.org>
31621
31622         * modules/c-ctype: New module.
31623         * MODULES.html.sh (func_all_modules): Add it.
31624
31625 2003-01-28  Bruno Haible  <bruno@clisp.org>
31626
31627         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
31628         Paul Eggert.
31629         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
31630         Paul Eggert.
31631
31632 2003-01-27  Bruno Haible  <bruno@clisp.org>
31633
31634         * modules/xsetenv: New module.
31635         * MODULES.html.sh (func_all_modules): Add it.
31636
31637 2003-01-27  Bruno Haible  <bruno@clisp.org>
31638
31639         * lib/xsetenv.h: New file, from GNU gettext.
31640         * lib/xsetenv.c: New file, from GNU gettext.
31641
31642 2003-01-23  Jim Meyering  <jim@meyering.net>
31643
31644         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
31645         from working on systems without dirfd (at least Irix and OSF1/Tru64).
31646
31647 2003-01-23  Bruno Haible  <bruno@clisp.org>
31648
31649         * modules/minmax: New module.
31650         * MODULES.html.sh (func_all_modules): Add it.
31651
31652 2003-01-23  Bruno Haible  <bruno@clisp.org>
31653
31654         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
31655         Eggert.
31656
31657 2003-01-22  Bruno Haible  <bruno@clisp.org>
31658
31659         * modules/exit: New module.
31660         * MODULES.html.sh (func_all_modules): Add it.
31661
31662 2003-01-22  Bruno Haible  <bruno@clisp.org>
31663
31664         * lib/exit.h: New file, from GNU gettext.
31665
31666 2003-01-19  Bruno Haible  <bruno@clisp.org>
31667
31668         * gnulib-tool: Recognize option --extract-maintainer.
31669         (func_get_maintainer): New function.
31670         * modules/*: Add Maintainer entry.
31671
31672 2003-01-16  Jim Meyering  <jim@meyering.net>
31673
31674         * m4/regex.m4: The `regex' struct is both input and output.
31675         Initialize it before each use.  Patch by Tim Waugh.
31676
31677 2003-01-16  Bruno Haible  <bruno@clisp.org>
31678
31679         * MODULES.html.sh: Add a table of contents. Add the module name as
31680         leftmost column. Add hyperlinks.
31681
31682 2003-01-15  Bruno Haible  <bruno@clisp.org>
31683
31684         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
31685
31686 2003-01-15  Bruno Haible  <bruno@clisp.org>
31687
31688         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
31689         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
31690         suffix.
31691
31692 2003-01-15  Bruno Haible  <bruno@clisp.org>
31693
31694         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
31695
31696 2003-01-15  Bruno Haible  <bruno@clisp.org>
31697
31698         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
31699         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
31700
31701 2003-01-14  Jim Meyering  <jim@meyering.net>
31702
31703         * lib/same.c (same_name): Tweak a comment.
31704
31705 2003-01-14  Bruno Haible  <bruno@clisp.org>
31706
31707         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
31708         when a string comparison is sufficient.
31709
31710 2003-01-14  Bruno Haible  <bruno@clisp.org>
31711
31712         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
31713         'unsigned int'.
31714
31715 2003-01-14  Bruno Haible  <bruno@clisp.org>
31716
31717         * lib/hash-pjw.c: Add comment about low quality of this function.
31718
31719 2003-01-13  Bruno Haible  <bruno@clisp.org>
31720
31721         * modules/stpcpy: Distribute lib/stpcpy.h.
31722         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
31723
31724 2003-01-13  Bruno Haible  <bruno@clisp.org>
31725
31726         * modules/*: Add a description.
31727         * modules/strpbrk: Fix Makefile.am snippet.
31728         * modules/strtoimax: Fix dependencies.
31729         * modules/strtoumax: Likewise.
31730
31731 2003-01-13  Bruno Haible  <bruno@clisp.org>
31732
31733         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
31734         * modules/alloca (Makefile.am): All object files depend on alloca.h.
31735         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
31736
31737 2003-01-13  Bruno Haible  <bruno@clisp.org>
31738
31739         * gnulib-tool (func_create_testdir): Store config/* files in the main
31740         directory.
31741         * config.rpath: Move to ...
31742         * config/config.rpath: ... here.
31743         * modules/gettext: Contains config/config.rpath, not config.rpath.
31744         * modules/iconv: Likewise.
31745
31746 2003-01-12  Paul Eggert  <eggert@twinsun.com>
31747
31748         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
31749         to avoid collisions with libcurses and libreadline.
31750
31751         * m4/getstr.m4: Remove.
31752         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
31753
31754 2003-01-12  Paul Eggert  <eggert@twinsun.com>
31755
31756         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
31757         to avoid collisions with libcurses and libreadline.
31758
31759         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
31760         * lib/getstr.h, getstr.c: Remove.
31761         * lib/getline.c: Include "getline.h", to check interface.
31762         Move body of old getstr.c here: this defines MIN_CHUNK and
31763         declares getdelim2, which is renamed from getstr.
31764         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
31765
31766         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
31767         All uses changed.
31768         * lib/linebuffer.h: Likewise.
31769         (readline): Remove backward-compatibility macro.
31770
31771 2003-01-12  Paul Eggert  <eggert@twinsun.com>
31772
31773         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
31774         to avoid collisions with libcurses and libreadline.
31775         * getstr: Remove.
31776         * MODULES.html.sh: Remove getstr.
31777         * modules/getline: Depend on unlocked-io, not getstr.
31778
31779 2003-01-12  Jim Meyering  <jim@meyering.net>
31780
31781         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
31782
31783 2003-01-10  Bruno Haible  <bruno@clisp.org>
31784
31785         * modules/alloca: Change Makefile.am requirements. Simplify Include
31786         requirements. Add lib/alloca_.h to file list.
31787
31788 2003-01-10  Bruno Haible  <bruno@clisp.org>
31789
31790         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
31791
31792 2003-01-10  Bruno Haible  <bruno@clisp.org>
31793
31794         * lib/alloca_.h: New file.
31795         * lib/getdate.y: Unconditionally include alloca.h.
31796         * lib/makepath.c: Likewise.
31797         * lib/setenv.c: Likewise.
31798         * lib/userspec.c: Likewise.
31799
31800 2003-01-09  Karl Berry  <karl@gnu.org>
31801
31802         * MODULES.html.sh: include `dirname $0` in PATH, to find
31803         gnulib-tool.
31804
31805 2003-01-09  Bruno Haible  <bruno@clisp.org>
31806
31807         * modules/stdbool: Change configure.ac, Makefile.am requirements.
31808         Simplify Include requirements. Add lib/stdbool.h.in to file list.
31809
31810 2003-01-09  Bruno Haible  <bruno@clisp.org>
31811
31812         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
31813
31814 2003-01-09  Bruno Haible  <bruno@clisp.org>
31815
31816         * lib/stdbool.h.in: New file.
31817
31818 2003-01-09  Bruno Haible  <bruno@clisp.org>
31819
31820         * gnulib-tool (func_all_modules): Ignore files ending in ~.
31821         * MODULES.html.sh: Likewise.
31822
31823 2003-01-08  Jim Meyering  <jim@meyering.net>
31824
31825         * lib/full-write.c: Undefine and define-away `const' after inclusion
31826         of errno.h, not before.  Suggestion from Bruno Haible.
31827
31828 2003-01-08  Bruno Haible  <bruno@clisp.org>
31829
31830         * modules/full-read: Depend on full-write.
31831
31832 2003-01-08  Bruno Haible  <bruno@clisp.org>
31833
31834         * lib/safe-read.c: Include specification header first, to ensure its
31835         selfcontainedness.
31836         * lib/full-write.c: Likewise.
31837
31838 2003-01-07  Jim Meyering  <jim@meyering.net>
31839
31840         * lib/full-write.c: Rework so that it may serve to define full_read,
31841         too.
31842         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
31843
31844 2003-01-07  Bruno Haible  <bruno@clisp.org>
31845
31846         * lib/strtoimax.c: Include <stdint.h> as an alternative to
31847         <inttypes.h>.
31848         * lib/xstrtol.h: Likewise.
31849         * lib/xstrtoimax.c: Likewise.
31850         * lib/xstrtoumax.c: Likewise.
31851         * lib/human.h: Likewise.
31852
31853         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
31854         on systems that have <inttypes.h> but not <stdint.h>.
31855
31856 2003-01-07  Bruno Haible  <bruno@clisp.org>
31857
31858         * MODULES.html.sh: Add copyright notice.
31859         (missed_files): Omit CVS directory entries.
31860         (func_module): Make it work with sed-3.02.
31861         * MODULES.txt: Remove file.
31862
31863 2003-01-06  Jim Meyering  <jim@meyering.net>
31864
31865         * lib/version-etc.c: Update year in translatable copyright string.
31866
31867 2003-01-03  Karl Berry  <karl@gnu.org>
31868
31869         * config/config.{guess,sub}: update from prep.
31870
31871 2003-01-02  Karl Berry  <karl@gnu.org>
31872
31873         * doc/COPYING.DOC: belatedly updated to 1.2.
31874
31875 2003-01-01  Karl Berry  <karl@gnu.org>
31876
31877         * gnulib-tool (func_verify_module): report module name $module in
31878         error message, not $1.
31879         * gnulib-tool (create-testdir): don't complain if destdir couldn't
31880         be created, only if it doesn't exist.
31881         * gnulib-tool (last_checkin_date): don't expand the $Date here.
31882
31883 2002-12-31  Paul Eggert  <eggert@twinsun.com>
31884
31885         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
31886
31887 2002-12-31  Paul Eggert  <eggert@twinsun.com>
31888
31889         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
31890         memcmp if strcoll doesn't work.
31891
31892 2002-12-31  Bruno Haible  <bruno@clisp.org>
31893
31894         * lib/utime.c (utime_null): No need to call ftruncate if the file was
31895         nonempty.
31896
31897 2002-12-31  Bruno Haible  <bruno@clisp.org>
31898
31899         * lib/memcoll.c (STRCOLL): New macro.
31900         (memcoll): Use it.
31901
31902 2002-12-31  Bruno Haible  <bruno@clisp.org>
31903
31904         * lib/localcharset.h: New file.
31905         * lib/localcharset.c: Include it.
31906         * lib/unicodeio.c: Likewise.
31907
31908 2002-12-31  Bruno Haible  <bruno@clisp.org>
31909
31910         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
31911         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
31912
31913 2002-12-31  Bruno Haible  <bruno@clisp.org>
31914
31915         * lib/getline.h: Include <stddef.h>, for size_t.
31916
31917         * lib/unicodeio.h: Include <stddef.h>, for size_t.
31918         * lib/unicodeio.c: Don't include <stddef.h>.
31919
31920 2002-12-31  Bruno Haible  <bruno@clisp.org>
31921
31922         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
31923         HAVE_TM_ZONE.
31924
31925 2002-12-24  Karl Berry  <karl@gnu.org>
31926
31927         * config/config.guess: update from prep.
31928
31929 2002-12-24  Bruno Haible  <bruno@clisp.org>
31930
31931         General infrasructure.
31932         * m4/README: Rewritten.
31933         * m4/onceonly.m4: New file.
31934         * m4/onceonly_2_57.m4: New file.
31935
31936         Module atexit.
31937         * m4/atexit.m4: New file.
31938
31939         Module strtod.
31940         * m4/strtod.m4: New file.
31941
31942         Module strtol.
31943         * m4/strtol.m4: New file.
31944
31945         Module strtoul.
31946         * m4/strtoul.m4: New file.
31947
31948         Module memchr.
31949         * m4/memchr.m4: New file.
31950
31951         Module memcmp.
31952         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
31953         (jm_FUNC_MEMCMP): Invoke it.
31954
31955         Module memcpy.
31956         * m4/memcpy.m4: New file.
31957
31958         Module memmove.
31959         * m4/memmove.m4: New file.
31960
31961         Module memset.
31962         * m4/memset.m4: New file.
31963
31964         Module strcspn.
31965         * m4/strcspn.m4: New file.
31966
31967         Module strpbrk.
31968         * m4/strpbrk.m4: New file.
31969
31970         Module strstr.
31971         * m4/strstr.m4: New file.
31972
31973         Module strerror.
31974         * m4/strerror.m4: New file.
31975
31976         Module mktime.
31977         * m4/mktime.m4: Renamed from jm-mktime.m4.
31978         (gl_PREREQ_MKTIME): New macro.
31979         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
31980
31981         Module malloc.
31982         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
31983         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
31984         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
31985
31986         Module realloc.
31987         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
31988         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
31989         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
31990
31991         Module strftime.
31992         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
31993         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
31994         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
31995         gl_TM_GMTOFF.
31996         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
31997
31998         Module xalloc.
31999         * m4/xalloc.m4: New file.
32000
32001         Module alloca.
32002         * m4/alloca.m4: New file.
32003
32004         Module putenv.
32005         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
32006         (jm_FUNC_PUTENV): Invoke it.
32007
32008         Module setenv.
32009         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
32010         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
32011         when invoked twice.
32012         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
32013         gt_FUNC_SETENV.
32014
32015         Module memrchr.
32016         * m4/memrchr.m4: New file.
32017
32018         Module stpcpy.
32019         * m4/stpcpy.m4: New file.
32020
32021         Module strcase.
32022         * m4/strcase.m4: New file.
32023
32024         Module strdup.
32025         * m4/strdup.m4: New file.
32026
32027         Module strnlen.
32028         * m4/strnlen.m4: New file.
32029
32030         Module strndup.
32031         * m4/strndup.m4: New file.
32032
32033         Module xstrtod.
32034         * m4/xstrtod.m4: New file.
32035
32036         Module xstrtol.
32037         * m4/xstrtol.m4: New file.
32038
32039         Module getdate.
32040         * m4/getdate.m4: New file.
32041
32042         Module unlocked-io.
32043         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
32044         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
32045         * m4/jm-glibc-io.m4n: Remove file.
32046
32047         Module long-options.
32048         * m4/long-options.m4: New file.
32049
32050         Module md5.
32051         * m4/md5.m4: New file.
32052
32053         Module sha.
32054         * m4/sha.m4: New file.
32055
32056         Module getstr.
32057         * m4/getstr.m4: New file.
32058
32059         Module getline.
32060         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
32061         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
32062         <sys/types.h>, for size_t. Use the function name gnu_getline, not
32063         simply getline. Infoke gl_PREREQ_GETLINE.
32064
32065         Module obstack.
32066         * m4/obstack.m4: New file.
32067
32068         Module hash.
32069         * m4/hash.m4: New file.
32070
32071         Module readtokens.
32072         * m4/readtokens.m4: New file.
32073
32074         Module strverscmp.
32075         * m4/strverscmp.m4: New file.
32076
32077         Module stdbool.
32078         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
32079         OSF/1.
32080
32081         Module strtoll.
32082         * m4/strtoll.m4: New file.
32083
32084         Module strtoull.
32085         * m4/strtoull.m4: New file.
32086
32087         Module strtoimax.
32088         * m4/strtoimax.m4: New file.
32089
32090         Module strtoumax.
32091         * m4/strtoumax.m4: New file.
32092
32093         Module xstrtoimax.
32094         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
32095         jm_AC_PREREQ_XSTRTOIMAX.
32096         Moved the strtol prerequisites to strtol.m4.
32097         Moved the strtoll prerequisites to strtoll.m4.
32098         Moved the strtoimax prerequisites to strtoimax.m4.
32099
32100         Module xstrtoumax.
32101         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
32102         jm_AC_PREREQ_XSTRTOUMAX.
32103         Moved the strtoul prerequisites to strtoul.m4.
32104         Moved the strtoull prerequisites to strtoull.m4.
32105         Moved the strtoumax prerequisites to strtoumax.m4.
32106
32107         Module chown.
32108         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
32109         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
32110
32111         Module dup2.
32112         * m4/dup2.m4: New file.
32113
32114         Module ftruncate.
32115         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
32116         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
32117
32118         Module getgroups.
32119         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
32120         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
32121
32122         Module gettimeofday.
32123         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
32124         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
32125         gl_PREREQ_GETTIMEOFDAY.
32126
32127         Module mkdir.
32128         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
32129         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
32130
32131         Module mkstemp.
32132         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
32133         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
32134         jm_AC_TYPE_UINTMAX_T.
32135         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
32136
32137         Module stat.
32138         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
32139         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
32140
32141         Module lstat.
32142         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
32143         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
32144
32145         Module timespec.
32146         * m4/timespec.m4 (gl_TIMESPEC): New macro.
32147         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
32148         * m4/st_mtim.m4: Indentation.
32149
32150         Module nanosleep.
32151         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
32152         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
32153         gl_PREREQ_NANOSLEEP.
32154
32155         Module regex.
32156         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
32157         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
32158         (gl_REGEX): New macro.
32159
32160         Module rename.
32161         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
32162         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
32163
32164         Module rmdir.
32165         * m4/rmdir.m4: New file.
32166
32167         Module utime.
32168         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
32169         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
32170         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
32171
32172         Module dirname.
32173         * m4/dirname.m4: New file.
32174
32175         Module getopt.
32176         * m4/getopt.m4: New file.
32177
32178         Module unistd-safer.
32179         * m4/unistd-safer.m4: New file.
32180
32181         Module fnmatch.
32182         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
32183         declaration.
32184         (gl_PREREQ_FNMATCH_EXTRA): New macro.
32185         (gl_FUNC_FNMATCH_POSIX): New macro.
32186         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
32187         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
32188         simply fnmatch.
32189
32190         Module exclude.
32191         * m4/exclude.m4: New file.
32192
32193         Module human.
32194         * m4/human.m4: New file.
32195
32196         Module acl.
32197         * m4/acl.m4: Nop.
32198
32199         Module backupfile.
32200         * m4/backupfile.m4: New file.
32201         * m4/d-ino.m4: Indentation.
32202
32203         Module fsusage.
32204         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
32205         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
32206         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
32207
32208         Module dirfd.
32209         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
32210         requirements.
32211
32212         Module euidaccess.
32213         * m4/euidaccess.m4: New file.
32214
32215         Module file-type.
32216         * m4/file-type.m4: New file.
32217
32218         Module fileblocks.
32219         * m4/fileblocks.m4: New file.
32220
32221         Module filemode.
32222         * m4/filemode.m4: New file.
32223
32224         Module isdir.
32225         * m4/isdir.m4: New file.
32226
32227         Module lchown.
32228         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
32229         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
32230
32231         Module makepath.
32232         * m4/makepath.m4: New file.
32233
32234         Module modechange.
32235         * m4/modechange.m4: New file.
32236
32237         Module mountlist.
32238         * m4/mountlist.m4: New file.
32239         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
32240         Indentation.
32241
32242         Module path-concat.
32243         * m4/path-concat.m4: New file.
32244
32245         Module pathmax.
32246         * m4/pathmax.m4: New file.
32247
32248         Module same.
32249         * m4/same.m4: New file.
32250
32251         Module save-cwd.
32252         * m4/save-cwd.m4: New file.
32253
32254         Module savedir.
32255         * m4/savedir.m4: New file.
32256
32257         Module xgetcwd.
32258         * m4/xgetcwd.m4: New file.
32259         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
32260
32261         Module xreadlink.
32262         * m4/xreadlink.m4: New file.
32263
32264         Module safe-read.
32265         * m4/safe-read.m4: New file.
32266
32267         Module safe-write.
32268         * m4/safe-write.m4: New file.
32269
32270         Module closeout.
32271         * m4/closeout.m4: New file.
32272
32273         Module stdio-safer.
32274         * m4/stdio-safer.m4: New file.
32275
32276         Module getpass.
32277         * m4/getpass.m4: New file.
32278
32279         Module getugroups.
32280         * m4/getugroups.m4: New file.
32281
32282         Module group-member.
32283         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
32284         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
32285
32286         Module idcache.
32287         * m4/idcache.m4: New file.
32288
32289         Module userspec.
32290         * m4/userspec.m4: New file.
32291
32292         Module gettime.
32293         * m4/clock_time.m4: New file.
32294         * m4/gettime.m4: New file.
32295
32296         Module settime.
32297         * m4/settime.m4: New file.
32298
32299         Module posixtm.
32300         * m4/posixtm.m4: New file.
32301
32302         Module gethostname.
32303         * m4/gethostname.m4: New file.
32304
32305         Module canon-host.
32306         * m4/canon-host.m4: New file.
32307
32308         Module gettext.
32309         * m4/codeset.m4: New file, from gettext-0.11.5.
32310         * m4/gettext.m4: New file, from gettext-0.11.5.
32311         * m4/glibc21.m4: New file, from gettext-0.11.5.
32312         * m4/iconv.m4: New file, from gettext-0.11.5.
32313         * m4/intdiv0.m4: New file, from gettext-0.11.5.
32314         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
32315         * m4/inttypes.m4: New file, from gettext-0.11.5.
32316         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
32317         * m4/isc-posix.m4: New file, from gettext-0.11.5.
32318         * m4/lcmessage.m4: New file, from gettext-0.11.5.
32319         * m4/lib-ld.m4: New file, from gettext-0.11.5.
32320         * m4/lib-link.m4: New file, from gettext-0.11.5.
32321         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
32322         * m4/progtest.m4: New file, from gettext-0.11.5.
32323         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
32324         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
32325         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
32326
32327         Module localcharset.
32328         * m4/localcharset.m4: New file.
32329
32330         Module hard-locale.
32331         * m4/hard-locale.m4: New file.
32332
32333         Module mbswidth.
32334         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
32335         onceonly macros.
32336         * m4/mbrtowc.m4: Add comment.
32337
32338         Module memcasecmp.
32339         * m4/memcasecmp.m4: New file.
32340
32341         Module memcoll.
32342         * m4/memcoll.m4: New file.
32343
32344         Module unicodeio.
32345         * m4/unicodeio.m4: New file.
32346
32347         Module rpmatch.
32348         * m4/rpmatch.m4: New file.
32349
32350         Module yesno.
32351         * m4/yesno.m4: New file.
32352
32353         Module exitfail.
32354         * m4/exitfail.m4: New file.
32355
32356         Module c-stack.
32357         * m4/c-stack.m4 (gl_C_STACK): New macro.
32358         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
32359
32360         Module error.
32361         * m4/error.m4 (gl_ERROR): New macro.
32362         (jm_PREREQ_ERROR): Use onceonly macros.
32363
32364         Module fatal.
32365         * m4/fatal.m4: New file.
32366
32367         Module getloadavg.
32368         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
32369         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
32370
32371         Module getpagesize.
32372         * m4/getpagesize.m4: New file.
32373
32374         Module getusershell.
32375         * m4/getusershell.m4: New file.
32376
32377         Module physmem.
32378         * m4/physmem.m4: New file.
32379
32380         Module posixver.
32381         * m4/posixver.m4: New file.
32382
32383         Module quotearg.
32384         * m4/quotearg.m4: New file.
32385
32386         Module quote.
32387         * m4/quote.m4: New file.
32388
32389         Module readutmp.
32390         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
32391
32392         Module sig2str.
32393         * m4/sig2str.m4: New file.
32394
32395         Other.
32396         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
32397         ulonglong.m4.
32398         * m4/intmax_t.m4: New file.
32399         * m4/d-type.m4: Indentation.
32400         * m4/jm-macros.m4: Update.
32401         * m4/prereq.m4 (jm_PREREQ): Update.
32402         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
32403         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
32404         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
32405         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
32406         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
32407         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
32408         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
32409         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
32410         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
32411         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
32412         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
32413         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
32414         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
32415         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
32416         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
32417         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
32418         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
32419         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
32420         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
32421
32422 2002-12-24  Bruno Haible  <bruno@clisp.org>
32423
32424         * MODULES.txt: Update according to m4/ changes.
32425
32426         Module gettext.
32427         * config.rpath: New file, from gettext-0.11.5.
32428
32429         * modules/*: New module descriptions.
32430         * gnulib-tool: New file.
32431         * MODULES.html.sh: New file.
32432
32433 2002-12-21  Karl Berry  <karl@gnu.org>
32434
32435         * doc/fdl.texi: update to version 1.2.
32436
32437 2002-12-19  Karl Berry  <karl@gnu.org>
32438
32439         * config/config.guess: update from prep.
32440
32441 2002-12-18  Bruno Haible  <bruno@clisp.org>
32442
32443         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
32444         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
32445
32446 2002-12-17  Bruno Haible  <bruno@clisp.org>
32447
32448         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
32449         stdlib.h, string.h.
32450
32451 2002-12-17  Bruno Haible  <bruno@clisp.org>
32452
32453         * lib/canon-host.c (strdup): Remove unused declaration.
32454
32455         * lib/fsusage.c: Include full_read.h.
32456         (get_fs_usage): Use full_read instead of safe_read.
32457
32458         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
32459
32460 2002-12-12  Karl Berry  <karl@gnu.org>
32461
32462         * config/config.guess: update from prep.
32463
32464 2002-12-11  Bruno Haible  <bruno@clisp.org>
32465
32466         * m4/setenv.m4: New file, from gettext-0.11.5.
32467
32468 2002-12-11  Bruno Haible  <bruno@clisp.org>
32469
32470         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
32471         not unsetenv().
32472         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
32473         modifications:
32474
32475         2002-12-11  Bruno Haible  <bruno@clisp.org>
32476
32477                 * setenv.c (alloca): Fall back to malloc.
32478                 (freea): New macro.
32479                 (setenv): Use freea() to free memory allocated with alloca().
32480
32481         2002-11-13  Bruno Haible  <bruno@clisp.org>
32482
32483                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
32484                 function declarations.
32485                 * unsetenv.c (unsetenv): Likewise.
32486
32487         2002-03-04  Bruno Haible  <bruno@clisp.org>
32488
32489                 Portability to AIX 4.3.3.
32490                 * unsetenv.c: New file, extracted from setenv.c.
32491                 * setenv.c: Move the unsetenv() function to unsetenv.c.
32492
32493         2001-12-20  Bruno Haible  <bruno@clisp.org>
32494
32495                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
32496                 use malloc instead. For SunOS 4.
32497
32498         2001-12-11  Bruno Haible  <bruno@clisp.org>
32499
32500                 * setenv.c: Declare alloca.
32501                 (compar_fn_t): New typedef.
32502                 (KNOWN_VALUE, STORE_VALUE): Use it.
32503
32504         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
32505         setenv.h.
32506
32507 2002-12-10  Paul Eggert  <eggert@twinsun.com>
32508
32509         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
32510         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
32511         Choose values that are less likely to collide with system fnmatch
32512         options.
32513         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
32514         defined (e.g., a pure POSIX system).
32515         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
32516         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
32517
32518 2002-12-06  Paul Eggert  <eggert@twinsun.com>
32519
32520         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
32521         a pain in practice to deal with generated m4 files.  This change
32522         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
32523
32524         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
32525         and jm-glibc-io.m4, as they are no longer a special case.
32526         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
32527         kludge and the auto-generation stuff.  Check only whether the
32528         functions are declared, not whether they exist, since older hosts
32529         that don't declare the functions can't use the optimization anyway.
32530
32531 2002-12-06  Jim Meyering  <jim@meyering.net>
32532
32533         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
32534
32535         Merge in changes from libc's misc/error.c, in preparation
32536         for the merge of gnulib's changes back into libc.
32537
32538         * lib/error.c (_): Define only if not already defined.
32539         Move definition to follow all #include directives.
32540         Include unlocked-io.h only if !_LIBC.
32541         [_LIBC]: Include <libio/libioP.h>.
32542         [USE_IN_LIBIO]: Include <libio/iolibio.h>
32543         (fflush): Tweak definition to use INTUSE.
32544         (putc): Define.
32545
32546 2002-12-05  Paul Eggert  <eggert@twinsun.com>
32547
32548         * lib/alloca.c [defined emacs]: Include "lisp.h".
32549         (xalloc_die) [defined emacs]: New macro.
32550         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
32551         [! defined emacs]: Include <xalloc.h>.
32552         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
32553         (pointer): Typedef to POINTER_TYPE *.
32554         (malloc): Remove decl; we now always use xmalloc.
32555         (alloca): Use old-style definition, since Emacs needs this.
32556         Check for arithmetic overflow when computing combined size.
32557
32558 2002-12-04  Paul Eggert  <eggert@twinsun.com>
32559
32560         Do not generate unlocked-io.h automatically, since it's easier to
32561         maintain it by hand.
32562
32563         * lib/unlocked-io.h: New file, from GNU diffutils,
32564         but with proper copyright notice and attribution.
32565         * lib/gen-uio: Remove.
32566         * lib/Makefile.am: Add copyright notice.
32567         (libfetish_a_SOURCES): Add unlocked-io.h.
32568         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
32569         (DISTCLEANFILES, io_functions): Remove macros.
32570         (EXTRA_DIST): Remove gen_uio.
32571         (unlocked-io.h): Remove rule.
32572
32573 2002-12-04  Jim Meyering  <jim@meyering.net>
32574
32575         Reflect the fact that stat.c and lstat.c are no longer generated.
32576         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
32577         (DISTCLEANFILES): Likewise.
32578         (EXTRA_DIST): Likewise.
32579         (all_local): Don't depend on stat.c or lstat.c.
32580         (stat.c, lstat.c): Remove rules.
32581         (EXTRA_DIST): Remove xstat.in.
32582
32583         * lib/xstat.in: Remove file.  Contents moved into stat.c.
32584         * lib/stat.c: New file.  Contents mostly from xstat.in.
32585         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
32586         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
32587
32588         * lib/safe-read.c: Rework so that it may serve to define safe_write,
32589         too.
32590         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
32591
32592 2002-12-03  Jim Meyering  <jim@meyering.net>
32593
32594         * lib/safe-read.c, safe-write.c: Change variable names and comments,
32595         but not semantics, to minimize the differences between these two files.
32596         (safe_read): Change comment to mention SAFE_READ_ERROR.
32597
32598         * lib/safe-read.c (IS_EINTR): Define.
32599         (safe_read): Use IS_EINTR in place of in-function cpp directives.
32600
32601 2002-12-02  Jim Meyering  <jim@meyering.net>
32602
32603         * lib/safe-read.c (EINTR): Define.
32604         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
32605         (INT_MAX): Provide fallback.
32606         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
32607
32608         * lib/safe-read.h (SAFE_READ_ERROR): Define.
32609
32610 2002-12-02  Bruno Haible  <bruno@clisp.org>
32611
32612         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
32613         Define, taken from safe-read.c.
32614         (INT_MAX): Provide fallback.
32615         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
32616         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
32617
32618         * lib/safe-read.c (EINTR): Remove definition.
32619         (safe_read): Don't use EINTR if it is absent.
32620
32621 2002-12-01  Jim Meyering  <jim@meyering.net>
32622
32623         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
32624         zero.
32625         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
32626
32627 2002-11-27  Paul Eggert  <eggert@twinsun.com>
32628
32629         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
32630         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
32631         with `if (! (value < limit)) abort ();', for readability.
32632
32633 2002-11-26  Karl Berry  <karl@gnu.org>
32634
32635         * lib/strdup.c: copy from libc again, with jim's ok.
32636         * lib/.cppi-disable: re-add strdup.c
32637
32638 2002-11-25  Karl Berry  <karl@gnu.org>
32639
32640         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
32641         instead of "strtol.c".
32642
32643 2002-11-25  Karl Berry  <karl@gnu.org>
32644
32645         * config/install-sh: update from automake for variable quoting, $0 in
32646         error msgs, etc.
32647
32648         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
32649         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
32650         entry.
32651
32652 2002-11-25  Jim Meyering  <jim@meyering.net>
32653
32654         * lib/mktime.c: Sync from libc, now that it has the latest fix.
32655
32656 2002-11-24  Karl Berry  <karl@gnu.org>
32657
32658         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
32659         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
32660
32661 2002-11-24  Jim Meyering  <jim@meyering.net>
32662
32663         Update from coreutils:
32664
32665         * lib/mktime.c: Merge in changes from libc.
32666
32667         Avoid a link-time failure on some Linux systems.
32668         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
32669         (otherwise).
32670         (__mon_yday): Declare with the STATIC attribute.
32671         (__mktime_internal): Likewise.
32672         Based on a report from Greg Schafer.
32673
32674 2002-11-23  Jim Meyering  <jim@meyering.net>
32675
32676         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
32677         Use `unsigned', not `int', as type of index.
32678
32679         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
32680
32681         * lib/fsusage.c: Remove unneeded parentheses around operands of
32682         `defined'.
32683
32684 2002-11-22  Paul Eggert  <eggert@twinsun.com>
32685
32686         * lib/quotearg.h: Allow multiple inclusion by surrounding with
32687         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
32688         so that we can be included first.
32689         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
32690         * lib/quotearg.c: Include quotearg.h immediately after config.h.
32691         No need to include stddef.h or sys/types.h any more.
32692         Surround local include files with "", not "<>".
32693         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
32694         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
32695         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
32696         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
32697         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
32698         (ISPRINT): Remove; no longer needed now that we assume C89.
32699
32700         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
32701         Preserve errno.
32702
32703         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
32704         quotearg_char): Use SIZE_MAX rather than
32705         (size_t) -1 when we are talking about "infinity".
32706
32707         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
32708
32709 2002-11-22  Paul Eggert  <eggert@twinsun.com>
32710
32711         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
32712         hint that one should use `if (! x) abort ();' rather than `assert
32713         (x);', and anyway it's one less thing to worry about configuring.
32714         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
32715         hash_rehash, hash_insert): Use abort rather than assert.
32716
32717 2002-11-22  Bruno Haible  <bruno@clisp.org>
32718
32719         * lib/safe-read.h: Assume C89. Add comments.
32720         (safe_read): Change return type to size_t.
32721         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
32722         byte counts > SSIZE_MAX correctly.
32723         * lib/safe-write.h: New file.
32724         * lib/safe-write.c: New file.
32725         * lib/full-read.h: New file.
32726         * lib/full-read.c: New file.
32727         * lib/full-write.h: Assume C89. Add comments.
32728         * lib/full-write.c: Include safe-write.h.
32729         (full_write): Rewritten to use safe_write.
32730         Suggested by Jim Meyering and Paul Eggert.
32731
32732 2002-11-21  Jim Meyering  <jim@meyering.net>
32733
32734         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
32735
32736         Merge in changes from the coreutils.
32737
32738         2002-09-25  Paul Eggert  <eggert@twinsun.com>
32739         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
32740         <stdint.h>.
32741         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
32742         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
32743         int.  Work more efficiently if X is the same width as uintmax_t.
32744         Do not compare X to -1, to avoid bogus compiler warning.
32745         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
32746         Don't assume that f_frsize and f_bsize are the same type.
32747
32748         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
32749         warning on FreeBSD.
32750
32751         * lib/makepath.c (make_path): Restore umask *before* creating the final
32752         component.
32753         (make_path): Minor reformatting.
32754
32755         * lib/xmalloc.c: Adjust to work with new autoconf macros,
32756         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
32757         HAVE_MALLOC/HAVE_REALLOC.
32758
32759         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
32760         dummy ones.  At least on GNU/Linux systems, `auto' means something
32761         else.
32762         From Michael Stone.
32763
32764 2002-11-21  Bruno Haible  <bruno@clisp.org>
32765
32766         Remove case insensitive option matching.
32767         * lib/argmatch.h (argcasematch): Remove declaration.
32768         (ARGCASEMATCH): Remove macro.
32769         (__xargmatch_internal): Remove case_sensitive argument.
32770         (XARGMATCH): Update.
32771         (XARGCASEMATCH): Remove macro.
32772         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
32773         case_sensitive argument.
32774         (argcasematch): Remove function.
32775         (__xargmatch_internal): Remove case_sensitive argument.
32776         (main): Use XARGMATCH instead of XARGCASEMATCH.
32777
32778         * lib/xmalloc.c: Change compile-time error message. Add comment about
32779         required autoconf version.
32780
32781 2002-11-20  Paul Eggert  <eggert@twinsun.com>
32782
32783         Merge argmatch cleanups from Bison.  Assume C89.
32784
32785         * lib/argmatch.c: Include config.h here, not in argmatch.h.
32786         Include stdlib.h, for EXIT_FAILURE.
32787         Always include <string.h>, since we assume C89.
32788         (EXIT_FAILURE): Remove pre-C89 bug workaround.
32789         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
32790         Include <stddef.h> instead, since it's all we need for size_t.
32791         (PARAMS): Remove.  All uses removed.
32792         (ARRAY_CARDINALITY): Do not bother to #undef.
32793         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
32794         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
32795         Remove unnecessary parentheses.
32796         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
32797         Insert necessary parentheses.
32798         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
32799         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
32800
32801 2002-11-19  Bruno Haible  <bruno@clisp.org>
32802
32803         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
32804         * lib/mbswidth.h: Include <stddef.h>, for size_t.
32805
32806         * lib/mbswidth.h (PARAMS): Remove macro.
32807         (mbswidth, mbsnwidth): Use ANSI C function declarations.
32808         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
32809
32810         * lib/gcd.h (PARAMS): Remove macro.
32811         (gcd): Use ANSI C function declarations.
32812         * lib/gcd.c (gcd): Likewise.
32813
32814 2002-11-15  Bruno Haible  <bruno@clisp.org>
32815
32816         * lib/strcspn.c: Include <stddef.h>.
32817         (strcspn): Use ANSI C function declaration. Change return type to
32818         size_t. Use NULL.
32819         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
32820         (strpbrk): Use NULL.
32821         * lib/strpbrk.h (PARAMS): Remove macro.
32822         (strpbrk): Use ANSI C function declaration.
32823         * lib/strstr.c: Don't include <sys/types.h>.
32824         * lib/strstr.h (PARAMS): Remove macro.
32825         (strstr): Use ANSI C function declarations.
32826
32827 2002-11-14  Karl Berry  <karl@gnu.org>
32828
32829         * config/mkinstalldirs: `do' on separate line, instead of
32830         `for var; do'.
32831
32832 2002-11-06  Bruno Haible  <bruno@clisp.org>
32833
32834         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
32835         * lib/gcd.c (gcd): Likewise.
32836
32837 2002-11-05  Bruno Haible  <bruno@clisp.org>
32838
32839         * lib/gcd.h: New file, from gettext-0.11.5.
32840         * lib/gcd.c: New file, from gettext-0.11.5.
32841
32842 2002-11-05  Bruno Haible  <bruno@clisp.org>
32843
32844         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
32845         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
32846         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
32847         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
32848
32849         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
32850         <libintl.h>.
32851         * lib/makepath.c: Include gettext.h instead of <locale.h> and
32852         <libintl.h>.
32853
32854         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
32855         * lib/human.c: Include gettext.h instead of <libintl.h>.
32856         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
32857         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
32858         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
32859         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
32860         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
32861         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
32862         (textdomain): Remove definition.
32863         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
32864
32865         * lib/long-options.c: Remove include of <libintl.h> and definition of
32866         _.
32867         * lib/same.c: Remove include of <libintl.h> and definition of _.
32868
32869 2002-11-04  Owen Taylor  <otaylor@redhat.com>
32870
32871         * lib/config.charset: A few additions for Solaris.
32872
32873 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
32874
32875         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
32876         * lib/localcharset.c (locale_charset): Declare as extern "C".
32877
32878 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
32879
32880         * lib/config.charset: msdos in uk_UA uses CP1125.
32881
32882 2002-11-04  Bruno Haible  <bruno@clisp.org>
32883
32884         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
32885         * lib/strcase.h: New file, from GNU gettext-0.11.5.
32886         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
32887         * lib/strstr.h: New file, from GNU gettext-0.11.5.
32888         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
32889
32890 2002-11-04  Bruno Haible  <bruno@clisp.org>
32891
32892         * lib/localcharset.c (locale_charset): Don't return an empty string.
32893
32894 2002-11-04  Bruno Haible  <bruno@clisp.org>
32895
32896         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
32897         aliases.
32898
32899 2002-11-04  Bruno Haible  <bruno@clisp.org>
32900
32901         * lib/config.charset: Update for newest glibc. Add canonical names
32902         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
32903
32904 2002-11-04  Bruno Haible  <bruno@clisp.org>
32905
32906         * lib/config.charset: Add support for NetBSD.
32907
32908 2002-11-04  Bruno Haible  <bruno@clisp.org>
32909
32910         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
32911
32912 2002-11-01  Bruno Haible  <bruno@clisp.org>
32913
32914         * configure.in: Add AC_CONFIG_AUX_DIR call.
32915         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
32916         test/Makefile.
32917         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
32918
32919 2002-09-28  Karl Berry  <karl@gnu.org>
32920
32921         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
32922         installed automake until the next release, since changes have been
32923         made.
32924
32925 2002-09-25  Karl Berry  <karl@gnu.org>
32926
32927         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
32928         * lib/getopt*: copy from libc/posix.
32929         * lib/gettext.h: copy from gettext.
32930         * lib/.cppi-disable: add strdup.c, gettext.h.
32931
32932 2002-09-25  Karl Berry  <karl@gnu.org>
32933
32934         * config/srclist.txt: enable gettext.h check.
32935         * config/config.{guess,sub}: update from prep.
32936         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
32937                 from automake 1.6.3.
32938         See srclist*.
32939
32940 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
32941
32942         * regex.c (PATFETCH): Remove the translating fetch.
32943         (PATFETCH_RAW): Rename to PATFETCH.
32944         (set_image_of_range): New fun.
32945         (SET_RANGE_TABLE_WORK_AREA): Use it.
32946         (regex_compile): Don't translate the pattern chars so eagerly.
32947         Only do it when inserting an `exactn' bytecode or when handling
32948         a char-range.
32949         (mutually_exclusive_p): Avoid empty statement.
32950
32951 2002-07-06  Jim Meyering  <meyering@lucent.com>
32952
32953         * m4/README: Don't mention Makefile.am.in.
32954         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
32955
32956 2002-07-01  Jim Meyering  <meyering@lucent.com>
32957
32958         * lib/c-stack.c: Include sys/time.h.
32959         From Volker Borchert.
32960
32961 2002-06-26  Paul Eggert  <eggert@twinsun.com>
32962
32963         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
32964
32965 2002-06-26  Paul Eggert  <eggert@twinsun.com>
32966
32967         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
32968         New macro.  Use it uniformly instead of
32969         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
32970         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
32971         reported by Vin Shelton.
32972
32973 2002-06-22  Paul Eggert  <eggert@twinsun.com>
32974
32975         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
32976         Do not assume SA_SIGINFO behavior.
32977         Bug reported by Jim Meyering on NetBSD 1.5.2.
32978
32979 2002-06-22  Jim Meyering  <meyering@lucent.com>
32980
32981         * m4/c-stack.m4: New file, from diffutils-2.8.2.
32982         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
32983
32984         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
32985         now that configure.ac uses AC_GNU_SOURCE.
32986         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
32987         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
32988
32989         Update to latest tools.  Suggestions from Paul Eggert.
32990         * m4/stdbool.m4: New file, from diffutils-2.8.2.
32991         * m4/gnu-source.m4: Update from diffutils-2.8.2.
32992         * m4/fnmatch.m4: Likewise.
32993         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
32994         to AC_HEADER_STDBOOL
32995
32996 2002-06-22  Jim Meyering  <meyering@lucent.com>
32997
32998         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
32999         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
33000
33001 2002-06-22  Jim Meyering  <meyering@lucent.com>
33002
33003         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
33004
33005         * lib/exitfail.c, exitfail.h: Likewise.
33006         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
33007
33008         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
33009         of fnmatch.h.
33010         (EXTRA_DIST): Add fnmatch_loop.c.
33011         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
33012
33013         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
33014         * lib/fnmatch.c: Update from diffutils-2.8.2.
33015         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
33016         * lib/fnmatch.h: Remove file.
33017
33018 2002-06-21  Jim Meyering  <meyering@lucent.com>
33019
33020         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
33021         * m4/mbrtowc.m4: Likewise.
33022
33023         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
33024         * m4/mbswidth.m4: Reflect name change:
33025         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
33026         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
33027
33028         * m4/lib-link.m4: Update from gettext-0.11.2.
33029         * m4/gettext.m4: Likewise.
33030
33031         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
33032         From Alfred M. Szmidt.
33033
33034 2002-06-18  Paul Eggert  <eggert@twinsun.com>
33035
33036         * lib/file-type.h: Report an error if neither S_ISREG nor
33037         S_IFREG is defined, instead of using a test specific to glibc
33038         2.2.  This should be safe, since POSIX requires S_ISREG and
33039         Unix Version 7 had S_IFREG.  We don't need to check for
33040         <sys/types.h> since we don't use any symbols that it defines.
33041
33042 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
33043
33044         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
33045         $@-t, so that each temporary file name is unique and valid in the first
33046         8 characters, for operation under DOS.
33047
33048 2002-06-15  Paul Eggert  <eggert@twinsun.com>
33049
33050         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
33051
33052 2002-06-15  Jim Meyering  <meyering@lucent.com>
33053
33054         Work even with DJGPP 2.03, which lacks support for symlinks.
33055         From Richard Dawe.
33056         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
33057         is defined.
33058         * lib/lchown.c (S_ISLNK): Likewise.
33059
33060 2002-06-15  Jim Meyering  <meyering@lucent.com>
33061
33062         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
33063         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
33064         have been included before this file.
33065
33066 2002-06-14  Jim Meyering  <meyering@lucent.com>
33067
33068         * lib/file-type.h: Use the version from diffutils-2.8.2.
33069         * lib/file-type.c: Likewise.
33070
33071 2002-06-07  Jim Meyering  <meyering@lucent.com>
33072
33073         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
33074         They're needed at least for NetBSD 1.5.2.
33075         ($statxfs_includes): Include those same headers.
33076         ($statxfs_includes): Include sys/vfs.h if available.
33077         ($statxfs_includes): Likewise for sys/statvfs.h.
33078         Check for the following members in both structs statfs and statvfs:
33079         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
33080
33081 2002-06-01  Jim Meyering  <meyering@lucent.com>
33082
33083         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
33084         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
33085
33086 2002-05-28  Jim Meyering  <meyering@lucent.com>
33087
33088         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
33089         Reported by Volker Borchert.
33090
33091 2002-05-27  Jim Meyering  <meyering@lucent.com>
33092
33093         Fix a problem seen only on nonconforming systems whereby ls.c's
33094         use of localtime, and then of gettimeofday would cause trouble:
33095         the localtime call used to initialize rpl_gettimeofday's save
33096         mechanism would clobber ls's current local time information so
33097         that in any long listing the first file would always be listed
33098         with date 1970-01-01.  Analysis by Volker Borchert.
33099
33100         * lib/gettimeofday.c (localtime): Undefine.
33101         (rpl_localtime): New function.
33102
33103 2002-05-27  Jim Meyering  <meyering@lucent.com>
33104
33105         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
33106         localtime.
33107
33108         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
33109         use the replacement function; it wouldn't resolve at link time.
33110         Reported by Volker Borchert.
33111
33112 2002-05-22  Jim Meyering  <meyering@lucent.com>
33113
33114         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
33115         file-type.h.
33116         * lib/file-type.h: New file.
33117         * lib/file-type.c (file_type): New file/function.  Extracted from
33118         diffutils.
33119
33120 2002-04-30  Jim Meyering  <meyering@lucent.com>
33121
33122         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
33123
33124 2002-04-29  Paul Eggert  <eggert@twinsun.com>
33125
33126         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
33127
33128 2002-04-29  Paul Eggert  <eggert@twinsun.com>
33129
33130         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
33131         Do not check for alloca.h (no longer used) or stdbool.h (was never
33132         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
33133
33134 2002-04-29  Paul Eggert  <eggert@twinsun.com>
33135
33136         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
33137
33138 2002-04-29  Jim Meyering  <meyering@lucent.com>
33139
33140         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
33141         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
33142         Use AC_FUNC_STRNLEN here instead.
33143
33144         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
33145         With autoconf-2.53a, it's part of AC_PROG_CC.
33146
33147 2002-04-28  Paul Eggert  <eggert@twinsun.com>
33148
33149         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
33150         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
33151
33152 2002-04-28  Paul Eggert  <eggert@twinsun.com>
33153
33154         * lib/sig2str.h, lib/sig2str.c: New files.
33155         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
33156
33157 2002-04-28  Paul Eggert  <eggert@twinsun.com>
33158
33159         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
33160         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
33161         of 127, since 64 is the largest conceivable number for ancient
33162         nonstandard hosts.
33163         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
33164
33165 2002-04-28  Jim Meyering  <meyering@lucent.com>
33166
33167         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
33168
33169 2002-04-24  Jim Meyering  <meyering@lucent.com>
33170
33171         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
33172         (jm_PREREQ): Use it.
33173
33174         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
33175         mach/mach.h fcntl.h.
33176         Check for this function: setlocale.
33177
33178 2002-04-24  Jim Meyering  <meyering@lucent.com>
33179
33180         * lib/gettext.h: New file, from Gettext.
33181         * lib/Makefile.am (INCLUDES): Remove -I../intl.
33182         (libfetish_a_SOURCES): Add gettext.h.
33183
33184 2002-04-16  Jim Meyering  <meyering@lucent.com>
33185
33186         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
33187         ut_pid, ut_id, ut_exit.
33188
33189 2002-04-16  Jim Meyering  <meyering@lucent.com>
33190
33191         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
33192         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
33193         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
33194
33195 2002-04-12  Jim Meyering  <meyering@lucent.com>
33196
33197         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
33198         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
33199         existence of the getmntinfo function.  Needed for Darwin 5.3.
33200
33201         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
33202         This is necessary at least on Darwin 5.3.
33203
33204         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
33205         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
33206         strnlen.o in the library, and that makes some versions of ranlib
33207         object.
33208
33209 2002-04-12  Jim Meyering  <meyering@lucent.com>
33210
33211         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
33212
33213 2002-04-09  Jim Meyering  <meyering@lucent.com>
33214
33215         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
33216         to be more precise.  Rather than saying we're checking whether the
33217         function `works', say what we're testing.
33218         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
33219         Reported by Bruno Haible.
33220
33221 2002-03-10  Jim Meyering  <meyering@lucent.com>
33222
33223         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
33224         Suggestion from Santiago Vila.
33225
33226 2002-03-08  Jim Meyering  <meyering@lucent.com>
33227
33228         * lib/rename.c: Mention that this wrapper is needed also on
33229         mips-dec-ultrix4.4 systems.
33230
33231 2002-03-02  Jim Meyering  <meyering@lucent.com>
33232
33233         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
33234         not HAVE_CLOCK_SETTIME.
33235
33236 2002-02-27  Paul Eggert  <eggert@twinsun.com>
33237
33238         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
33239         Check for clock_settime.
33240
33241 2002-02-27  Paul Eggert  <eggert@twinsun.com>
33242
33243         * lib/nanosleep.h: Rename to....
33244         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
33245
33246         * lib/gettime.c: New file.
33247         * lib/settime.c: New file.
33248         * lib/stime.c: Remove.
33249
33250         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
33251         timespec.h.  Remove nanosleep.h.
33252
33253 2002-02-25  Paul Eggert  <eggert@twinsun.com>
33254
33255         * m4/acl.m4: New file.
33256         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
33257         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
33258
33259 2002-02-25  Paul Eggert  <eggert@twinsun.com>
33260
33261         * lib/acl.c, lib/acl.h: New files.
33262         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
33263
33264 2002-02-24  Jim Meyering  <meyering@lucent.com>
33265
33266         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
33267         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
33268         cause trouble.  Reported by Nelson Beebe.
33269
33270 2002-02-23  Paul Eggert  <eggert@twinsun.com>
33271
33272         * lib/path-concat.c (xpath_concat): Reorder code to pacify
33273         compilers that don't know that xalloc_die never returns.
33274
33275 2002-02-20  Jim Meyering  <meyering@lucent.com>
33276
33277         * lib/getdate.c: Regenerate using bison-1.33.
33278
33279 2002-02-17  Jim Meyering  <meyering@lucent.com>
33280
33281         * config/config.guess (main): Don't use `head -1'; it's no longer
33282         portable. Use `sed 1q' instead.
33283
33284 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
33285
33286         * m4/codeset.m4: Upgrade to gettext-0.11.
33287         * m4/gettext.m4: Upgrade to gettext-0.11.
33288         * m4/glibc21.m4: Upgrade to gettext-0.11.
33289         * m4/iconv.m4: Upgrade to gettext-0.11.
33290         * m4/isc-posix.m4: Upgrade to gettext-0.11.
33291         * m4/lcmessage.m4: Upgrade to gettext-0.11.
33292         * m4/lib-ld.m4: New file, from gettext-0.11.
33293         * m4/lib-link.m4: New file, from gettext-0.11.
33294         * m4/lib-prefix.m4: New file, from gettext-0.11.
33295         * m4/progtest.m4: Upgrade to gettext-0.11.
33296
33297 2002-02-15  Paul Eggert  <eggert@twinsun.com>
33298
33299         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
33300         (jm_PREREQ): Use it.
33301
33302 2002-02-15  Paul Eggert  <eggert@twinsun.com>
33303
33304         * lib/posixver.c, lib/posixver.h: New files.
33305         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
33306
33307 2002-02-02  Paul Eggert  <eggert@twinsun.com>
33308             Bruno Haible  <bruno@clisp.org>
33309
33310         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
33311         (fwrite_success_callback): New declaration.
33312         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
33313         print_unicode_char. Call failure callback instead of error.
33314         (fwrite_success_callback): New function.
33315         (exit_failure_callback): New function.
33316         (fallback_failure_callback): New function.
33317         (print_unicode_char): Call unicode_to_mb.
33318
33319 2002-01-26  Jim Meyering  <meyering@lucent.com>
33320
33321         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
33322         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
33323
33324 2002-01-26  Jim Meyering  <meyering@lucent.com>
33325
33326         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
33327
33328 2002-01-22  Paul Eggert  <eggert@twinsun.com>
33329
33330         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
33331
33332 2002-01-22  Jim Meyering  <meyering@lucent.com>
33333
33334         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
33335         Otherwise, some versions of automake would omit the rule that makes
33336         Makefile from Makefile.in.
33337
33338 2002-01-21  Paul Eggert  <eggert@twinsun.com>
33339
33340         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
33341         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
33342         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
33343         (memcoll): Set errno to zero if there is no error.
33344
33345         * lib/quotearg.c (quotearg_buffer_restyled):
33346         Fix bug with quoting buffers containing NUL when backslashing escapes.
33347         This bug was exposed by the other changes in this patch.
33348         (quotearg_n_options): New arg ARGSIZE.
33349         All callers changed.
33350         (quoting_options_from_style): New function.
33351         (quotearg_n_style): Use it.
33352         (quotearg_n_style_mem): New function.
33353
33354         * lib/quotearg.h (quotearg_n_style_mem): New function.
33355
33356 2002-01-19  Jim Meyering  <meyering@lucent.com>
33357
33358         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
33359         Remove useless quotes: DF_PROG="df".
33360         * m4/strnlen.m4: New file.
33361
33362 2002-01-16  Paul Eggert  <eggert@twinsun.com>
33363
33364         * lib/backupfile.c (ISDIGIT): Comment fix.
33365         * lib/getdate.y (ISDIGIT): Likewise.
33366         * lib/posixtm.c (ISDIGIT, year): Likewise.
33367         * lib/strverscmp.c (ISDIGIT): Likewise.
33368         * lib/userspec.c (ISDIGIT): Likewise.
33369
33370 2002-01-16  Jim Meyering  <meyering@lucent.com>
33371
33372         * lib/getdate.y: Add three semicolons, each just before a closing
33373         brace. Bison (as of version 1.31) no longer papers over that mistake.
33374
33375 2002-01-05  Jim Meyering  <meyering@lucent.com>
33376
33377         * lib/version-etc.c (version_etc_copyright): Update copyright year.
33378
33379 2001-12-19  Paul Eggert  <eggert@twinsun.com>
33380
33381         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
33382         not silently exit merely because the output buffer happens to
33383         have nothing pending.
33384
33385 2001-12-18  Paul Eggert  <eggert@twinsun.com>
33386
33387         See the big note in ../ChangeLog.
33388         * lib/human.c (suffixes): Prefer K to k for 1024.
33389         (generate_suffix_backwards): New function.
33390         (human_readable_inexact): Use it.
33391         * lib/xstrtol.c (__xstrtol): If there is no number but there
33392         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
33393         Accept 'K' as well as 'k'.
33394
33395 2001-12-15  Jim Meyering  <meyering@lucent.com>
33396
33397         * lib/regex.h (__restrict_arr): Update from libc.
33398
33399         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
33400         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
33401         (STREQ): Define.
33402
33403 2001-12-14  Jim Meyering  <meyering@lucent.com>
33404
33405         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
33406         Suggestion from Bruno Haible.
33407
33408 2001-12-10  Jim Meyering  <meyering@lucent.com>
33409
33410         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
33411         xrealloc, Instead, include "xalloc.h".
33412         (initbuffer): Don't cast xmalloc return value to char*.
33413         (readline): Reword comment.
33414         Don't cast xrealloc return value to char*
33415         Return NULL, not 0.
33416
33417 2001-12-09  Jim Meyering  <meyering@lucent.com>
33418
33419         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
33420         about `signed and unsigned type in conditional expression'.
33421         * lib/posixtm.c (posix_time_parse): Likewise.
33422
33423         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
33424
33425         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
33426         to avoid a pedantic warning.
33427
33428         * lib/getstr.c: Don't include assert.h.
33429         (getstr): Remove warning-evoking assertions.
33430         Return -1 if offset parameter is out of bounds.
33431         Change the type of a local from int to size_t.
33432
33433         * lib/strftime.c (my_strftime_localtime_r): Include this function
33434         definition in the `#if ! HAVE_TM_GMTOFF' block.
33435
33436         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
33437         Include xalloc.h instead.
33438
33439 2001-12-02  Jim Meyering  <meyering@lucent.com>
33440
33441         * lib/tempname.c: Don't declare getenv, thus reverting the change of
33442         2001-11-18.  It's no longer necessary, now that stdlib.h is always
33443         included.
33444
33445         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
33446         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
33447
33448 2001-11-30  Akim Demaille  <akim@epita.fr>
33449
33450         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
33451         before being defined.
33452
33453 2001-11-27  Paul Eggert  <eggert@twinsun.com>
33454
33455         * lib/quotearg.h (quotearg_n, quotearg_n_style):
33456         First arg is int, not unsigned.
33457         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
33458         (SIZE_MAX, UINT_MAX): New macros.
33459         (quotearg_n_options): Abort if N is negative.
33460         Avoid overflow check on hosts where size_t is 64 bits and int
33461         is 32 bits, as overflow is impossible there.
33462         Fix off-by-one typo that caused unnecessary reallocation.
33463
33464 2001-11-27  Jim Meyering  <meyering@lucent.com>
33465
33466         * lib/tempname.c: Merge with version from libc.
33467         * lib/regex.c: Likewise.
33468
33469         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
33470         systems for which STDC_HEADERS is 0, it was not included, resulting in
33471         a warning about an integer-to-pointer conversion problem with getenv.
33472         Reported by Volker Borchert.
33473
33474 2001-11-26  Jim Meyering  <meyering@lucent.com>
33475
33476         * lib/gtod.h: Remove file.
33477         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
33478         * lib/gettimeofday.c: Don't include gtod.h.
33479         (GTOD_init): Remove function.
33480         (rpl_gettimeofday): Do its job here instead, rather than aborting.
33481         Suggestion from Volker Borchert.
33482
33483 2001-11-23  Jim Meyering  <meyering@lucent.com>
33484
33485         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
33486         it.
33487         * lib/hash.c (struct hash_table): Define it here instead.
33488
33489 2001-11-22  Jim Meyering  <meyering@lucent.com>
33490
33491         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
33492
33493 2001-11-20  Jim Meyering  <meyering@lucent.com>
33494
33495         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
33496         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
33497
33498 2001-11-19  Jim Meyering  <meyering@lucent.com>
33499
33500         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
33501         directory.  Use "conftestXXXXXX" as the template.
33502         Suggestion from Paul Eggert.
33503
33504         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
33505         immediately, so the test doesn't mistakenly hit the max-open-files
33506         limit.
33507
33508 2001-11-18  Paul Eggert  <eggert@twinsun.com>
33509
33510         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
33511         (TEMPORARIES): New macro.
33512         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
33513         removes an artificial limitation (e.g. HP-UX 10.20, where
33514         TMP_MAX is 17576).
33515
33516 2001-11-18  Jim Meyering  <meyering@lucent.com>
33517
33518         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
33519
33520 2001-11-18  Jim Meyering  <meyering@lucent.com>
33521
33522         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
33523         on SunOS 4.
33524
33525         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
33526         files will be created before anything else.
33527
33528 2001-11-17  Paul Eggert  <eggert@twinsun.com>
33529
33530         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
33531         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
33532
33533 2001-11-17  Jim Meyering  <meyering@lucent.com>
33534
33535         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
33536         Prompted by a report from Bob Proulx.
33537
33538         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
33539         Instead, require UTILS_FUNC_MKSTEMP.
33540
33541 2001-11-17  Jim Meyering  <meyering@lucent.com>
33542
33543         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
33544         Now, that's done as part of AC_FUNC_STRTOD.
33545
33546 2001-11-17  Jim Meyering  <meyering@lucent.com>
33547
33548         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
33549         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
33550         rather than group writable.  Patch by Juan F. Codagnone.
33551
33552         * lib/readtokens.c: Remove explicit declarations of xmalloc and
33553         xrealloc, Instead, include "xalloc.h".
33554
33555         * lib/mountlist.c: Include unlocked-io.h after all system headers.
33556         Remove explicit declarations of xmalloc, xrealloc,
33557         and xstrdup.  Instead, include "xalloc.h".
33558
33559         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
33560         unlocked-io.h.
33561         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
33562         Likewise.
33563         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
33564
33565         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
33566         Reported by Padraig Brady.
33567
33568         * lib/mkstemp.c: #undef mkstemp.
33569         Include config.h.
33570         (rpl_mkstemp): Rename from mkstemp.
33571         Protoize.
33572
33573 2001-11-16  Jim Meyering  <meyering@lucent.com>
33574
33575         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
33576         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
33577         determine the amount of total physical memory, use pstat_getstatic.
33578         HPUX-11 doesn't define _SC_PHYS_PAGES.
33579         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
33580         If sysconf couldn't be used to determine the amount of available
33581         physical memory, use both pstat_getstatic and pstat_getdynamic.
33582         Based on a patch from Bob Proulx.
33583
33584 2001-11-10  Jim Meyering  <meyering@lucent.com>
33585
33586         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
33587         (jm_PREREQ): Use it.
33588
33589 2001-11-09  Jim Meyering  <meyering@lucent.com>
33590
33591         * m4/jm-macros.m4: Require autoconf-2.52f.
33592         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
33593         Use these AC_-prefixed names, not the AM_-prefixed ones.
33594
33595         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
33596
33597 2001-11-05  Jim Meyering  <meyering@lucent.com>
33598
33599         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
33600
33601 2001-11-04  Jim Meyering  <meyering@lucent.com>
33602
33603         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
33604         $DEFS.
33605
33606 2001-11-03  Jim Meyering  <meyering@lucent.com>
33607
33608         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
33609         of AC_DEFUN.
33610
33611         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
33612         know the name of the variable in the macro definition.
33613
33614 2001-11-03  Jim Meyering  <meyering@lucent.com>
33615
33616         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
33617         in argmatch_to_argument call.
33618
33619         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
33620         argument.
33621
33622         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
33623         e.g., a fault due to an attempt to free a NULL pointer.
33624
33625 2001-11-01  Jim Meyering  <meyering@lucent.com>
33626
33627         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
33628         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
33629
33630 2001-11-01  Jim Meyering  <meyering@lucent.com>
33631
33632         * lib/dirfd.c, lib/dirfd.h: New files.
33633         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
33634
33635         * lib/hash.c (hash_print) [TESTING]: Clean up.
33636
33637 2001-10-22  Paul Eggert  <eggert@twinsun.com>
33638
33639         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
33640         to avoid a warning if -Wall.
33641
33642 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
33643
33644         * README: New file
33645         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
33646         (per RMS's instructions, this is now the canonical source)
33647         * lgpl/, gpl/: New directories.
33648
33649 2001-10-21  Paul Eggert  <eggert@twinsun.com>
33650
33651         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
33652
33653 2001-10-21  Jim Meyering  <meyering@lucent.com>
33654
33655         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
33656         this code would end up calling gettext even in packages built
33657         with --disable-nls.
33658         * lib/getopt.c (_): Likewise.
33659         * lib/regex.c (_): Likewise.
33660
33661 2001-10-20  Paul Eggert  <eggert@twinsun.com>
33662
33663         * m4/error.m4 (jm_PREREQ_ERROR):
33664         Do not invoke AC_CHECK_FUNCS with strerror_r, as
33665         AC_FUNC_STRERROR_R does that.
33666         Check for strerror declaration.
33667
33668         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
33669         are supposed to have them these days.
33670         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
33671         Merge changes from latest Autoconf CVS.
33672         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
33673         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
33674         POSIX decided to standardize on the int flavor of strerror_r.
33675
33676 2001-10-20  Paul Eggert  <eggert@twinsun.com>
33677
33678         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
33679         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
33680         Use strerror_r that is only a macro, even if it is not a function.
33681         (strerror): Check for HAVE_DECL_STRERROR before declaring.
33682         (private_strerror): Use prototypes, not old-style function definition.
33683         (print_errno_message): New function.
33684         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
33685         char*-flavored one.
33686         (error_tail, error, error_at_line): Use it.
33687
33688 2001-10-11  Jim Meyering  <meyering@lucent.com>
33689
33690         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
33691         and quote_n (1, ... to avoid clobbering a buffer.
33692
33693 2001-10-05  Jim Meyering  <meyering@lucent.com>
33694
33695         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
33696         hash-pjw.h.
33697         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
33698         * lib/hash-pjw.h: New file.
33699
33700 2001-09-30  Jim Meyering  <meyering@lucent.com>
33701
33702         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
33703         `struct fsstat' has the `f_fstypename' member.
33704         Use that to define FS_TYPE, which is now used to make
33705         the getfsstat link test tighter.
33706
33707 2001-09-30  Jim Meyering  <meyering@lucent.com>
33708
33709         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
33710         Include <sys/ucred.h>, for Apple Darwin.
33711         Include sys/mount.h and sys/fs_types.h only if available.
33712         (FS_TYPE): Define.
33713         (read_filesystem_list): Use FS_TYPE.
33714
33715 2001-09-29  Paul Eggert  <eggert@twinsun.com>
33716
33717         * lib/exclude.c (excluded_filename): 0 -> false, since it's
33718         a boolean context.
33719
33720 2001-09-29  Jim Meyering  <meyering@lucent.com>
33721
33722         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
33723         [one-argument getmntent function]): Include stdio.h before mntent.h.
33724         SunOS 4.1.x needs it for the declaration of `FILE'.
33725         Patch by Volker Borchert.
33726
33727         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
33728         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
33729         sys/fs_types.h, and make the link-test for getfsstat guard #include
33730         directives with appropriate #if HAVE_*_H tests so that we can
33731         detect getfsstat on Apple Darwin1.3.7 systems.
33732         Reported by Nelson Beebe.
33733         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
33734
33735 2001-09-28  Paul Eggert  <eggert@twinsun.com>
33736
33737         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
33738         #defines strtoimax.  Also treat the other strto* functions
33739         like strtoimax.
33740
33741         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
33742         Check for strtoul and strtoumax,
33743         as those declarations are made even in the signed case.
33744         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
33745         Likewise, for strtol and strtoimax.
33746
33747 2001-09-28  Paul Eggert  <eggert@twinsun.com>
33748
33749         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
33750         #defines strtoimax.  Also treat the other strto* functions
33751         like strtoimax.
33752
33753         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
33754         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
33755         (strtoimax, strtoumax): Do not declare if already defined as a macro.
33756
33757 2001-09-26  Jim Meyering  <meyering@lucent.com>
33758
33759         Most macros in unlocked-io.h had the wrong number of arguments.
33760         * lib/gen-uio: New script.
33761         (USE_UNLOCKED_IO): Define to 1 if not already defined.
33762         * lib/unlocked-io.hin: Remove file.
33763         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
33764         rather than trying to embed it here.
33765         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
33766         Reported by Padraig Brady.
33767
33768 2001-09-25  Volker Borchert  <bt@teknon.de>
33769
33770         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
33771         `result'.
33772
33773 2001-09-24  Jim Meyering  <meyering@lucent.com>
33774
33775         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
33776
33777 2001-09-23  Jim Meyering  <meyering@lucent.com>
33778
33779         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
33780         instead of the mere test for existence of mntent.h.  The latter
33781         would get a false-positive on AIX 3.4 systems.
33782         In the outer getmntent if-block, don't die if neither of the getmntent
33783         tests succeeds.  Instead, just fall through and continue with the
33784         remaining tests.
33785
33786 2001-09-23  Jim Meyering  <meyering@lucent.com>
33787
33788         * lib/mountlist.c: Remove useless parentheses in #if directives.
33789         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
33790         the deprecated MOUNTED symbol is no longer defined in mntent.h.
33791
33792 2001-09-22  Jim Meyering  <meyering@lucent.com>
33793
33794         * m4/gettext.m4: New file.  From gettext.
33795         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
33796         * m4/progtest.m4: Likewise
33797         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
33798         * m4/glibc21.m4: Likewise.
33799
33800         * m4/libintl.m4: Remove.  No longer used.
33801
33802 2001-09-22  Jim Meyering  <meyering@lucent.com>
33803
33804         * lib/localcharset.c: Update from latest gettext.
33805         * lib/config.charset: Likewise.
33806
33807 2001-09-20  Jim Meyering  <meyering@lucent.com>
33808
33809         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
33810         strtoimax.
33811         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
33812         strtoumax.
33813
33814 2001-09-20  Jim Meyering  <meyering@lucent.com>
33815
33816         * lib/xstrtol.c (strtoimax): Guard declaration with
33817         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
33818         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
33819         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
33820         (strtoumax): Likewise, for completeness (it wasn't necessary).
33821
33822 2001-09-17  Paul Eggert  <eggert@twinsun.com>
33823
33824         * lib/strtoimax.c (HAVE_LONG_LONG):
33825         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
33826         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
33827         to work around bug in IBM C compiler.
33828
33829 2001-09-17  Jim Meyering  <meyering@lucent.com>
33830
33831         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
33832         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
33833         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
33834         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
33835         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
33836         whenever the right hand side need not be expanded by the shell.
33837
33838 2001-09-16  Paul Eggert  <eggert@twinsun.com>
33839
33840         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
33841         library.  It's not correct, as some older glibcs are buggy.
33842         fnmatch wasn't fixed until glibc 2.2.
33843
33844         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
33845         special shell magic here.
33846
33847 2001-09-16  Jim Meyering  <meyering@lucent.com>
33848
33849         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
33850         * m4/jm-macros.m4: Require it.
33851
33852 2001-09-16  Jim Meyering  <meyering@lucent.com>
33853
33854         * lib/mkdir.c: New file.
33855
33856 2001-09-15  Jim Meyering  <meyering@lucent.com>
33857
33858         * m4/jm-macros.m4: Check for help2man.
33859
33860 2001-09-11  Jim Meyering  <meyering@lucent.com>
33861
33862         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
33863         The body, by Paul Eggert, was moved here from configure.in.
33864         * m4/jm-macros.m4: Require UTILS_HOST_OS.
33865
33866 2001-09-04  Paul Eggert  <eggert@twinsun.com>
33867
33868         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
33869         (jm_PREREQ): Use it.
33870
33871 2001-09-04  Paul Eggert  <eggert@twinsun.com>
33872
33873         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
33874         Use ssize_t, not int, to store result of readlink.
33875         Check for ssize_t overflow as well as size_t overflow,
33876         as POSIX says the result of readlink is implementation-defined
33877         when ssize_t overflows.
33878         Remove unnecessary cast to char*.
33879         Use free+malloc instead of realloc, as the storage doesn't need
33880         to be preserved and it's clearer and can be more efficient that way.
33881         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
33882         * lib/xreadlink.h (xreadlink): Update prototype.
33883
33884 2001-09-04  Paul Eggert  <eggert@twinsun.com>
33885
33886         * lib/xgetcwd.c: Revert some of the previous change; intead,
33887         fix the HAVE_GETCWD_NULL code to behave more like the
33888         !HAVE_GETCWD_NULL code used to.
33889
33890         Include "xalloc.h".
33891         (xgetcwd): Do not return NULL when memory is exhausted; instead,
33892         invoke xalloc_die.
33893
33894 2001-09-03  Paul Eggert  <eggert@twinsun.com>
33895
33896         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
33897         sys/param.h, as pathmax.h includes them.
33898
33899 2001-09-03  Paul Eggert  <eggert@twinsun.com>
33900
33901         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
33902         (jm_PREREQ_XGETCWD): New macro.
33903
33904         * m4/getcwd.m4: New file.
33905
33906 2001-09-03  Paul Eggert  <eggert@twinsun.com>
33907
33908         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
33909         like the HAVE_GETCWD_NULL code.
33910         Include pathmax.h if not HAVE_GETCWD.
33911         Do not include xalloc.h.
33912         (INITIAL_BUFFER_SIZE): New symbol.
33913         Do not use xmalloc / xrealloc, since the caller is responsible for
33914         handling errors.  Preserve errno around `free' during failure.
33915         Do not overrun buffer when using getwd.
33916
33917 2001-09-03  Paul Eggert  <eggert@twinsun.com>
33918
33919         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
33920         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
33921         getcwd (NULL, 0).
33922
33923 2001-09-03  Paul Eggert  <eggert@twinsun.com>
33924
33925         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
33926         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
33927         spotted by Jim Meyering.
33928
33929 2001-09-03  Jim Meyering  <meyering@lucent.com>
33930
33931         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
33932         failure.
33933
33934 2001-09-02  Jim Meyering  <meyering@lucent.com>
33935
33936         * lib/error.c: Update from GNU libc.
33937
33938 2001-09-01  Jim Meyering  <meyering@lucent.com>
33939
33940         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
33941         Used by df.
33942
33943 2001-09-01  Jim Meyering  <meyering@lucent.com>
33944
33945         * lib/xreadlink.c: New file.
33946         * lib/xreadlink.h: New file.
33947         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
33948         xreadlink.h.
33949
33950         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
33951         doesn't conflict with sparc Solaris 7's definition in
33952         /usr/include/sys/int_types.h.
33953
33954         * lib/exclude.c: Use `""', not `<>' to #include non-system header
33955         files.
33956         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
33957         and strncasecmp as r-values.  Unixware didn't have declarations.
33958
33959 2001-08-31  Paul Eggert  <eggert@twinsun.com>
33960
33961         * lib/xstrtol.h: Add copyright notice.
33962         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
33963         LONGINT_INVALID_SUFFIX_CHAR.
33964
33965 2001-08-31  Paul Eggert  <eggert@twinsun.com>
33966
33967         * lib/xstrtol.c (strtoimax): New decl.
33968
33969 2001-08-31  Paul Eggert  <eggert@twinsun.com>
33970
33971         * lib/xgetcwd.c: Don't include pathmax.h.
33972         Include stdlib.h and unistd.h if available.
33973         Include xalloc.h.
33974         (xmalloc, xstrdup, free): Remove decls.
33975         (xgetcwd): Don't assume sizes fit in unsigned.
33976         Check for overflow when computing sizes.
33977         Simplify reallocation code.
33978
33979 2001-08-31  Paul Eggert  <eggert@twinsun.com>
33980
33981         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
33982         a directory's st_size can have an arbitrary value, so the old
33983         usage could waste an arbitrary amount of memory.  All uses
33984         changed.
33985         * lib/savedir.h: Update prototype.
33986
33987 2001-08-31  Paul Eggert  <eggert@twinsun.com>
33988
33989         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
33990
33991         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
33992         old strtoimax.c.
33993
33994         Also, make the following further changes to make this file's
33995         configuration more similar to that of strtol.c:
33996         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
33997         (strtoumax, uintmax_t, strtoull, strtol): Remove.
33998         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
33999         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
34000         changed to signed values.
34001
34002         And make the following changes as well:
34003         Fix copyright notice, as 1999 was missing.
34004         (verify): New macro.
34005         (strtoimax): Check sizes at compile-time, not run-time.
34006         Prefer strtol to strtoll if both work.
34007         (main): Remove; it was not that useful and was a pain to maintain.
34008
34009         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
34010
34011 2001-08-31  Jim Meyering  <meyering@lucent.com>
34012
34013         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
34014         Use an initial, malloc'd, buffer of length 128 rather than
34015         a statically allocated one of length 1024.
34016
34017 2001-08-30  Paul Eggert  <eggert@twinsun.com>
34018
34019         Simplify code, partly by assuming autoconf 2.52 semantics.
34020
34021         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
34022
34023         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
34024         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
34025         All uses removed.
34026         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
34027         Move AC_REQUIRE to next-to-top level, to avoid confusion.
34028         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
34029         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
34030         jm_AC_HEADER_INTTYPES_H.
34031         * m4/jm-macros.m4 (jm_MACROS): Likewise.
34032
34033         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
34034
34035         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
34036         Quote first arg of AC_DEFUN.
34037         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
34038         since they are needed to parse the include file even if we need
34039         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
34040         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
34041         but with opposite signedness.
34042
34043 2001-08-30  Paul Eggert  <eggert@twinsun.com>
34044
34045         Merge 'exclude' changes from tar 1.13.22.
34046         This fixes one or two unlikely storage allocation overflow bugs,
34047         but doesn't change user-visible behavior otherwise.
34048
34049 2001-08-30  Paul Eggert  <eggert@twinsun.com>
34050
34051         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
34052         (jm_PREREQ_EXCLUDE): New macro.
34053
34054 2001-08-30  Paul Eggert  <eggert@twinsun.com>
34055
34056         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
34057         tm to be declared.
34058
34059 2001-08-30  Paul Eggert  <eggert@twinsun.com>
34060
34061         * lib/hash.c: Remove '2001' from copyright notice.
34062
34063 2001-08-30  Paul Eggert  <eggert@twinsun.com>
34064
34065         * lib/full-write.h: New file.
34066         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
34067         * lib/full-write.c: Correct credits, as cccp.c no longer
34068         exists and anyway it was so heavily changed from the old cccp
34069         code as to be unrecognizable.  Include full-write.h.
34070         (full_write) Return size_t, with short writes meaning failure.
34071         All callers changed.  This fixes a bug with large buffers
34072         on 64-bit hosts.
34073         * lib/utime.c: Include full-write.h.
34074
34075 2001-08-30  Paul Eggert  <eggert@twinsun.com>
34076
34077         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
34078         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
34079         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
34080         Include if available.
34081         (<xalloc.h>): Include
34082         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
34083         (verify): New macro.  Use it to verify that EXCLUDE macros do not
34084         collide with FNM macros.
34085         (struct patopts): New struct.
34086         (struct exclude): Use it, as exclude patterns now come with options.
34087         (new_exclude): Support above changes.
34088         (new_exclude, add_exclude_file):
34089         Initial size must now be a power of two to simplify overflow checking.
34090         (free_exclude, fnmatch_no_wildcards): New function.
34091         (excluded_filename): No longer requires options arg, as the options
34092         are determined by add_exclude.  Now returns bool, not int.
34093         (excluded_filename, add_exclude):
34094         Add support for the fancy new exclusion options.
34095         (add_exclude, add_exclude_file): Now takes int options arg.
34096         Check for arithmetic overflow when computing sizes.
34097         (add_exclude_file): xrealloc might modify errno, so don't
34098         realloc until after errno might be used.
34099
34100         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
34101         New macros.
34102         (free_exclude): New decl.
34103         (add_exclude, add_exclude_file): Now takes int options arg.
34104         (excluded_filename): No longer requires options arg, as the options
34105         are determined by add_exclude.  Now returns bool, not int.
34106
34107 2001-08-30  Paul Eggert  <eggert@twinsun.com>
34108
34109         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
34110
34111 2001-08-27  Jim Meyering  <meyering@lucent.com>
34112
34113         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
34114
34115         * lib/version-etc.c (N_): Remove definition.
34116         Revert most of last change.
34117         Instead, simply don't mark the `Copyright...' string for translation.
34118         Based on advice from Paul Eggert.
34119
34120         * lib/strtoxmax.c: Tweak comment.
34121
34122 2001-08-26  Jim Meyering  <meyering@lucent.com>
34123
34124         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
34125
34126         * m4/xstrtoimax.m4: New file.
34127         * m4/xstrtoumax.m4: Add comments explaining why we
34128         AC_REPLACE_FUNCS(strtol).
34129
34130 2001-08-26  Jim Meyering  <meyering@lucent.com>
34131
34132         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
34133         of copyright with `%s' so translators don't get an untranslated
34134         message in 2002.
34135         (COPYRIGHT_YEAR): Define.
34136         (version_etc): Use fprintf rather than fputs.
34137         Suggestion from Ulrich Drepper.
34138
34139         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
34140
34141         * lib/strtoll.c: New file, from GNU libc.
34142         * lib/xstrtoimax.c: New file.
34143
34144         * lib/xstrtol.h: Add xstrtoimax.
34145         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
34146         * lib/strtoimax.c: New file.  Likewise, but first define
34147         STRTOUXMAX_SIGNED.
34148
34149         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
34150         ...
34151         * lib/strtoxmax.c: ... then renamed to this.
34152
34153 2001-08-18  Paul Eggert  <eggert@twinsun.com>
34154
34155         * m4/inttypes.m4: Add AC_PREREQ(2.13).
34156         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
34157         (jm_AC_TYPE_INTMAX_T): New macro.
34158         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
34159
34160         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
34161
34162         * m4/longlong.m4: Renamed from ulonglong.m4.
34163         * m4/inttypes.m4: Renamed from inttypes_h.m4.
34164         * m4/uintmax_t.m4: Removed.
34165
34166 2001-08-13  Paul Eggert  <eggert@twinsun.com>
34167
34168         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
34169         Port to Solaris 8, where 'sed' requires a space after the 'r'
34170         command, and where sh dislikes "$/".  Clean up the spacing a bit.
34171         Redirect output to $tmp just once.
34172
34173 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
34174
34175         * lib/addext.c (<errno.h>): Include.
34176         (errno): Declare if not defined.
34177         (addext): Work correctly when pathconf returns -1 and leaves
34178         errno alone because there is no limit.  Also, work even if
34179         pathconf returns a value greater than SIZE_MAX.
34180
34181 2001-08-12  Jim Meyering  <meyering@lucent.com>
34182
34183         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
34184         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
34185         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
34186         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
34187         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
34188         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
34189         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
34190         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
34191         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
34192         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
34193         utime.m4, utimes.m4, xstrtoumax.m4:
34194         Quote the first argument in each use of AC_DEFUN.
34195
34196 2001-08-12  Jim Meyering  <meyering@lucent.com>
34197
34198         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
34199         Simply `return getcwd (NULL, 0);'.
34200         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
34201         Use 1300 as initial value for length, not PATH_MAX.
34202
34203         * lib/pathmax.h: Clean up cpp syntax.
34204
34205 2001-08-12  Jim Meyering  <meyering@lucent.com>
34206
34207         * lib/gettimeofday.c: New file.
34208         * lib/gtod.h: New file.
34209         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
34210
34211 2001-08-05  Jim Meyering  <meyering@lucent.com>
34212
34213         * m4/jm-macros.m4: Require autoconf-2.52.
34214
34215 2001-08-04  Jim Meyering  <meyering@lucent.com>
34216
34217         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
34218         stmt, to get in sync with glibc.
34219
34220 2001-08-03  Paul Eggert  <eggert@twinsun.com>
34221
34222         The following changes are from gettext 0.10.39 as maintained by
34223         Bruno Haible.
34224
34225         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
34226         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
34227         with inverted sense.  All uses changed.
34228
34229         * lib/mbswidth.c: Don't include <limits.h>.
34230         Include <stdlib.h> and <string.h> unconditionally.
34231         (iswcntrl, mbsinit, ISCNTRL): New macros.
34232         (mbsnwidth): Use K&R style function declarations.
34233         Don't bother checking for MB_LEN_MAX == 1, since the compiler
34234         can optimize it when MB_CUR_MAX == 1.
34235         The width of control characters is zero, not 1.
34236
34237 2001-08-03  Paul Eggert  <eggert@twinsun.com>
34238
34239         The following changes are from gettext 0.10.39 as maintained by
34240         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
34241
34242         * m4/codeset.m4: Upgrade to serial AM1.
34243         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
34244         all uses changed.  Quote first arg of AC_DEFUN.
34245         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
34246
34247         * m4/iconv.m4: Upgrade to serial AM2.
34248         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
34249         Add --with-libconv-prefix.
34250         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
34251         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
34252         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
34253         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
34254         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
34255
34256         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
34257         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
34258         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
34259         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
34260         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
34261         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
34262         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
34263         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
34264         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
34265
34266         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
34267         string.h any more.
34268
34269         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
34270         not the default value.
34271
34272         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
34273         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
34274         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
34275         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
34276         Also check for iswcntrl, used for wcwidth fallback.
34277         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
34278         to Autoconf 2.13.
34279
34280 2001-08-03  Jim Meyering  <meyering@lucent.com>
34281
34282         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
34283         as it was in the original.  Reported by Paul Eggert.
34284
34285 2001-07-16  Jim Meyering  <meyering@lucent.com>
34286
34287         * m4/gettimeofday.m4: New file.
34288         Prompted by a report from Bernhard Baehr.
34289
34290 2001-07-15  Jim Meyering  <meyering@lucent.com>
34291
34292         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
34293         stuff. Now it's in ../Makefile.cfg.
34294
34295 2001-07-15  Jim Meyering  <meyering@lucent.com>
34296
34297         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
34298         (BUILT_SOURCES): Add unlocked-io.h.
34299         (io_functions): Define.
34300         (unlocked-io.h): New rule.
34301         (DISTCLEANFILES): Add unlocked-io.h.
34302         (all-local): Depend on unlocked-io.h, to ensure it is created.
34303
34304         * lib/unlocked-io.hin: New file
34305
34306         * lib/regex.c: Update from glibc.
34307
34308 2001-07-05  Jim Meyering  <meyering@lucent.com>
34309
34310         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
34311         recommendation.
34312         (libfetish_a_SOURCES): Put all .h files here instead.
34313         Remove a thus-exposed (better checks in automake) duplicate and
34314         two unnecessary .h files.
34315
34316 2001-07-04  Jim Meyering  <meyering@lucent.com>
34317
34318         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
34319         that generates jm-glibc-io.m4 so that it doesn't trigger any make
34320         distcheck failure.
34321
34322 2001-07-02  Jim Meyering  <meyering@lucent.com>
34323
34324         The following changes were prompted by suggestions from Bruno Haible.
34325
34326         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
34327         is now generated.
34328         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
34329         definition of EXTRA_DIST.
34330         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
34331         ensure that the generated file is created/updated whenever the list
34332         of $(unlocked_functions) is changed.
34333         (jm-glibc-io.m4): New rule.
34334         (unlocked-io.h): New rule -- currently unused.
34335
34336 2001-06-24  Jim Meyering  <meyering@lucent.com>
34337
34338         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
34339         unmatched right bracket, rather than kludging it with an extra,
34340         falsely-matching quote in a comment.  Patch by Akim Demaille.
34341
34342 2001-06-11  Jim Meyering  <meyering@lucent.com>
34343
34344         * lib/regex.c: Update from GNU libc.
34345
34346 2001-05-27  Jim Meyering  <meyering@lucent.com>
34347
34348         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
34349         Check for ut_type in struct utmp.
34350
34351 2001-05-27  Jim Meyering  <meyering@lucent.com>
34352
34353         * lib/readutmp.h (UT_TYPE): Define.
34354
34355 2001-05-24  Jim Meyering  <meyering@lucent.com>
34356
34357         * lib/argmatch.c: Include "quote.h".
34358         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
34359         quote function.  Reported by Göran Uddeborg.
34360
34361 2001-05-22  Jim Meyering  <meyering@lucent.com>
34362
34363         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
34364         now that we use the package-supplied version unconditionally.
34365         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
34366
34367 2001-05-21  Jim Meyering  <meyering@lucent.com>
34368
34369         * m4/regex.m4: Change a couple backticks to single quotes to avoid
34370         shell syntax errors.
34371
34372 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
34373
34374         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
34375
34376 2001-05-20  Paul Eggert  <eggert@twinsun.com>
34377
34378         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
34379         Don't bother to check library strftime, since
34380         we'll be using our own my_strftime function anyway.
34381         Define my_strftime instead of strftime.
34382
34383 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
34384
34385         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
34386         which is not yet declared.
34387
34388 2001-05-15  Jim Meyering  <meyering@lucent.com>
34389
34390         * m4/regex.m4: Use proper quoting so brackets appear in the test
34391         program.
34392         Reported by, and with help from, Bruno Haible.
34393
34394 2001-05-13  Jim Meyering  <meyering@lucent.com>
34395
34396         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
34397         undefined.
34398
34399 2001-05-11  Paul Eggert  <eggert@twinsun.com>
34400
34401         dirname code cleanup.  base_name now behaves more compatibly
34402         with POSIX basename when given file names that have trailing
34403         slashes, and similarly for dir_name.  Add new primitives
34404         base_len and dir_len.  Put the directory-name-related decls
34405         into dirname.h.
34406
34407         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
34408         * lib/backupfile.c (base_name): Likewise.
34409         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
34410         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
34411         * lib/makepath.c (strip_trailing_slashes): Likewise.
34412         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
34413         ISSLASH): Likewise.
34414         * lib/rename.c (strip_trailing_slashes): Likewise.
34415         * lib/same.c (base_name): Likewise.
34416         * lib/stripslash.c (ISSLASH): Likewise.
34417
34418         * lib/addext.c: Include <dirname.h> after size_t is defined.
34419         * lib/backupfile.c: Likewise.
34420
34421         * lib/addext.c (addext): Use base_len to trim redundant
34422         trailing slashes instead of doing it ourselves.
34423         But do not trim the last slash if it is not redundant.
34424
34425         * lib/backupfile.c (find_backup_file_name,
34426         max_backup_version): Use base_len instead of rolling it ourselves.
34427         Handle the case of "" and (on DOS) "C:" correctly.
34428
34429         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
34430         needed. Include <string.h>, <dirname.h>.
34431         (base_name): Allow file names ending in slashes, other than names
34432         that are all slashes.  In this case, return the basename followed
34433         by the slashes.  This is more general, and can be used in places
34434         where the original base_name purposely had an assertion failure.
34435         (base_len): New function.
34436
34437         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
34438         Do not include <assert.h>; no longer needed.
34439         Include xalloc.h.
34440         (memrchr): Remove decl.
34441         (dir_name_r): Remove.
34442         (dir_len): Renamed from dirlen.  All callers changed.
34443         Rewrite in terms of base_name, for simplicity and consistency.
34444         (dir_name): Never return NULL.  All callers changed.
34445         Do not include <stdlib.h> in test program; no longer needed.
34446         return 0; is fine for test program.
34447
34448         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
34449         New macros.
34450         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
34451
34452         * lib/path-concat.c (path_concat): Use base_len to compute
34453         base length, not strlen; this means we cannot rely on memcpy
34454         to null-terminate.
34455
34456         * lib/same.c (STREQ): Remove.
34457         (same_name): Handle the case where the basename ends in trailing '/'.
34458
34459         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
34460         a slash was stripped.  Do not strip the last slash after a
34461         file system prefix.
34462
34463 2001-05-11  Paul Eggert  <eggert@twinsun.com>
34464
34465         * lib/Makefile.am (libfetish_a_SOURCES):
34466         Add strftime.c, since we now compile it on all hosts.
34467
34468         * lib/strftime.c (my_strftime):
34469         Define to nstrftime if emacs, but only if my_strftime is not defined.
34470         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
34471         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
34472         Add one more extra argument: a nanoseconds value.
34473         All uses changed.
34474         (ns): New macro.
34475         (my_strftime function): Add %N format.
34476         (emacs_strftimeu): Renamed from emacs_strftime,
34477         with extra ut argument.
34478
34479 2001-05-09  Paul Eggert  <eggert@twinsun.com>
34480
34481         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
34482
34483 2001-04-21  Jim Meyering  <meyering@lucent.com>
34484
34485         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
34486         doesn't interfere.
34487
34488 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
34489
34490         * m4/ftruncate.m4: Check for chsize.
34491         Link with ftruncate.o unconditionally if ftruncate is missing.
34492         This was required when cross-compiling to i586-mingw32msvc.
34493
34494 2001-04-08  Jim Meyering  <meyering@lucent.com>
34495
34496         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
34497         recomputed; that's necessary when the offset spans a DST transition.
34498         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
34499
34500 2001-04-02  Jim Meyering  <meyering@lucent.com>
34501
34502         * lib/regex.h, regex.c: Update from GNU libc.
34503
34504 2001-03-24  Jim Meyering  <meyering@lucent.com>
34505
34506         * m4/jm-macros.m4: Require autoconf-2.49d.
34507
34508 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
34509
34510         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
34511
34512 2001-03-19  Paul Eggert  <eggert@twinsun.com>
34513
34514         * lib/version-etc.c (version_etc_copyright): Update to 2001.
34515
34516 2001-03-17  Jim Meyering  <meyering@lucent.com>
34517
34518         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
34519         now that the version in autoconf is equivalent.
34520         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
34521
34522         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
34523         Suggestion from Akim Demaille.
34524
34525         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
34526         (jm_PREREQ_TEMPNAME): New function.
34527
34528 2001-03-16  Paul Eggert  <eggert@twinsun.com>
34529
34530         * lib/tempname.c (uint64_t): Define to uintmax_t if
34531         not defined, and if UINT64_MAX is not defined.
34532         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
34533         Reported by John David Anglin.
34534
34535 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
34536
34537         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
34538         resolve alias if codeset is empty.
34539         * lib/config.charset (BeOS): Use wildcard syntax.
34540
34541 2001-03-13  Jim Meyering  <meyering@lucent.com>
34542
34543         * lib/path-concat.c (path_concat)
34544         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
34545         concatenating e.g., `C:' and `foo'.
34546         From Bruno Haible.
34547
34548 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
34549
34550         * lib/localcharset.c (locale_charset): Don't use
34551         setlocale(LC_CTYPE,NULL). Don't return NULL.
34552         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
34553
34554 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
34555
34556         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
34557         support for DOS/DJGPP.
34558
34559 2001-03-01  Paul Eggert  <eggert@twinsun.com>
34560
34561         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
34562         lacks mkstemp.  Compile our own tempname.c if we compile our own
34563         mkstemp.c, as mkstemp relies on tempname.
34564
34565 2001-03-01  Jim Meyering  <meyering@lucent.com>
34566
34567         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
34568         AH_VERBATIM really does output its argument verbatim.
34569
34570 2001-02-28  Paul Eggert  <eggert@twinsun.com>
34571
34572         * lib/Makefile.am (libfetish_a_SOURCES):
34573         Add dup-safer.c, fopen-safer.c.
34574         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
34575
34576         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
34577         * lib/unistd-safer.h: New files.
34578
34579 2001-02-25  Paul Eggert  <eggert@twinsun.com>
34580
34581         The mkstemp replacement is taken from glibc 2.2.2, with some
34582         portability fixes for use outside glibc, as follows:
34583
34584         * lib/tempname.c (struct_stat64): New macro.
34585         (direxists, __gen_tempname): Use it.
34586         This avoids a portability problem with Solaris 8.
34587
34588         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
34589         (<stddef.h>, <stdint.h>, <string.h>):
34590         Include only if STDC_HEADERS || _LIBC.
34591         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
34592         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
34593         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
34594         (__set_errno): Define this macro if <errno.h> doesn't.
34595         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
34596         Define these macros if <stdio.h> doesn't.
34597         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
34598         Define these macros if <sys/stat.h>
34599         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
34600         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
34601         __xstat64): Define if not _LIBC.
34602         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
34603         (__gen_tempname): Invoke gettimeofday only if
34604         HAVE_GETTIMEOFDAY || _LIBC;
34605         otherwise, fall back on plain "time".
34606         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
34607
34608         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
34609
34610         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
34611
34612 2001-02-18  Paul Eggert  <eggert@twinsun.com>
34613
34614         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
34615
34616 2001-02-17  Paul Eggert  <eggert@twinsun.com>
34617
34618         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
34619         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
34620         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
34621         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
34622
34623 2001-02-17  Paul Eggert  <eggert@twinsun.com>
34624
34625         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
34626         Remove workaround macros for hosts that have mbrtowc but not
34627         mbstate_t, as we now insist on proper declarations for both
34628         before using mbrtowc.
34629
34630 2001-02-17  Jim Meyering  <meyering@lucent.com>
34631
34632         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
34633         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
34634         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
34635         UnixWare 7.1.1.
34636
34637         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
34638         rather than AC_CACHE_VAL.
34639
34640 2001-02-17  Jim Meyering  <meyering@lucent.com>
34641
34642         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
34643         around included file name.
34644
34645         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
34646
34647         * lib/strftime.c: Update from GNU libc (the only changes were to
34648         comments).
34649
34650 2001-02-17  Jim Meyering  <meyering@lucent.com>
34651
34652         * lib/regex.c: Update from libc.
34653
34654 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
34655
34656         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
34657         clash.
34658
34659 2001-02-16  Paul Eggert  <eggert@twinsun.com>
34660
34661         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
34662         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
34663         Reported by Mark Hounschell via Paul Eggert.
34664
34665 2001-02-07  Jim Meyering  <meyering@lucent.com>
34666
34667         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
34668
34669 2001-02-05  Jim Meyering  <meyering@lucent.com>
34670
34671         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
34672         it includes the patch required for `large file' support with at least
34673         HP-UX's 10.20 /bin/cc.
34674
34675 2001-02-03  Jim Meyering  <meyering@lucent.com>
34676
34677         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
34678         AS_IF, now that it works once again (mysteriously).
34679         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
34680
34681 2001-01-30  Jim Meyering  <meyering@lucent.com>
34682
34683         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
34684         * m4/chown.m4: Rename conftestchown to conftest.chown.
34685         * m4/rename.m4: s/conftestdir/conftest.d1/ and
34686         s/conftestdir2/conftest.d2/.
34687         * m4/utimes.m4: s/conftestdata/conftest.data/
34688         Inspired by Pavel Roskin's change in autoconf.
34689
34690 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
34691
34692         * lib/config.charset: Update for FreeBSD 4.2.
34693
34694 2001-01-27  Jim Meyering  <meyering@lucent.com>
34695
34696         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
34697         a use of AS_IF.
34698         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
34699
34700 2001-01-26  Jim Meyering  <meyering@lucent.com>
34701
34702         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
34703         quotearg.c includes it.
34704
34705 2001-01-26  Jim Meyering  <meyering@lucent.com>
34706
34707         * lib/quotearg.c: Include stddef.h.
34708         * lib/quote.c: Include stddef.h.
34709         Reported by Axel Kittenberger.
34710
34711         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
34712         line in double quotes so that it evokes a better diagnostic.
34713         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
34714         Reported by Axel Kittenberger.
34715
34716 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
34717
34718         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
34719         as if it was a `charset'.
34720
34721 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
34722
34723         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
34724         has const.
34725
34726 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
34727
34728         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
34729         to avoid a warning.  Add back 'const' to inptr.
34730
34731 2001-01-20  Jim Meyering  <meyering@lucent.com>
34732
34733         Be sure that headers are checked before used in code compiled
34734         for the type checks.
34735         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
34736         In place of that, invoke jm_CHECK_ALL_TYPES.
34737         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
34738         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
34739         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
34740         The check for ssize_t was mistakenly run before the test for unistd.h.
34741
34742         The configure-time check for stdbool.h was missing.
34743         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
34744         (jm_PREREQ_HASH): New function.
34745
34746 2001-01-17  Jim Meyering  <meyering@lucent.com>
34747
34748         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
34749         for autoconf-2.49c.
34750         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
34751
34752 2001-01-16  Jim Meyering  <meyering@lucent.com>
34753
34754         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
34755         From Bruno Haible.
34756
34757 2001-01-14  Jim Meyering  <meyering@lucent.com>
34758
34759         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
34760         foo and bar.  Create conftestdir/ in the script, not in the C code.
34761         Remove directories in the script, not in the C code.
34762         Remove conftestdir{,2} before trying to create the directory.
34763         Make the entire configure script fail if the mkdir fails.
34764
34765 2001-01-14  Jim Meyering  <meyering@lucent.com>
34766
34767         * lib/rename.c: New file.  From Volker Borchert.
34768         Include stdlib.h, string.h or strings.h, and xalloc.h.
34769         Use strip_trailing_slashes rather than open-coding it.
34770
34771 2001-01-03  Paul Eggert  <eggert@twinsun.com>
34772
34773         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
34774
34775 2001-01-03  Jim Meyering  <meyering@lucent.com>
34776
34777         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
34778         of local `inptr' to avoid warning with some system declarations of
34779         iconv.
34780
34781 2001-01-02  Volker Borchert  <bt@teknon.de>
34782
34783         * m4/rename.m4: New file.
34784         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
34785
34786 2001-01-01  Jim Meyering  <meyering@lucent.com>
34787
34788         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
34789         even on systems with utmpx.h.  It's necessary for the declaration of
34790         utmp's ut_user member.  Reported by Andreas Jaeger.
34791
34792         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
34793         available. They are required for the declarations of getgrgid and
34794         getpwuid resp.
34795         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
34796         Reported by Andreas Jaeger.
34797
34798 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
34799
34800         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
34801         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
34802         so `make install' also works in VPATH builds.
34803
34804 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
34805
34806         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
34807         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
34808         can be used in subdirectories.
34809
34810 2000-12-29  Paul Eggert  <eggert@twinsun.com>
34811
34812         * lib/modechange.c: Do not assume that mode_t uses the
34813         traditional octal encoding.  E.g. "chmod 1 FOO" should set
34814         the other-execute bit of FOO even if S_IXOTH != 1.
34815
34816         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
34817         WOTH, XOTH, ALLM): New macros.
34818         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
34819          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
34820         Use them.
34821         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
34822         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
34823         (mode_compile):
34824         No need to use uintmax_t; unsigned long is long enough.
34825         Don't bother to get suffix since we don't use it.
34826
34827 2000-12-26  Jim Meyering  <meyering@lucent.com>
34828
34829         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
34830         better with autoheader.
34831
34832 2000-12-24  Jim Meyering  <meyering@lucent.com>
34833
34834         * lib/hash.c (is_prime): Return explicit boolean values.
34835         (hash_get_first): Return NULL to appease Irix5.6's 89.
34836         Reported by Nelson Beebe.
34837
34838 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
34839
34840         * lib/localcharset.c (locale_charset): Add support for Win32.
34841
34842 2000-12-18  Paul Eggert  <eggert@twinsun.com>
34843
34844         * lib/physmem.h, lib/physmem.c: New files.
34845
34846         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
34847         (noinst_HEADERS): Add physmem.h.
34848
34849         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
34850         't' for compatibility with Solaris 8 sort.
34851
34852 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
34853
34854         * lib/config.charset: Add support for BeOS.
34855
34856 2000-12-17  Jim Meyering  <meyering@lucent.com>
34857
34858         * m4/dos.m4 (jm_AC_DOS): New file and macro.
34859         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
34860
34861 2000-12-16  Jim Meyering  <meyering@lucent.com>
34862
34863         This bug had a serious impact on chown: `chown N:M FILE' (for integer
34864         N and M) would have treated it like `chown N:N FILE'.
34865
34866         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
34867
34868 2000-12-16  Jim Meyering  <meyering@lucent.com>
34869
34870         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
34871         SHELLS_FILE to a file name that's useful on djgpp systems.
34872         Include stdlib.h.
34873         (ADDITIONAL_DEFAULT_SHELLS): Define.
34874         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
34875         Based mostly on a patch from Prashant TR.
34876
34877 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
34878
34879         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
34880         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
34881         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
34882
34883 2000-12-08  Andreas Schwab  <schwab@suse.de>
34884
34885         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
34886         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
34887
34888 2000-12-07  Jim Meyering  <meyering@lucent.com>
34889
34890         * lib/stripslash.c (ISSLASH): Define.
34891         (strip_trailing_slashes): Use ISSLASH rather than comparing against
34892         `/'.
34893         From Prashant TR.
34894
34895         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
34896         (dir_name_r): Declare this function as static.
34897         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
34898         manifest itself on a name containing a mix of slashes and
34899         backslashes.
34900         Make this function work with names starting with a DOS-style
34901         drive letter and colon prefix.
34902         (dir_name): Append `.' if necessary.
34903         Based mostly on patches from Prashant TR and Eli Zaretskii.
34904
34905         * lib/dirname.h (dir_name_r): Remove prototype.
34906
34907 2000-12-06  Paul Eggert  <eggert@twinsun.com>
34908
34909         * m4/off_t-format.m4: Remove this file.
34910         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
34911
34912 2000-12-06  Jim Meyering  <meyering@lucent.com>
34913
34914         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
34915         replacement strtoull, we may well need the replacement strtoul, too.
34916         Check for declarations of strtoul and strtoull.
34917         Check for strtol.  Mainly as a cue to cause automake to include
34918         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
34919         Check for limits.h -- strtol.c needs it.
34920
34921 2000-12-05  Jim Meyering  <meyering@lucent.com>
34922
34923         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
34924
34925 2000-12-04  Jim Meyering  <meyering@lucent.com>
34926
34927         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
34928         Also include memory.h, stdlib.h, unistd.h if appropriate.
34929         Reported by Andreas Jaeger (conflicting declaration of malloc).
34930
34931 2000-12-02  Jim Meyering  <meyering@lucent.com>
34932
34933         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
34934         * m4/jm-macros.m4 (jm_MACROS): require it.
34935
34936 2000-12-02  Jim Meyering  <meyering@lucent.com>
34937
34938         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
34939
34940 2000-12-01  Paul Eggert  <eggert@twinsun.com>
34941
34942         * lib/memrchr.c: Include <config.h> before any system include file.
34943
34944 2000-11-30  Jim Meyering  <meyering@lucent.com>
34945
34946         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
34947
34948 2000-11-30  Jim Meyering  <meyering@lucent.com>
34949
34950         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
34951
34952 2000-11-29  Paul Eggert  <eggert@twinsun.com>
34953
34954         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
34955
34956 2000-11-26  Jim Meyering  <meyering@lucent.com>
34957
34958         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
34959
34960 2000-11-22  Paul Eggert  <eggert@twinsun.com>
34961
34962         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
34963         size of (size_t) -1; it's not portable.
34964
34965 2000-11-17  Jim Meyering  <meyering@lucent.com>
34966
34967         * lib/strstr.c: Update from GNU libc.
34968
34969 2000-11-17  Akim Demaille  <akim@epita.fr>
34970
34971         * lib/obstack.h: Formatting changes.
34972         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
34973         prevent type checking.
34974         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
34975         cast the value to (void *): assigning a `foo *' to a `void *'
34976         variable is valid.
34977         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
34978
34979 2000-11-16  Jim Meyering  <meyering@lucent.com>
34980
34981         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
34982
34983 2000-11-11  Jim Meyering  <meyering@lucent.com>
34984
34985         * lib/error.c: Add a couple #includes, merging from GNU libc version.
34986
34987 2000-11-10  Jim Meyering  <meyering@lucent.com>
34988
34989         * lib/obstack.h: Update from GNU libc.
34990         * lib/obstack.c: Likewise.
34991
34992 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
34993
34994         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
34995
34996 2000-11-06  Paul Eggert  <eggert@twinsun.com>
34997
34998         * lib/getusershell.c (setusershell): Use rewind rather than
34999         fseek/fseeko, to avoid configuration hassles with fseeko.
35000         Don't bother opening SHELLS_FILE if shellstream is NULL;
35001         it's not necessary.
35002
35003 2000-11-05  Jim Meyering  <meyering@lucent.com>
35004
35005         * lib/makepath.h (make_dir): Declare.
35006         * lib/makepath.c (make_dir): Remove `static' attribute.
35007         Tweak a comment.
35008
35009 2000-11-04  Jim Meyering  <meyering@lucent.com>
35010
35011         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
35012
35013 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
35014
35015         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
35016         last one in a bucket, advance to the next bucket.
35017
35018 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
35019
35020         * lib/fnmatch.c: Do not comment out all the code if we are using
35021         the GNU C library, because in some cases we are replacing buggy
35022         code in the GNU C library itself.
35023
35024 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
35025
35026         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
35027         (regex_compile): Catch bogus \(\1\).
35028
35029 2000-10-30  Paul Eggert  <eggert@twinsun.com>
35030
35031         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
35032         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
35033         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
35034
35035 2000-10-30  Paul Eggert  <eggert@twinsun.com>
35036
35037         * lib/error.h, getline.h, modechange.h:
35038         Remove "2000" from Copyright line, as the file hasn't been
35039         changed this year other than in the copyright notice.
35040
35041         * lib/xalloc.h: Add "2000" to Copyright line, as this file
35042         was changed this year.
35043
35044 2000-10-29  Jim Meyering  <meyering@lucent.com>
35045
35046         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
35047         renaming.
35048         * m4/ls-mntd-fs.m4: Likewise
35049
35050 2000-10-29  Jim Meyering  <meyering@lucent.com>
35051
35052         * lib/xstat.in: Fix grammar in comment.
35053
35054 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
35055
35056         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
35057         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
35058         doesn't define __restrict_arr.
35059
35060 2000-10-28  Jim Meyering  <meyering@lucent.com>
35061
35062         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
35063         (jm_PREREQ_MEMCHR): New function.
35064
35065 2000-10-28  Jim Meyering  <meyering@lucent.com>
35066
35067         * lib/memchr.c: Update from libc.
35068         Adjust for portability:
35069         [HAVE_STDLIB_H]: Include stdlib.h.
35070         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
35071         Undef __memchr, too.
35072         [!weak_alias]: Define __memchr to memchr.
35073
35074         * lib/regex.c: Update from libc.
35075         * lib/regex.h: Likewise.
35076         * lib/getopt1.c: Likewise.
35077         * lib/memcmp.c: Likewise.
35078
35079         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
35080         Avoid using fseek, when possible -- it's broken by design.
35081         Patch by Ulrich Drepper.
35082
35083 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
35084
35085         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
35086         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
35087         Giving in to popular pressure to shut up the compiler with casts.
35088
35089 2000-10-26  Jim Meyering  <meyering@lucent.com>
35090
35091         * lib/strftime.c: Update from libc.
35092
35093 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
35094
35095         * regex.c: More `unsigned char' -> `re_char' changes.
35096         Also change several `int' into `re_wchar_t'.
35097         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
35098         (PUSH_FAILURE_POINTER): Don't cast any more.
35099         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
35100         We want GCC to complain, since this piece of code makes
35101         re_match non-reentrant, which *should* be fixed.
35102         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
35103         (EXTEND_BUFFER): Use RETALLOC.
35104         (SET_LIST_BIT): Don't cast.
35105         (re_wchar_t): New type.
35106         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
35107         that those two functions will always properly return.
35108         (IMMEDIATE_QUIT_CHECK): Cast to void.
35109         (analyse_first): Use recursion rather than an explicit stack.
35110         (re_compile_fastmap): Can't fail anymore.
35111         (re_search_2): Don't check re_compile_fastmap for failure.
35112         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
35113         Now also sets the new value (passed in a new argument).
35114         (re_match_2_internal): Use it.
35115         Also, use a new var `reg' of type size_t when looping through regs
35116         rather than reuse the inappropriate `mcnt'.
35117
35118 2000-10-25  Jim Meyering  <meyering@lucent.com>
35119
35120         * lib/obstack.c: Update from libc.
35121
35122 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
35123
35124         * regex.c (regex_compile): Change the way of handling a range from
35125         a char less than 256 to a char not less than 256.
35126
35127 2000-10-24  Andrew Innes  <andrewi@gnu.org>
35128
35129         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
35130         NT-Emacs only.
35131         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
35132         so that re_search functions only quit when callers expect them to.
35133
35134 2000-10-23  Jim Meyering  <meyering@lucent.com>
35135
35136         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
35137         wrong.  That set_locale call must not have any side effects.
35138         From Paul Eggert.
35139
35140 2000-10-22  Jim Meyering  <meyering@lucent.com>
35141
35142         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
35143         [CYCLIC]: Remove now-unused definition.
35144
35145         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
35146         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
35147         Suggestion from Ulrich Drepper.
35148
35149 2000-10-21  Jim Meyering  <meyering@lucent.com>
35150
35151         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
35152         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
35153         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
35154
35155 2000-10-21  Jim Meyering  <meyering@lucent.com>
35156
35157         * lib/dirname.c (memrchr): Declare if necessary.
35158         (dir_name): Remove the restriction that there be no
35159         trailing slashes.  Now, this code skips past them, effectively
35160         ignoring them.
35161         [TEST_DIRNAME] (main): New unit tests.
35162
35163         * lib/memrchr.c: New file from GNU libc.
35164         Undef __memrchr, too.
35165         [!weak_alias]: Define __memrchr to memrchr.
35166         Guard weak_alias use with `#ifdef weak_alias'.
35167
35168 2000-10-21  Jim Meyering  <meyering@lucent.com>
35169
35170         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
35171         (dir_name): Use dir_name_r.
35172         * lib/dirname.h (dir_name_r): Declare it.
35173
35174 2000-10-17  Jim Meyering  <meyering@lucent.com>
35175
35176         * lib/quote.h (PARAMS): Define and use.
35177         Reported by Akim Demaille.
35178
35179         * lib/getopt.c: Update from libc.
35180
35181 2000-10-16  Jim Meyering  <meyering@lucent.com>
35182
35183         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
35184         setlocale.
35185         From Jan Fedak.
35186
35187 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
35188
35189         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
35190
35191 2000-09-25  Jim Meyering  <meyering@lucent.com>
35192
35193         * lib/md5.h (rol): Define (from GnuPG).
35194
35195         * lib/sha.c: Give credit (GnuPG) where due.
35196         (M): Use rol rather than open-coding it.
35197         Add a FIXME comment.
35198
35199 2000-09-21  Jim Meyering  <meyering@lucent.com>
35200
35201         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
35202         Reported by Michael Stone.
35203
35204 2000-09-20  Jim Meyering  <meyering@lucent.com>
35205
35206         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
35207         (noinst_HEADERS): Add sha.h.
35208         Based on code from Scott G. Miller and from GnuPG.
35209
35210 2000-09-18  Jim Meyering  <meyering@lucent.com>
35211
35212         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
35213         LIBS. Otherwise, everyone ends up linking with -lelf for some
35214         configurations.
35215         Reported by Mike Stone.
35216
35217 2000-09-15  Jim Meyering  <meyering@lucent.com>
35218
35219         * lib/regex.c: Update from libc.
35220
35221 2000-09-10  Jim Meyering  <meyering@lucent.com>
35222
35223         * lib/getopt.c (_getopt_internal): Update from glibc.
35224
35225 2000-09-09  Jim Meyering  <meyering@lucent.com>
35226
35227         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
35228         think it should be used as a general replacement for isascii.
35229         * lib/fnmatch.c: Likewise.
35230         * lib/mbswidth.c: Likewise
35231         * lib/regex.c: Likewise.
35232
35233         Don't use atoi.
35234         * lib/userspec.c: Include sys/param.h and limits.h.
35235         Include xstrtol.h.
35236         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
35237         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
35238         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
35239         UID, GID.  Check range.
35240
35241 2000-09-06  Jim Meyering  <meyering@lucent.com>
35242
35243         * lib/getopt.c (_getopt_internal): Update from glibc.
35244
35245 2000-08-30  Jim Meyering  <meyering@lucent.com>
35246
35247         * lib/strftime.c: Merge in changes from GNU libc.
35248
35249 2000-08-26  Jim Meyering  <meyering@lucent.com>
35250
35251         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
35252         * m4/fpending.m4: New file.
35253
35254 2000-08-26  Jim Meyering  <meyering@lucent.com>
35255
35256         * lib/closeout.c: Include "__fpending.h".
35257         (close_stdout_status): Return right away if there's nothing to flush.
35258
35259         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
35260         * lib/__fpending.c: New file.
35261         * lib/__fpending.h: New file.
35262
35263 2000-08-20  Jim Meyering  <meyering@lucent.com>
35264
35265         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
35266         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
35267         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
35268
35269 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
35270
35271         Improve fileutils installation on systems where running
35272         programs (like install) can't be unlinked.
35273         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
35274         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
35275
35276 2000-08-07  Paul Eggert  <eggert@twinsun.com>
35277
35278         Standardize on "memory exhausted" instead of "Memory exhausted"
35279         or "virtual memory exhausted".
35280         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
35281         "virtual memory exhausted".
35282         * lib/same.c (same_name): Invoke xalloc_die instead of printing
35283         our own message.
35284         * lib/userspec.c (parse_user_spec): Likewise.
35285         * lib/bumpalloc.h: comment fix
35286         * lib/same.c, userspec.c: Include xalloc.h.
35287
35288         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
35289         not char *const and pointing to a constant array.
35290         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
35291         (xrealloc): Comment fix.
35292
35293         * lib/userspec.c (parse_user_spec):
35294         Don't translate a message until just before returning,
35295         to avoid unnecessary translation.
35296
35297 2000-08-07  Jim Meyering  <meyering@lucent.com>
35298
35299         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
35300         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
35301         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
35302         getgroups.c, gethostname.c, getopt.h, group-member.c,
35303         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
35304         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
35305         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
35306         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
35307         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
35308         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
35309         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
35310         yesno.c: Back out Copyright date changes for each file with no change
35311         this year.  This eases coordination with other programs using the same
35312         source code modules.  From Paul Eggert.
35313
35314 2000-08-06  Paul Eggert  <eggert@twinsun.com>
35315
35316         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
35317         not char, for compatibility with glibc 2.1.3 strftime.c.
35318
35319 2000-08-03  Greg McGary  <greg@mcgary.org>
35320
35321         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
35322         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
35323         (EXTEND_BUFFER): Use them.
35324
35325 2000-08-01  Jim Meyering  <meyering@lucent.com>
35326
35327         * lib/dirname.c (ISSLASH): Define.
35328         (BACKSLASH_IS_PATH_SEPARATOR): Define.
35329         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
35330         both `\' and `/' may be use as path separators.
35331         Based on a patch from Prashant TR.
35332
35333 2000-07-31  Paul Eggert  <eggert@twinsun.com>
35334
35335         * lib/quotearg.c (quotearg_n_options): Don't make the initial
35336         slot vector a constant, since it might get modified.
35337
35338 2000-07-31  Jim Meyering  <meyering@lucent.com>
35339
35340         * lib/xmalloc.c: Use `virtual memory exhausted', not
35341         `Memory exhausted'.
35342         * lib/obstack.c (print_and_abort): Likewise.
35343
35344 2000-07-30  Paul Eggert  <eggert@twinsun.com>
35345
35346         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
35347         buffer, so that the caller can always quote one small
35348         component of a "memory exhausted" message in slot 0.
35349         From a suggestion by Jim Meyering.
35350
35351 2000-07-30  Jim Meyering  <meyering@lucent.com>
35352
35353         * lib/makepath.c (make_path): Quote the other instance, too.
35354
35355         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
35356         (STATIC_BUF_SIZE): Define.
35357         (quotearg_n_options): Use only statically allocated storage when
35358         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
35359         than STATIC_BUF_SIZE.
35360
35361 2000-07-29  Jim Meyering  <meyering@lucent.com>
35362
35363         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
35364         * lib/dirname.c (dir_name): Likewise.
35365
35366         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
35367         `/'.
35368
35369         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
35370         (dir_name): Assert that there are no trailing slashes.
35371
35372 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
35373
35374         * lib/mbswidth.h (mbswidth): Add a flags argument.
35375         (mbswidth): New declaration.
35376         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
35377         * lib/mbswidth.c (mbswidth): Add a flags argument.
35378         (mbsnwidth): New function.
35379
35380 2000-07-24  Jim Meyering  <meyering@lucent.com>
35381
35382         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
35383
35384 2000-07-23  Paul Eggert  <eggert@twinsun.com>
35385
35386         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
35387
35388 2000-07-23  Paul Eggert  <eggert@twinsun.com>
35389
35390         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
35391         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
35392         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
35393         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
35394         invoke multibyte primitives.
35395
35396 2000-07-23  Paul Eggert  <eggert@twinsun.com>
35397
35398         * lib/quotearg.c:
35399         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
35400         so that mbstate_t is always defined.
35401
35402         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
35403         be 1 in at least one GCC installation, and this configuration
35404         error is likely to be common.  Ignoring MB_LEN_MAX hurts
35405         performance on hosts that have mbrtowc but have only unibyte
35406         locales, but I assume these hosts are rare.
35407
35408 2000-07-23  Paul Eggert  <eggert@twinsun.com>
35409
35410         * lib/mbswidth.c (_XOPEN_SOURCE):
35411         Don't define; this causes problems on Solaris 7.
35412         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
35413
35414 2000-07-23  Jim Meyering  <meyering@lucent.com>
35415
35416         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
35417         too: getgrgid, getpwuid, getuid.
35418
35419 2000-07-23  Jim Meyering  <meyering@lucent.com>
35420
35421         * lib/basename.c (base_name): Add an assertion.
35422
35423 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
35424
35425         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
35426         shadow its mbsinit function.
35427
35428 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
35429
35430         * lib/mbswidth.h: New file.
35431         * lib/mbswidth.c: New file.
35432         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
35433         (noinst_HEADERS): Add mbswidth.h.
35434
35435 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
35436
35437         * lib/config.charset: Add support for FreeBSD. Improve support for
35438         HP-UX and IRIX 6.
35439
35440 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
35441
35442         * m4/mbswidth.m4: New file.
35443         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
35444
35445 2000-07-15  Jim Meyering  <meyering@lucent.com>
35446
35447         * lib/makepath.c: Include quote.h.
35448         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
35449         corresponding argument in a `quote (...)' call.
35450         Give better diagnostics.
35451
35452         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
35453         (noinst_HEADERS): Add quote.h.
35454
35455         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
35456         from tar's src/misc.c.
35457         * lib/quote.h: New file.  Prototypes for same.
35458
35459 2000-07-14  Paul Eggert  <eggert@twinsun.com>
35460
35461         From a suggestion by Bruno Haible.
35462         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
35463         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
35464         to decide whether to define the BeOS workaround macro;
35465         this adjusts to the change to AC_MBSTATE_T.
35466
35467 2000-07-14  Jim Meyering  <meyering@lucent.com>
35468
35469         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
35470         jm_AC_TYPE_UINTMAX_T.
35471
35472 2000-07-13  Paul Eggert  <eggert@twinsun.com>
35473
35474         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
35475
35476         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
35477         quotearg_buffer_restyled): Add support for
35478         clocale_quoting_style.  Undo previous change to
35479         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
35480         and "{RIGHT QUOTATION MARK}" msgids.
35481
35482 2000-07-10  Paul Eggert  <eggert@twinsun.com>
35483
35484         From a suggestion by Bruno Haible.
35485         * m4/mbstate_t.m4 (AC_MBSTATE_T):
35486         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
35487         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
35488         and mbstate_t, to a single-part test that simply defines mbstate_t.
35489         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
35490         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
35491
35492 2000-07-10  Jim Meyering  <meyering@lucent.com>
35493
35494         * m4/strerror_r.m4: Mirror the correction made in autoconf.
35495
35496         * m4/gnu-source.m4: Output to confdefs.h directly.
35497         Suggestion from Akim Demaille.
35498
35499 2000-07-09  Paul Eggert  <eggert@twinsun.com>
35500
35501         The old behavior of quoting `like this' doesn't look good with
35502         newer, ISO-style fonts.  See:
35503         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
35504
35505         Instead, quote "like this" by default.  Let the translator
35506         tailor the locale-specific quoting behavior by providing
35507         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
35508
35509         * lib/quotearg.c (N_): New macro.
35510         (gettext_default): New function.
35511         (quotearg_buffer_restyled): Use
35512         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
35513         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
35514
35515 2000-07-09  Jim Meyering  <meyering@lucent.com>
35516
35517         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
35518         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
35519
35520         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
35521         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
35522
35523 2000-07-09  Jim Meyering  <meyering@lucent.com>
35524
35525         * lib/Most files: Update copyright dates to include 2000.
35526
35527 2000-07-08  Jim Meyering  <meyering@lucent.com>
35528
35529         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
35530         if not defined.
35531         (xgethostname): Remove now-unnecessary #ifdef.
35532         Move declaration of `err' into loop where it's used.
35533
35534 2000-07-05  Paul Eggert  <eggert@twinsun.com>
35535         and Bruno Haible  <haible@clisp.cons.org>
35536
35537         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
35538         only if the test for an object-type mbstate_t fails.  This
35539         prevents us from mistakenly reporting that mbstate_t is a
35540         system object type after we "#define mbstate_t int" to work
35541         around its lack.
35542
35543 2000-07-05  Paul Eggert  <eggert@twinsun.com>
35544         and Bruno Haible  <haible@clisp.cons.org>
35545
35546         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
35547
35548 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
35549
35550         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
35551         to strerror_r.
35552         Include <ctype.h> for use of isalpha.
35553
35554 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
35555
35556         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
35557         by allocating a larger buffer. Test the gethostname return value for
35558         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
35559         returns an error and ENAMETOOLONG isn't defined.
35560
35561 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
35562
35563         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
35564         dimension.
35565
35566 2000-07-04  Jim Meyering  <meyering@lucent.com>
35567
35568         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
35569         of the deprecated AC_CHECKING.
35570
35571 2000-07-04  Jim Meyering  <meyering@lucent.com>
35572
35573         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
35574         Reported by Bruno Haible.
35575
35576 2000-07-04  Jim Meyering  <meyering@lucent.com>
35577
35578         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
35579         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
35580         lacks mbrtowc.
35581
35582 2000-07-03  Paul Eggert  <eggert@twinsun.com>
35583
35584         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
35585         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
35586
35587 2000-07-03  Paul Eggert  <eggert@twinsun.com>
35588         and Bruno Haible  <haible@clisp.cons.org>
35589
35590         * lib/quotearg.c (mbrtowc):
35591         Assign to *pwc, and return 1 only if result is nonzero.
35592         (iswprint): Use ISPRINT when substituting our own mbrtowc.
35593
35594 2000-07-03  Jim Meyering  <meyering@lucent.com>
35595
35596         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
35597
35598 2000-07-03  Jim Meyering  <meyering@lucent.com>
35599
35600         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
35601         This is necessary to get a definition of e.g., UTMP_FILE on
35602         HP-UX 10.20.
35603         From Bob Proulx.
35604
35605 2000-07-02  Jim Meyering  <meyering@lucent.com>
35606
35607         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
35608
35609         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
35610         AC_LIBOBJ(function_name).
35611         * m4/chown.m4: Likewise.
35612         * m4/fnmatch.m4: Likewise.
35613         * m4/ftruncate.m4: Likewise.
35614         * m4/getgroups.m4: Likewise.
35615         * m4/getline.m4: Likewise.
35616         * m4/group-member.m4: Likewise.
35617         * m4/jm-macros.m4: Likewise.
35618         * m4/lstat.m4: Likewise.
35619         * m4/malloc.m4: Likewise.
35620         * m4/memcmp.m4: Likewise.
35621         * m4/nanosleep.m4: Likewise.
35622         * m4/putenv.m4: Likewise.
35623         * m4/realloc.m4: Likewise.
35624         * m4/regex.m4: Likewise.
35625         * m4/stat.m4: Likewise.
35626         * m4/strftime.m4: Likewise.
35627
35628 2000-07-02  Jim Meyering  <meyering@lucent.com>
35629
35630         * lib/quotearg.c (mbstate_t): Don't define here.
35631
35632 2000-07-02  Jim Meyering  <meyering@lucent.com>
35633
35634         * lib/nanosleep.c (SIGCONT): Define if not already defined.
35635
35636 2000-07-01  Jim Meyering  <meyering@lucent.com>
35637
35638         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
35639
35640 2000-07-01  Jim Meyering  <meyering@lucent.com>
35641
35642         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
35643         problem.
35644
35645 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
35646
35647         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
35648         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
35649
35650 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
35651
35652         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
35653         per change in ../m4/ls-mntd-fs.m4.
35654         (read_filesystem_list): Ignore symbolic links.
35655
35656 2000-06-29  Jim Meyering  <meyering@lucent.com>
35657
35658         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
35659         for declaration of strcmp.
35660
35661         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
35662
35663         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
35664         Avoid warning by casting result to `char *' to remove `const'.
35665
35666 2000-06-28  Jim Meyering  <meyering@lucent.com>
35667
35668         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
35669         included by quotearg.c, for which we perform this test.  From
35670         Bruno Haible.
35671
35672 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
35673
35674         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
35675         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
35676         <utmpx.h> exists, put readutmp.o into LIBOBJS.
35677
35678 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
35679
35680         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
35681
35682 2000-06-26  Paul Eggert  <eggert@twinsun.com>
35683
35684         savedir now sets errno on failure and invokes xmalloc to get memory.
35685         Fix a couple of other minor bugs while we're at it.
35686
35687         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
35688         (NAMLEN): Remove macro.
35689         (malloc, realloc): Remove decls.
35690         (stpcpy): Likewise.
35691         ("xalloc.h"): Include.
35692         (NAME_SIZE_DEFAULT): New macro.
35693         (savedir): Use xmalloc / xrealloc to allocate memory.
35694         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
35695         Skip "" directory entries.
35696         Use strlen to calculate directory entry length, since the old method
35697         is rarely used these days and isn't worth supporting.
35698         Don't use a pointer after freeing it.
35699         Check for integer overflow when calculating allocation size.
35700         Use memcpy to copy entries, instead of stpcpy.
35701         Set errno properly when returning NULL.
35702         Check for readdir error.
35703
35704 2000-06-26  Jim Meyering  <meyering@lucent.com>
35705
35706         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
35707
35708 2000-06-25  Jim Meyering  <meyering@lucent.com>
35709
35710         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
35711         Linux header bug when _XOPEN_SOURCE is defined to 500.
35712
35713 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
35714
35715         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
35716         deficiency.
35717
35718 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
35719
35720         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
35721         Include xalloc.h.
35722         Don't include <stdlib.h>.  Don't declare malloc, realloc.
35723
35724 2000-06-24  Jim Meyering  <meyering@lucent.com>
35725
35726         * m4/strerror_r.m4: Revive this file -- to try out an experimental
35727         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
35728         for which strerror does return char*, but which lacks a conveniently
35729         accessible declaration of the function.  If the compile-test says
35730         strerror_r doesn't work, then resort to a `run'-test that works on
35731         BeOS and segfaults on DEC Unix.
35732
35733 2000-06-24  Jim Meyering  <meyering@lucent.com>
35734
35735         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
35736
35737 2000-06-23  Paul Eggert  <eggert@twinsun.com>
35738
35739         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
35740         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
35741
35742 2000-06-23  Paul Eggert  <eggert@twinsun.com>
35743
35744         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
35745         (mbrtowc, mbstate_t): Define substitutes if
35746         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
35747         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
35748         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
35749
35750 2000-06-23  Jim Meyering  <meyering@lucent.com>
35751
35752         * m4/afs.m4: Add missing AC_MSG_RESULT.
35753         Reported by Bruno Haible.
35754
35755         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
35756         Suggestion from Bruno Haible.
35757
35758 2000-06-23  Jim Meyering  <meyering@lucent.com>
35759
35760         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
35761
35762 2000-06-21  Jim Meyering  <meyering@lucent.com>
35763
35764         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
35765
35766 2000-06-21  Jim Meyering  <meyering@lucent.com>
35767
35768         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
35769         (noinst_HEADERS): Add getstr.h.
35770
35771         * lib/getline.c (getstr): Move into a separate file.
35772         * lib/getstr.c (getstr): New file, extracted from getline.c, with
35773         the following changes: new parameter, delim2; both delim[12]
35774         parameters have type `int', not `char'.  The latter would lose
35775         with 8-bit delimiters.
35776         * lib/getstr.h: New file.
35777
35778 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
35779
35780         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
35781         than 1024, return a memory chunk of least possible size, instead
35782         of size PATH_MAX + 2. In the loop, increment the size proportionally.
35783         Use free/xmalloc instead of xrealloc to avoid copying for very long
35784         paths.
35785
35786 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
35787
35788         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
35789         the empty string.
35790
35791 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
35792
35793         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
35794         address, not strdup.  Include <stdlib.h> and don't declare free().
35795
35796 2000-06-19  Jim Meyering  <meyering@lucent.com>
35797
35798         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
35799
35800 2000-06-18  Jim Meyering  <meyering@lucent.com>
35801
35802         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
35803
35804         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
35805         `checking whether...' message to be consistent with that of the
35806         lstat test.
35807
35808 2000-06-18  Jim Meyering  <meyering@lucent.com>
35809
35810         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
35811         Besides, these days every porting target provides a mkdir function.
35812
35813         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
35814         needed. (this snippet comes from src/system.h).
35815
35816 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
35817
35818         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
35819
35820 2000-06-15  Paul Eggert  <eggert@twinsun.com>
35821
35822         * lib/human.c (adjust_value): New function.
35823         (human_readable_inexact): Apply rounding style even when
35824         printing approximate values.
35825
35826 2000-06-14  Paul Eggert  <eggert@twinsun.com>
35827
35828         * lib/human.c (human_readable_inexact): Allow an input block
35829         size that is not a multiple of the output block size, and vice versa.
35830         Reported by Piergiorgio Sartor.
35831
35832 2000-06-14  Paul Eggert  <eggert@twinsun.com>
35833
35834         * lib/getdate.y (get_date): Apply relative times after time
35835         zone indicator, not before.  Reported by Todd A. Jacobs.
35836
35837 2000-06-13  Jim Meyering  <meyering@lucent.com>
35838
35839         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
35840
35841         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
35842
35843 2000-06-12  Paul Eggert  <eggert@twinsun.com>
35844
35845         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
35846
35847 2000-06-12  Jim Meyering  <meyering@lucent.com>
35848
35849         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
35850         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
35851         optional argument.
35852         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
35853         the optional argument, `lib'.
35854
35855 2000-06-08  Jim Meyering  <meyering@lucent.com>
35856
35857         * m4/largefile.m4: Remove file (now that it's part of autoconf).
35858
35859 2000-06-04  Paul Eggert  <eggert@twinsun.com>
35860
35861         Rewrite largefile configuration so that we don't need to run
35862         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
35863         AC_CANONICAL_HOST in configure.in -- jmm]
35864
35865         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
35866         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
35867         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
35868         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
35869         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
35870         All uses changed.
35871         Instead of inspecting the output of getconf, try to compile the
35872         test program without and with the macro definition.
35873         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
35874         for getconf.  Instead, check for the needed flags by compiling
35875         test programs.
35876
35877 2000-06-04  Paul Eggert  <eggert@twinsun.com>
35878
35879         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
35880
35881 2000-06-04  Jim Meyering  <meyering@lucent.com>
35882
35883         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
35884         SunOS 4.1.4 for which gid_t is an unsigned type.
35885
35886 2000-06-03  Jim Meyering  <meyering@lucent.com>
35887
35888         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
35889         now that autoconf requires that.
35890
35891         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
35892         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
35893         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
35894
35895 2000-06-03  Jim Meyering  <meyering@lucent.com>
35896
35897         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
35898
35899 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
35900
35901         * m4/glibc21.m4: New file.
35902         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
35903
35904 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
35905
35906         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
35907         newer, don't install charset.alias.
35908         * lib/config.charset: Change the Linux/glibc rules so they become empty
35909         on glibc-2.1 or newer.
35910
35911 2000-06-02  Jim Meyering  <meyering@lucent.com>
35912
35913         * lib/mountlist.c: Back out last change.  Instead, do this...
35914         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
35915         me_dummy member using the same `ignore'-testing code.
35916         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
35917         fs_type strings.
35918         From Mark D. Roth.
35919
35920 2000-05-29  Jim Meyering  <meyering@lucent.com>
35921
35922         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
35923         mounts with the `ignore' attribute.  Based on a patch from
35924         Mark D. Roth.
35925
35926 2000-05-28  Jim Meyering  <meyering@lucent.com>
35927
35928         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
35929         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
35930         * m4/stat.m4: Likewise.
35931         * m4/lstat.m4: Likewise.
35932         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
35933
35934         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
35935         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
35936
35937 2000-05-26  Jim Meyering  <meyering@lucent.com>
35938
35939         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
35940
35941 2000-05-24  Jim Meyering  <meyering@lucent.com>
35942
35943         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
35944         autoconf requires that.
35945         * m4/lib-check.m4: Likewise.
35946         * m4/jm-macros.m4: Likewise.
35947         * m4/strftime.m4: Likewise.
35948
35949         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
35950         AC_CHECK_DECLS, now that autoconf requires that.
35951
35952 2000-05-22  Jim Meyering  <meyering@lucent.com>
35953
35954         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
35955         * m4/lstat.m4: Likewise.
35956
35957 2000-05-22  Jim Meyering  <meyering@lucent.com>
35958
35959         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
35960
35961 2000-05-20  Jim Meyering  <meyering@lucent.com>
35962
35963         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
35964         (jm_PREREQ): Use it.
35965
35966 2000-05-18  Jim Meyering  <meyering@lucent.com>
35967
35968         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
35969         back, too, since it may have been modified by allocate_entry.
35970         (hash_delete): Rewrite to use neither the assignment operator
35971         nor the comma operator in an if-expression.
35972
35973 2000-05-15  Paul Eggert  <eggert@twinsun.com>
35974
35975         * lib/closeout.c:
35976         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
35977         Remove; no longer needed.
35978         "quotearg.h": Add include.
35979         (file_name): Do not bother to explicitly initialize to NULL; it's less
35980         efficient on some hosts.
35981         (close_stdout_status): Remove test as to whether stdout was already
35982         closed; it breaks for the case "echo x | sort >&-".
35983         Quote file name colons.
35984         Do not assume that _("write error") lacks format strings.
35985
35986 2000-05-15  Jim Meyering  <meyering@lucent.com>
35987
35988         * lib/version-etc.c (version_etc_copyright): Update the copyright
35989         string used in all --version output.
35990
35991 2000-05-14  Jim Meyering  <meyering@lucent.com>
35992
35993         * lib/closeout.c (close_stdout_set_file_name): New function.
35994         (close_stdout_status): Use new file-scoped global.
35995         Return right away if fstat says the stdout file descriptor is invalid.
35996         * lib/closeout.h (close_stdout_set_file_name): Declare.
35997
35998 2000-05-10  Jim Meyering  <meyering@lucent.com>
35999
36000         * lib/closeout.c [default_exit_status]: New file-scoped variable.
36001         (close_stdout_set_status): New function.
36002         * lib/closeout.h (close_stdout_set_status): Declare.
36003
36004 2000-05-09  Jim Meyering  <meyering@lucent.com>
36005
36006         * m4/gettext.m4: Rename this...
36007         * m4/libintl.m4: ...to this.
36008
36009 2000-05-08  Jim Meyering  <meyering@lucent.com>
36010
36011         * lib/long-options.c: Don't include closeout.h.
36012         (parse_long_options): Don't call close_stdout for --version.
36013
36014 2000-05-06  Paul Eggert  <eggert@twinsun.com>
36015
36016         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
36017         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
36018         2.1.3 bug.  This avoids a clash when files like regex.c define
36019         _GNU_SOURCE.
36020
36021 2000-05-06  Jim Meyering  <meyering@lucent.com>
36022
36023         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
36024         (AC_REPLACE_FUNCS): Add strnlen.
36025
36026         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
36027         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
36028
36029         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
36030         AC_SEARCH_LIBS call for nanosleep.
36031         (LIB_NANOSLEEP): Set and AC_SUBST.
36032
36033 2000-05-06  Jim Meyering  <meyering@lucent.com>
36034
36035         * lib/strnlen.c: Undefine __strnlen and strnlen.
36036         [!weak_alias]: Define __strnlen to strnlen.
36037
36038         * lib/atexit.c: New file, from libiberty.
36039
36040 2000-05-06  Jim Meyering  <meyering@lucent.com>
36041
36042         * lib/closeout.c (close_stdout_status): Also check for errors on the
36043         stderr stream.
36044
36045 2000-05-05  Jim Meyering  <meyering@lucent.com>
36046
36047         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
36048         AC_SEARCH_LIBS call for clock_gettime.
36049         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
36050
36051         * m4/search-libs.m4: Update from autoconf.
36052
36053         su doesn't work on Solaris 2.6.
36054         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
36055         <shadow.h>.  Reported by Dragos Harabor.
36056
36057 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
36058
36059         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
36060         memcpy instead of xmalloc, xrealloc, path_concat.
36061         (locale_charset): Treat empty environment variables as absent.
36062         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
36063
36064 2000-05-04  Jim Meyering  <meyering@lucent.com>
36065
36066         * lib/getopt.c: Update from glibc.
36067         * lib/obstack.c: Likewise.
36068         * lib/obstack.h: Likewise.
36069         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
36070         file
36071
36072         * lib/regex.h: Likewise.
36073         * lib/strndup.c: Likewise.
36074         * lib/strnlen.c: New file, from glibc.
36075
36076 2000-05-03  Jim Meyering  <meyering@lucent.com>
36077
36078         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
36079
36080 2000-05-02  Paul Eggert  <eggert@twinsun.com>
36081
36082         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
36083         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
36084         compile-time test, rather than inspecting host and OS, to
36085         decide whether to define _LARGEFILE_SOURCE.
36086
36087 2000-05-01  Jim Meyering  <meyering@lucent.com>
36088
36089         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
36090
36091         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
36092         Based on a patch from Bruno Haible.
36093
36094 2000-05-01  Jim Meyering  <meyering@lucent.com>
36095
36096         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
36097
36098 2000-04-29  Jim Meyering  <meyering@lucent.com>
36099
36100         * lib/path-concat.c: Declare strdup only if it's not defined.
36101         * lib/canon-host.c: Likewise.
36102
36103 2000-04-28  Jim Meyering  <meyering@lucent.com>
36104
36105         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
36106         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
36107         is included first, then limits.h is included by locale.h by libintl.h.
36108         From John David Anglin.
36109
36110 2000-04-25  Jim Meyering  <meyering@lucent.com>
36111
36112         * lib/makepath.c (S_IRWXUGO): Define.
36113         (make_path): Always perform explicit chmod if MODE specifies any
36114         of the `special' permission bits.  Prompted by a bug report against
36115         install from Mate Wierdl and Joost van Baal.
36116
36117 2000-04-18  Jim Meyering  <meyering@lucent.com>
36118
36119         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
36120         (jm_PREREQ): Use it.
36121
36122 2000-04-18  Jim Meyering  <meyering@lucent.com>
36123
36124         * lib/README: New file.
36125
36126         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
36127         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
36128
36129 2000-04-17  Jim Meyering  <meyering@lucent.com>
36130
36131         Get it right :-)
36132         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
36133         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
36134         Suggestion from Akim Demaille.
36135
36136 2000-04-17  Jim Meyering  <meyering@lucent.com>
36137
36138         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
36139         the definition of it to rpl_strftime also defined-away the system's
36140         declaration.
36141
36142 2000-04-15  Jim Meyering  <meyering@lucent.com>
36143
36144         Use `C' to denote so-called `contiguous' files, the same way
36145         that tar does.
36146         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
36147         (ftypelet): Use S_ISCTG.
36148         From Michael Deutschmann.
36149
36150 2000-04-14  Jim Meyering  <meyering@lucent.com>
36151
36152         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
36153         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
36154         clobbered.
36155
36156 2000-04-14  Jim Meyering  <meyering@lucent.com>
36157
36158         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
36159
36160 2000-04-13  Jim Meyering  <meyering@lucent.com>
36161
36162         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
36163         AH_VERBATIM to insert required #ifndef into config.h.in.
36164         Suggestion from Akim Demaille.
36165
36166 2000-04-12  Jim Meyering  <meyering@lucent.com>
36167
36168         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
36169         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
36170         Christian Krackowizer.
36171
36172         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
36173         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
36174         (AC_SYS_LARGEFILE): Require.
36175         (AM_C_PROTOTYPES): Require.
36176
36177 2000-04-08  Jim Meyering  <meyering@lucent.com>
36178
36179         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
36180         names don't conflict.  Reported by Eli Zaretskii.
36181
36182 2000-04-07  Jim Meyering  <meyering@lucent.com>
36183
36184         * lib/putenv.c: Move inclusion of errno.h so it follows that of
36185         sys/types.h, to work around system header problems on AIX 3.2.5.
36186         From Bruno Haible.
36187
36188 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
36189
36190         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
36191         bug.  Deal with the different error behavior of Irix iconv.
36192
36193 2000-04-05  Paul Eggert  <eggert@twinsun.com>
36194
36195         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
36196         IRIX if the installer said otherwise.
36197
36198 2000-04-05  Jim Meyering  <meyering@lucent.com>
36199
36200         Portability tweaks required for ultrix4.3.
36201         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
36202         (jm_CHECK_DECLS): Add getutent to the list of functions.
36203         (_jm_DECL_HEADERS): Add utmpx.h.
36204         From John David Anglin.
36205
36206         * m4/strftime.m4: Back out the 2000-04-02 change.
36207         Instead of that change, simply undefine putenv in the test program.
36208
36209 2000-04-05  Jim Meyering  <meyering@lucent.com>
36210
36211         Portability tweaks required for ultrix4.3.
36212         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
36213         getutent.
36214         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
36215         * lib/canon-host.c: Declare strdup.
36216         * lib/path-concat.c: Likewise.
36217         From John David Anglin.
36218
36219 2000-04-04  Jim Meyering  <meyering@lucent.com>
36220
36221         Be more DOS 8.3-friendly.
36222         * lib/ref-add.sin: Renamed from ref-add.sed.in.
36223         * lib/ref-del.sin: Renamed from ref-del.sed.in.
36224         * lib/Makefile.am: Reflect renaming.
36225         Reported by Eli Zaretskii.
36226
36227         Use a temporary file name that won't clash with `charset.alias'
36228         in the DOS 8.3 name space.
36229         * lib/Makefile.am (charset_tmp): Define.
36230         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
36231         (uninstall-local): Likewise.
36232         Reported by Eli Zaretskii.
36233
36234 2000-04-03  Jim Meyering  <meyering@lucent.com>
36235
36236         * m4/gettext.m4: Fix typo in comment.
36237
36238         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
36239         textutils/configure.in).  Suggestion from Paul Eggert.
36240         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
36241
36242 2000-04-02  Paul Eggert  <eggert@twinsun.com>
36243
36244         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
36245         variable in the shell rather than using putenv, which isn't
36246         portable.  This avoids the configure-time inter-test dependency
36247         on the potentially-renamed putenv function.
36248
36249 2000-03-30  Paul Eggert  <eggert@twinsun.com>
36250
36251         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
36252         before checking struct stat.st_blksize, so that
36253         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
36254
36255 2000-03-29  Paul Eggert  <eggert@twinsun.com>
36256
36257         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
36258         since strftime.c uses HAVE_STRFTIME to decide whether to use
36259         the underlying strftime.
36260
36261 2000-03-29  Paul Eggert  <eggert@twinsun.com>
36262
36263         * lib/time/strftime.c (my_strftime): Make sure we call the system
36264         strftime, not ourselves, when invoking the underlying strftime.
36265
36266 2000-03-24  Jim Meyering  <meyering@lucent.com>
36267
36268         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
36269         (charset_alias): Define.
36270         (install-exec-local): Factor out common code.
36271         (uninstall-local): Split lines longer than 80.
36272         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
36273         (SUFFIXES): Define.
36274         (.sed.in.sed): New rule.  Don't redirect directly to $@.
36275         (CLEANFILES): Add ref-add.sed and ref-del.sed.
36276
36277 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
36278
36279         * lib/config.charset: Output a line containing "Packages using this
36280         file".
36281         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
36282         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
36283         ref-del.sed): New rules.
36284
36285 2000-03-17  Jim Meyering  <meyering@lucent.com>
36286
36287         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
36288         Otherwise, include <strings.h>
36289
36290 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
36291
36292         * lib/unicodeio.c (utf8_wctomb): New function.
36293         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
36294         format instead of in UCS-4 with platform dependent endianness.
36295
36296 2000-03-10  Jim Meyering  <meyering@lucent.com>
36297
36298         * m4/lib-check.m4: Look for getspnam in -lgen, too.
36299         From Marco Franzen.
36300
36301 2000-03-07  Paul Eggert  <eggert@twinsun.com>
36302
36303         * lib/savedir.c (savedir): Work even if directory size is
36304         negative; this can happen with some screwy NFS configurations.
36305
36306 2000-03-06  Jim Meyering  <meyering@lucent.com>
36307
36308         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
36309         if it's NULL (because we ran out of memory).  From Bruno Haible.
36310
36311 2000-03-05  Jim Meyering  <meyering@lucent.com>
36312
36313         * lib/localcharset.c ("path-concat.h"): Include.
36314         (get_charset_aliases): Use path_concat instead of ANSI string
36315         concatenation.
36316
36317         * lib/unicodeio.h (PARAMS): Define.
36318         Use it to guard prototype.
36319
36320 2000-03-04  Jim Meyering  <meyering@lucent.com>
36321
36322         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
36323         for lib/localcharset.c.
36324
36325 2000-03-04  Jim Meyering  <meyering@lucent.com>
36326
36327         * lib/Makefile.am (install-exec-local): Create $(libdir) before
36328         installing into it.
36329         (uninstall-local): Uncomment this rule so `make distcheck' works
36330         once again.
36331
36332         * lib/unicodeio.c (<errno.h>): Include it.
36333         (errno): Declare if not defined.
36334
36335         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
36336
36337         * lib/config.charset: New version, incorporating remarks from a linux
36338         i18n mailing list.  From Bruno Haible.
36339
36340 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
36341
36342         * m4/codeset.m4: New file.
36343         * m4/iconv.m4: New file.
36344         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
36345
36346 2000-03-03  Jim Meyering  <meyering@lucent.com>
36347
36348         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
36349
36350 2000-03-02  Jim Meyering  <meyering@lucent.com>
36351
36352         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
36353         the messages come out on separate lines.
36354
36355         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
36356         rather than jm_CHECK_DECLARATIONS.
36357         * m4/decl.m4: Remove now-unused file.
36358
36359         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
36360         geteuid.
36361
36362 2000-03-02  Jim Meyering  <meyering@lucent.com>
36363
36364         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
36365
36366 2000-03-01  Jim Meyering  <meyering@lucent.com>
36367
36368         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
36369         * lib/unicodeio.c: Likewise.
36370
36371 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
36372
36373         * lib/config.charset: New file.
36374         * lib/localcharset.c: New file.
36375         * lib/unicodeio.h, lib/unicodeio.c: New files.
36376         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
36377         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
36378         (noinst_HEADERS): Add unicodeio.h.
36379         (all-local, install-exec-local, charset.alias): New targets.
36380
36381 2000-02-28  Paul Eggert  <eggert@twinsun.com>
36382
36383         * lib/quotearg.c (ALERT_CHAR): New macro.
36384         (quotearg_buffer_restyled): Use it.
36385
36386 2000-02-27  Jim Meyering  <meyering@lucent.com>
36387
36388         * m4/check-decl.m4: Add getenv to the list.
36389
36390 2000-02-27  Jim Meyering  <meyering@lucent.com>
36391
36392         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
36393         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
36394
36395         * lib/backupfile.c: Guard inclusion of stdlib.h with
36396         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
36397         Declare malloc if needed.
36398
36399         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
36400         `#ifndef HAVE_DECL..'
36401         now that autoconf always defines the HAVE_DECL_ symbols.
36402         * lib/human.c: Likewise.
36403         * lib/same.c: Likewise.
36404         * lib/strtoumax.c: Likewise.
36405
36406         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
36407         declaration check was not run.
36408         * lib/hash.c: Likewise.
36409         * lib/human.c: Likewise.
36410         * lib/same.c: Likewise.
36411         * lib/strtoumax.c: Likewise.
36412
36413         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
36414         `.', then first look up the entire `.'-containing string as a login
36415         name.
36416
36417 2000-02-23  Jim Meyering  <meyering@lucent.com>
36418
36419         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
36420         in place of my hack.
36421
36422 2000-02-18  Paul Eggert  <eggert@twinsun.com>
36423
36424         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
36425         (textint): New typedef.
36426         (parser_control): Member year changed from int to textint.
36427         All uses changed.
36428         (YYSTYPE): Removed; replaced by %union with int and textint members.
36429         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
36430         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
36431         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
36432         (tSNUMBER, tUNUMBER): Now of type <textintval>.
36433         (date, number, to_year): Use width of number in digits, not its value,
36434         to determine whether it's a 2-digit year, or a 2-digit time.
36435         (yylex): Store number of digits of numeric tokens.
36436         Reported by John Kendall.
36437
36438         (parser_control): Changed from struct parser_control to typedef (for
36439         consistency).  All uses changed.
36440
36441         (tID): Removed; not used.
36442         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
36443
36444 2000-02-14  Paul Eggert  <eggert@twinsun.com>
36445
36446         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
36447         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
36448
36449 2000-02-12  Jim Meyering  <meyering@lucent.com>
36450
36451         * lib/userspec.c (ISDIGIT): Define it.
36452         (isdigit): Remove definition.
36453         (is_number): Use ISDIGIT, not isdigit.
36454         <libintl.h>: Include.
36455         (_ and N_): Define.
36456         (parse_user_spec): Mark translatable strings.
36457
36458 2000-02-10  Jim Meyering  <meyering@lucent.com>
36459
36460         With these changes, nanosleep.[ch] are finally enough like the other
36461         lib/* replacement files to compile on a few more losing systems.
36462
36463         * lib/nanosleep.h: Don't include config.h.
36464         Remove prototype from declaration of nanosleep.
36465         (PARAMS): Remove now-unneeded definition.
36466         * lib/nanosleep.c: #undef nanosleep.
36467         (rpl_nanosleep): Rename from nanosleep.
36468
36469 2000-02-10  Jim Meyering  <meyering@lucent.com>
36470
36471         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
36472         gnu_nanosleep to rpl_nanosleep.
36473
36474 2000-02-09  Jim Meyering  <meyering@lucent.com>
36475
36476         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
36477         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
36478
36479 2000-02-08  Akim Demaille  <akim@epita.fr>
36480
36481         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
36482         `[' and `]' and remove uses of `changequote'.
36483         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
36484         (AC_SYS_LARGEFILE): Likewise.
36485         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
36486         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
36487         of changequote.
36488         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
36489         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
36490         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
36491         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
36492
36493 2000-02-05  Jim Meyering  <meyering@lucent.com>
36494
36495         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
36496         Remove explicit use of AC_HEADER_TIME.  It is required by
36497         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
36498         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
36499         in autoconf whereby the expansion of the latter ended up preceding
36500         the expansion of its prerequisite, AC_HEADER_TIME.
36501         Reported by Volker Borchert.
36502
36503 2000-02-03  Jim Meyering  <meyering@lucent.com>
36504
36505         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
36506
36507 2000-02-03  Jim Meyering  <meyering@lucent.com>
36508
36509         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
36510         rather than with `#if HAVE_UTMPNAME'.
36511
36512 2000-02-02  Jim Meyering  <meyering@lucent.com>
36513
36514         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
36515         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
36516         Reported by Eli Zaretskii.
36517
36518 2000-02-01  Jim Meyering  <meyering@lucent.com>
36519
36520         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
36521
36522 2000-01-31  Jim Meyering  <meyering@lucent.com>
36523
36524         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
36525         functions.  Add the time.h and sys/time.h headers along with the
36526         AC_REQUIRE'ment of AC_HEADER_TIME.
36527
36528 2000-01-31  Jim Meyering  <meyering@lucent.com>
36529
36530         * lib/nanosleep.h (nanosleep): Guard declaration with
36531         `#if ! HAVE_DECL_NANOSLEEP'.
36532         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
36533         the declaration in that vendor's sys/timers.h.
36534         Reported by Christian Krackowizer.
36535
36536         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
36537         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
36538         (ISPRINT): Likewise.
36539         Reported by Tom Tromey.
36540
36541 2000-01-30  Jim Meyering  <meyering@lucent.com>
36542
36543         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
36544
36545         * m4/prereq.m4 (utmp_includes): Define.
36546         Check for ut_user and ut_name members in both struct utmpx
36547         and struct utmp.
36548
36549 2000-01-30  Jim Meyering  <meyering@lucent.com>
36550
36551         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
36552         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
36553         header files where only utmpx.ut_user is declared.
36554
36555         * lib/readutmp.h (UT_USER): Define.
36556
36557 2000-01-29  Jim Meyering  <meyering@lucent.com>
36558
36559         * m4/lib-check.m4: New file containing library-related checks from
36560         fileutils and sh-utils (textutils had none).
36561
36562 2000-01-28  Jim Meyering  <meyering@lucent.com>
36563
36564         * m4/perl.m4: Change format of warning message to look more like that
36565         from the missing script.  Suggestion from François Pinard.
36566
36567 2000-01-25  Jim Meyering  <meyering@lucent.com>
36568
36569         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
36570         well as time.h in the compile check.
36571         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
36572         Fix typo in cross-compiling case: s/yes/no/.
36573
36574 2000-01-23  Jim Meyering  <meyering@lucent.com>
36575
36576         * m4/jm-macros.m4: Move df-related tests here from
36577         fileutils/configure.in
36578
36579         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
36580         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
36581
36582         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
36583         s/space/ac_fsusage_space/.
36584         (jm_FILE_SYSTEM_USAGE): Take two parameters.
36585
36586         * m4/ftruncate.m4: New file (derived from part of
36587         fileutils/configure.in).
36588         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
36589         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
36590
36591         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
36592         AC_SUBST these here, rather than just in sh-util/configure.in, so
36593         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
36594         all the same.
36595         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
36596         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
36597         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
36598         (AC_SUBST(POW_LIBM)): Likewise.
36599         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
36600
36601 2000-01-23  Jim Meyering  <meyering@lucent.com>
36602
36603         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
36604         obstack.c.
36605
36606 2000-01-22  Jim Meyering  <meyering@lucent.com>
36607
36608         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
36609
36610         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
36611
36612         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
36613         configure.in
36614         (AC_CHECK_HEADERS): Likewise for sh-utils.
36615         (AC_CHECK_HEADERS): Likewise for textutils.
36616         Merge the three lists of headers.
36617
36618         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
36619         from fileutils' configure.in.
36620
36621         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
36622         code. Moved tests into their own function (_jm_DECL_HEADERS) in
36623         check-decl.m4.
36624
36625         * m4/check-decl.m4: Use #if rather than #ifdef.
36626         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
36627         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
36628         (_jm_DECL_HEADERS): Define new function.
36629         (jm_CHECK_DECLARATIONS): Require it.
36630
36631 2000-01-22  Jim Meyering  <meyering@lucent.com>
36632
36633         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
36634         [! HAVE_DECL_STRTOULL]: Declare strtoull.
36635         Required for some AIX systems.  Reported by Christian Krackowizer.
36636         [TESTING] (main): New function.
36637
36638         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
36639         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
36640         letters.
36641
36642         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
36643         iswprint.
36644
36645         * lib/strverscmp.c (ISDIGIT): Define.
36646         (strverscmp): Use ISDIGIT, not isdigit.
36647
36648 2000-01-19  Jim Meyering  <meyering@lucent.com>
36649
36650         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
36651         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
36652         defines `struct timespec' in <sys/time.h>
36653
36654         * m4/c-bs-a.m4: Remove uses of changequote altogether.
36655         Thanks to Akim for explaining.
36656
36657 2000-01-17  Paul Eggert  <eggert@twinsun.com>
36658
36659         * lib/nanosleep.c (nanosleep):
36660         Don't use SA_INTERRUPT to decide whether to call sigaction, as
36661         POSIX.1 doesn't require SA_INTERRUPT and some systems
36662         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
36663         it's been part of POSIX.1 since day 1 (in 1988).
36664
36665 2000-01-17  Jim Meyering  <meyering@lucent.com>
36666
36667         * lib/interlock: Remove unused file.  Reported by François Pinard.
36668
36669 2000-01-16  Paul Eggert  <eggert@twinsun.com>
36670
36671         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
36672         alert, backslash, formfeed, and vertical tab unnecessarily in
36673         shell quoting style.
36674
36675 2000-01-16  Jim Meyering  <meyering@lucent.com>
36676
36677         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
36678         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
36679         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
36680         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
36681
36682 2000-01-16  Jim Meyering  <meyering@lucent.com>
36683
36684         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
36685         because the latter didn't work.
36686
36687 2000-01-15  Jim Meyering  <meyering@lucent.com>
36688
36689         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
36690         (AC_REPLACE_FUNCS): Add memcpy and memset.
36691         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
36692         Add strpbrk.
36693         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
36694
36695 2000-01-12  Jim Meyering  <meyering@lucent.com>
36696
36697         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
36698         (jm_PREREQ): Use it.
36699         (jm_PREREQ_READUTMP): New macro.
36700         (jm_PREREQ): Use it.
36701
36702 2000-01-11  Paul Eggert  <eggert@twinsun.com>
36703
36704         Quote multibyte characters correctly.
36705         * m4/c-bs-a.m4: New file.
36706         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
36707         (jm_PREREQ): Use it.
36708
36709 2000-01-11  Paul Eggert  <eggert@twinsun.com>
36710
36711         * m4/uintmax_t.m4: Port to autoconf 2.13.
36712
36713 2000-01-08  Jim Meyering  <meyering@ascend.com>
36714
36715         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
36716         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
36717
36718 2000-01-04  Jim Meyering  <meyering@ascend.com>
36719
36720         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
36721         jm_STRUCT_DIRENT_D_TYPE.
36722         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
36723         jm_STRUCT_DIRENT_D_INO.
36724         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
36725         jm_STRUCT_UTIMBUF.
36726         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
36727         renamings.
36728         * m4/utime.m4: Likewise.
36729
36730         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
36731         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
36732
36733 2000-01-03  Paul Eggert  <eggert@twinsun.com>
36734
36735         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
36736         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
36737
36738 2000-01-02  Jim Meyering  <meyering@ascend.com>
36739
36740         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
36741         remember if this is necessary.
36742
36743 1999-12-26  Jim Meyering  <meyering@ascend.com>
36744
36745         * m4/jm-macros.m4: Use it here.
36746         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
36747
36748 1999-12-23  Jim Meyering  <meyering@ascend.com>
36749
36750         * m4/jm-macros.m4: Check for clock_gettime (moved from
36751         fileutils/configure.in)
36752         Check for gettimeofday.
36753
36754 1999-12-20  Jim Meyering  <meyering@ascend.com>
36755
36756         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
36757         autoconf-2.14a-1999-12-20.
36758
36759 1999-12-19  Jim Meyering  <meyering@ascend.com>
36760
36761         * m4/lstat-slash.m4: New file.
36762         * m4/jm-macros.m4: Use the new macro:
36763         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
36764
36765 1999-12-07  Jim Meyering  <meyering@ascend.com>
36766
36767         * m4/perl.m4: Require that File::Compare be available, too.
36768         Too many systems seem to lack it.
36769
36770         * m4/strftime.m4: Add checks for most of the cpp macros tested in
36771         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
36772
36773 1999-11-18  Paul Eggert  <eggert@twinsun.com>
36774
36775         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
36776         problem with the QNX 4.25 shell, which doesn't propagate exit
36777         status of failed commands inside shell assignments.
36778
36779 1999-11-17  Jim Meyering  <meyering@ascend.com>
36780
36781         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
36782
36783 1999-11-07  Jim Meyering  <meyering@ascend.com>
36784
36785         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
36786
36787 1999-11-06  Jim Meyering  <meyering@ascend.com>
36788
36789         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
36790         * m4/jm-macros.m4 (jm_MACROS): Use it here.
36791
36792 1999-11-05  Jim Meyering  <meyering@ascend.com>
36793
36794         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
36795         configure.in of textutils, fileutils, and sh-utils into this one
36796         (shared between those packages) file.
36797         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
36798         AC_STRUCT_ST_BLKSIZE.
36799
36800 1999-11-03  Jim Meyering  <meyering@ascend.com>
36801
36802         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
36803         of AC_CHECK_TYPE checks includes unistd.h.
36804         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
36805         Suggestion from Akim Demaille.
36806
36807 1999-10-30  Jim Meyering  <meyering@ascend.com>
36808
36809         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
36810         m4-quoted string.
36811         * m4/ls-mntd-fs.m4: Likewise.
36812         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
36813         * m4/jm-winsz1.m4: Likewise.
36814
36815         * m4/const.m4: Remove file, since the fix made it into the experimental
36816         version of autoconf.
36817         * m4/mktime.m4: Likewise.
36818
36819         * m4/check-type.m4: Remove file, now that the latest version of
36820         AC_CHECK_TYPE takes a third arg to specify additional #includes.
36821
36822         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
36823         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
36824         AC_CHECK_TYPE.
36825
36826 1999-10-04  Jim Meyering  <meyering@ascend.com>
36827
36828         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
36829
36830 1999-09-22  Paul Eggert  <eggert@twinsun.com>
36831
36832         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
36833         2.95.1 bug with HP-UX 10.20.
36834
36835 1999-09-17  Jim Meyering  <meyering@ascend.com>
36836
36837         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
36838         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
36839         due to missing strdup (against sh-utils-2.0).
36840
36841 1999-08-29  Jim Meyering  <meyering@ascend.com>
36842
36843         * m4/jm-macros.m4: Require jm_BISON.
36844         * m4/bison.m4: New file.
36845
36846 1999-08-17  Paul Eggert  <eggert@twinsun.com>
36847
36848         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
36849         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
36850
36851 1999-08-05  Jim Meyering  <meyering@ascend.com>
36852
36853         * m4/getline.m4: Rename test file from conftestdata to conftest.data
36854         to avoid conflicts with `conftest' on 8+3 filesystems.
36855         Suggestion from Eli Zaretskii.
36856
36857 1999-08-04  Jim Meyering  <meyering@ascend.com>
36858
36859         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
36860         fileutils and sh-utils (textutils's getline test was inadequate).
36861         (AM_FUNC_GETLINE): Run this test.
36862         (AC_CHECK_FUNCS): Check for getdelim.
36863         Reported by Bob Proulx.
36864
36865 1999-08-02  Jim Meyering  <meyering@ascend.com>
36866
36867         * m4/jm-macros.m4: Add a comment.
36868
36869 1999-08-01  Paul Eggert  <eggert@twinsun.com>
36870
36871         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
36872         <inttypes.h> defines strtoumax as a macro (and not as a
36873         function).
36874
36875 1999-08-01  Paul Eggert  <eggert@twinsun.com>
36876
36877         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
36878         that we can shift, multiply and divide unsigned long long
36879         values; Ultrix cc can't do it.
36880
36881 1999-08-01  Paul Eggert  <eggert@twinsun.com>
36882
36883         * m4/mktime.m4: New file, which is a preview of what should appear
36884         in the next public autoconf release.
36885
36886 1999-08-01  Paul Eggert  <eggert@twinsun.com>
36887
36888         * m4/lfs.m4: Remove this file.
36889         * m4/largefile.m4: New file.  It contains the old contents of
36890         lfs.m4, except that all names with prefix AC_LFS have been
36891         changed to use the prefix AC_SYS_LARGEFILE instead, to be
36892         compatible with future autoconf versions.  Also, some minor m4
36893         quoting problems have been fixed.
36894
36895 1999-08-01  Paul Eggert  <eggert@twinsun.com>
36896
36897         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
36898         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
36899         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
36900         and simplify the shell code.
36901
36902 1999-08-01  Jim Meyering  <meyering@ascend.com>
36903
36904         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
36905         m4.
36906
36907 1999-07-20  Jim Meyering  <meyering@ascend.com>
36908
36909         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
36910
36911 1999-07-15  Jim Meyering  <meyering@ascend.com>
36912
36913         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
36914
36915 1999-05-22  Jim Meyering  <meyering@ascend.com>
36916
36917         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
36918
36919 1999-05-20  Jim Meyering  <meyering@ascend.com>
36920
36921         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
36922         Add a colon after each `then' in case $4 is empty.
36923
36924 1999-05-16  Jim Meyering  <meyering@ascend.com>
36925
36926         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
36927
36928 1999-05-10  Jim Meyering  <meyering@ascend.com>
36929
36930         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
36931
36932         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
36933         AC_FUNC_MKTIME.
36934
36935 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
36936
36937         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
36938
36939 1999-05-04  Paul Eggert  <eggert@twinsun.com>
36940
36941         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
36942         not CPPFLAGS, so that linking works correctly in IRIX.
36943
36944 1999-04-30  Paul Eggert  <eggert@twinsun.com>
36945
36946         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
36947
36948 1999-04-20  Paul Eggert  <eggert@twinsun.com>
36949
36950         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
36951         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
36952         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
36953         jm_AC_TYPE_UNSIGNED_LONG_LONG.
36954         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
36955
36956         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
36957
36958 1999-04-20  Jim Meyering  <meyering@ascend.com>
36959
36960         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
36961         AC_REPLACE xstroull if necessary.  From Paul Eggert.
36962         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
36963
36964 1999-04-18  Jim Meyering  <meyering@ascend.com>
36965
36966         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
36967         * m4/jm-macros.m4: Use it.
36968
36969 1999-04-06  Jim Meyering  <meyering@ascend.com>
36970
36971         * m4/strftime.m4: Remove test for %f.
36972
36973 1999-03-29  Jim Meyering  <meyering@ascend.com>
36974
36975         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
36976         superset of the AC_TYPE_* checks in the textutils, fileutils,
36977         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
36978         AC_TYPE_PID_T.
36979
36980 1999-03-28  Jim Meyering  <meyering@ascend.com>
36981
36982         * m4/jm-macros.m4: Define GNU_PACKAGE here.
36983         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
36984         replaced e.g., in the *.sh files of the sh-utils.
36985
36986 1999-03-20  Jim Meyering  <meyering@ascend.com>
36987
36988         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
36989         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
36990         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
36991
36992 1999-03-19  Jim Meyering  <meyering@ascend.com>
36993
36994         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
36995
36996 1999-03-12  Jim Meyering  <meyering@ascend.com>
36997
36998         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
36999
37000 1999-03-07  Jim Meyering  <meyering@ascend.com>
37001
37002         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
37003         declared.
37004
37005 1999-02-17  Jim Meyering  <meyering@ascend.com>
37006
37007         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
37008         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
37009
37010 1999-02-07  Jim Meyering  <meyering@ascend.com>
37011
37012         * m4/group-member.m4: New file -- extracted from sh-utils'
37013         configure.in.
37014
37015         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
37016         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
37017
37018 1999-02-06  Jim Meyering  <meyering@ascend.com>
37019
37020         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
37021         * m4/fnmatch.m4: Likewise.
37022         * m4/getgroups.m4: Likewise.
37023         * m4/lstat.m4: Likewise.
37024         * m4/malloc.m4: Likewise.
37025         * m4/putenv.m4: Likewise.
37026         * m4/realloc.m4: Likewise.
37027         * m4/regex.m4: Likewise.
37028         * m4/stat.m4: Likewise.
37029         * m4/strftime.m4: Likewise.
37030         Suggestion from Alain Magloire.
37031
37032         * m4/chown.m4: Use `.$ac_objext', not `.o'.
37033         * m4/fnmatch.m4: Likewise.
37034         * m4/getgroups.m4: Likewise.
37035         * m4/getline.m4: Likewise.
37036         * m4/lstat.m4: Likewise.
37037         * m4/malloc.m4: Likewise.
37038         * m4/memcmp.m4: Likewise.
37039         * m4/putenv.m4: Likewise.
37040         * m4/realloc.m4: Likewise.
37041         * m4/regex.m4: Likewise.
37042         * m4/stat.m4: Likewise.
37043         * m4/strftime.m4: Likewise.
37044         Suggestion from Alain Magloire.
37045
37046         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
37047         an argument.
37048
37049         * m4/regex.m4: Add a run-time Test for proper operation of
37050         re_compile_pattern.
37051
37052 1999-01-31  Jim Meyering  <meyering@ascend.com>
37053
37054         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
37055
37056 1999-01-30  Jim Meyering  <meyering@ascend.com>
37057
37058         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
37059
37060         * m4/jm-mktime.m4: Make this a wrapper around the official
37061         AM_FUNC_MKTIME rather than my private copy, now that the official one
37062         is up to date.
37063         * m4/mktime.m4: Remove file.
37064
37065         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
37066         * m4/uptime.m4: Likewise.
37067         * m4/uintmax_t.m4: Likewise.
37068
37069 1999-01-28  Jim Meyering  <meyering@ascend.com>
37070
37071         * m4/jm-macros.m4: Use jm_AFS.
37072         * m4/afs.m4: New file (from fileutils' configure.in).
37073
37074         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
37075         * m4/chown.m4: Likewise.
37076         * m4/d-ino.m4: Likewise.
37077         * m4/d-type.m4: Likewise.
37078         * m4/fnmatch.m4: Likewise.
37079         * m4/getgroups.m4: Likewise.
37080         * m4/gettext.m4: Likewise.
37081         * m4/jm-mktime.m4: Likewise.
37082         * m4/jm-winsz2.m4: Likewise.
37083         * m4/lcmessage.m4: Likewise.
37084         * m4/ls-mntd-fs.m4: Likewise.
37085         * m4/malloc.m4: Likewise.
37086         * m4/memcmp.m4: Likewise.
37087         * m4/putenv.m4: Likewise.
37088         * m4/realloc.m4: Likewise.
37089         * m4/st_mtim.m4: Likewise.
37090         * m4/strftime.m4: Likewise.
37091
37092 1999-01-16  Jim Meyering  <meyering@ascend.com>
37093
37094         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
37095         (ARGMATCH_DIE_DECL): Define.
37096
37097 1999-01-12  Jim Meyering  <meyering@ascend.com>
37098
37099         * m4/Makefile.am.in: Rewrite to avoid using fmt.
37100         Reported by Lars Hecking.
37101
37102 1999-01-10  Jim Meyering  <meyering@ascend.com>
37103
37104         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
37105         gross kludge.
37106         * m4/inttypes_h.m4: Likewise.
37107         * m4/lstat.m4: Likewise.
37108         * m4/malloc.m4: Likewise.
37109         * m4/readdir.m4: Likewise.
37110         * m4/realloc.m4: Likewise.
37111         * m4/st_dm_mode.m4: Likewise.
37112         * m4/stat.m4: Likewise.
37113         * m4/utimbuf.m4: Likewise.
37114         * m4/utimes.m4: Likewise.
37115
37116         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
37117         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
37118         comments in config.h.in are meaningful.
37119
37120         * m4/jm-macros.m4: Require autoconf-2.13 here.
37121
37122         * m4/regex.m4: By default, don't use the included regex.c on systems
37123         with glibc 2.  Suggestion from Uli Drepper.
37124
37125 1999-01-02  Jim Meyering  <meyering@ascend.com>
37126
37127         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
37128
37129 1998-12-18  Jim Meyering  <meyering@ascend.com>
37130
37131         * m4/Makefile.am.in (Makefile.am): Simplify rule.
37132         Based on a suggestion from Lars Hecking.
37133
37134 1998-11-16  Paul Eggert  <eggert@twinsun.com>
37135
37136         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
37137
37138 1998-11-16  Jim Meyering  <meyering@ascend.com>
37139
37140         * m4/lfs.m4: Double-quote the `uname...` expression.
37141
37142 1998-11-14  Jim Meyering  <meyering@ascend.com>
37143
37144         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
37145         * m4/stat.m4: Likewise.
37146
37147 1998-11-03  Jim Meyering  <meyering@ascend.com>
37148
37149         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
37150         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
37151
37152 1998-10-18  Jim Meyering  <meyering@ascend.com>
37153
37154         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
37155
37156 1998-10-17  Jim Meyering  <meyering@ascend.com>
37157
37158         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
37159         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
37160         calls for those previously hard-coded headers.  Instead, take a new
37161         parameter.
37162         (jm_CHECK_DECLARATIONS): Reflect interface change.
37163         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
37164         (jm_CHECK_DECL_LOCALTIME_R): New macro.
37165
37166         * m4/mktime.m4: Test for spring-forward gap before long-running test.
37167
37168 1998-10-14  Jim Meyering  <meyering@ascend.com>
37169
37170         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
37171         instead of "TZ=America/Vancouver".  From Paul Eggert.
37172
37173 1998-10-11  Jim Meyering  <meyering@ascend.com>
37174
37175         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
37176         This adds a test for a recently added compatibility fix for mktime.c.
37177         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
37178
37179 1998-09-27  Jim Meyering  <meyering@ascend.com>
37180
37181         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
37182
37183         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
37184         ../configure.in, including a change from Gordon Matzigkeit to allow
37185         cross-compiling for the Hurd.
37186
37187         * m4/glibc.m4: New file/macro to test for the GNU C Library
37188         versions 1 and 2.  From Gordon Matzigkeit.
37189         Indent.
37190
37191 1998-09-21  Jim Meyering  <meyering@ascend.com>
37192
37193         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
37194
37195 1998-08-18  Paul Eggert  <eggert@twinsun.com>
37196
37197         Port nanosecond-resolution times to UnixWare 2.1.2 and
37198         pedantic Solaris 2.6.
37199
37200         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
37201         AC_STRUCT_ST_MTIM.
37202         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
37203         Generate name of ns member, instead of just 1 or undef.
37204         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
37205
37206 1998-08-15  Jim Meyering  <meyering@ascend.com>
37207
37208         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
37209         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
37210         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
37211         instead of jm_TYPE_SSIZE_T.
37212
37213 1998-08-12  Jim Meyering  <meyering@ascend.com>
37214
37215         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
37216
37217 1998-08-02  Jim Meyering  <meyering@ascend.com>
37218
37219         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
37220         in acconfig.h manually.
37221
37222 1998-07-31  Paul Eggert  <eggert@twinsun.com>
37223
37224         * m4/st_mtim.m4: New file.
37225
37226 1998-07-28  Jim Meyering  <meyering@ascend.com>
37227
37228         * m4/utimes.m4: Undef stat.
37229
37230 1998-07-25  Jim Meyering  <meyering@ascend.com>
37231
37232         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
37233         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
37234
37235 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
37236
37237         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
37238         uid and gid actually remain unchanged.
37239
37240 1998-07-07  Jim Meyering  <meyering@ascend.com>
37241
37242         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
37243
37244 1998-07-04  Jim Meyering  <meyering@ascend.com>
37245
37246         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
37247         to prove that this macro can be used in packages without regex.c.
37248
37249 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
37250
37251         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
37252         is to be used.
37253
37254 1998-07-03  Jim Meyering  <meyering@ascend.com>
37255
37256         * m4/gettext.m4: Add -lintl if it's found to be necessary.
37257
37258         * m4/gettext.m4: New file -- from gettext-0.10.35.
37259         * m4/lcmessage.m4: Likewise.
37260         * m4/progtest.m4: Likewise.
37261
37262         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
37263         * m4/jm-macros.m4: Require the new macro.
37264
37265 1998-06-29  Jim Meyering  <meyering@ascend.com>
37266
37267         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
37268         for the definition of NGROUPS (used in a system header included
37269         by sys/mount.h).
37270
37271 1998-06-28  Jim Meyering  <meyering@ascend.com>
37272
37273         * m4/ls-mntd-fs.m4: New file.
37274         * m4/fstypename.m4: New file.
37275
37276         * m4/jm-macros.m4: Require the new macro.
37277         * m4/jm-glibc-io.m4: New file.
37278
37279 1998-05-19  Jim Meyering  <meyering@ascend.com>
37280
37281         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
37282         * m4/lchown.m4: New file.
37283
37284         * m4/Makefile.am.in: New file.
37285         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
37286
37287 1998-05-14  Jim Meyering  <meyering@ascend.com>
37288
37289         * m4/Makefile.am (EXTRA_DIST): Add them.
37290         * m4/jm-macros.m4: New file.
37291         * m4/utimbuf.m4: New file.
37292
37293 1998-05-12  Jim Meyering  <meyering@ascend.com>
37294
37295         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
37296
37297 1998-05-11  Jim Meyering  <meyering@ascend.com>
37298
37299         * m4/isc-posix.m4: New file.
37300
37301 1998-05-10  Jim Meyering  <meyering@ascend.com>
37302
37303         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
37304
37305 1998-05-09  Jim Meyering  <meyering@ascend.com>
37306
37307         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
37308         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
37309         with automake.
37310
37311         * m4/ssize_t.m4: New file.
37312         * m4/mktime.m4: Remove file -- the new automake has this now.
37313
37314 1998-04-26  Jim Meyering  <meyering@ascend.com>
37315
37316         * m4/assert.m4: New file.
37317         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
37318
37319 1998-04-05  Jim Meyering  <meyering@ascend.com>
37320
37321         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
37322         (jm_PREREQ): Use it here.
37323
37324 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
37325
37326         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
37327         in acconfig.h.
37328
37329 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
37330
37331         * m4/prereq.m4: New file.
37332         * m4/error.m4: New file.
37333         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
37334
37335 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
37336
37337         * m4/getline.m4: Don't set am_cv_func_working_getline before the
37338         cache-check for the same variable -- that defeated the purpose of
37339         the test; the test program was never run.  This was a problem only
37340         on systems with losing getline functions -- HP-UX 10.20 is one.
37341         Reported by Bjorn Helgaas.
37342
37343 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
37344
37345         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
37346
37347 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
37348
37349         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
37350
37351         * m4/const.m4: New file.  Use an initializer in this declaration
37352         typedef int charset[2]; const charset x;
37353         Reported by Bob Glickstein.
37354
37355 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
37356
37357         * m4/chown.m4: Fix reversed types on -1 args to chown.
37358         From Kaveh Ghazi.
37359
37360 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
37361
37362         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
37363         Add lseek and memchr.
37364
37365         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
37366         T.E.Dickey <dickey@clark.net> said that some older preprocessors
37367         have a 20-character limit on names.
37368
37369 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
37370
37371         * m4/inttypes_h.m4: New file.
37372         * m4/uintmax_t.m4: New file.
37373         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
37374
37375 Copyright (C) 1997-2008 Free Software Foundation, Inc.
37376 Copying and distribution of this file, with or without modification,
37377 are permitted provided the copyright notice and this notice are preserved.