729dd3a35ef81e81cc520d77ec33953bf8a250b4
[gnulib.git] / ChangeLog
1 2007-12-31  Bruno Haible  <bruno@clisp.org>
2
3         * modules/dirfd (License): Change to LGPLv2+.
4         Approved by Jim Meyering.
5
6 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
7
8         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
9         when multiplying M by sizeof (size_t).
10
11 2007-12-10  Martin Lambers <marlam@marlam.de>
12
13         Override getpagesize on mingw.
14         * lib/getpagesize.c: New file.
15         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
16         * modules/getpagesize (Files): Add lib/getpagesize.c.
17         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
18         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
19         REPLACE_GETPAGESIZE.
20         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
21
22 2007-12-25  Bruno Haible  <bruno@clisp.org>
23
24         * modules/localcharset (Notice): New field.
25         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
26         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
27
28 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
29             Bruno Haible  <bruno@clisp.org>
30
31         Avoid using the syntax symbol() in formatted documentation.
32         * MODULES.html.sh (func_module): When replacing symbol() with a
33         hyperlink, remove the parentheses. Show an error if some remain.
34         Recognize and render the '...' syntax.
35         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
36         Rework. Add paragraph about GCC's inlining.
37         * doc/alloca.texi: Likewise.
38         * doc/error.texi: Remove parentheses from symbol reference.
39         * doc/gnulib-intro.texi: Likewise.
40         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
41         * modules/fnmatch (Description): Reword to say "the ... function".
42         * modules/full-read (Description): Likewise.
43         * modules/full-write (Description): Likewise.
44         * modules/safe-read (Description): Likewise.
45         * modules/safe-write (Description): Likewise.
46         * modules/strchrnul (Description): Likewise.
47         * modules/trim (Description): Likewise.
48         * modules/error (Description): Remove parentheses from symbol
49         references.
50         * modules/verror (Description): Likewise.
51         Reported by Karl Berry.
52
53 2007-12-25  Bruno Haible  <bruno@clisp.org>
54
55         Fixup after 2007-10-16 commit.
56         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
57
58 2007-12-24  Bruno Haible  <bruno@clisp.org>
59
60         Make --enable-relocatable work with DESTDIR.
61         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
62         to compute installdir from destprog.
63         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
64         also set the RELOC_DESTDIR variable.
65         Reported by Левашев Иван <octagram@bluebottle.com>.
66
67 2007-12-24  Bruno Haible  <bruno@clisp.org>
68
69         Fix link error due to xalloc_die().
70         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
71         of xreadlink.
72         * lib/relocwrapper.c: Update comments.
73         * build-aux/install-reloc: Remove xreadlink.c from file list.
74         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
75         xreadlink.c.
76         Reported by Левашев Иван <octagram@bluebottle.com>.
77
78 2007-12-24  Bruno Haible  <bruno@clisp.org>
79
80         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
81         * lib/setenv.h: Remove file.
82         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
83         lib/setenv.h.
84         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
85         (Depends-on): Add stdlib.
86         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
87         gl_FUNC_UNSETENV.
88         (Include): Replace setenv.h with <stdlib.h>.
89         * modules/unsetenv: New file.
90         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
91         * lib/unsetenv.c: Include <stdlib.h> first.
92         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
93         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
94         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
95         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
96         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
97         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
98         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
99         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
100         * doc/functions/unsetenv.texi: Update.
101         * modules/xsetenv (Depends-on): Add unsetenv.
102         * modules/getdate (Depends-on): Likewise.
103         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
104         * lib/xsetenv.c: Don't include setenv.h.
105         * lib/getdate.y: Likewise.
106         * lib/relocwrapper.c: Likewise.
107         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
108         (Depends-on): Add stdlib.
109         * NEWS: Mention the changes.
110         Reported by Левашев Иван <octagram@bluebottle.com>.
111
112 2007-12-23  Bruno Haible  <bruno@clisp.org>
113
114         * lib/memmem.c (memmem): Use lowercase variable names. Tab
115         indentation.
116
117 2007-12-23  Bruno Haible  <bruno@clisp.org>
118
119         * lib/c-strcasestr.c: Add more comments.
120         * lib/c-strstr.c: Likewise.
121         * lib/mbscasestr.c: Likewise.
122         * lib/mbsstr.c: Likewise.
123         * lib/strcasestr.c: Likewise.
124         * lib/memmem.c: Likewise.
125
126 2007-12-23  Bruno Haible  <bruno@clisp.org>
127
128         * tests/test-memmem.c: Include <string.h> first.
129
130 2007-12-22  Bruno Haible  <bruno@clisp.org>
131
132         * gnulib-tool (func_create_testdir): Change $auxdir while generating
133         the contents of $testsbase.
134         Reported by Ralf Wildenhues.
135
136 2007-12-22  Bruno Haible  <bruno@clisp.org>
137
138         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
139         two variables local_ldadd_before, local_ldadd_last.
140
141 2007-12-20  Eric Blake  <ebb9@byu.net>
142
143         Work around circular library issue when cross-compiling.
144         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
145         that progname.o does not need to pull in rpl_memcmp.
146
147 2007-12-19  Eric Blake  <ebb9@byu.net>
148
149         Fix memmem to avoid O(n^2) worst-case complexity.
150         * lib/memmem.c (knuth_morris_pratt): New function.
151         (memmem): Use it if first few naive iterations fail.
152         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
153         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
154         * modules/memchr (License): Likewise.
155         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
156         malloca.
157         * tests/test-memmem.c: Rewrite, borrowing ideas from
158         test-mbsstr1.c; the old version wouldn't even compile!
159         * modules/memmem-tests: New file.
160         * lib/string.in.h (rpl_memmem): Add declaration.
161         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
162         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
163         REPLACE_MEMMEM.
164
165 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
166
167         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
168         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
169         before any system include files, and undef after them all.  This
170         should fix a problem on VMS reported by John E. Malmberg in
171         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
172
173 2007-12-17  Eric Blake  <ebb9@byu.net>
174
175         Revert addition of verify, for BSD/OS.
176         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
177         can't handle large files, for the sake of obsolete platforms.
178         * modules/fseeko (Depends-on): Remove verify.
179         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
180         * doc/functions/ftello.texi (ftello): Likewise.
181         * doc/functions/fgetpos.texi (fgetpos): Likewise.
182         Reported by Larry Jones.
183
184 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
185
186         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
187         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
188
189 2007-12-17  Jim Meyering  <meyering@redhat.com>
190
191         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
192         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
193         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
194         * modules/getcwd (Depends-on): Add openat.
195         Reported by Petr Salinger.
196
197 2007-12-17  Bruno Haible  <bruno@clisp.org>
198
199         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
200         avoid a segmentation fault of the configure test on x86_64 systems.
201
202 2007-12-15  Jim Meyering  <meyering@redhat.com>
203
204         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
205
206 2007-12-13  Eric Blake  <ebb9@byu.net>
207
208         Another fseek test.
209         * tests/test-fseek.c (main): Also test ungetc handling.
210         * tests/test-fseeko.c (main): Likewise.
211         * modules/fseeko (Depends-on): Add verify.
212         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
213         large.
214         Reported by Larry Jones.
215
216         Fix fseeko on mingw.
217         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
218         seek.
219
220         Beef up fseek tests.
221         * tests/test-fseek.c (main): Also test eof handling.
222         * tests/test-fseeko.c (main): Likewise.
223         Reported by Larry Jones.
224
225 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
226
227         Fix fseeko on BSD-based platforms.
228         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
229         successful seek.
230
231 2007-12-12  Eric Blake  <ebb9@byu.net>
232
233         Allow circular dependency of separate libtests.a
234         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
235         when use_libtests.
236
237 2007-12-11  Eric Blake  <ebb9@byu.net>
238
239         Fix bug with -0.0L in previous patch.
240         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
241         * tests/test-isnan.c (main): Also test on zeroes.
242         * tests/test-isnanf.c (main): Likewise.
243         * tests/test-isnanl.h (main): Likewise.
244
245         Detect pseudo-denormals on x86 even when cross-compiling.
246         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
247         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
248         invalid bit patterns that happen to satisfy ==.
249
250         Avoid link failures with separate libtests.a.
251         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
252         last, to satisfy circular dependencies.
253
254 2007-12-11  Eric Blake  <ebb9@byu.net>
255         and Bruno Haible  <bruno@clisp.org>
256
257         Fix OpenBSD 4.0 <float.h> handling of long double.
258         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
259         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
260         * doc/headers/float.texi (float.h): Document OpenBSD bug.
261
262 2007-12-11  Jim Meyering  <meyering@redhat.com>
263
264         * users.txt: Add libvirt.
265
266         Support versions of autoconf prior to 2.59c.
267         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
268         if it is not already defined.
269
270 2007-12-09  Bruno Haible  <bruno@clisp.org>
271
272         Let 'gnulib-tool --import' collect sources needed for the tests in
273         tests/ rather than in lib/.
274         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
275         argument. If true, add rules to generate libtests.a, and put libtests.a
276         into $(LDADD). Consider source files in subdirectories and set
277         uses_subdirs.
278         (func_emit_initmacro_start, func_emit_initmacro_end,
279         func_emit_initmacro_done): Pass all arguments explicitly.
280         (func_import): Determine two module lists main_modules,
281         testsrelated_modules. Determine use_libtests. Determine two variables
282         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
283         instead of just sed_transform_lib_file. Determine two variables
284         main_files and testsrelated_files. Compute 'files' as the union of
285         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
286         func_add_or_update. In the generated gnulib-comp.m4, collect the
287         object files for tests/ in different variables than those for lib/.
288         Substitute LIBTESTS_LIBDEPS.
289         (func_create_testdir): Combine the uses_subdirs results from
290         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
291
292 2007-12-09  Bruno Haible  <bruno@clisp.org>
293
294         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
295         the build-aux directory.
296
297 2007-12-09  Bruno Haible  <bruno@clisp.org>
298
299         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
300         introduced on 2006-09-09.
301
302 2007-12-07  Jim Meyering  <meyering@redhat.com>
303
304         Let these macros work also with autoconf-2.59.
305         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
306         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
307         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
308
309 2007-12-06  Jim Meyering  <meyering@redhat.com>
310
311         Avoid a configure-time syntax error in gl_FUNC_ACL.
312         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
313         function in each branch, before testing the cache variable.
314
315 2007-12-04  Eric Blake  <ebb9@byu.net>
316
317         Make scripts executable.
318         * build-aux/config.guess: Add execute permissions.
319         * build-aux/config.sub: Likewise.
320         * build-aux/gendocs.sh: Likewise.
321
322         Fix frexp on mingw.
323         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
324         cross-compiling.
325         * doc/functions/frexp.texi (frexp): Document the bug.
326
327         Make cygwin fseeko check more reliable.
328         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
329         version numbers, rather than unrelated feature check.
330         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
331         * doc/functions/ftello.texi (ftello): Likewise.
332         Reported by Bruno Haible.
333
334         * m4/strerror.m4: Bump version number.
335
336 2007-12-03  Bruno Haible  <bruno@clisp.org>
337
338         * doc/functions/mprotect.texi: Mention the mingw problem.
339
340 2007-12-03  Eric Blake  <ebb9@byu.net>
341
342         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
343         REPLACE_STRERROR is initialized before this macro.
344
345 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
346
347         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
348         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
349         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
350         put -lsec in even for programs other than 'ls'.  This fixes a problem
351         for gettext reported by Bruno Haible in
352         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
353         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
354         Add support for Solaris 10.  This isn't efficient, but should get the
355         job done for now.
356
357 2007-12-03  James Youngman  <jay@gnu.org>
358
359         * doc/regexprops-generic.texi: change "an close-group" to "a
360         close-group" and "illegal" to "not allowed".
361
362 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
363
364         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
365         pr_byname.h. Needed for the rare case when the maintainer has done
366         "make maintainer-clean" in the source directory and then attempts a
367         build outside the source directory.
368         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
369         scripts_byname.h.
370
371 2007-12-02  Martin Lambers <marlam@marlam.de>
372             Bruno Haible  <bruno@clisp.org>
373
374         * lib/getpagesize.h: Remove file.
375         * lib/unistd.in.h: Include declaration of getpagesize here.
376         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
377         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
378         HAVE_SYS_PARAM_H.
379         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
380         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
381         * modules/getpagesize (Files): Remove lib/getpagesize.h.
382         (Depends-on): Add unistd.
383         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
384         (Include): Use <unistd.h> instead of getpagesize.h.
385         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
386         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
387         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
388         gl_GETPAGESIZE invocation, already handled by module dependency.
389         * lib/pagealign_alloc.c: Don't include getpagesize.h.
390
391 2007-12-02  Bruno Haible  <bruno@clisp.org>
392
393         * modules/strings-tests: New file.
394         * tests/test-strings.c: New file.
395
396         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
397         * lib/strings.in.h: New file.
398         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
399         * m4/strings_h.m4: New file.
400         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
401         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
402         * modules/strings: New file.
403         * modules/string (Makefile.am): Update.
404         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
405         Reported by Karl Berry.
406
407 2007-12-01  Eric Blake  <ebb9@byu.net>
408
409         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
410         accomodate fix in cygwin 1.5.25.
411
412 2007-12-01  Jim Meyering  <meyering@redhat.com>
413
414         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
415         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
416         that would inhibit utf8-optimization of a regexp containing line-
417         or buffer-anchors, e.g., `^', `$'.
418
419 2007-11-30  Bruno Haible  <bruno@clisp.org>
420
421         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
422         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
423         glthread_recursive_lock_init.
424         * lib/lock.c (glthread_recursive_lock_init)
425         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
426         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
427
428 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
429
430         New function qset_acl, like set_acl but with syscall semantics.
431         * lib/acl.h (qset_acl): New decl.
432         * lib/acl.c (qset_acl): New function.
433         (set_acl): Use new function.  Use more-consistent diagnostics.
434
435 2007-11-28  Jim Meyering  <meyering@redhat.com>
436
437         * modules/physmem (License): Change from GPL to LGPLv2+.
438
439 2007-11-26  Bruno Haible  <bruno@clisp.org>
440
441         * lib/vasnprintf.c (decode_long_double): Don't abort if the
442         'long double' type has excess precision.
443         Reported by Jim Meyering in
444         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
445
446 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
447
448         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
449         Sync from <http://gnu.org/licenses>.
450         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
451         with license text from same location.
452         * doc/maintain.texi, doc/standards.texi:  Sync from
453         <http://savannah.gnu.org/projects/gnustandards>.
454
455 2007-11-22  Ondřej Vašík  <ovasik@redhat.com>
456         and Jim Meyering  <meyering@redhat.com>
457
458         Adjust getdate' grammar to accept a slightly more regular language.
459         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
460         Before, the former was rejected.
461         * lib/getdate.y (digits_to_date_time): New function, factored
462         out of ...
463         (number): ...here.  Just call digits_to_date_time.
464         (hybrid): New non-terminal to handle an <unsigned number,
465         signed relative offset> sequence consistently.
466
467 2007-11-18  Jim Meyering  <meyering@redhat.com>
468
469         Pull my changes from coreutils:
470         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
471         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
472         use of $gnulib_tool_option_extras, so that it's separated from the
473         preceding argument.
474
475         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
476         * build-aux/bootstrap (cp_mark_as_generated): Create any required
477         parent destination directories before copying a file into place.
478
479 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
480
481         bootstrap: work also with 4-argument variant of AC_INIT
482         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
483
484 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
485
486         Port test-getaddrinfo to Solaris.
487         Problem reported by Bruno Haible in
488         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
489         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
490         explanation of setting 'hints'.
491         Don't reject an implementation merely because it returns EAI_SERVICE.
492         (EAI_SERVICE): Define to 0 if not defined.
493
494 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
495
496         The license of gnu-make and posix-shell is now "GPLed build tool".
497         * modules/gnu-make (License): Likewise.
498         * modules/posix-shell (License): Likewise.
499
500         New module posix-shell, for determining a POSIX shell
501         or perhaps something that is close enough to a POSIX shell.
502         * m4/posix-shell.m4: New file.
503         * modules/posix-shell: New file.
504
505         * MODULES.html.sh: Mention new module.
506
507         New module gnu-make, for determining whether we're using GNU Make.
508         * m4/gnu-make.m4: New file.
509         * modules/gnu-make: New file.
510         * MODULES.html.sh: Mention new module.
511
512 2007-11-14  Jim Meyering  <meyering@redhat.com>
513
514         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
515         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
516         use this macro to create a function _definition_.
517         Remove useless "#undef ARGMATCH_DIE".
518
519 2007-11-14  Bruno Haible  <bruno@clisp.org>
520
521         * lib/config.charset: Update for OpenBSD 4.1.
522         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
523
524 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
525
526         Document 64-bit #if problems in stdint.texi.
527         * doc/headers/stdint.texi (stdint.h): Mention problems with
528         64-bit-#if, and how to work around them.
529
530         Don't insist on 'long long int' support in the preprocessor.  It
531         breaks too many things.  For example, PRIdMAX still uses a 'long
532         long int' format with the latest Sun compiler, even though
533         HAVE_LONG_LONG_INT isn't defined due to that compiler's
534         preprocessor problem.  This causes the latest coreutils to dump
535         core on Solaris 10 sparc with the Sun C compiler.
536         Instead, fix the 2007-10-16 problem in a different way, by evaluating
537         the troublesome expressions at configure-time, not at #if-time.
538         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
539         preprocessor.
540         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
541         compile-time C checks, done at 'configure'-time.
542         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
543         * modules/inttypes (Makefile): Substitute the new symbols that
544         gl_INTTYPES_H now generates.
545         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
546
547 2007-11-12  Bruno Haible  <bruno@clisp.org>
548
549         Tests for Unicode character classification functions.
550
551         * modules/unictype/bidicategory-byname-tests: New file.
552         * modules/unictype/bidicategory-name-tests: New file.
553         * modules/unictype/bidicategory-of-tests: New file.
554         * modules/unictype/bidicategory-test-tests: New file.
555         * modules/unictype/block-list-tests: New file.
556         * modules/unictype/block-of-tests: New file.
557         * modules/unictype/block-test-tests: New file.
558         * modules/unictype/category-C-tests: New file.
559         * modules/unictype/category-Cc-tests: New file.
560         * modules/unictype/category-Cf-tests: New file.
561         * modules/unictype/category-Cn-tests: New file.
562         * modules/unictype/category-Co-tests: New file.
563         * modules/unictype/category-Cs-tests: New file.
564         * modules/unictype/category-L-tests: New file.
565         * modules/unictype/category-Ll-tests: New file.
566         * modules/unictype/category-Lm-tests: New file.
567         * modules/unictype/category-Lo-tests: New file.
568         * modules/unictype/category-Lt-tests: New file.
569         * modules/unictype/category-Lu-tests: New file.
570         * modules/unictype/category-M-tests: New file.
571         * modules/unictype/category-Mc-tests: New file.
572         * modules/unictype/category-Me-tests: New file.
573         * modules/unictype/category-Mn-tests: New file.
574         * modules/unictype/category-N-tests: New file.
575         * modules/unictype/category-Nd-tests: New file.
576         * modules/unictype/category-Nl-tests: New file.
577         * modules/unictype/category-No-tests: New file.
578         * modules/unictype/category-P-tests: New file.
579         * modules/unictype/category-Pc-tests: New file.
580         * modules/unictype/category-Pd-tests: New file.
581         * modules/unictype/category-Pe-tests: New file.
582         * modules/unictype/category-Pf-tests: New file.
583         * modules/unictype/category-Pi-tests: New file.
584         * modules/unictype/category-Po-tests: New file.
585         * modules/unictype/category-Ps-tests: New file.
586         * modules/unictype/category-S-tests: New file.
587         * modules/unictype/category-Sc-tests: New file.
588         * modules/unictype/category-Sk-tests: New file.
589         * modules/unictype/category-Sm-tests: New file.
590         * modules/unictype/category-So-tests: New file.
591         * modules/unictype/category-Z-tests: New file.
592         * modules/unictype/category-Zl-tests: New file.
593         * modules/unictype/category-Zp-tests: New file.
594         * modules/unictype/category-Zs-tests: New file.
595         * modules/unictype/category-and-not-tests: New file.
596         * modules/unictype/category-and-tests: New file.
597         * modules/unictype/category-byname-tests: New file.
598         * modules/unictype/category-name-tests: New file.
599         * modules/unictype/category-none-tests: New file.
600         * modules/unictype/category-of-tests: New file.
601         * modules/unictype/category-or-tests: New file.
602         * modules/unictype/category-test-withtable-tests: New file.
603         * modules/unictype/combining-class-tests: New file.
604         * modules/unictype/ctype-alnum-tests: New file.
605         * modules/unictype/ctype-alpha-tests: New file.
606         * modules/unictype/ctype-blank-tests: New file.
607         * modules/unictype/ctype-cntrl-tests: New file.
608         * modules/unictype/ctype-digit-tests: New file.
609         * modules/unictype/ctype-graph-tests: New file.
610         * modules/unictype/ctype-lower-tests: New file.
611         * modules/unictype/ctype-print-tests: New file.
612         * modules/unictype/ctype-punct-tests: New file.
613         * modules/unictype/ctype-space-tests: New file.
614         * modules/unictype/ctype-upper-tests: New file.
615         * modules/unictype/ctype-xdigit-tests: New file.
616         * modules/unictype/decimal-digit-tests: New file.
617         * modules/unictype/digit-tests: New file.
618         * modules/unictype/mirror-tests: New file.
619         * modules/unictype/numeric-tests: New file.
620         * modules/unictype/property-alphabetic-tests: New file.
621         * modules/unictype/property-ascii-hex-digit-tests: New file.
622         * modules/unictype/property-bidi-arabic-digit-tests: New file.
623         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
624         * modules/unictype/property-bidi-block-separator-tests: New file.
625         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
626         * modules/unictype/property-bidi-common-separator-tests: New file.
627         * modules/unictype/property-bidi-control-tests: New file.
628         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
629         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
630         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
631         * modules/unictype/property-bidi-european-digit-tests: New file.
632         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
633         * modules/unictype/property-bidi-left-to-right-tests: New file.
634         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
635         * modules/unictype/property-bidi-other-neutral-tests: New file.
636         * modules/unictype/property-bidi-pdf-tests: New file.
637         * modules/unictype/property-bidi-segment-separator-tests: New file.
638         * modules/unictype/property-bidi-whitespace-tests: New file.
639         * modules/unictype/property-byname-tests: New file.
640         * modules/unictype/property-combining-tests: New file.
641         * modules/unictype/property-composite-tests: New file.
642         * modules/unictype/property-currency-symbol-tests: New file.
643         * modules/unictype/property-dash-tests: New file.
644         * modules/unictype/property-decimal-digit-tests: New file.
645         * modules/unictype/property-default-ignorable-code-point-tests: New file.
646         * modules/unictype/property-deprecated-tests: New file.
647         * modules/unictype/property-diacritic-tests: New file.
648         * modules/unictype/property-extender-tests: New file.
649         * modules/unictype/property-format-control-tests: New file.
650         * modules/unictype/property-grapheme-base-tests: New file.
651         * modules/unictype/property-grapheme-extend-tests: New file.
652         * modules/unictype/property-grapheme-link-tests: New file.
653         * modules/unictype/property-hex-digit-tests: New file.
654         * modules/unictype/property-hyphen-tests: New file.
655         * modules/unictype/property-id-continue-tests: New file.
656         * modules/unictype/property-id-start-tests: New file.
657         * modules/unictype/property-ideographic-tests: New file.
658         * modules/unictype/property-ids-binary-operator-tests: New file.
659         * modules/unictype/property-ids-trinary-operator-tests: New file.
660         * modules/unictype/property-ignorable-control-tests: New file.
661         * modules/unictype/property-iso-control-tests: New file.
662         * modules/unictype/property-join-control-tests: New file.
663         * modules/unictype/property-left-of-pair-tests: New file.
664         * modules/unictype/property-line-separator-tests: New file.
665         * modules/unictype/property-logical-order-exception-tests: New file.
666         * modules/unictype/property-lowercase-tests: New file.
667         * modules/unictype/property-math-tests: New file.
668         * modules/unictype/property-non-break-tests: New file.
669         * modules/unictype/property-not-a-character-tests: New file.
670         * modules/unictype/property-numeric-tests: New file.
671         * modules/unictype/property-other-alphabetic-tests: New file.
672         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
673         * modules/unictype/property-other-grapheme-extend-tests: New file.
674         * modules/unictype/property-other-id-continue-tests: New file.
675         * modules/unictype/property-other-id-start-tests: New file.
676         * modules/unictype/property-other-lowercase-tests: New file.
677         * modules/unictype/property-other-math-tests: New file.
678         * modules/unictype/property-other-uppercase-tests: New file.
679         * modules/unictype/property-paired-punctuation-tests: New file.
680         * modules/unictype/property-paragraph-separator-tests: New file.
681         * modules/unictype/property-pattern-syntax-tests: New file.
682         * modules/unictype/property-pattern-white-space-tests: New file.
683         * modules/unictype/property-private-use-tests: New file.
684         * modules/unictype/property-punctuation-tests: New file.
685         * modules/unictype/property-quotation-mark-tests: New file.
686         * modules/unictype/property-radical-tests: New file.
687         * modules/unictype/property-sentence-terminal-tests: New file.
688         * modules/unictype/property-soft-dotted-tests: New file.
689         * modules/unictype/property-space-tests: New file.
690         * modules/unictype/property-terminal-punctuation-tests: New file.
691         * modules/unictype/property-test-tests: New file.
692         * modules/unictype/property-titlecase-tests: New file.
693         * modules/unictype/property-unassigned-code-value-tests: New file.
694         * modules/unictype/property-unified-ideograph-tests: New file.
695         * modules/unictype/property-uppercase-tests: New file.
696         * modules/unictype/property-variation-selector-tests: New file.
697         * modules/unictype/property-white-space-tests: New file.
698         * modules/unictype/property-xid-continue-tests: New file.
699         * modules/unictype/property-xid-start-tests: New file.
700         * modules/unictype/property-zero-width-tests: New file.
701         * modules/unictype/scripts-tests: New file.
702         * modules/unictype/syntax-c-ident-tests: New file.
703         * modules/unictype/syntax-c-whitespace-tests: New file.
704         * modules/unictype/syntax-java-ident-tests: New file.
705         * modules/unictype/syntax-java-whitespace-tests: New file.
706         * tests/unictype/test-bidi_byname.c: New file.
707         * tests/unictype/test-bidi_name.c: New file.
708         * tests/unictype/test-bidi_of.c: New file.
709         * tests/unictype/test-bidi_test.c: New file.
710         * tests/unictype/test-block_list.c: New file.
711         * tests/unictype/test-block_of.c: New file.
712         * tests/unictype/test-block_test.c: New file.
713         * tests/unictype/test-categ_and.c: New file.
714         * tests/unictype/test-categ_and_not.c: New file.
715         * tests/unictype/test-categ_byname.c: New file.
716         * tests/unictype/test-categ_name.c: New file.
717         * tests/unictype/test-categ_none.c: New file.
718         * tests/unictype/test-categ_of.c: New file.
719         * tests/unictype/test-categ_or.c: New file.
720         * tests/unictype/test-categ_test_withtable.c: New file.
721         * tests/unictype/test-combining.c: New file.
722         * tests/unictype/test-decdigit.c: New file.
723         * tests/unictype/test-digit.c: New file.
724         * tests/unictype/test-mirror.c: New file.
725         * tests/unictype/test-numeric.c: New file.
726         * tests/unictype/test-pr_byname.c: New file.
727         * tests/unictype/test-pr_test.c: New file.
728         * tests/unictype/test-predicate-part1.h: New file.
729         * tests/unictype/test-predicate-part2.h: New file.
730         * tests/unictype/test-scripts.c: New file.
731         * tests/unictype/test-sy_c_ident.c: New file.
732         * tests/unictype/test-sy_java_ident.c: New file.
733
734         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
735         for Unicode 5.0.0.
736         * tests/unictype/test-categ_Cc.c: Likewise.
737         * tests/unictype/test-categ_Cf.c: Likewise.
738         * tests/unictype/test-categ_Cn.c: Likewise.
739         * tests/unictype/test-categ_Co.c: Likewise.
740         * tests/unictype/test-categ_Cs.c: Likewise.
741         * tests/unictype/test-categ_L.c: Likewise.
742         * tests/unictype/test-categ_Ll.c: Likewise.
743         * tests/unictype/test-categ_Lm.c: Likewise.
744         * tests/unictype/test-categ_Lo.c: Likewise.
745         * tests/unictype/test-categ_Lt.c: Likewise.
746         * tests/unictype/test-categ_Lu.c: Likewise.
747         * tests/unictype/test-categ_M.c: Likewise.
748         * tests/unictype/test-categ_Mc.c: Likewise.
749         * tests/unictype/test-categ_Me.c: Likewise.
750         * tests/unictype/test-categ_Mn.c: Likewise.
751         * tests/unictype/test-categ_N.c: Likewise.
752         * tests/unictype/test-categ_Nd.c: Likewise.
753         * tests/unictype/test-categ_Nl.c: Likewise.
754         * tests/unictype/test-categ_No.c: Likewise.
755         * tests/unictype/test-categ_P.c: Likewise.
756         * tests/unictype/test-categ_Pc.c: Likewise.
757         * tests/unictype/test-categ_Pd.c: Likewise.
758         * tests/unictype/test-categ_Pe.c: Likewise.
759         * tests/unictype/test-categ_Pf.c: Likewise.
760         * tests/unictype/test-categ_Pi.c: Likewise.
761         * tests/unictype/test-categ_Po.c: Likewise.
762         * tests/unictype/test-categ_Ps.c: Likewise.
763         * tests/unictype/test-categ_S.c: Likewise.
764         * tests/unictype/test-categ_Sc.c: Likewise.
765         * tests/unictype/test-categ_Sk.c: Likewise.
766         * tests/unictype/test-categ_Sm.c: Likewise.
767         * tests/unictype/test-categ_So.c: Likewise.
768         * tests/unictype/test-categ_Z.c: Likewise.
769         * tests/unictype/test-categ_Zl.c: Likewise.
770         * tests/unictype/test-categ_Zp.c: Likewise.
771         * tests/unictype/test-categ_Zs.c: Likewise.
772         * tests/unictype/test-ctype_alnum.c: Likewise.
773         * tests/unictype/test-ctype_alpha.c: Likewise.
774         * tests/unictype/test-ctype_blank.c: Likewise.
775         * tests/unictype/test-ctype_cntrl.c: Likewise.
776         * tests/unictype/test-ctype_digit.c: Likewise.
777         * tests/unictype/test-ctype_graph.c: Likewise.
778         * tests/unictype/test-ctype_lower.c: Likewise.
779         * tests/unictype/test-ctype_print.c: Likewise.
780         * tests/unictype/test-ctype_punct.c: Likewise.
781         * tests/unictype/test-ctype_space.c: Likewise.
782         * tests/unictype/test-ctype_upper.c: Likewise.
783         * tests/unictype/test-ctype_xdigit.c: Likewise.
784         * tests/unictype/test-decdigit.h: Likewise.
785         * tests/unictype/test-digit.h: Likewise.
786         * tests/unictype/test-numeric.h: Likewise.
787         * tests/unictype/test-pr_alphabetic.c: Likewise.
788         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
789         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
790         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
791         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
792         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
793         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
794         * tests/unictype/test-pr_bidi_control.c: Likewise.
795         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
796         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
797         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
798         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
799         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
800         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
801         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
802         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
803         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
804         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
805         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
806         * tests/unictype/test-pr_combining.c: Likewise.
807         * tests/unictype/test-pr_composite.c: Likewise.
808         * tests/unictype/test-pr_currency_symbol.c: Likewise.
809         * tests/unictype/test-pr_dash.c: Likewise.
810         * tests/unictype/test-pr_decimal_digit.c: Likewise.
811         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
812         * tests/unictype/test-pr_deprecated.c: Likewise.
813         * tests/unictype/test-pr_diacritic.c: Likewise.
814         * tests/unictype/test-pr_extender.c: Likewise.
815         * tests/unictype/test-pr_format_control.c: Likewise.
816         * tests/unictype/test-pr_grapheme_base.c: Likewise.
817         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
818         * tests/unictype/test-pr_grapheme_link.c: Likewise.
819         * tests/unictype/test-pr_hex_digit.c: Likewise.
820         * tests/unictype/test-pr_hyphen.c: Likewise.
821         * tests/unictype/test-pr_id_continue.c: Likewise.
822         * tests/unictype/test-pr_id_start.c: Likewise.
823         * tests/unictype/test-pr_ideographic.c: Likewise.
824         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
825         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
826         * tests/unictype/test-pr_ignorable_control.c: Likewise.
827         * tests/unictype/test-pr_iso_control.c: Likewise.
828         * tests/unictype/test-pr_join_control.c: Likewise.
829         * tests/unictype/test-pr_left_of_pair.c: Likewise.
830         * tests/unictype/test-pr_line_separator.c: Likewise.
831         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
832         * tests/unictype/test-pr_lowercase.c: Likewise.
833         * tests/unictype/test-pr_math.c: Likewise.
834         * tests/unictype/test-pr_non_break.c: Likewise.
835         * tests/unictype/test-pr_not_a_character.c: Likewise.
836         * tests/unictype/test-pr_numeric.c: Likewise.
837         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
838         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
839         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
840         * tests/unictype/test-pr_other_id_continue.c: Likewise.
841         * tests/unictype/test-pr_other_id_start.c: Likewise.
842         * tests/unictype/test-pr_other_lowercase.c: Likewise.
843         * tests/unictype/test-pr_other_math.c: Likewise.
844         * tests/unictype/test-pr_other_uppercase.c: Likewise.
845         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
846         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
847         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
848         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
849         * tests/unictype/test-pr_private_use.c: Likewise.
850         * tests/unictype/test-pr_punctuation.c: Likewise.
851         * tests/unictype/test-pr_quotation_mark.c: Likewise.
852         * tests/unictype/test-pr_radical.c: Likewise.
853         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
854         * tests/unictype/test-pr_soft_dotted.c: Likewise.
855         * tests/unictype/test-pr_space.c: Likewise.
856         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
857         * tests/unictype/test-pr_titlecase.c: Likewise.
858         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
859         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
860         * tests/unictype/test-pr_uppercase.c: Likewise.
861         * tests/unictype/test-pr_variation_selector.c: Likewise.
862         * tests/unictype/test-pr_white_space.c: Likewise.
863         * tests/unictype/test-pr_xid_continue.c: Likewise.
864         * tests/unictype/test-pr_xid_start.c: Likewise.
865         * tests/unictype/test-pr_zero_width.c: Likewise.
866         * tests/unictype/test-sy_c_whitespace.c: Likewise.
867         * tests/unictype/test-sy_java_whitespace.c: Likewise.
868
869 2007-11-12  Bruno Haible  <bruno@clisp.org>
870
871         Unicode character classification functions.
872         * lib/unictype.h: New file.
873         * modules/unictype/base: New file.
874         * modules/unictype/category-L: New file.
875         * modules/unictype/category-Lu: New file.
876         * modules/unictype/category-Ll: New file.
877         * modules/unictype/category-Lt: New file.
878         * modules/unictype/category-Lm: New file.
879         * modules/unictype/category-Lo: New file.
880         * modules/unictype/category-M: New file.
881         * modules/unictype/category-Mn: New file.
882         * modules/unictype/category-Mc: New file.
883         * modules/unictype/category-Me: New file.
884         * modules/unictype/category-N: New file.
885         * modules/unictype/category-Nd: New file.
886         * modules/unictype/category-Nl: New file.
887         * modules/unictype/category-No: New file.
888         * modules/unictype/category-P: New file.
889         * modules/unictype/category-Pc: New file.
890         * modules/unictype/category-Pd: New file.
891         * modules/unictype/category-Ps: New file.
892         * modules/unictype/category-Pe: New file.
893         * modules/unictype/category-Pi: New file.
894         * modules/unictype/category-Pf: New file.
895         * modules/unictype/category-Po: New file.
896         * modules/unictype/category-S: New file.
897         * modules/unictype/category-Sm: New file.
898         * modules/unictype/category-Sc: New file.
899         * modules/unictype/category-Sk: New file.
900         * modules/unictype/category-So: New file.
901         * modules/unictype/category-Z: New file.
902         * modules/unictype/category-Zs: New file.
903         * modules/unictype/category-Zl: New file.
904         * modules/unictype/category-Zp: New file.
905         * modules/unictype/category-C: New file.
906         * modules/unictype/category-Cc: New file.
907         * modules/unictype/category-Cf: New file.
908         * modules/unictype/category-Cs: New file.
909         * modules/unictype/category-Co: New file.
910         * modules/unictype/category-Cn: New file.
911         * modules/unictype/category-or: New file.
912         * modules/unictype/category-of: New file.
913         * modules/unictype/category-test: New file.
914         * modules/unictype/category-test-withtable: New file.
915         * modules/unictype/category-byname: New file.
916         * modules/unictype/category-none: New file.
917         * modules/unictype/category-and: New file.
918         * modules/unictype/category-and-not: New file.
919         * modules/unictype/category-name: New file.
920         * modules/unictype/combining-class: New file.
921         * modules/unictype/category-all: New file.
922         * modules/unictype/bidicategory-all: New file.
923         * modules/unictype/bidicategory-byname: New file.
924         * modules/unictype/bidicategory-name: New file.
925         * modules/unictype/bidicategory-of: New file.
926         * modules/unictype/bidicategory-test: New file.
927         * modules/unictype/decimal-digit: New file.
928         * modules/unictype/digit: New file.
929         * modules/unictype/numeric: New file.
930         * modules/unictype/mirror: New file.
931         * modules/unictype/property-white-space: New file.
932         * modules/unictype/property-alphabetic: New file.
933         * modules/unictype/property-other-alphabetic: New file.
934         * modules/unictype/property-not-a-character: New file.
935         * modules/unictype/property-default-ignorable-code-point: New file.
936         * modules/unictype/property-other-default-ignorable-code-point: New
937         file.
938         * modules/unictype/property-deprecated: New file.
939         * modules/unictype/property-logical-order-exception: New file.
940         * modules/unictype/property-variation-selector: New file.
941         * modules/unictype/property-private-use: New file.
942         * modules/unictype/property-unassigned-code-value: New file.
943         * modules/unictype/property-uppercase: New file.
944         * modules/unictype/property-other-uppercase: New file.
945         * modules/unictype/property-lowercase: New file.
946         * modules/unictype/property-other-lowercase: New file.
947         * modules/unictype/property-titlecase: New file.
948         * modules/unictype/property-soft-dotted: New file.
949         * modules/unictype/property-id-start: New file.
950         * modules/unictype/property-other-id-start: New file.
951         * modules/unictype/property-id-continue: New file.
952         * modules/unictype/property-other-id-continue: New file.
953         * modules/unictype/property-xid-start: New file.
954         * modules/unictype/property-xid-continue: New file.
955         * modules/unictype/property-pattern-white-space: New file.
956         * modules/unictype/property-pattern-syntax: New file.
957         * modules/unictype/property-join-control: New file.
958         * modules/unictype/property-grapheme-base: New file.
959         * modules/unictype/property-grapheme-extend: New file.
960         * modules/unictype/property-other-grapheme-extend: New file.
961         * modules/unictype/property-grapheme-link: New file.
962         * modules/unictype/property-bidi-control: New file.
963         * modules/unictype/property-bidi-left-to-right: New file.
964         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
965         * modules/unictype/property-bidi-arabic-right-to-left: New file.
966         * modules/unictype/property-bidi-european-digit: New file.
967         * modules/unictype/property-bidi-eur-num-separator: New file.
968         * modules/unictype/property-bidi-eur-num-terminator: New file.
969         * modules/unictype/property-bidi-arabic-digit: New file.
970         * modules/unictype/property-bidi-common-separator: New file.
971         * modules/unictype/property-bidi-block-separator: New file.
972         * modules/unictype/property-bidi-segment-separator: New file.
973         * modules/unictype/property-bidi-whitespace: New file.
974         * modules/unictype/property-bidi-non-spacing-mark: New file.
975         * modules/unictype/property-bidi-boundary-neutral: New file.
976         * modules/unictype/property-bidi-pdf: New file.
977         * modules/unictype/property-bidi-embedding-or-override: New file.
978         * modules/unictype/property-bidi-other-neutral: New file.
979         * modules/unictype/property-hex-digit: New file.
980         * modules/unictype/property-ascii-hex-digit: New file.
981         * modules/unictype/property-ideographic: New file.
982         * modules/unictype/property-unified-ideograph: New file.
983         * modules/unictype/property-radical: New file.
984         * modules/unictype/property-ids-binary-operator: New file.
985         * modules/unictype/property-ids-trinary-operator: New file.
986         * modules/unictype/property-zero-width: New file.
987         * modules/unictype/property-space: New file.
988         * modules/unictype/property-non-break: New file.
989         * modules/unictype/property-iso-control: New file.
990         * modules/unictype/property-format-control: New file.
991         * modules/unictype/property-dash: New file.
992         * modules/unictype/property-hyphen: New file.
993         * modules/unictype/property-punctuation: New file.
994         * modules/unictype/property-line-separator: New file.
995         * modules/unictype/property-paragraph-separator: New file.
996         * modules/unictype/property-quotation-mark: New file.
997         * modules/unictype/property-sentence-terminal: New file.
998         * modules/unictype/property-terminal-punctuation: New file.
999         * modules/unictype/property-currency-symbol: New file.
1000         * modules/unictype/property-math: New file.
1001         * modules/unictype/property-other-math: New file.
1002         * modules/unictype/property-paired-punctuation: New file.
1003         * modules/unictype/property-left-of-pair: New file.
1004         * modules/unictype/property-combining: New file.
1005         * modules/unictype/property-composite: New file.
1006         * modules/unictype/property-decimal-digit: New file.
1007         * modules/unictype/property-numeric: New file.
1008         * modules/unictype/property-diacritic: New file.
1009         * modules/unictype/property-extender: New file.
1010         * modules/unictype/property-ignorable-control: New file.
1011         * modules/unictype/property-test: New file.
1012         * modules/unictype/property-byname: New file.
1013         * modules/unictype/property-all: New file.
1014         * modules/unictype/scripts: New file.
1015         * modules/unictype/scripts-all: New file.
1016         * modules/unictype/block-of: New file.
1017         * modules/unictype/block-test: New file.
1018         * modules/unictype/block-list: New file.
1019         * modules/unictype/block-all: New file.
1020         * modules/unictype/syntax-c-whitespace: New file.
1021         * modules/unictype/syntax-java-whitespace: New file.
1022         * modules/unictype/syntax-c-ident: New file.
1023         * modules/unictype/syntax-java-ident: New file.
1024         * modules/unictype/ctype-alnum: New file.
1025         * modules/unictype/ctype-alpha: New file.
1026         * modules/unictype/ctype-cntrl: New file.
1027         * modules/unictype/ctype-digit: New file.
1028         * modules/unictype/ctype-graph: New file.
1029         * modules/unictype/ctype-lower: New file.
1030         * modules/unictype/ctype-print: New file.
1031         * modules/unictype/ctype-punct: New file.
1032         * modules/unictype/ctype-space: New file.
1033         * modules/unictype/ctype-upper: New file.
1034         * modules/unictype/ctype-xdigit: New file.
1035         * modules/unictype/ctype-blank: New file.
1036         * lib/unictype/bidi_byname.c: New file.
1037         * lib/unictype/bidi_name.c: New file.
1038         * lib/unictype/bidi_of.c: New file.
1039         * lib/unictype/bidi_test.c: New file.
1040         * lib/unictype/bitmap.h: New file.
1041         * lib/unictype/block_test.c: New file.
1042         * lib/unictype/blocks.c: New file.
1043         * lib/unictype/categ_C.c: New file.
1044         * lib/unictype/categ_Cc.c: New file.
1045         * lib/unictype/categ_Cf.c: New file.
1046         * lib/unictype/categ_Cn.c: New file.
1047         * lib/unictype/categ_Co.c: New file.
1048         * lib/unictype/categ_Cs.c: New file.
1049         * lib/unictype/categ_L.c: New file.
1050         * lib/unictype/categ_Ll.c: New file.
1051         * lib/unictype/categ_Lm.c: New file.
1052         * lib/unictype/categ_Lo.c: New file.
1053         * lib/unictype/categ_Lt.c: New file.
1054         * lib/unictype/categ_Lu.c: New file.
1055         * lib/unictype/categ_M.c: New file.
1056         * lib/unictype/categ_Mc.c: New file.
1057         * lib/unictype/categ_Me.c: New file.
1058         * lib/unictype/categ_Mn.c: New file.
1059         * lib/unictype/categ_N.c: New file.
1060         * lib/unictype/categ_Nd.c: New file.
1061         * lib/unictype/categ_Nl.c: New file.
1062         * lib/unictype/categ_No.c: New file.
1063         * lib/unictype/categ_P.c: New file.
1064         * lib/unictype/categ_Pc.c: New file.
1065         * lib/unictype/categ_Pd.c: New file.
1066         * lib/unictype/categ_Pe.c: New file.
1067         * lib/unictype/categ_Pf.c: New file.
1068         * lib/unictype/categ_Pi.c: New file.
1069         * lib/unictype/categ_Po.c: New file.
1070         * lib/unictype/categ_Ps.c: New file.
1071         * lib/unictype/categ_S.c: New file.
1072         * lib/unictype/categ_Sc.c: New file.
1073         * lib/unictype/categ_Sk.c: New file.
1074         * lib/unictype/categ_Sm.c: New file.
1075         * lib/unictype/categ_So.c: New file.
1076         * lib/unictype/categ_Z.c: New file.
1077         * lib/unictype/categ_Zl.c: New file.
1078         * lib/unictype/categ_Zp.c: New file.
1079         * lib/unictype/categ_Zs.c: New file.
1080         * lib/unictype/categ_and.c: New file.
1081         * lib/unictype/categ_and_not.c: New file.
1082         * lib/unictype/categ_byname.c: New file.
1083         * lib/unictype/categ_name.c: New file.
1084         * lib/unictype/categ_none.c: New file.
1085         * lib/unictype/categ_of.c: New file.
1086         * lib/unictype/categ_or.c: New file.
1087         * lib/unictype/categ_test.c: New file.
1088         * lib/unictype/combining.c: New file.
1089         * lib/unictype/ctype_alnum.c: New file.
1090         * lib/unictype/ctype_alpha.c: New file.
1091         * lib/unictype/ctype_blank.c: New file.
1092         * lib/unictype/ctype_cntrl.c: New file.
1093         * lib/unictype/ctype_digit.c: New file.
1094         * lib/unictype/ctype_graph.c: New file.
1095         * lib/unictype/ctype_lower.c: New file.
1096         * lib/unictype/ctype_print.c: New file.
1097         * lib/unictype/ctype_punct.c: New file.
1098         * lib/unictype/ctype_space.c: New file.
1099         * lib/unictype/ctype_upper.c: New file.
1100         * lib/unictype/ctype_xdigit.c: New file.
1101         * lib/unictype/decdigit.c: New file.
1102         * lib/unictype/digit.c: New file.
1103         * lib/unictype/identsyntaxmap.h: New file.
1104         * lib/unictype/mirror.c: New file.
1105         * lib/unictype/numeric.c: New file.
1106         * lib/unictype/pr_alphabetic.c: New file.
1107         * lib/unictype/pr_ascii_hex_digit.c: New file.
1108         * lib/unictype/pr_bidi_arabic_digit.c: New file.
1109         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
1110         * lib/unictype/pr_bidi_block_separator.c: New file.
1111         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
1112         * lib/unictype/pr_bidi_common_separator.c: New file.
1113         * lib/unictype/pr_bidi_control.c: New file.
1114         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
1115         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
1116         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
1117         * lib/unictype/pr_bidi_european_digit.c: New file.
1118         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
1119         * lib/unictype/pr_bidi_left_to_right.c: New file.
1120         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
1121         * lib/unictype/pr_bidi_other_neutral.c: New file.
1122         * lib/unictype/pr_bidi_pdf.c: New file.
1123         * lib/unictype/pr_bidi_segment_separator.c: New file.
1124         * lib/unictype/pr_bidi_whitespace.c: New file.
1125         * lib/unictype/pr_byname.c: New file.
1126         * lib/unictype/pr_byname.gperf: New file.
1127         * lib/unictype/pr_combining.c: New file.
1128         * lib/unictype/pr_composite.c: New file.
1129         * lib/unictype/pr_currency_symbol.c: New file.
1130         * lib/unictype/pr_dash.c: New file.
1131         * lib/unictype/pr_decimal_digit.c: New file.
1132         * lib/unictype/pr_default_ignorable_code_point.c: New file.
1133         * lib/unictype/pr_deprecated.c: New file.
1134         * lib/unictype/pr_diacritic.c: New file.
1135         * lib/unictype/pr_extender.c: New file.
1136         * lib/unictype/pr_format_control.c: New file.
1137         * lib/unictype/pr_grapheme_base.c: New file.
1138         * lib/unictype/pr_grapheme_extend.c: New file.
1139         * lib/unictype/pr_grapheme_link.c: New file.
1140         * lib/unictype/pr_hex_digit.c: New file.
1141         * lib/unictype/pr_hyphen.c: New file.
1142         * lib/unictype/pr_id_continue.c: New file.
1143         * lib/unictype/pr_id_start.c: New file.
1144         * lib/unictype/pr_ideographic.c: New file.
1145         * lib/unictype/pr_ids_binary_operator.c: New file.
1146         * lib/unictype/pr_ids_trinary_operator.c: New file.
1147         * lib/unictype/pr_ignorable_control.c: New file.
1148         * lib/unictype/pr_iso_control.c: New file.
1149         * lib/unictype/pr_join_control.c: New file.
1150         * lib/unictype/pr_left_of_pair.c: New file.
1151         * lib/unictype/pr_line_separator.c: New file.
1152         * lib/unictype/pr_logical_order_exception.c: New file.
1153         * lib/unictype/pr_lowercase.c: New file.
1154         * lib/unictype/pr_math.c: New file.
1155         * lib/unictype/pr_non_break.c: New file.
1156         * lib/unictype/pr_not_a_character.c: New file.
1157         * lib/unictype/pr_numeric.c: New file.
1158         * lib/unictype/pr_other_alphabetic.c: New file.
1159         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
1160         * lib/unictype/pr_other_grapheme_extend.c: New file.
1161         * lib/unictype/pr_other_id_continue.c: New file.
1162         * lib/unictype/pr_other_id_start.c: New file.
1163         * lib/unictype/pr_other_lowercase.c: New file.
1164         * lib/unictype/pr_other_math.c: New file.
1165         * lib/unictype/pr_other_uppercase.c: New file.
1166         * lib/unictype/pr_paired_punctuation.c: New file.
1167         * lib/unictype/pr_paragraph_separator.c: New file.
1168         * lib/unictype/pr_pattern_syntax.c: New file.
1169         * lib/unictype/pr_pattern_white_space.c: New file.
1170         * lib/unictype/pr_private_use.c: New file.
1171         * lib/unictype/pr_punctuation.c: New file.
1172         * lib/unictype/pr_quotation_mark.c: New file.
1173         * lib/unictype/pr_radical.c: New file.
1174         * lib/unictype/pr_sentence_terminal.c: New file.
1175         * lib/unictype/pr_soft_dotted.c: New file.
1176         * lib/unictype/pr_space.c: New file.
1177         * lib/unictype/pr_terminal_punctuation.c: New file.
1178         * lib/unictype/pr_test.c: New file.
1179         * lib/unictype/pr_titlecase.c: New file.
1180         * lib/unictype/pr_unassigned_code_value.c: New file.
1181         * lib/unictype/pr_unified_ideograph.c: New file.
1182         * lib/unictype/pr_uppercase.c: New file.
1183         * lib/unictype/pr_variation_selector.c: New file.
1184         * lib/unictype/pr_white_space.c: New file.
1185         * lib/unictype/pr_xid_continue.c: New file.
1186         * lib/unictype/pr_xid_start.c: New file.
1187         * lib/unictype/pr_zero_width.c: New file.
1188         * lib/unictype/scripts.c: New file.
1189         * lib/unictype/sy_c_ident.c: New file.
1190         * lib/unictype/sy_c_whitespace.c: New file.
1191         * lib/unictype/sy_java_ident.c: New file.
1192         * lib/unictype/sy_java_whitespace.c: New file.
1193
1194         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
1195         Unicode 5.0.0.
1196         * lib/unictype/blocks.h: Likewise.
1197         * lib/unictype/categ_C.h: Likewise.
1198         * lib/unictype/categ_Cc.h: Likewise.
1199         * lib/unictype/categ_Cf.h: Likewise.
1200         * lib/unictype/categ_Cn.h: Likewise.
1201         * lib/unictype/categ_Co.h: Likewise.
1202         * lib/unictype/categ_Cs.h: Likewise.
1203         * lib/unictype/categ_L.h: Likewise.
1204         * lib/unictype/categ_Ll.h: Likewise.
1205         * lib/unictype/categ_Lm.h: Likewise.
1206         * lib/unictype/categ_Lo.h: Likewise.
1207         * lib/unictype/categ_Lt.h: Likewise.
1208         * lib/unictype/categ_Lu.h: Likewise.
1209         * lib/unictype/categ_M.h: Likewise.
1210         * lib/unictype/categ_Mc.h: Likewise.
1211         * lib/unictype/categ_Me.h: Likewise.
1212         * lib/unictype/categ_Mn.h: Likewise.
1213         * lib/unictype/categ_N.h: Likewise.
1214         * lib/unictype/categ_Nd.h: Likewise.
1215         * lib/unictype/categ_Nl.h: Likewise.
1216         * lib/unictype/categ_No.h: Likewise.
1217         * lib/unictype/categ_P.h: Likewise.
1218         * lib/unictype/categ_Pc.h: Likewise.
1219         * lib/unictype/categ_Pd.h: Likewise.
1220         * lib/unictype/categ_Pe.h: Likewise.
1221         * lib/unictype/categ_Pf.h: Likewise.
1222         * lib/unictype/categ_Pi.h: Likewise.
1223         * lib/unictype/categ_Po.h: Likewise.
1224         * lib/unictype/categ_Ps.h: Likewise.
1225         * lib/unictype/categ_S.h: Likewise.
1226         * lib/unictype/categ_Sc.h: Likewise.
1227         * lib/unictype/categ_Sk.h: Likewise.
1228         * lib/unictype/categ_Sm.h: Likewise.
1229         * lib/unictype/categ_So.h: Likewise.
1230         * lib/unictype/categ_Z.h: Likewise.
1231         * lib/unictype/categ_Zl.h: Likewise.
1232         * lib/unictype/categ_Zp.h: Likewise.
1233         * lib/unictype/categ_Zs.h: Likewise.
1234         * lib/unictype/categ_of.h: Likewise.
1235         * lib/unictype/combining.h: Likewise.
1236         * lib/unictype/ctype_alnum.h: Likewise.
1237         * lib/unictype/ctype_alpha.h: Likewise.
1238         * lib/unictype/ctype_blank.h: Likewise.
1239         * lib/unictype/ctype_cntrl.h: Likewise.
1240         * lib/unictype/ctype_digit.h: Likewise.
1241         * lib/unictype/ctype_graph.h: Likewise.
1242         * lib/unictype/ctype_lower.h: Likewise.
1243         * lib/unictype/ctype_print.h: Likewise.
1244         * lib/unictype/ctype_punct.h: Likewise.
1245         * lib/unictype/ctype_space.h: Likewise.
1246         * lib/unictype/ctype_upper.h: Likewise.
1247         * lib/unictype/ctype_xdigit.h: Likewise.
1248         * lib/unictype/decdigit.h: Likewise.
1249         * lib/unictype/digit.h: Likewise.
1250         * lib/unictype/mirror.h: Likewise.
1251         * lib/unictype/numeric.h: Likewise.
1252         * lib/unictype/pr_alphabetic.h: Likewise.
1253         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
1254         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
1255         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
1256         * lib/unictype/pr_bidi_block_separator.h: Likewise.
1257         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
1258         * lib/unictype/pr_bidi_common_separator.h: Likewise.
1259         * lib/unictype/pr_bidi_control.h: Likewise.
1260         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
1261         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
1262         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
1263         * lib/unictype/pr_bidi_european_digit.h: Likewise.
1264         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
1265         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
1266         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
1267         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
1268         * lib/unictype/pr_bidi_pdf.h: Likewise.
1269         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
1270         * lib/unictype/pr_bidi_whitespace.h: Likewise.
1271         * lib/unictype/pr_combining.h: Likewise.
1272         * lib/unictype/pr_composite.h: Likewise.
1273         * lib/unictype/pr_currency_symbol.h: Likewise.
1274         * lib/unictype/pr_dash.h: Likewise.
1275         * lib/unictype/pr_decimal_digit.h: Likewise.
1276         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
1277         * lib/unictype/pr_deprecated.h: Likewise.
1278         * lib/unictype/pr_diacritic.h: Likewise.
1279         * lib/unictype/pr_extender.h: Likewise.
1280         * lib/unictype/pr_format_control.h: Likewise.
1281         * lib/unictype/pr_grapheme_base.h: Likewise.
1282         * lib/unictype/pr_grapheme_extend.h: Likewise.
1283         * lib/unictype/pr_grapheme_link.h: Likewise.
1284         * lib/unictype/pr_hex_digit.h: Likewise.
1285         * lib/unictype/pr_hyphen.h: Likewise.
1286         * lib/unictype/pr_id_continue.h: Likewise.
1287         * lib/unictype/pr_id_start.h: Likewise.
1288         * lib/unictype/pr_ideographic.h: Likewise.
1289         * lib/unictype/pr_ids_binary_operator.h: Likewise.
1290         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
1291         * lib/unictype/pr_ignorable_control.h: Likewise.
1292         * lib/unictype/pr_iso_control.h: Likewise.
1293         * lib/unictype/pr_join_control.h: Likewise.
1294         * lib/unictype/pr_left_of_pair.h: Likewise.
1295         * lib/unictype/pr_line_separator.h: Likewise.
1296         * lib/unictype/pr_logical_order_exception.h: Likewise.
1297         * lib/unictype/pr_lowercase.h: Likewise.
1298         * lib/unictype/pr_math.h: Likewise.
1299         * lib/unictype/pr_non_break.h: Likewise.
1300         * lib/unictype/pr_not_a_character.h: Likewise.
1301         * lib/unictype/pr_numeric.h: Likewise.
1302         * lib/unictype/pr_other_alphabetic.h: Likewise.
1303         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
1304         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
1305         * lib/unictype/pr_other_id_continue.h: Likewise.
1306         * lib/unictype/pr_other_id_start.h: Likewise.
1307         * lib/unictype/pr_other_lowercase.h: Likewise.
1308         * lib/unictype/pr_other_math.h: Likewise.
1309         * lib/unictype/pr_other_uppercase.h: Likewise.
1310         * lib/unictype/pr_paired_punctuation.h: Likewise.
1311         * lib/unictype/pr_paragraph_separator.h: Likewise.
1312         * lib/unictype/pr_pattern_syntax.h: Likewise.
1313         * lib/unictype/pr_pattern_white_space.h: Likewise.
1314         * lib/unictype/pr_private_use.h: Likewise.
1315         * lib/unictype/pr_punctuation.h: Likewise.
1316         * lib/unictype/pr_quotation_mark.h: Likewise.
1317         * lib/unictype/pr_radical.h: Likewise.
1318         * lib/unictype/pr_sentence_terminal.h: Likewise.
1319         * lib/unictype/pr_soft_dotted.h: Likewise.
1320         * lib/unictype/pr_space.h: Likewise.
1321         * lib/unictype/pr_terminal_punctuation.h: Likewise.
1322         * lib/unictype/pr_titlecase.h: Likewise.
1323         * lib/unictype/pr_unassigned_code_value.h: Likewise.
1324         * lib/unictype/pr_unified_ideograph.h: Likewise.
1325         * lib/unictype/pr_uppercase.h: Likewise.
1326         * lib/unictype/pr_variation_selector.h: Likewise.
1327         * lib/unictype/pr_white_space.h: Likewise.
1328         * lib/unictype/pr_xid_continue.h: Likewise.
1329         * lib/unictype/pr_xid_start.h: Likewise.
1330         * lib/unictype/pr_zero_width.h: Likewise.
1331         * lib/unictype/scripts.h: Likewise.
1332         * lib/unictype/scripts_byname.gperf: Likewise.
1333         * lib/unictype/sy_c_ident.h: Likewise.
1334         * lib/unictype/sy_c_whitespace.h: Likewise.
1335         * lib/unictype/sy_java_ident.h: Likewise.
1336         * lib/unictype/sy_java_whitespace.h: Likewise.
1337
1338         * lib/unictype/Makefile: New file.
1339         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
1340         glibc.
1341         * lib/unictype/3level.h: New file, copied from glibc.
1342         * lib/unictype/3levelbit.h: New file.
1343
1344 2007-11-11  Bruno Haible  <bruno@clisp.org>
1345
1346         * modules/gperf: New file.
1347         * modules/iconv_open (Depends-on): Add it.
1348         (Makefile.am): Remove the GPERF definition.
1349
1350 2007-11-11  Bruno Haible  <bruno@clisp.org>
1351
1352         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
1353         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
1354
1355 2007-11-11  Bruno Haible  <bruno@clisp.org>
1356
1357         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
1358         (usage): Remove function.
1359
1360 2007-11-11  Bruno Haible  <bruno@clisp.org>
1361
1362         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
1363         gl_FUNC_CEILF_LIBS.
1364         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
1365         gl_FUNC_CEIL_LIBS.
1366         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
1367         gl_FUNC_CEILL_LIBS.
1368         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
1369         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
1370         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
1371
1372 2007-11-11  Bruno Haible  <bruno@clisp.org>
1373
1374         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
1375         roundf were declared but do not exist on functions.
1376         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
1377         roundl were declared but do not exist on functions.
1378         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
1379         HAVE_FLOORL_AND_CEILL, respectively.
1380         Needed for Sun C on Solaris 10.
1381
1382 2007-11-11  Bruno Haible  <bruno@clisp.org>
1383
1384         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
1385         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
1386         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
1387         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
1388         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
1389         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
1390         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
1391         HAVE_DECL_ROUNDF.
1392         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
1393         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
1394         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
1395         of HAVE_DECL_ROUND*.
1396         * modules/math (Makefile.am): Update.
1397
1398 2007-11-10  Bruno Haible  <bruno@clisp.org>
1399
1400         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
1401         ptrdiff_t as m4/intl.m4.
1402
1403 2007-11-10  Jim Meyering  <meyering@redhat.com>
1404
1405         Avoid link failure for the argmatch test.
1406         * tests/test-argmatch.c (usage): Define function to avoid a link
1407         failure: argmatch_die requires a usage function.
1408
1409 2007-11-09  Bruno Haible  <bruno@clisp.org>
1410
1411         * doc/functions/snprintf.texi: Mention BeOS deficiency.
1412         * doc/functions/vsnprintf.texi: Likewise.
1413         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
1414         with a size argument < 2.
1415
1416 2007-11-09  Bruno Haible  <bruno@clisp.org>
1417
1418         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
1419         buffer. Fixes an inefficiency introduced on 2007-11-03.
1420
1421 2007-11-09  Bruno Haible  <bruno@clisp.org>
1422
1423         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
1424         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
1425
1426 2007-11-08  Jim Meyering  <meyering@redhat.com>
1427
1428         Change cache variable name prefix "jm_" to "gl_" everywhere.
1429         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
1430         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
1431         * m4/uptime.m4: s/gl_/jm_/
1432
1433 2007-11-07  Bruno Haible  <bruno@clisp.org>
1434
1435         Update to GNU gettext 0.17.
1436         * m4/intl.m4: Update to GNU gettext 0.17.
1437         * m4/po.m4: Likewise.
1438         * modules/gettext (Files): Remove m4/ulonglong.m4.
1439         (configure.ac): Require gettext infrastructure from version 0.17.
1440
1441 2007-11-06  Bruno Haible  <bruno@clisp.org>
1442
1443         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
1444         symbolic values are not defined in a public header.
1445         * lib/freadable.c (freadable) [QNX]: Likewise.
1446         * lib/freadahead.c (freadahead) [QNX]: Likewise.
1447         * lib/freading.c (freading) [QNX]: Likewise.
1448         * lib/fseterr.c (fseterr) [QNX]: Likewise.
1449         * lib/fwritable.c (fwritable) [QNX]: Likewise.
1450         * lib/fwriting.c (fwriting) [QNX]: Likewise.
1451         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
1452         Reported by Alain Magloire.
1453
1454         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
1455
1456 2007-11-05  Bruno Haible  <bruno@clisp.org>
1457
1458         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
1459         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
1460         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
1461         Reported by Eric Blake.
1462
1463 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1464             Bruno Haible  <bruno@clisp.org>
1465
1466         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
1467         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
1468         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
1469         (malloc): Undefine also before including <stdlib.h>.
1470         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
1471         Needed on OSF/1 4.0.
1472
1473 2007-11-05  Jim Meyering  <meyering@redhat.com>
1474
1475         git-version-gen: sync from coreutils.
1476         * build-aux/git-version-gen: Add comments.
1477         Change the first '-' to '.' in the snapshot version string,
1478         e.g., 6.9-377-08144 -> 6.9.377-08144
1479         Remove first parameter.
1480         Don't declare a version "-dirty" merely because a time
1481         stamp has changed.
1482
1483 2007-11-04  Bruno Haible  <bruno@clisp.org>
1484
1485         * lib/lock.h: Protect all macro definitions containing an 'if'
1486         statement through a "do { ... } while (0)".
1487         * lib/tls.h: Likewise.
1488
1489 2007-11-04  Bruno Haible  <bruno@clisp.org>
1490
1491         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
1492
1493 2007-11-04  Bruno Haible  <bruno@clisp.org>
1494
1495         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
1496         * modules/fprintf-posix (Depends-on): Add nocrash.
1497         * modules/snprintf-posix (Depends-on): Likewise.
1498         * modules/sprintf-posix (Depends-on): Likewise.
1499         * modules/vasnprintf-posix (Depends-on): Likewise.
1500         * modules/vasprintf-posix (Depends-on): Likewise.
1501         * modules/vfprintf-posix (Depends-on): Likewise.
1502         * modules/vsnprintf-posix (Depends-on): Likewise.
1503         * modules/vsprintf-posix (Depends-on): Likewise.
1504         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
1505         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
1506         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
1507         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
1508         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
1509         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
1510         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
1511
1512 2007-11-04  Bruno Haible  <bruno@clisp.org>
1513
1514         * modules/nocrash: New file.
1515         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
1516         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
1517
1518 2007-11-04  Bruno Haible  <bruno@clisp.org>
1519
1520         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
1521         precision handling.
1522         * tests/test-vasprintf-posix.c (test_function): Likewise.
1523         * tests/test-snprintf-posix.h (test_function): Likewise.
1524         * tests/test-sprintf-posix.h (test_function): Likewise.
1525
1526         Fix *printf behaviour for large precisions on mingw and BeOS.
1527         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
1528         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
1529         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
1530         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
1531         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
1532         gl_PRINTF_PRECISION and test its result. Invoke
1533         gl_PREREQ_VASNPRINTF_PRECISION.
1534         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
1535         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
1536         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
1537         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
1538         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
1539         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
1540         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
1541         * doc/functions/fprintf.texi: Update.
1542         * doc/functions/printf.texi: Update.
1543         * doc/functions/snprintf.texi: Update.
1544         * doc/functions/sprintf.texi: Update.
1545         * doc/functions/vfprintf.texi: Update.
1546         * doc/functions/vprintf.texi: Update.
1547         * doc/functions/vsnprintf.texi: Update.
1548         * doc/functions/vsprintf.texi: Update.
1549
1550 2007-11-04  Bruno Haible  <bruno@clisp.org>
1551
1552         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
1553
1554 2007-11-04  Bruno Haible  <bruno@clisp.org>
1555
1556         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
1557         Reported by Sylvain Beucler <beuc@gnu.org>.
1558
1559 2007-11-03  Bruno Haible  <bruno@clisp.org>
1560
1561         * tests/test-fprintf-posix2.sh: New file.
1562         * tests/test-fprintf-posix2.c: New file.
1563         * modules/fprintf-posix-tests (Files): Add them.
1564         (TESTS): Add test-fprintf-posix2.sh.
1565         (configure.ac): Check for getrlimit and setrlimit.
1566         (check_PROGRAMS): Add test-fprintf-posix2.
1567
1568         * tests/test-printf-posix2.sh: New file.
1569         * tests/test-printf-posix2.c: New file.
1570         * modules/printf-posix-tests (Files): Add them.
1571         (TESTS): Add test-printf-posix2.sh.
1572         (configure.ac): Check for getrlimit and setrlimit.
1573         (check_PROGRAMS): Add test-printf-posix2.
1574
1575         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
1576         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
1577         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
1578         (decode_double): New function, copied from decode_long_double.
1579         (scale10_round_decimal_decoded): New function, extracted from
1580         scale10_round_decimal_long_double.
1581         (scale10_round_decimal_long_double): Use it.
1582         (scale10_round_decimal_double): New function.
1583         (floorlog10): New function.
1584         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
1585         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
1586         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
1587         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
1588         gl_PRINTF_ENOMEM and test its result. Invoke
1589         gl_PREREQ_VASNPRINTF_ENOMEM.
1590         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
1591         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
1592         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
1593         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
1594         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
1595         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
1596         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
1597         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
1598         * modules/snprintf-posix (Depends-on): Likewise.
1599         * modules/sprintf-posix (Depends-on): Likewise.
1600         * modules/vasnprintf-posix (Depends-on): Likewise.
1601         * modules/vasprintf-posix (Depends-on): Likewise.
1602         * modules/vfprintf-posix (Depends-on): Likewise.
1603         * modules/vsnprintf-posix (Depends-on): Likewise.
1604         * modules/vsprintf-posix (Depends-on): Likewise.
1605         * doc/functions/fprintf.texi: Update.
1606         * doc/functions/printf.texi: Update.
1607         * doc/functions/snprintf.texi: Update.
1608         * doc/functions/sprintf.texi: Update.
1609         * doc/functions/vfprintf.texi: Update.
1610         * doc/functions/vprintf.texi: Update.
1611         * doc/functions/vsnprintf.texi: Update.
1612         * doc/functions/vsprintf.texi: Update.
1613
1614 2007-11-03  Bruno Haible  <bruno@clisp.org>
1615
1616         * modules/frexp-nolibm-tests: New file.
1617
1618         * modules/frexp-nolibm: New file.
1619         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
1620
1621 2007-11-03  Bruno Haible  <bruno@clisp.org>
1622
1623         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
1624         value is C99 compliant.
1625         Needed for OSF/1 5.1.
1626
1627 2007-11-03  Bruno Haible  <bruno@clisp.org>
1628
1629         Fix out-of-memory handling of vasnprintf.
1630         * lib/printf-parse.c: Include <errno.h>.
1631         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
1632         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
1633         is already set.
1634
1635 2007-11-02  Eric Blake  <ebb9@byu.net>
1636
1637         Fix tests on cygwin.
1638         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
1639
1640 2007-11-01  Bruno Haible  <bruno@clisp.org>
1641
1642         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
1643         warning.
1644         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
1645         needed for POSIX compatibility.
1646
1647 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
1648
1649         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
1650         for compatibility with GNU.
1651
1652 2007-11-01  Bruno Haible  <bruno@clisp.org>
1653
1654         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
1655         (putenv): Renamed from rpl_putenv. Change argument type from
1656         'const char *' to 'char *'.
1657         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
1658         of defining putenv in config.h, just set REPLACE_PUTENV.
1659         * modules/putenv (Depends-on): Add stdlib.
1660         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
1661         (Include): Use <stdlib.h>.
1662         * lib/stdlib.in.h (putenv): New declaration.
1663         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
1664         REPLACE_PUTENV.
1665         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
1666         REPLACE_PUTENV.
1667         Needed for MacOS X 10.5.0.
1668         Reported by Peter O'Gorman <peter@pogma.com>.
1669
1670 2007-11-01  Jim Meyering  <meyering@redhat.com>
1671
1672         Treat an empty date string exactly like "0".
1673         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
1674         if the remaining date string (to be parsed) is empty, use "0".
1675         Reported by Mischa Molhoek and discussed in this thread:
1676         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
1677
1678 2007-10-31  Bruno Haible  <bruno@clisp.org>
1679
1680         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
1681         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
1682         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
1683         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
1684         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
1685         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
1686
1687 2007-10-31  Bruno Haible  <bruno@clisp.org>
1688
1689         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
1690         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
1691         (AC_TYPE_LONG_LONG_INT): Use it.
1692         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
1693         it as well.
1694         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
1695         to m4/longlong.m4.
1696         * modules/stdint (Files): Remove m4/ulonglong.m4.
1697         * modules/strtoull (Files): Use m4/longlong.m4 instead of
1698         m4/ulonglong.m4.
1699         * modules/strtoumax (Files): Likewise.
1700
1701 2007-10-30  Bruno Haible  <bruno@clisp.org>
1702
1703         * modules/xvasprintf-posix: New file.
1704         Suggested by Eric Blake.
1705
1706 2007-10-30  Bruno Haible  <bruno@clisp.org>
1707
1708         * modules/xprintf-posix-tests: New file.
1709         * tests/test-xprintf-posix.sh: New file.
1710         * tests/test-xprintf-posix.c: New file.
1711         * tests/test-xfprintf-posix.c: New file.
1712
1713         * modules/xprintf-posix: New file.
1714
1715 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1716
1717         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
1718         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
1719         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
1720
1721 2007-10-29  Bruno Haible  <bruno@clisp.org>
1722
1723         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
1724         contain the special marker '_cv_'.
1725         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
1726         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
1727         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
1728         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
1729         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
1730         Reported by Ralf Wildenhues.
1731
1732 2007-10-29  Bruno Haible  <bruno@clisp.org>
1733
1734         * gnulib-tool (func_import): When --lgpl is not specified, set
1735         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
1736         GPLv3.
1737         Reported by Simon Josefsson.
1738
1739 2007-10-28  Bruno Haible  <bruno@clisp.org>
1740
1741         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
1742         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
1743         HAVE_DECL_ISFINITE.
1744         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
1745         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
1746         HAVE_DECL_ISFINITE.
1747
1748 2007-10-28  Bruno Haible  <bruno@clisp.org>
1749
1750         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
1751         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
1752
1753 2007-10-28  Bruno Haible  <bruno@clisp.org>
1754
1755         Fix link errors with Sun C 5.0 on Solaris 10.
1756         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
1757         function is declared but not present in the compiler's libm.
1758         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
1759         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
1760         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
1761         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
1762         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
1763         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
1764         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
1765         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
1766         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
1767         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
1768         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
1769         HAVE_DECL_FLOORL.
1770
1771 2007-10-28  Bruno Haible  <bruno@clisp.org>
1772
1773         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
1774         gl_FUNC_FLOORL. Cache the result.
1775         (gl_FUNC_FLOORL): Use it.
1776         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
1777         gl_FUNC_CEILL. Cache the result.
1778         (gl_FUNC_CEILL): Use it.
1779
1780         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
1781         gl_FUNC_FLOOR. Cache the result.
1782         (gl_FUNC_FLOOR): Use it.
1783         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
1784         gl_FUNC_CEIL. Cache the result.
1785         (gl_FUNC_CEIL): Use it.
1786
1787         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
1788         gl_FUNC_FLOORF. Cache the result.
1789         (gl_FUNC_FLOORF): Use it.
1790         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
1791         gl_FUNC_CEILF. Cache the result.
1792         (gl_FUNC_CEILF): Use it.
1793
1794 2007-10-28  Bruno Haible  <bruno@clisp.org>
1795
1796         * gnulib-tool: Allow specifying the LGPL version number through
1797         --lgpl=2 or --lgpl=3.
1798         (func_usage): Document --lgpl with argument.
1799         Handle --lgpl=... arguments.
1800         (func_import): Recognize also gl_LGPL calls with an argument. When
1801         --lgpl=2 is used and the module's license is just LGPL, report an
1802         error. Set sed_transform_lib_file according to the lgpl variable. In
1803         the generated files, use --lgpl or gl_LGPL invocations with argument,
1804         if necessary.
1805         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
1806         an LGPv2+ license.
1807         * doc/gnulib-tool.texi (Modified imports): Update explanation of
1808         gl_LGPL macro.
1809
1810 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1811             Bruno Haible  <bruno@clisp.org>
1812
1813         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
1814         (u16_uctomb_aux): Likewise.
1815         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
1816         !HAVE_INLINE.
1817         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
1818
1819 2007-10-28  Bruno Haible  <bruno@clisp.org>
1820
1821         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
1822         Invoke AM_GETTEXT_OPTION if it exists.
1823         * modules/vasprintf: Likewise.
1824         * modules/verror: Likewise.
1825         * modules/xprintf: Likewise.
1826         * modules/xvasprintf: Likewise.
1827
1828 2007-10-27  Ben Pfaff  <blp@gnu.org>
1829
1830         * lib/math.in.h: Define isfinite macro and prototypes for
1831         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
1832         implementations.
1833         * m4/math_h.m4: New substitutions for isfinite module.
1834         * lib/isfinite.c: New file.
1835         * m4/isfinite.m4: New file.
1836         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
1837         * modules/isfinite: New file.
1838         * modules/isfinite-tests: New file.
1839         * tests/tests-isfinite.c: New file.
1840         * doc/functions/isfinite.texi: Mention isfinite module.
1841         * MODULES.html.sh: Mention new module.
1842
1843 2007-10-27  Ben Pfaff  <blp@gnu.org>
1844
1845         Ralf Wildenhues reported that Tru64 4.0D declares the round
1846         functions but does not have definitions.
1847         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
1848         cannot be found in any library, set the output variable to
1849         "missing" instead of "".
1850         * m4/round.m4: Also use our substitute if we cannot find round in
1851         any library, even if it is declared.
1852         * m4/roundf.m4: Likewise for roundf.
1853         * m4/roundl.m4: Likewise for roundl.
1854         * lib/math.in.h: Undefine roundf, round, roundl before defining
1855         their replacements, to allow for hypothetical systems where these
1856         may be defined as macros but not available in libraries.
1857
1858 2007-10-27  Bruno Haible  <bruno@clisp.org>
1859
1860         * doc/gnulib.texi: Invoke @firstparagraphindent.
1861         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
1862         changes in gnulib.
1863         (Source changes): New section.
1864
1865 2007-10-26  Bruno Haible  <bruno@clisp.org>
1866
1867         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
1868         borrowed from autoconf.
1869
1870 2007-10-26  Bruno Haible  <bruno@clisp.org>
1871
1872         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
1873         strerror returned the empty string. Needed on HP-UX 11.00.
1874
1875 2007-10-24  Micah Cowan  <micah@cowan.name>
1876
1877         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
1878         * build-aux/bootstrap: Remove support for now-unnecessary option,
1879         --cvs-user, and envvars CVS_USER, CVS_RSH.
1880
1881 2007-10-24  Jim Meyering  <meyering@redhat.com>
1882
1883         Avoid diagnostics from sha1sum when there is no cached checksum.
1884         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
1885         if the po.s1 file hasn't been created yet.
1886
1887         * build-aux/bootstrap: Sync from coreutils:
1888         2007-10-24  Jim Meyering  <meyering@redhat.com>
1889         Get gnulib from the git repository, not from an obsolete cvs one.
1890         * build-aux/bootstrap: Suggestion from Micah Cowan.
1891         2007-10-04  Jim Meyering  <jim@meyering.net>
1892         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
1893         (update_po_files): Work also when there are no .po files in po/.
1894
1895 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
1896
1897         * README: Append ".git" to git and cg examples.
1898         Problem reported by Benoit Sigoure.
1899
1900 2007-10-23  Micah Cowan  <micah@cowan.name>
1901
1902         * users.txt: Add wget.
1903
1904 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1905
1906         Fix linking of some unistdio tests on FreeBSD.
1907         * modules/unistdio/u16-vsnprintf-tests
1908         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
1909         * modules/unistdio/u16-vsprintf-tests
1910         (test_u16_vsnprintf1_LDADD): Likewise.
1911         * modules/unistdio/u32-vsnprintf-tests
1912         (test_u32_vsnprintf1_LDADD): Likewise.
1913         * modules/unistdio/u32-vsprintf-tests
1914         (test_u32_vsprintf1_LDADD): Likewise.
1915         * modules/unistdio/u8-vsnprintf-tests
1916         (test_u8_vsnprintf1_LDADD): Likewise.
1917         * modules/unistdio/u8-vsprintf-tests
1918         (test_u8_vsprintf1_LDADD): Likewise.
1919         * modules/unistdio/ulc-vsnprintf-tests
1920         (test_ulc_vsnprintf1_LDADD): Likewise.
1921         * modules/unistdio/ulc-vsprintf-tests
1922         (test_ulc_vsprintf1_LDADD): Likewise.
1923
1924         Fix linking of some uniconv tests on FreeBSD.
1925         * modules/uniconv/u16-conv-from-enc-tests
1926         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
1927         * modules/uniconv/u16-conv-to-enc-tests
1928         (test_u16_conv_to_enc_LDADD): Likewise.
1929         * modules/uniconv/u16-strconv-from-enc-tests
1930         (test_u16_strconv_from_enc_LDADD): Likewise.
1931         * modules/uniconv/u16-strconv-to-enc-tests
1932         (test_u16_strconv_to_enc_LDADD): Likewise.
1933         * modules/uniconv/u32-conv-from-enc-tests
1934         (test_u32_conv_from_enc_LDADD): Likewise.
1935         * modules/uniconv/u32-conv-to-enc-tests
1936         (test_u32_conv_to_enc_LDADD): Likewise.
1937         * modules/uniconv/u32-strconv-from-enc-tests
1938         (test_u32_strconv_from_enc_LDADD): Likewise.
1939         * modules/uniconv/u32-strconv-to-enc-tests
1940         (test_u32_strconv_to_enc_LDADD): Likewise.
1941         * modules/uniconv/u8-conv-from-enc-tests
1942         (test_u8_conv_from_enc_LDADD): Likewise.
1943         * modules/uniconv/u8-conv-to-enc-tests
1944         (test_u8_conv_to_enc_LDADD): Likewise.
1945         * modules/uniconv/u8-strconv-from-enc-tests
1946         (test_u8_strconv_from_enc_LDADD): Likewise.
1947         * modules/uniconv/u8-strconv-to-enc-tests
1948         (test_u8_strconv_to_enc_LDADD): Likewise.
1949
1950 2007-10-22  Bruno Haible  <bruno@clisp.org>
1951
1952         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
1953         size.
1954
1955 2007-10-22  Eric Blake  <ebb9@byu.net>
1956
1957         Tweak x*printf documentation.
1958         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
1959         variable name and comments.
1960         Suggested by Bruno Haible.
1961
1962 2007-10-22  Bruno Haible  <bruno@clisp.org>
1963
1964         * lib/acl.c (copy_acl): Fix file name in comment.
1965
1966 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
1967
1968         Fix Tru64 problem with stdbool.h.
1969         * lib/stdbool.in.h (false, true):
1970         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
1971         Don't declare as an enum in this situation; it runs afoul of Tru64.
1972         Problem reported by Steven M. Schweda in
1973         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
1974
1975 2007-10-22  Eric Blake  <ebb9@byu.net>
1976
1977         Also wrap vf?printf.
1978         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
1979         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
1980         (xvprintf, xvfprintf): New functions.
1981
1982 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1983
1984         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
1985         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
1986
1987         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
1988         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
1989
1990 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
1991
1992         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
1993         by Bruno Haible.
1994
1995 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1996
1997         * lib/getloadavg.c
1998         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
1999         Undef `sys' after including sys/table.h, for Tru64 4.0D.
2000
2001         * tests/test-i-ring.c: Work for C89.
2002
2003 2007-10-22  Bruno Haible  <bruno@clisp.org>
2004
2005         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
2006         -1u, in preprocessor expression, so that we don't test for the bug
2007         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
2008         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
2009
2010 2007-10-22  Eric Blake  <ebb9@byu.net>
2011
2012         * tests/test-yesno.sh: Silence stderr during test.
2013
2014 2007-10-22  Simon Josefsson  <simon@josefsson.org>
2015
2016         * modules/crypto/gc-camellia: New file.
2017
2018         * m4/gc-camellia.m4: New file.
2019
2020         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
2021
2022         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
2023
2024 2007-10-22  Simon Josefsson  <simon@josefsson.org>
2025
2026         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
2027         --help to stdout.  Reported by sms@antinode.org (Steven
2028         M. Schweda).
2029
2030 2007-10-22  Simon Josefsson  <simon@josefsson.org>
2031
2032         * users.txt: Fix link to libksba.
2033
2034 2007-10-21  Ben Pfaff  <blp@gnu.org>
2035
2036         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
2037         round.c roundf implementation that depends on floorf and ceilf to
2038         be tested unconditionally.
2039
2040 2007-10-21  Ben Pfaff  <blp@gnu.org>
2041
2042         * m4/check-libm-func.m4: Removed.
2043         * m4/check-math-lib.m4: New file.
2044         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
2045         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
2046         definition and lack of AC_LIBOBJ([roundf]).
2047         * m4/roundl.m4: Ditto, and similarly for roundl.
2048         * modules/round: Reference new m4 file.
2049         * modules/roundf: Ditto.
2050         * modules/roundl: Ditto.
2051         * tests/test-round2.c (main): Use ROUND instead of round.
2052         Bug report from Bruno Haible.
2053
2054 2007-10-21  Bruno Haible  <bruno@clisp.org>
2055
2056         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
2057         context.
2058
2059 2007-10-21  Bruno Haible  <bruno@clisp.org>
2060
2061         * tests/test-wcwidth.c (main): Allow negative result for some control
2062         characters.
2063
2064         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
2065         Needed on OSF/1 5.1.
2066
2067 2007-10-21  Bruno Haible  <bruno@clisp.org>
2068
2069         * tests/test-floorf1.c: Include isnanf.h.
2070         (main): Use isnanf() instead of isnan().
2071         * tests/test-ceilf1.c: Include isnanf.h.
2072         (main): Use isnanf() instead of isnan().
2073         * tests/test-truncf1.c: Include isnanf.h.
2074         (main): Use isnanf() instead of isnan().
2075         * tests/test-roundf1.c: Include isnanf.h.
2076         (main): Use isnanf() instead of isnan().
2077
2078 2007-10-21  Eric Blake  <ebb9@byu.net>
2079
2080         * users.txt: Update URL for m4.
2081
2082 2007-10-21  Bruno Haible  <bruno@clisp.org>
2083
2084         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
2085
2086 2007-10-21  Bruno Haible  <bruno@clisp.org>
2087
2088         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
2089         Git's management files if the CVS files are not present.
2090
2091 2007-10-20  Bruno Haible  <bruno@clisp.org>
2092
2093         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
2094         gcc-3.4.x.
2095
2096 2007-10-20  Ben Pfaff  <blp@gnu.org>
2097
2098         * lib/math.in.h: Declare round, roundf, roundl if we are providing
2099         implementations.
2100         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
2101         * lib/round.c: New file.
2102         * lib/roundf.c: New file.
2103         * lib/roundl.c: New file.
2104         * m4/round.m4: New file.
2105         * m4/roundf.m4: New file.
2106         * m4/roundl.m4: New file.
2107         * m4/check-libm-func-m4: New file.
2108         * modules/math: Replace round, roundf, roundl related @VARS@ in
2109         math.in.h.
2110         * modules/round: New file.
2111         * modules/round-tests: New file.
2112         * modules/roundf: New file.
2113         * modules/roundf-tests: New file.
2114         * modules/roundl: New file.
2115         * modules/roundl-tests: New file.
2116         * tests/test-round1.c: New file.
2117         * tests/test-round2.c: New file.
2118         * tests/test-roundf1.c: New file.
2119         * tests/test-roundf2.c: New file.
2120         * tests/test-roundl.c: New file.
2121         * doc/functions/round.texi: Mention round module.
2122         * doc/functions/roundf.texi: Mention roundf module.
2123         * doc/functions/roundl.texi: Mention roundl module.
2124         * MODULES.html.sh: Mention new modules.
2125         Thanks to Bruno Haible for suggestions.
2126
2127 2007-10-20  Jim Meyering  <meyering@redhat.com>
2128
2129         * lib/xprintf.c: Include <config.h> unconditionally.
2130
2131         Change xprintf's license to GPL.
2132         * modules/xprintf (License): s/LGPL/GPL/, since this module
2133         depends on modules (exit and exitfail) which are GPL.
2134         Suggestion from Bruno Haible.
2135
2136         xprintf fixes.
2137         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
2138         Use a clearer diagnostic.
2139         Patch from Bruno Haible.
2140
2141 2007-10-20  Bruno Haible  <bruno@clisp.org>
2142
2143         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
2144         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
2145         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2146
2147 2007-10-20  Bruno Haible  <bruno@clisp.org>
2148
2149         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
2150         precision in the comparison result > x - 1 or similar.
2151         * tests/test-ceilf2.c (correct_result_p): Likewise.
2152         * tests/test-truncf2.c (correct_result_p): Likewise.
2153         * tests/test-trunc2.c (correct_result_p): Likewise.
2154         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2155
2156 2007-10-20  Bruno Haible  <bruno@clisp.org>
2157
2158         * modules/ceil: New file.
2159         * m4/ceil.m4: New file.
2160         * doc/functions/ceil.texi: Mention the 'ceil' module.
2161
2162 2007-10-20  Bruno Haible  <bruno@clisp.org>
2163
2164         * modules/floor: New file.
2165         * m4/floor.m4: New file.
2166         * doc/functions/floor.texi: Mention the 'floor' module.
2167
2168 2007-10-20  Bruno Haible  <bruno@clisp.org>
2169
2170         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
2171         of %a.
2172         * modules/floorf-tests (Depends-on): Likewise.
2173         * modules/truncf-tests (Depends-on): Likewise.
2174         * modules/trunc-tests (Depends-on): Likewise.
2175         Reported by Ben Pfaff.
2176
2177 2007-10-19  Jim Meyering  <meyering@redhat.com>
2178
2179         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
2180         Don't bother testing specific errno values.  Just test ferror.
2181
2182         New module: xprintf
2183         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
2184
2185 2007-10-19  Bruno Haible  <bruno@clisp.org>
2186
2187         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
2188         syntax.
2189         * modules/javaexec (Makefile.am): Likewise.
2190         * modules/relocatable-prog (Makefile.am): Likewise.
2191         Suggested by Jim Meyering.
2192
2193 2007-10-18  Bruno Haible  <bruno@clisp.org>
2194
2195         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
2196         Reported by Jim Meyering.
2197
2198 2007-10-18  Eric Blake  <ebb9@byu.net>
2199
2200         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
2201
2202 2007-10-18  Bruno Haible  <bruno@clisp.org>
2203
2204         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
2205         the format string into writable memory. Needed in Fortify conditions.
2206
2207 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
2208             Bruno Haible  <bruno@clisp.org>
2209
2210         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
2211         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
2212         * modules/trim (Depends-on): Add mbchar.
2213         (configure.ac): Add gl_FUNC_MBRTOWC.
2214         (Makefile.am): Augment lib_SOURCES.
2215
2216 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
2217
2218         Modify glob.c to use fstatat and dirfd, to simplify it.
2219         Suggested by Eric Blake.
2220         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
2221         Don't include <stdbool.h>; not used.
2222         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
2223         (link_exists_p): Simplify implementation, since we can now assume
2224         dirfd and fstatat.
2225         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
2226
2227 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2228
2229         * gnulib-tool (func_get_dependencies): Fix sed script to
2230         match only tests.
2231
2232 2007-10-17  Bruno Haible  <bruno@clisp.org>
2233
2234         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
2235         allow locale names without encoding suffix.
2236         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
2237         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
2238
2239 2007-10-16  Bruno Haible  <bruno@clisp.org>
2240
2241         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
2242         * lib/getgroups.c (getgroups): Likewise.
2243         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
2244
2245 2007-10-16  Bruno Haible  <bruno@clisp.org>
2246
2247         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
2248         * modules/malloc-posix (License): Likewise.
2249         * modules/realloc-posix (License): Likewise.
2250         * modules/calloc-posix (License): Likewise.
2251         * modules/intprops (License): Change from GPL to LGPL, with
2252         Paul Eggert's approval.
2253
2254 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
2255
2256         Merge glibc changes into lib/glob.c.
2257
2258         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
2259         2007-10-15 04:59:03 UTC.  Here are the changes:
2260
2261         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
2262
2263         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
2264
2265         * lib/glob.c: Add some branch prediction throughout.
2266
2267         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
2268
2269         [BZ #5103]
2270         * lib/glob.c (glob): Recognize patterns starting \/.
2271
2272         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
2273
2274         [BZ #3996]
2275         * lib/glob.c (attribute_hidden): Define if not defined.
2276         (glob): Unescape dirname, filename or username when needed and not
2277         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
2278         is NULL.  Handle unescaped [ in pattern without closing ].
2279         Don't pass GLOB_CHECK down to recursive glob for directories.
2280         (__glob_pattern_type): New function.
2281         (__glob_pattern_p): Implement using __glob_pattern_type.
2282         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
2283         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
2284         Remove unreachable code.
2285
2286         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
2287
2288         * lib/glob.c (glob_in_dir): Add some comments and asserts to
2289         explain why there are no leaks.
2290
2291         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
2292
2293         [BZ #3253]
2294         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
2295         time, rather allocate increasingly bigger arrays of pointers, if
2296         possible with alloca, if too large with malloc.
2297
2298 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
2299
2300         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
2301         Problem reported by H.Merijn Brand in
2302         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
2303         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
2304         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
2305
2306 2007-10-15  Bruno Haible  <bruno@clisp.org>
2307
2308         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
2309         with explicit rpl_ prefix.
2310         * lib/fopen.c (fopen): Likewise.
2311         * lib/freopen.c (freopen): Likewise.
2312         * lib/iconv.c (iconv): Likewise.
2313         * lib/iconv_close.c (iconv_close): Likewise.
2314
2315 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2316
2317         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
2318
2319 2007-10-15  Bruno Haible  <bruno@clisp.org>
2320
2321         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
2322         <stddef.h> instead of <stdlib.h> since we only need NULL.
2323         Reported by Ben Pfaff <blp@cs.stanford.edu>.
2324
2325 2007-10-15  Bruno Haible  <bruno@clisp.org>
2326
2327         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
2328         Replace paragraph talking about LIBOBJS.
2329         Reported by Colin Watson <cjwatson@debian.org>.
2330
2331 2007-10-15  Bruno Haible  <bruno@clisp.org>
2332
2333         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
2334         <stdlib.h> before using NULL.
2335
2336 2007-10-15  Simon Josefsson  <simon@josefsson.org>
2337
2338         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
2339         Reported by Albert Chin <china@thewrittenword.com>.
2340
2341 2007-10-14  Bruno Haible  <bruno@clisp.org>
2342
2343         * modules/iconv_open-utf-tests: New file.
2344         * tests/test-iconv-utf.c: New file.
2345
2346         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
2347         * modules/iconv_open-utf: New file.
2348         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
2349         (iconv, iconv_close): New declarations.
2350         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
2351         be defined.
2352         (iconv_open): Add special handling of conversion between UTF-8 and
2353         UTF-{16,32}{BE,LE}.
2354         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
2355         * lib/iconv_close.c: New file.
2356         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
2357         gl_FUNC_ICONV_OPEN.
2358         (gl_FUNC_ICONV_OPEN): Use it.
2359         (gl_FUNC_ICONV_OPEN_UTF): New macro.
2360         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
2361         and REPLACE_ICONV_UTF.
2362         * modules/iconv_open (Depends-on): Add c-strcase.
2363         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
2364         ICONV_CONST.
2365         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
2366
2367 2007-10-13  Albert Chin  <china@thewrittenword.com>
2368             Bruno Haible  <bruno@clisp.org>
2369
2370         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
2371         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
2372
2373 2007-10-13  Bruno Haible  <bruno@clisp.org>
2374
2375         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
2376         defined, use the ISO C99 inline semantics.
2377         * lib/argp.h (ARGP_EI): Likewise.
2378
2379 2007-10-13  Bruno Haible  <bruno@clisp.org>
2380
2381         Handle 'inline' change in gcc 4.3.0.
2382         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
2383         argp_fmtstream_write, argp_fmtstream_set_lmargin,
2384         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
2385         argp_fmtstream_point): Disable 'extern' declaration if the function
2386         definition is going to be provided inline.
2387         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
2388         semantics, not the ISO C99 inline semantics.
2389         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
2390         'extern' declaration if the function definition is going to be provided
2391         inline.
2392         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
2393         the GNU C inline semantics, not the ISO C99 inline semantics. With
2394         GCC 4.2, avoid a warning.
2395
2396 2007-10-13  Bruno Haible  <bruno@clisp.org>
2397
2398         * lib/freading.h (freading): Enable the use of __freading for
2399         glibc >= 2.7.
2400         * lib/freading.c (freading): Likewise.
2401
2402 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
2403
2404         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
2405         "warning: C99 inline functions are not supported; using GNU89".
2406
2407 2007-10-12  Bruno Haible  <bruno@clisp.org>
2408
2409         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
2410         of 2.
2411         * tests/test-ceilf2.c: New file.
2412         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
2413
2414         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
2415         * modules/ceilf-tests: Update.
2416
2417 2007-10-12  Bruno Haible  <bruno@clisp.org>
2418
2419         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
2420         of 2.
2421         * tests/test-floorf2.c: New file.
2422         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
2423
2424         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
2425         * modules/floorf-tests: Update.
2426
2427 2007-10-12  Bruno Haible  <bruno@clisp.org>
2428
2429         * tests/test-trunc2.c: New file.
2430         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
2431
2432         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
2433         * modules/trunc-tests: Update.
2434
2435 2007-10-12  Bruno Haible  <bruno@clisp.org>
2436
2437         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
2438         of 2.
2439         * tests/test-truncf2.c: New file.
2440         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
2441
2442         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
2443         * modules/truncf-tests: Update.
2444
2445 2007-10-11  Eric Blake  <ebb9@byu.net>
2446
2447         Don't claim strerror is broken on Interix.
2448         * doc/functions/strerror.texi (strerror): Known broken systems are
2449         now Solaris 8, and not Interix.
2450         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
2451         Interix on cross-compile.
2452         Reported by Martin Koeppe in
2453         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
2454
2455 2007-10-11  Bruno Haible  <bruno@clisp.org>
2456
2457         * modules/i-ring-tests: New file.
2458         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
2459         instead of assert.
2460
2461 2007-10-11  Bruno Haible  <bruno@clisp.org>
2462
2463         * modules/filenamecat-tests: New file.
2464         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
2465         * lib/filenamecat.c: Remove test code.
2466
2467 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
2468
2469         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
2470
2471         * lib/strerror.c: Include <string.h> always, to test interface,
2472         and to remove the need for the dummy.
2473         Include intprops.h to compute width instead of doing it ourselves
2474         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
2475         (strerror): Define it to return NULL if there's no system strerror.
2476         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
2477         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
2478         ancient pre-strerror Unix systems well any more.  Saying "unknown
2479         system error" is enough.
2480         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
2481         simpler strerror.c implementation.
2482         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
2483         Simplify the tests to reflect the simpler strerror implementation.
2484         * modules/strerror (Depends-on): Add intprops.
2485
2486 2007-10-09  Eric Blake  <ebb9@byu.net>
2487
2488         Silence test-fpending.
2489         * modules/fpending-tests (Files): Add wrapper script.
2490         * tests/test-fpending.sh: New file.
2491
2492 2007-10-09  Bruno Haible  <bruno@clisp.org>
2493
2494         * MODULES.html.sh (func_module): Don't create a hyperlink for
2495         function names like 'printf_frexp'.
2496         (Misc): Add crc, memxor.
2497         (Characteristics of floating types): New section.
2498         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
2499         isnanf-nolibm, signbit, trunc, truncf, truncl.
2500         (Enhancements for ISO C 99 functions): New subsection Input/output.
2501         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
2502         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
2503         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
2504         (Compatibility checks for POSIX:2001 functions): Add clock-time.
2505         (Enhancements for POSIX:2001 functions): Add chdir-long.
2506         (File system functions): Add areadlink, chdir-safer, read-file.
2507         Remove cycle-check.
2508         (File system as inode set): New section.
2509         (Date and time): Add gethrxtime.
2510         (Multithreading): Add openmp.
2511         (Internationalization functions): Add localename.
2512         (Unicode string functions): Add unistr/u*-mbsnlen.
2513         (Support for maintaining and releasing projects): Add git-version-gen.
2514         (Lone files): Remove directories.
2515
2516 2007-10-08  Ben Pfaff  <blp@gnu.org>
2517
2518         * lib/xmalloca.h: Fix typo in comment.
2519
2520 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
2521
2522         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
2523         when avoiding problems with integer overflow.  Use a portable test
2524         instead.
2525
2526 2007-10-08  Simon Josefsson  <simon@josefsson.org>
2527
2528         * modules/dummy (License): Change to LGPLv2+.
2529         * modules/float (License): Likewise
2530         * modules/realloc (License): Likewise
2531         * modules/stdlib (License): Likewise
2532
2533 2007-10-07  Bruno Haible  <bruno@clisp.org>
2534
2535         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
2536         * floor.c (TWO_MANT_DIG): Likewise.
2537         * ceil.c (TWO_MANT_DIG): Likewise.
2538         Reported by Ben Pfaff.
2539
2540 2007-10-07  Bruno Haible  <bruno@clisp.org>
2541
2542         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
2543         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
2544         * lib/frexp.c (FUNC): Likewise.
2545         * lib/printf-frexp.h (printf_frexp): Likewise.
2546         * lib/printf-frexpl.h (printf_frexpl): Likewise.
2547         * lib/printf-frexp.c (FUNC): Likewise.
2548         Suggested by Jim Meyering.
2549
2550 2007-10-07  Jim Meyering  <meyering@redhat.com>
2551
2552         Make xnanosleep's integer overflow test more robust.
2553         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
2554         so that gcc-4.3.0 doesn't optimize away this test for overflow.
2555
2556 2007-10-07  Bruno Haible  <bruno@clisp.org>
2557
2558         * NEWS: Mention the license change.
2559
2560         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
2561         abbreviations in the modules files.
2562
2563         Change copyright notice from GPLv2+ to GPLv3+.
2564         * README: Change copyright notice.
2565         * MODULES.html.sh: Likewise.
2566         * build-aux/bootstrap.conf: Likewise.
2567         * build-aux/config.libpath: Likewise.
2568         * build-aux/csharpcomp.sh.in: Likewise.
2569         * build-aux/csharpexec.sh.in: Likewise.
2570         * build-aux/install-reloc: Likewise.
2571         * build-aux/javacomp.sh.in: Likewise.
2572         * build-aux/javaexec.sh.in: Likewise.
2573         * build-aux/ldd.sh.in: Likewise.
2574         * build-aux/reloc-ldflags: Likewise.
2575         * build-aux/relocatable.sh.in: Likewise.
2576         * build-aux/x-to-1.in: Likewise.
2577         * check-module: Likewise.
2578         * config/srclistvars.sh: Likewise.
2579         * gnulib-tool: Likewise.
2580         * lib/acl-internal.h: Likewise.
2581         * lib/acl.c: Likewise.
2582         * lib/acl.h: Likewise.
2583         * lib/acl_entries.c: Likewise.
2584         * lib/areadlink-with-size.c: Likewise.
2585         * lib/areadlink.c: Likewise.
2586         * lib/areadlink.h: Likewise.
2587         * lib/argmatch.c: Likewise.
2588         * lib/argmatch.h: Likewise.
2589         * lib/argp-ba.c: Likewise.
2590         * lib/argp-eexst.c: Likewise.
2591         * lib/argp-fmtstream.c: Likewise.
2592         * lib/argp-fmtstream.h: Likewise.
2593         * lib/argp-fs-xinl.c: Likewise.
2594         * lib/argp-help.c: Likewise.
2595         * lib/argp-namefrob.h: Likewise.
2596         * lib/argp-parse.c: Likewise.
2597         * lib/argp-pin.c: Likewise.
2598         * lib/argp-pv.c: Likewise.
2599         * lib/argp-pvh.c: Likewise.
2600         * lib/argp-xinl.c: Likewise.
2601         * lib/argp.h: Likewise.
2602         * lib/at-func.c: Likewise.
2603         * lib/atanl.c: Likewise.
2604         * lib/backupfile.c: Likewise.
2605         * lib/backupfile.h: Likewise.
2606         * lib/basename.c: Likewise.
2607         * lib/binary-io.h: Likewise.
2608         * lib/byteswap.in.h: Likewise.
2609         * lib/c-stack.c: Likewise.
2610         * lib/c-stack.h: Likewise.
2611         * lib/c-strcasestr.c: Likewise.
2612         * lib/c-strcasestr.h: Likewise.
2613         * lib/c-strstr.c: Likewise.
2614         * lib/c-strstr.h: Likewise.
2615         * lib/c-strtod.c: Likewise.
2616         * lib/calloc.c: Likewise.
2617         * lib/canon-host.c: Likewise.
2618         * lib/canon-host.h: Likewise.
2619         * lib/canonicalize-lgpl.c: Likewise.
2620         * lib/canonicalize.c: Likewise.
2621         * lib/canonicalize.h: Likewise.
2622         * lib/ceil.c: Likewise.
2623         * lib/ceilf.c: Likewise.
2624         * lib/ceill.c: Likewise.
2625         * lib/chdir-long.c: Likewise.
2626         * lib/chdir-long.h: Likewise.
2627         * lib/chdir-safer.c: Likewise.
2628         * lib/chdir-safer.h: Likewise.
2629         * lib/chown.c: Likewise.
2630         * lib/classpath.c: Likewise.
2631         * lib/classpath.h: Likewise.
2632         * lib/clean-temp.c: Likewise.
2633         * lib/clean-temp.h: Likewise.
2634         * lib/cloexec.c: Likewise.
2635         * lib/close-stream.c: Likewise.
2636         * lib/closein.c: Likewise.
2637         * lib/closein.h: Likewise.
2638         * lib/closeout.c: Likewise.
2639         * lib/closeout.h: Likewise.
2640         * lib/concat-filename.c: Likewise.
2641         * lib/copy-file.c: Likewise.
2642         * lib/copy-file.h: Likewise.
2643         * lib/count-one-bits.h: Likewise.
2644         * lib/crc.c: Likewise.
2645         * lib/crc.h: Likewise.
2646         * lib/creat-safer.c: Likewise.
2647         * lib/csharpcomp.c: Likewise.
2648         * lib/csharpcomp.h: Likewise.
2649         * lib/csharpexec.c: Likewise.
2650         * lib/csharpexec.h: Likewise.
2651         * lib/cycle-check.c: Likewise.
2652         * lib/cycle-check.h: Likewise.
2653         * lib/diacrit.c: Likewise.
2654         * lib/diacrit.h: Likewise.
2655         * lib/diffseq.h: Likewise.
2656         * lib/dirchownmod.c: Likewise.
2657         * lib/dirent.in.h: Likewise.
2658         * lib/dirfd.c: Likewise.
2659         * lib/dirfd.h: Likewise.
2660         * lib/dirname.c: Likewise.
2661         * lib/dirname.h: Likewise.
2662         * lib/dummy.c: Likewise.
2663         * lib/dup-safer.c: Likewise.
2664         * lib/dup2.c: Likewise.
2665         * lib/eealloc.h: Likewise.
2666         * lib/error.c: Likewise.
2667         * lib/error.h: Likewise.
2668         * lib/euidaccess.c: Likewise.
2669         * lib/exclude.c: Likewise.
2670         * lib/exclude.h: Likewise.
2671         * lib/execute.c: Likewise.
2672         * lib/execute.h: Likewise.
2673         * lib/exitfail.c: Likewise.
2674         * lib/exitfail.h: Likewise.
2675         * lib/expl.c: Likewise.
2676         * lib/fatal-signal.c: Likewise.
2677         * lib/fatal-signal.h: Likewise.
2678         * lib/fbufmode.c: Likewise.
2679         * lib/fbufmode.h: Likewise.
2680         * lib/fchdir.c: Likewise.
2681         * lib/fchmodat.c: Likewise.
2682         * lib/fchownat.c: Likewise.
2683         * lib/fcntl--.h: Likewise.
2684         * lib/fcntl-safer.h: Likewise.
2685         * lib/fcntl.in.h: Likewise.
2686         * lib/fd-safer.c: Likewise.
2687         * lib/fflush.c: Likewise.
2688         * lib/file-has-acl.c: Likewise.
2689         * lib/file-set.c: Likewise.
2690         * lib/file-type.c: Likewise.
2691         * lib/file-type.h: Likewise.
2692         * lib/fileblocks.c: Likewise.
2693         * lib/filemode.c: Likewise.
2694         * lib/filemode.h: Likewise.
2695         * lib/filename.h: Likewise.
2696         * lib/filenamecat.c: Likewise.
2697         * lib/filenamecat.h: Likewise.
2698         * lib/findprog.c: Likewise.
2699         * lib/findprog.h: Likewise.
2700         * lib/float.in.h: Likewise.
2701         * lib/floor.c: Likewise.
2702         * lib/floorf.c: Likewise.
2703         * lib/floorl.c: Likewise.
2704         * lib/fopen-safer.c: Likewise.
2705         * lib/fopen.c: Likewise.
2706         * lib/fpending.c: Likewise.
2707         * lib/fpending.h: Likewise.
2708         * lib/fprintf.c: Likewise.
2709         * lib/fprintftime.h: Likewise.
2710         * lib/fpucw.h: Likewise.
2711         * lib/fpurge.c: Likewise.
2712         * lib/fpurge.h: Likewise.
2713         * lib/freadable.c: Likewise.
2714         * lib/freadable.h: Likewise.
2715         * lib/freadahead.c: Likewise.
2716         * lib/freadahead.h: Likewise.
2717         * lib/freading.c: Likewise.
2718         * lib/freading.h: Likewise.
2719         * lib/free.c: Likewise.
2720         * lib/freopen.c: Likewise.
2721         * lib/frexp.c: Likewise.
2722         * lib/frexpl.c: Likewise.
2723         * lib/fseek.c: Likewise.
2724         * lib/fseterr.c: Likewise.
2725         * lib/fseterr.h: Likewise.
2726         * lib/fstatat.c: Likewise.
2727         * lib/fstrcmp.c: Likewise.
2728         * lib/fstrcmp.h: Likewise.
2729         * lib/fsusage.c: Likewise.
2730         * lib/fsusage.h: Likewise.
2731         * lib/ftell.c: Likewise.
2732         * lib/ftello.c: Likewise.
2733         * lib/fts-cycle.c: Likewise.
2734         * lib/fts.c: Likewise.
2735         * lib/fts_.h: Likewise.
2736         * lib/full-read.c: Likewise.
2737         * lib/full-read.h: Likewise.
2738         * lib/full-write.c: Likewise.
2739         * lib/full-write.h: Likewise.
2740         * lib/fwritable.c: Likewise.
2741         * lib/fwritable.h: Likewise.
2742         * lib/fwriteerror.c: Likewise.
2743         * lib/fwriteerror.h: Likewise.
2744         * lib/fwriting.c: Likewise.
2745         * lib/fwriting.h: Likewise.
2746         * lib/gcd.c: Likewise.
2747         * lib/gcd.h: Likewise.
2748         * lib/getcwd.c: Likewise.
2749         * lib/getdate.h: Likewise.
2750         * lib/getdate.y: Likewise.
2751         * lib/getdomainname.c: Likewise.
2752         * lib/getdomainname.h: Likewise.
2753         * lib/getgroups.c: Likewise.
2754         * lib/gethostname.c: Likewise.
2755         * lib/gethrxtime.c: Likewise.
2756         * lib/gethrxtime.h: Likewise.
2757         * lib/getloadavg.c: Likewise.
2758         * lib/getndelim2.c: Likewise.
2759         * lib/getndelim2.h: Likewise.
2760         * lib/getnline.c: Likewise.
2761         * lib/getnline.h: Likewise.
2762         * lib/getopt.c: Likewise.
2763         * lib/getopt.in.h: Likewise.
2764         * lib/getopt1.c: Likewise.
2765         * lib/getopt_int.h: Likewise.
2766         * lib/getpagesize.h: Likewise.
2767         * lib/getsubopt.c: Likewise.
2768         * lib/gettime.c: Likewise.
2769         * lib/getugroups.c: Likewise.
2770         * lib/getugroups.h: Likewise.
2771         * lib/getusershell.c: Likewise.
2772         * lib/gl_anyavltree_list1.h: Likewise.
2773         * lib/gl_anyavltree_list2.h: Likewise.
2774         * lib/gl_anyhash_list1.h: Likewise.
2775         * lib/gl_anyhash_list2.h: Likewise.
2776         * lib/gl_anylinked_list1.h: Likewise.
2777         * lib/gl_anylinked_list2.h: Likewise.
2778         * lib/gl_anyrbtree_list1.h: Likewise.
2779         * lib/gl_anyrbtree_list2.h: Likewise.
2780         * lib/gl_anytree_list1.h: Likewise.
2781         * lib/gl_anytree_list2.h: Likewise.
2782         * lib/gl_anytree_oset.h: Likewise.
2783         * lib/gl_anytreehash_list1.h: Likewise.
2784         * lib/gl_anytreehash_list2.h: Likewise.
2785         * lib/gl_array_list.c: Likewise.
2786         * lib/gl_array_list.h: Likewise.
2787         * lib/gl_array_oset.c: Likewise.
2788         * lib/gl_array_oset.h: Likewise.
2789         * lib/gl_avltree_list.c: Likewise.
2790         * lib/gl_avltree_list.h: Likewise.
2791         * lib/gl_avltree_oset.c: Likewise.
2792         * lib/gl_avltree_oset.h: Likewise.
2793         * lib/gl_avltreehash_list.c: Likewise.
2794         * lib/gl_avltreehash_list.h: Likewise.
2795         * lib/gl_carray_list.c: Likewise.
2796         * lib/gl_carray_list.h: Likewise.
2797         * lib/gl_linked_list.c: Likewise.
2798         * lib/gl_linked_list.h: Likewise.
2799         * lib/gl_linkedhash_list.c: Likewise.
2800         * lib/gl_linkedhash_list.h: Likewise.
2801         * lib/gl_list.c: Likewise.
2802         * lib/gl_list.h: Likewise.
2803         * lib/gl_oset.c: Likewise.
2804         * lib/gl_oset.h: Likewise.
2805         * lib/gl_rbtree_list.c: Likewise.
2806         * lib/gl_rbtree_list.h: Likewise.
2807         * lib/gl_rbtree_oset.c: Likewise.
2808         * lib/gl_rbtree_oset.h: Likewise.
2809         * lib/gl_rbtreehash_list.c: Likewise.
2810         * lib/gl_rbtreehash_list.h: Likewise.
2811         * lib/gl_sublist.c: Likewise.
2812         * lib/gl_sublist.h: Likewise.
2813         * lib/group-member.c: Likewise.
2814         * lib/group-member.h: Likewise.
2815         * lib/hard-locale.c: Likewise.
2816         * lib/hard-locale.h: Likewise.
2817         * lib/hash-pjw.c: Likewise.
2818         * lib/hash-pjw.h: Likewise.
2819         * lib/hash-triple.c: Likewise.
2820         * lib/hash.c: Likewise.
2821         * lib/hash.h: Likewise.
2822         * lib/human.c: Likewise.
2823         * lib/human.h: Likewise.
2824         * lib/i-ring.c: Likewise.
2825         * lib/i-ring.h: Likewise.
2826         * lib/idcache.c: Likewise.
2827         * lib/imaxabs.c: Likewise.
2828         * lib/imaxdiv.c: Likewise.
2829         * lib/inet_pton.c: Likewise.
2830         * lib/inet_pton.h: Likewise.
2831         * lib/intprops.h: Likewise.
2832         * lib/inttostr.c: Likewise.
2833         * lib/inttostr.h: Likewise.
2834         * lib/inttypes.in.h: Likewise.
2835         * lib/isapipe.c: Likewise.
2836         * lib/isdir.c: Likewise.
2837         * lib/isnan.c: Likewise.
2838         * lib/isnan.h: Likewise.
2839         * lib/isnanf.c: Likewise.
2840         * lib/isnanf.h: Likewise.
2841         * lib/isnanl-nolibm.h: Likewise.
2842         * lib/isnanl.c: Likewise.
2843         * lib/isnanl.h: Likewise.
2844         * lib/javacomp.c: Likewise.
2845         * lib/javacomp.h: Likewise.
2846         * lib/javaexec.c: Likewise.
2847         * lib/javaexec.h: Likewise.
2848         * lib/javaversion.c: Likewise.
2849         * lib/javaversion.h: Likewise.
2850         * lib/javaversion.java: Likewise.
2851         * lib/lbrkprop.h: Likewise.
2852         * lib/lchmod.h: Likewise.
2853         * lib/lchown.c: Likewise.
2854         * lib/ldexpl.c: Likewise.
2855         * lib/linebreak.c: Likewise.
2856         * lib/linebreak.h: Likewise.
2857         * lib/linebuffer.c: Likewise.
2858         * lib/linebuffer.h: Likewise.
2859         * lib/locale.in.h: Likewise.
2860         * lib/logl.c: Likewise.
2861         * lib/long-options.c: Likewise.
2862         * lib/long-options.h: Likewise.
2863         * lib/lstat.c: Likewise.
2864         * lib/lstat.h: Likewise.
2865         * lib/math.in.h: Likewise.
2866         * lib/mbchar.c: Likewise.
2867         * lib/mbchar.h: Likewise.
2868         * lib/mbfile.h: Likewise.
2869         * lib/mbiter.h: Likewise.
2870         * lib/mbscasecmp.c: Likewise.
2871         * lib/mbscasestr.c: Likewise.
2872         * lib/mbschr.c: Likewise.
2873         * lib/mbscspn.c: Likewise.
2874         * lib/mbslen.c: Likewise.
2875         * lib/mbsncasecmp.c: Likewise.
2876         * lib/mbsnlen.c: Likewise.
2877         * lib/mbspbrk.c: Likewise.
2878         * lib/mbspcasecmp.c: Likewise.
2879         * lib/mbsrchr.c: Likewise.
2880         * lib/mbssep.c: Likewise.
2881         * lib/mbsspn.c: Likewise.
2882         * lib/mbsstr.c: Likewise.
2883         * lib/mbstok_r.c: Likewise.
2884         * lib/mbswidth.c: Likewise.
2885         * lib/mbswidth.h: Likewise.
2886         * lib/mbuiter.h: Likewise.
2887         * lib/memcasecmp.c: Likewise.
2888         * lib/memcasecmp.h: Likewise.
2889         * lib/memchr.c: Likewise.
2890         * lib/memcmp.c: Likewise.
2891         * lib/memcoll.c: Likewise.
2892         * lib/memcoll.h: Likewise.
2893         * lib/memcpy.c: Likewise.
2894         * lib/memrchr.c: Likewise.
2895         * lib/mkancesdirs.c: Likewise.
2896         * lib/mkdir-p.c: Likewise.
2897         * lib/mkdir-p.h: Likewise.
2898         * lib/mkdir.c: Likewise.
2899         * lib/mkdirat.c: Likewise.
2900         * lib/mkdtemp.c: Likewise.
2901         * lib/mkstemp-safer.c: Likewise.
2902         * lib/mkstemp.c: Likewise.
2903         * lib/modechange.c: Likewise.
2904         * lib/modechange.h: Likewise.
2905         * lib/mountlist.c: Likewise.
2906         * lib/mountlist.h: Likewise.
2907         * lib/mpsort.c: Likewise.
2908         * lib/nanosleep.c: Likewise.
2909         * lib/obstack.c: Likewise.
2910         * lib/obstack.h: Likewise.
2911         * lib/open-safer.c: Likewise.
2912         * lib/open.c: Likewise.
2913         * lib/openat-die.c: Likewise.
2914         * lib/openat-priv.h: Likewise.
2915         * lib/openat-proc.c: Likewise.
2916         * lib/openat.c: Likewise.
2917         * lib/openat.h: Likewise.
2918         * lib/pagealign_alloc.c: Likewise.
2919         * lib/pagealign_alloc.h: Likewise.
2920         * lib/physmem.c: Likewise.
2921         * lib/physmem.h: Likewise.
2922         * lib/pipe-safer.c: Likewise.
2923         * lib/pipe.c: Likewise.
2924         * lib/pipe.h: Likewise.
2925         * lib/posixtm.c: Likewise.
2926         * lib/posixtm.h: Likewise.
2927         * lib/posixver.c: Likewise.
2928         * lib/printf-frexp.c: Likewise.
2929         * lib/printf-frexp.h: Likewise.
2930         * lib/printf-frexpl.c: Likewise.
2931         * lib/printf-frexpl.h: Likewise.
2932         * lib/printf.c: Likewise.
2933         * lib/progname.c: Likewise.
2934         * lib/progname.h: Likewise.
2935         * lib/progreloc.c: Likewise.
2936         * lib/putenv.c: Likewise.
2937         * lib/quote.c: Likewise.
2938         * lib/quote.h: Likewise.
2939         * lib/quotearg.c: Likewise.
2940         * lib/quotearg.h: Likewise.
2941         * lib/raise.c: Likewise.
2942         * lib/readline.c: Likewise.
2943         * lib/readline.h: Likewise.
2944         * lib/readlink.c: Likewise.
2945         * lib/readtokens.c: Likewise.
2946         * lib/readtokens.h: Likewise.
2947         * lib/readtokens0.c: Likewise.
2948         * lib/readtokens0.h: Likewise.
2949         * lib/readutmp.c: Likewise.
2950         * lib/readutmp.h: Likewise.
2951         * lib/realloc.c: Likewise.
2952         * lib/relocwrapper.c: Likewise.
2953         * lib/rename-dest-slash.c: Likewise.
2954         * lib/rename.c: Likewise.
2955         * lib/rmdir.c: Likewise.
2956         * lib/rpmatch.c: Likewise.
2957         * lib/safe-read.c: Likewise.
2958         * lib/safe-read.h: Likewise.
2959         * lib/safe-write.c: Likewise.
2960         * lib/safe-write.h: Likewise.
2961         * lib/same-inode.h: Likewise.
2962         * lib/same.c: Likewise.
2963         * lib/same.h: Likewise.
2964         * lib/save-cwd.c: Likewise.
2965         * lib/save-cwd.h: Likewise.
2966         * lib/savedir.c: Likewise.
2967         * lib/savedir.h: Likewise.
2968         * lib/savewd.c: Likewise.
2969         * lib/savewd.h: Likewise.
2970         * lib/search.in.h: Likewise.
2971         * lib/setenv.c: Likewise.
2972         * lib/setenv.h: Likewise.
2973         * lib/settime.c: Likewise.
2974         * lib/sh-quote.c: Likewise.
2975         * lib/sh-quote.h: Likewise.
2976         * lib/sig2str.c: Likewise.
2977         * lib/sig2str.h: Likewise.
2978         * lib/signal.in.h: Likewise.
2979         * lib/signbitd.c: Likewise.
2980         * lib/signbitf.c: Likewise.
2981         * lib/signbitl.c: Likewise.
2982         * lib/sigprocmask.c: Likewise.
2983         * lib/sincosl.c: Likewise.
2984         * lib/sleep.c: Likewise.
2985         * lib/sprintf.c: Likewise.
2986         * lib/sqrtl.c: Likewise.
2987         * lib/stat-time.h: Likewise.
2988         * lib/stdio--.h: Likewise.
2989         * lib/stdio-safer.h: Likewise.
2990         * lib/stdlib--.h: Likewise.
2991         * lib/stdlib-safer.h: Likewise.
2992         * lib/stdlib.in.h: Likewise.
2993         * lib/stpcpy.c: Likewise.
2994         * lib/stpncpy.c: Likewise.
2995         * lib/strchrnul.c: Likewise.
2996         * lib/strcspn.c: Likewise.
2997         * lib/strerror.c: Likewise.
2998         * lib/strftime.c: Likewise.
2999         * lib/strftime.h: Likewise.
3000         * lib/striconveh.c: Likewise.
3001         * lib/striconveh.h: Likewise.
3002         * lib/striconveha.c: Likewise.
3003         * lib/striconveha.h: Likewise.
3004         * lib/stripslash.c: Likewise.
3005         * lib/strnlen1.c: Likewise.
3006         * lib/strnlen1.h: Likewise.
3007         * lib/strtod.c: Likewise.
3008         * lib/strtoimax.c: Likewise.
3009         * lib/strtok_r.c: Likewise.
3010         * lib/strtol.c: Likewise.
3011         * lib/strtoll.c: Likewise.
3012         * lib/strtoul.c: Likewise.
3013         * lib/strtoull.c: Likewise.
3014         * lib/sysexits.in.h: Likewise.
3015         * lib/tempname.c: Likewise.
3016         * lib/tempname.h: Likewise.
3017         * lib/timespec.h: Likewise.
3018         * lib/tls.c: Likewise.
3019         * lib/tls.h: Likewise.
3020         * lib/tmpdir.c: Likewise.
3021         * lib/tmpdir.h: Likewise.
3022         * lib/tmpfile-safer.c: Likewise.
3023         * lib/tmpfile.c: Likewise.
3024         * lib/trigl.c: Likewise.
3025         * lib/trigl.h: Likewise.
3026         * lib/trim.c: Likewise.
3027         * lib/trim.h: Likewise.
3028         * lib/trunc.c: Likewise.
3029         * lib/truncf.c: Likewise.
3030         * lib/truncl.c: Likewise.
3031         * lib/tsearch.c: Likewise.
3032         * lib/unicodeio.c: Likewise.
3033         * lib/unicodeio.h: Likewise.
3034         * lib/unistd--.h: Likewise.
3035         * lib/unistd-safer.h: Likewise.
3036         * lib/unistdio/ulc-fprintf.c: Likewise.
3037         * lib/unistdio/ulc-vfprintf.c: Likewise.
3038         * lib/unlinkdir.c: Likewise.
3039         * lib/unlinkdir.h: Likewise.
3040         * lib/unlocked-io.h: Likewise.
3041         * lib/unsetenv.c: Likewise.
3042         * lib/userspec.c: Likewise.
3043         * lib/utime.c: Likewise.
3044         * lib/utimecmp.c: Likewise.
3045         * lib/utimecmp.h: Likewise.
3046         * lib/utimens.c: Likewise.
3047         * lib/verify.h: Likewise.
3048         * lib/verror.c: Likewise.
3049         * lib/verror.h: Likewise.
3050         * lib/version-etc-fsf.c: Likewise.
3051         * lib/version-etc.c: Likewise.
3052         * lib/version-etc.h: Likewise.
3053         * lib/vfprintf.c: Likewise.
3054         * lib/vprintf.c: Likewise.
3055         * lib/vsprintf.c: Likewise.
3056         * lib/w32spawn.h: Likewise.
3057         * lib/wait-process.c: Likewise.
3058         * lib/wait-process.h: Likewise.
3059         * lib/wcwidth.c: Likewise.
3060         * lib/write-any-file.c: Likewise.
3061         * lib/xalloc-die.c: Likewise.
3062         * lib/xalloc.h: Likewise.
3063         * lib/xasprintf.c: Likewise.
3064         * lib/xgetcwd.c: Likewise.
3065         * lib/xgetcwd.h: Likewise.
3066         * lib/xgetdomainname.c: Likewise.
3067         * lib/xgetdomainname.h: Likewise.
3068         * lib/xgethostname.c: Likewise.
3069         * lib/xmalloc.c: Likewise.
3070         * lib/xmalloca.c: Likewise.
3071         * lib/xmalloca.h: Likewise.
3072         * lib/xmemcoll.c: Likewise.
3073         * lib/xnanosleep.c: Likewise.
3074         * lib/xreadlink.c: Likewise.
3075         * lib/xreadlink.h: Likewise.
3076         * lib/xsetenv.c: Likewise.
3077         * lib/xsetenv.h: Likewise.
3078         * lib/xstriconv.c: Likewise.
3079         * lib/xstriconv.h: Likewise.
3080         * lib/xstrndup.c: Likewise.
3081         * lib/xstrndup.h: Likewise.
3082         * lib/xstrtod.c: Likewise.
3083         * lib/xstrtod.h: Likewise.
3084         * lib/xstrtol-error.c: Likewise.
3085         * lib/xstrtol.c: Likewise.
3086         * lib/xstrtol.h: Likewise.
3087         * lib/xtime.h: Likewise.
3088         * lib/xvasprintf.c: Likewise.
3089         * lib/xvasprintf.h: Likewise.
3090         * lib/yesno.c: Likewise.
3091         * lib/yesno.h: Likewise.
3092         * posix-modules: Likewise.
3093         * tests/test-alloca-opt.c: Likewise.
3094         * tests/test-arcfour.c: Likewise.
3095         * tests/test-arctwo.c: Likewise.
3096         * tests/test-argmatch.c: Likewise.
3097         * tests/test-argp-2.sh: Likewise.
3098         * tests/test-argp.c: Likewise.
3099         * tests/test-arpa_inet.c: Likewise.
3100         * tests/test-array_list.c: Likewise.
3101         * tests/test-array_oset.c: Likewise.
3102         * tests/test-atexit.c: Likewise.
3103         * tests/test-avltree_list.c: Likewise.
3104         * tests/test-avltree_oset.c: Likewise.
3105         * tests/test-avltreehash_list.c: Likewise.
3106         * tests/test-base64.c: Likewise.
3107         * tests/test-binary-io.c: Likewise.
3108         * tests/test-byteswap.c: Likewise.
3109         * tests/test-c-ctype.c: Likewise.
3110         * tests/test-c-strcasecmp.c: Likewise.
3111         * tests/test-c-strcasestr.c: Likewise.
3112         * tests/test-c-strncasecmp.c: Likewise.
3113         * tests/test-c-strstr.c: Likewise.
3114         * tests/test-canonicalize-lgpl.c: Likewise.
3115         * tests/test-canonicalize.c: Likewise.
3116         * tests/test-carray_list.c: Likewise.
3117         * tests/test-ceilf.c: Likewise.
3118         * tests/test-ceill.c: Likewise.
3119         * tests/test-count-one-bits.c: Likewise.
3120         * tests/test-crc.c: Likewise.
3121         * tests/test-dirname.c: Likewise.
3122         * tests/test-fbufmode.c: Likewise.
3123         * tests/test-fcntl.c: Likewise.
3124         * tests/test-fflush.c: Likewise.
3125         * tests/test-floorf.c: Likewise.
3126         * tests/test-floorl.c: Likewise.
3127         * tests/test-fopen.c: Likewise.
3128         * tests/test-fprintf-posix.c: Likewise.
3129         * tests/test-fprintf-posix.h: Likewise.
3130         * tests/test-fpurge.c: Likewise.
3131         * tests/test-freadable.c: Likewise.
3132         * tests/test-freadahead.c: Likewise.
3133         * tests/test-freading.c: Likewise.
3134         * tests/test-freopen.c: Likewise.
3135         * tests/test-frexp.c: Likewise.
3136         * tests/test-frexpl.c: Likewise.
3137         * tests/test-fseek.c: Likewise.
3138         * tests/test-fseeko.c: Likewise.
3139         * tests/test-fseterr.c: Likewise.
3140         * tests/test-fstrcmp.c: Likewise.
3141         * tests/test-ftell.c: Likewise.
3142         * tests/test-ftello.c: Likewise.
3143         * tests/test-fwritable.c: Likewise.
3144         * tests/test-fwriting.c: Likewise.
3145         * tests/test-getaddrinfo.c: Likewise.
3146         * tests/test-getpass.c: Likewise.
3147         * tests/test-gettimeofday.c: Likewise.
3148         * tests/test-hmac-md5.c: Likewise.
3149         * tests/test-hmac-sha1.c: Likewise.
3150         * tests/test-iconv.c: Likewise.
3151         * tests/test-iconvme.c: Likewise.
3152         * tests/test-inttypes.c: Likewise.
3153         * tests/test-isnan.c: Likewise.
3154         * tests/test-isnanf.c: Likewise.
3155         * tests/test-isnanl-nolibm.c: Likewise.
3156         * tests/test-isnanl.c: Likewise.
3157         * tests/test-isnanl.h: Likewise.
3158         * tests/test-ldexpl.c: Likewise.
3159         * tests/test-linked_list.c: Likewise.
3160         * tests/test-linkedhash_list.c: Likewise.
3161         * tests/test-locale.c: Likewise.
3162         * tests/test-localename.c: Likewise.
3163         * tests/test-lock.c: Likewise.
3164         * tests/test-lseek.c: Likewise.
3165         * tests/test-malloca.c: Likewise.
3166         * tests/test-math.c: Likewise.
3167         * tests/test-mbscasecmp.c: Likewise.
3168         * tests/test-mbscasestr1.c: Likewise.
3169         * tests/test-mbscasestr2.c: Likewise.
3170         * tests/test-mbscasestr3.c: Likewise.
3171         * tests/test-mbscasestr4.c: Likewise.
3172         * tests/test-mbschr.c: Likewise.
3173         * tests/test-mbscspn.c: Likewise.
3174         * tests/test-mbsncasecmp.c: Likewise.
3175         * tests/test-mbspbrk.c: Likewise.
3176         * tests/test-mbspcasecmp.c: Likewise.
3177         * tests/test-mbsrchr.c: Likewise.
3178         * tests/test-mbsspn.c: Likewise.
3179         * tests/test-mbsstr1.c: Likewise.
3180         * tests/test-mbsstr2.c: Likewise.
3181         * tests/test-mbsstr3.c: Likewise.
3182         * tests/test-md5.c: Likewise.
3183         * tests/test-memmem.c: Likewise.
3184         * tests/test-netinet_in.c: Likewise.
3185         * tests/test-open.c: Likewise.
3186         * tests/test-printf-frexp.c: Likewise.
3187         * tests/test-printf-frexpl.c: Likewise.
3188         * tests/test-printf-posix.c: Likewise.
3189         * tests/test-printf-posix.h: Likewise.
3190         * tests/test-rbtree_list.c: Likewise.
3191         * tests/test-rbtree_oset.c: Likewise.
3192         * tests/test-rbtreehash_list.c: Likewise.
3193         * tests/test-read-file.c: Likewise.
3194         * tests/test-rijndael.c: Likewise.
3195         * tests/test-search.c: Likewise.
3196         * tests/test-signbit.c: Likewise.
3197         * tests/test-sleep.c: Likewise.
3198         * tests/test-snprintf-posix.c: Likewise.
3199         * tests/test-snprintf-posix.h: Likewise.
3200         * tests/test-snprintf.c: Likewise.
3201         * tests/test-sprintf-posix.c: Likewise.
3202         * tests/test-sprintf-posix.h: Likewise.
3203         * tests/test-stat-time.c: Likewise.
3204         * tests/test-stdbool.c: Likewise.
3205         * tests/test-stdint.c: Likewise.
3206         * tests/test-stdio.c: Likewise.
3207         * tests/test-stdlib.c: Likewise.
3208         * tests/test-stpncpy.c: Likewise.
3209         * tests/test-strcasestr.c: Likewise.
3210         * tests/test-striconv.c: Likewise.
3211         * tests/test-striconveh.c: Likewise.
3212         * tests/test-striconveha.c: Likewise.
3213         * tests/test-string.c: Likewise.
3214         * tests/test-sys_select.c: Likewise.
3215         * tests/test-sys_socket.c: Likewise.
3216         * tests/test-sys_stat.c: Likewise.
3217         * tests/test-sys_time.c: Likewise.
3218         * tests/test-sysexits.c: Likewise.
3219         * tests/test-time.c: Likewise.
3220         * tests/test-tls.c: Likewise.
3221         * tests/test-trunc.c: Likewise.
3222         * tests/test-truncf.c: Likewise.
3223         * tests/test-truncl.c: Likewise.
3224         * tests/test-unistd.c: Likewise.
3225         * tests/test-vasnprintf-posix.c: Likewise.
3226         * tests/test-vasnprintf-posix2.c: Likewise.
3227         * tests/test-vasnprintf.c: Likewise.
3228         * tests/test-vasprintf-posix.c: Likewise.
3229         * tests/test-vasprintf.c: Likewise.
3230         * tests/test-verify.c: Likewise.
3231         * tests/test-vfprintf-posix.c: Likewise.
3232         * tests/test-vprintf-posix.c: Likewise.
3233         * tests/test-vsnprintf-posix.c: Likewise.
3234         * tests/test-vsnprintf.c: Likewise.
3235         * tests/test-vsprintf-posix.c: Likewise.
3236         * tests/test-wchar.c: Likewise.
3237         * tests/test-wctype.c: Likewise.
3238         * tests/test-wcwidth.c: Likewise.
3239         * tests/test-xstrtol.c: Likewise.
3240         * tests/test-xvasprintf.c: Likewise.
3241         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
3242         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
3243         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
3244         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
3245         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
3246         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
3247         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
3248         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
3249         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
3250         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
3251         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
3252         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
3253         * tests/uniname/test-uninames.c: Likewise.
3254         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
3255         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
3256         * tests/unistdio/test-u16-printf1.h: Likewise.
3257         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
3258         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
3259         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
3260         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
3261         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
3262         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
3263         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
3264         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
3265         * tests/unistdio/test-u32-printf1.h: Likewise.
3266         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
3267         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
3268         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
3269         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
3270         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
3271         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
3272         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
3273         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
3274         * tests/unistdio/test-u8-printf1.h: Likewise.
3275         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
3276         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
3277         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
3278         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
3279         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
3280         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
3281         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
3282         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
3283         * tests/unistdio/test-ulc-printf1.h: Likewise.
3284         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
3285         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
3286         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
3287         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
3288         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
3289         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
3290         * tests/uniwidth/test-u16-strwidth.c: Likewise.
3291         * tests/uniwidth/test-u16-width.c: Likewise.
3292         * tests/uniwidth/test-u32-strwidth.c: Likewise.
3293         * tests/uniwidth/test-u32-width.c: Likewise.
3294         * tests/uniwidth/test-u8-strwidth.c: Likewise.
3295         * tests/uniwidth/test-u8-width.c: Likewise.
3296         * tests/uniwidth/test-uc_width.c: Likewise.
3297         * config/srclist-update: Likewise.
3298         (fixlicense): Update to GPLv3+.
3299
3300         Change copyright notice from LGPLv2.1+ to LGPLv3+.
3301         * tests/test-tsearch.c: Change copyright notice.
3302
3303         Change copyright notice from LGPLv2.0+ to LGPLv3+.
3304         * lib/c-strcaseeq.h: Change copyright notice.
3305         * lib/streq.h: Likewise.
3306         * lib/uniconv.h: Likewise.
3307         * lib/uniconv/u-conv-from-enc.h: Likewise.
3308         * lib/uniconv/u-conv-to-enc.h: Likewise.
3309         * lib/uniconv/u-strconv-from-enc.h: Likewise.
3310         * lib/uniconv/u-strconv-to-enc.h: Likewise.
3311         * lib/uniconv/u16-conv-from-enc.c: Likewise.
3312         * lib/uniconv/u16-conv-to-enc.c: Likewise.
3313         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
3314         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
3315         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
3316         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
3317         * lib/uniconv/u32-conv-from-enc.c: Likewise.
3318         * lib/uniconv/u32-conv-to-enc.c: Likewise.
3319         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
3320         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
3321         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
3322         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
3323         * lib/uniconv/u8-conv-from-enc.c: Likewise.
3324         * lib/uniconv/u8-conv-to-enc.c: Likewise.
3325         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
3326         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
3327         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
3328         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
3329         * lib/uniname.h: Likewise.
3330         * lib/uniname/uniname.c: Likewise.
3331         * lib/unistdio.h: Likewise.
3332         * lib/unistdio/u-asnprintf.h: Likewise.
3333         * lib/unistdio/u-asprintf.h: Likewise.
3334         * lib/unistdio/u-printf-args.c: Likewise.
3335         * lib/unistdio/u-printf-args.h: Likewise.
3336         * lib/unistdio/u-printf-parse.h: Likewise.
3337         * lib/unistdio/u-snprintf.h: Likewise.
3338         * lib/unistdio/u-sprintf.h: Likewise.
3339         * lib/unistdio/u-vasprintf.h: Likewise.
3340         * lib/unistdio/u-vsnprintf.h: Likewise.
3341         * lib/unistdio/u-vsprintf.h: Likewise.
3342         * lib/unistdio/u16-asnprintf.c: Likewise.
3343         * lib/unistdio/u16-asprintf.c: Likewise.
3344         * lib/unistdio/u16-printf-parse.c: Likewise.
3345         * lib/unistdio/u16-snprintf.c: Likewise.
3346         * lib/unistdio/u16-sprintf.c: Likewise.
3347         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
3348         * lib/unistdio/u16-u16-asprintf.c: Likewise.
3349         * lib/unistdio/u16-u16-snprintf.c: Likewise.
3350         * lib/unistdio/u16-u16-sprintf.c: Likewise.
3351         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
3352         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
3353         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
3354         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
3355         * lib/unistdio/u16-vasnprintf.c: Likewise.
3356         * lib/unistdio/u16-vasprintf.c: Likewise.
3357         * lib/unistdio/u16-vsnprintf.c: Likewise.
3358         * lib/unistdio/u16-vsprintf.c: Likewise.
3359         * lib/unistdio/u32-asnprintf.c: Likewise.
3360         * lib/unistdio/u32-asprintf.c: Likewise.
3361         * lib/unistdio/u32-printf-parse.c: Likewise.
3362         * lib/unistdio/u32-snprintf.c: Likewise.
3363         * lib/unistdio/u32-sprintf.c: Likewise.
3364         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
3365         * lib/unistdio/u32-u32-asprintf.c: Likewise.
3366         * lib/unistdio/u32-u32-snprintf.c: Likewise.
3367         * lib/unistdio/u32-u32-sprintf.c: Likewise.
3368         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
3369         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
3370         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
3371         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
3372         * lib/unistdio/u32-vasnprintf.c: Likewise.
3373         * lib/unistdio/u32-vasprintf.c: Likewise.
3374         * lib/unistdio/u32-vsnprintf.c: Likewise.
3375         * lib/unistdio/u32-vsprintf.c: Likewise.
3376         * lib/unistdio/u8-asnprintf.c: Likewise.
3377         * lib/unistdio/u8-asprintf.c: Likewise.
3378         * lib/unistdio/u8-printf-parse.c: Likewise.
3379         * lib/unistdio/u8-snprintf.c: Likewise.
3380         * lib/unistdio/u8-sprintf.c: Likewise.
3381         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
3382         * lib/unistdio/u8-u8-asprintf.c: Likewise.
3383         * lib/unistdio/u8-u8-snprintf.c: Likewise.
3384         * lib/unistdio/u8-u8-sprintf.c: Likewise.
3385         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
3386         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
3387         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
3388         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
3389         * lib/unistdio/u8-vasnprintf.c: Likewise.
3390         * lib/unistdio/u8-vasprintf.c: Likewise.
3391         * lib/unistdio/u8-vsnprintf.c: Likewise.
3392         * lib/unistdio/u8-vsprintf.c: Likewise.
3393         * lib/unistdio/ulc-asnprintf.c: Likewise.
3394         * lib/unistdio/ulc-asprintf.c: Likewise.
3395         * lib/unistdio/ulc-printf-parse.c: Likewise.
3396         * lib/unistdio/ulc-snprintf.c: Likewise.
3397         * lib/unistdio/ulc-sprintf.c: Likewise.
3398         * lib/unistdio/ulc-vasnprintf.c: Likewise.
3399         * lib/unistdio/ulc-vasprintf.c: Likewise.
3400         * lib/unistdio/ulc-vsnprintf.c: Likewise.
3401         * lib/unistdio/ulc-vsprintf.c: Likewise.
3402         * lib/unistr.h: Likewise.
3403         * lib/unistr/u-cpy-alloc.h: Likewise.
3404         * lib/unistr/u-cpy.h: Likewise.
3405         * lib/unistr/u-endswith.h: Likewise.
3406         * lib/unistr/u-move.h: Likewise.
3407         * lib/unistr/u-set.h: Likewise.
3408         * lib/unistr/u-startswith.h: Likewise.
3409         * lib/unistr/u-stpcpy.h: Likewise.
3410         * lib/unistr/u-stpncpy.h: Likewise.
3411         * lib/unistr/u-strcat.h: Likewise.
3412         * lib/unistr/u-strcpy.h: Likewise.
3413         * lib/unistr/u-strcspn.h: Likewise.
3414         * lib/unistr/u-strdup.h: Likewise.
3415         * lib/unistr/u-strlen.h: Likewise.
3416         * lib/unistr/u-strncat.h: Likewise.
3417         * lib/unistr/u-strncpy.h: Likewise.
3418         * lib/unistr/u-strnlen.h: Likewise.
3419         * lib/unistr/u-strpbrk.h: Likewise.
3420         * lib/unistr/u-strspn.h: Likewise.
3421         * lib/unistr/u-strstr.h: Likewise.
3422         * lib/unistr/u-strtok.h: Likewise.
3423         * lib/unistr/u16-check.c: Likewise.
3424         * lib/unistr/u16-chr.c: Likewise.
3425         * lib/unistr/u16-cmp.c: Likewise.
3426         * lib/unistr/u16-cpy-alloc.c: Likewise.
3427         * lib/unistr/u16-cpy.c: Likewise.
3428         * lib/unistr/u16-endswith.c: Likewise.
3429         * lib/unistr/u16-mblen.c: Likewise.
3430         * lib/unistr/u16-mbsnlen.c: Likewise.
3431         * lib/unistr/u16-mbtouc-aux.c: Likewise.
3432         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
3433         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
3434         * lib/unistr/u16-mbtouc.c: Likewise.
3435         * lib/unistr/u16-mbtoucr.c: Likewise.
3436         * lib/unistr/u16-move.c: Likewise.
3437         * lib/unistr/u16-next.c: Likewise.
3438         * lib/unistr/u16-prev.c: Likewise.
3439         * lib/unistr/u16-set.c: Likewise.
3440         * lib/unistr/u16-startswith.c: Likewise.
3441         * lib/unistr/u16-stpcpy.c: Likewise.
3442         * lib/unistr/u16-stpncpy.c: Likewise.
3443         * lib/unistr/u16-strcat.c: Likewise.
3444         * lib/unistr/u16-strchr.c: Likewise.
3445         * lib/unistr/u16-strcmp.c: Likewise.
3446         * lib/unistr/u16-strcpy.c: Likewise.
3447         * lib/unistr/u16-strcspn.c: Likewise.
3448         * lib/unistr/u16-strdup.c: Likewise.
3449         * lib/unistr/u16-strlen.c: Likewise.
3450         * lib/unistr/u16-strmblen.c: Likewise.
3451         * lib/unistr/u16-strmbtouc.c: Likewise.
3452         * lib/unistr/u16-strncat.c: Likewise.
3453         * lib/unistr/u16-strncmp.c: Likewise.
3454         * lib/unistr/u16-strncpy.c: Likewise.
3455         * lib/unistr/u16-strnlen.c: Likewise.
3456         * lib/unistr/u16-strpbrk.c: Likewise.
3457         * lib/unistr/u16-strrchr.c: Likewise.
3458         * lib/unistr/u16-strspn.c: Likewise.
3459         * lib/unistr/u16-strstr.c: Likewise.
3460         * lib/unistr/u16-strtok.c: Likewise.
3461         * lib/unistr/u16-to-u32.c: Likewise.
3462         * lib/unistr/u16-to-u8.c: Likewise.
3463         * lib/unistr/u16-uctomb-aux.c: Likewise.
3464         * lib/unistr/u16-uctomb.c: Likewise.
3465         * lib/unistr/u32-check.c: Likewise.
3466         * lib/unistr/u32-chr.c: Likewise.
3467         * lib/unistr/u32-cmp.c: Likewise.
3468         * lib/unistr/u32-cpy-alloc.c: Likewise.
3469         * lib/unistr/u32-cpy.c: Likewise.
3470         * lib/unistr/u32-endswith.c: Likewise.
3471         * lib/unistr/u32-mblen.c: Likewise.
3472         * lib/unistr/u32-mbsnlen.c: Likewise.
3473         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
3474         * lib/unistr/u32-mbtouc.c: Likewise.
3475         * lib/unistr/u32-mbtoucr.c: Likewise.
3476         * lib/unistr/u32-move.c: Likewise.
3477         * lib/unistr/u32-next.c: Likewise.
3478         * lib/unistr/u32-prev.c: Likewise.
3479         * lib/unistr/u32-set.c: Likewise.
3480         * lib/unistr/u32-startswith.c: Likewise.
3481         * lib/unistr/u32-stpcpy.c: Likewise.
3482         * lib/unistr/u32-stpncpy.c: Likewise.
3483         * lib/unistr/u32-strcat.c: Likewise.
3484         * lib/unistr/u32-strchr.c: Likewise.
3485         * lib/unistr/u32-strcmp.c: Likewise.
3486         * lib/unistr/u32-strcpy.c: Likewise.
3487         * lib/unistr/u32-strcspn.c: Likewise.
3488         * lib/unistr/u32-strdup.c: Likewise.
3489         * lib/unistr/u32-strlen.c: Likewise.
3490         * lib/unistr/u32-strmblen.c: Likewise.
3491         * lib/unistr/u32-strmbtouc.c: Likewise.
3492         * lib/unistr/u32-strncat.c: Likewise.
3493         * lib/unistr/u32-strncmp.c: Likewise.
3494         * lib/unistr/u32-strncpy.c: Likewise.
3495         * lib/unistr/u32-strnlen.c: Likewise.
3496         * lib/unistr/u32-strpbrk.c: Likewise.
3497         * lib/unistr/u32-strrchr.c: Likewise.
3498         * lib/unistr/u32-strspn.c: Likewise.
3499         * lib/unistr/u32-strstr.c: Likewise.
3500         * lib/unistr/u32-strtok.c: Likewise.
3501         * lib/unistr/u32-to-u16.c: Likewise.
3502         * lib/unistr/u32-to-u8.c: Likewise.
3503         * lib/unistr/u32-uctomb.c: Likewise.
3504         * lib/unistr/u8-check.c: Likewise.
3505         * lib/unistr/u8-chr.c: Likewise.
3506         * lib/unistr/u8-cmp.c: Likewise.
3507         * lib/unistr/u8-cpy-alloc.c: Likewise.
3508         * lib/unistr/u8-cpy.c: Likewise.
3509         * lib/unistr/u8-endswith.c: Likewise.
3510         * lib/unistr/u8-mblen.c: Likewise.
3511         * lib/unistr/u8-mbsnlen.c: Likewise.
3512         * lib/unistr/u8-mbtouc-aux.c: Likewise.
3513         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
3514         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
3515         * lib/unistr/u8-mbtouc.c: Likewise.
3516         * lib/unistr/u8-mbtoucr.c: Likewise.
3517         * lib/unistr/u8-move.c: Likewise.
3518         * lib/unistr/u8-next.c: Likewise.
3519         * lib/unistr/u8-prev.c: Likewise.
3520         * lib/unistr/u8-set.c: Likewise.
3521         * lib/unistr/u8-startswith.c: Likewise.
3522         * lib/unistr/u8-stpcpy.c: Likewise.
3523         * lib/unistr/u8-stpncpy.c: Likewise.
3524         * lib/unistr/u8-strcat.c: Likewise.
3525         * lib/unistr/u8-strchr.c: Likewise.
3526         * lib/unistr/u8-strcmp.c: Likewise.
3527         * lib/unistr/u8-strcpy.c: Likewise.
3528         * lib/unistr/u8-strcspn.c: Likewise.
3529         * lib/unistr/u8-strdup.c: Likewise.
3530         * lib/unistr/u8-strlen.c: Likewise.
3531         * lib/unistr/u8-strmblen.c: Likewise.
3532         * lib/unistr/u8-strmbtouc.c: Likewise.
3533         * lib/unistr/u8-strncat.c: Likewise.
3534         * lib/unistr/u8-strncmp.c: Likewise.
3535         * lib/unistr/u8-strncpy.c: Likewise.
3536         * lib/unistr/u8-strnlen.c: Likewise.
3537         * lib/unistr/u8-strpbrk.c: Likewise.
3538         * lib/unistr/u8-strrchr.c: Likewise.
3539         * lib/unistr/u8-strspn.c: Likewise.
3540         * lib/unistr/u8-strstr.c: Likewise.
3541         * lib/unistr/u8-strtok.c: Likewise.
3542         * lib/unistr/u8-to-u16.c: Likewise.
3543         * lib/unistr/u8-to-u32.c: Likewise.
3544         * lib/unistr/u8-uctomb-aux.c: Likewise.
3545         * lib/unistr/u8-uctomb.c: Likewise.
3546         * lib/unitypes.h: Likewise.
3547         * lib/uniwidth.h: Likewise.
3548         * lib/uniwidth/cjk.h: Likewise.
3549         * lib/uniwidth/u16-strwidth.c: Likewise.
3550         * lib/uniwidth/u16-width.c: Likewise.
3551         * lib/uniwidth/u32-strwidth.c: Likewise.
3552         * lib/uniwidth/u32-width.c: Likewise.
3553         * lib/uniwidth/u8-strwidth.c: Likewise.
3554         * lib/uniwidth/u8-width.c: Likewise.
3555         * lib/uniwidth/width.c: Likewise.
3556
3557 2007-10-07  Bruno Haible  <bruno@clisp.org>
3558
3559         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
3560         The file is still under LGPL (see modules/inttypes).
3561
3562 2007-10-06  Bruno Haible  <bruno@clisp.org>
3563
3564         * modules/trunc (Dependencies): Add 'extensions'.
3565         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
3566         Reported by Ben Pfaff <blp@gnu.org>.
3567
3568 2007-10-06  Bruno Haible  <bruno@clisp.org>
3569
3570         * modules/freopen-tests: New file.
3571         * tests/test-freopen.c: New file.
3572
3573         * modules/fopen-tests: New file.
3574         * tests/test-fopen.c: New file.
3575
3576         * modules/fopen: New file.
3577         * lib/fopen.c: New file.
3578         * m4/fopen.m4: New file.
3579         * modules/freopen: New file.
3580         * lib/freopen.c: New file.
3581         * m4/freopen.m4: New file.
3582         * lib/stdio.in.h (fopen, freopen): New declarations.
3583         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
3584         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
3585         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
3586         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
3587         * doc/functions/fopen.texi: Mention the 'fopen' module.
3588         * doc/functions/freopen.texi: Mention the 'freopen' module.
3589
3590 2007-10-06  Bruno Haible  <bruno@clisp.org>
3591
3592         * modules/open-tests: New file.
3593         * tests/test-open.c: New file.
3594
3595         * modules/open: New file.
3596         * lib/open.c: New file.
3597         * m4/open.m4: New file.
3598         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
3599         lib/open.c does.
3600         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
3601         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
3602         macros.
3603         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
3604         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
3605         REPLACE_OPEN.
3606         * doc/functions/open.texi: Mention the 'open' module.
3607
3608 2007-10-04  Bruno Haible  <bruno@clisp.org>
3609
3610         * modules/ceill-tests: New file.
3611         * tests/test-ceill.c: New file.
3612
3613         * modules/ceill: New file.
3614         * lib/ceill.c: Replace entire file.
3615         * m4/ceill.m4: New file.
3616         * lib/math.in.h (ceill): Replace declaration.
3617         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
3618         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
3619         * doc/functions/ceill.texi: Mention the 'ceill' module.
3620         * modules/mathl (Files): Remove lib/ceill.c.
3621         (Depends-on): Add ceill.
3622
3623 2007-10-04  Bruno Haible  <bruno@clisp.org>
3624
3625         * modules/ceilf-tests: New file.
3626         * tests/test-ceilf.c: New file.
3627
3628         * modules/ceilf: New file.
3629         * lib/ceil.c: New file.
3630         * lib/ceilf.c: New file.
3631         * m4/ceilf.m4: New file.
3632         * lib/math.in.h (ceilf): New declaration.
3633         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
3634         HAVE_DECL_CEILF.
3635         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
3636         HAVE_DECL_CEILF.
3637         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
3638
3639 2007-10-04  Bruno Haible  <bruno@clisp.org>
3640
3641         * modules/floorl-tests: New file.
3642         * tests/test-floorl.c: New file.
3643
3644         * modules/floorl: New file.
3645         * lib/floorl.c: Replace entire file.
3646         * m4/floorl.m4: New file.
3647         * lib/math.in.h (floorl): Replace declaration.
3648         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
3649         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
3650         * doc/functions/floorl.texi: Mention the 'floorl' module.
3651         * modules/mathl (Files): Remove lib/floorl.c.
3652         (Depends-on): Add floorl.
3653
3654 2007-10-04  Bruno Haible  <bruno@clisp.org>
3655
3656         * modules/floorf-tests: New file.
3657         * tests/test-floorf.c: New file.
3658
3659         * modules/floorf: New file.
3660         * lib/floor.c: New file.
3661         * lib/floorf.c: New file.
3662         * m4/floorf.m4: New file.
3663         * lib/math.in.h (floorf): New declaration.
3664         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
3665         HAVE_DECL_FLOORF.
3666         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
3667         HAVE_DECL_FLOORF.
3668         * doc/functions/floorf.texi: Mention the 'floorf' module.
3669
3670 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
3671             Bruno Haible  <bruno@clisp.org>
3672
3673         Advertise for the Git server instead of the CVS server.
3674         * doc/gnulib-intro.texi (Steady Development): Mention the Git
3675         repository instead of the CVS one.
3676         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
3677         about all VCS systems generically.
3678         * doc/gnulib.texi (Introduction): Capitalize `Git'.
3679
3680 2007-10-04  Bruno Haible  <bruno@clisp.org>
3681
3682         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
3683         means.
3684         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
3685
3686 2007-10-04  Bruno Haible  <bruno@clisp.org>
3687
3688         * modules/truncl-tests: New file.
3689         * tests/test-truncl.c: New file.
3690
3691         * modules/truncl: New file.
3692         * lib/truncl.c: New file.
3693         * m4/truncl.m4: New file.
3694         * lib/math.in.h (truncl): New declaration.
3695         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
3696         HAVE_DECL_TRUNCL.
3697         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
3698         HAVE_DECL_TRUNCL.
3699         * doc/functions/truncl.texi: Mention the 'truncl' module.
3700
3701 2007-10-04  Bruno Haible  <bruno@clisp.org>
3702
3703         * modules/truncf-tests: New file.
3704         * tests/test-truncf.c: New file.
3705
3706         * modules/truncf: New file.
3707         * lib/trunc.c: Make paramerizable through USE_* macros.
3708         * lib/truncf.c: New file.
3709         * m4/truncf.m4: New file.
3710         * lib/math.in.h (truncf): New declaration.
3711         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
3712         HAVE_DECL_TRUNCF.
3713         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
3714         HAVE_DECL_TRUNCF.
3715         * doc/functions/truncf.texi: Mention the 'truncf' module.
3716
3717 2007-10-03  Bruno Haible  <bruno@clisp.org>
3718
3719         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
3720         augmentation also for tests modules.
3721         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
3722         * modules/atexit-tests (Makefile.am): Likewise.
3723         * modules/binary-io-tests (Makefile.am): Likewise.
3724         * modules/c-strcase-tests (Makefile.am): Likewise.
3725         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
3726         * modules/canonicalize-tests (Makefile.am): Likewise.
3727         * modules/closein-tests (Makefile.am): Likewise.
3728         * modules/fprintf-posix-tests (Makefile.am): Likewise.
3729         * modules/freadahead-tests (Makefile.am): Likewise.
3730         * modules/fseek-tests (Makefile.am): Likewise.
3731         * modules/fseeko-tests (Makefile.am): Likewise.
3732         * modules/ftell-tests (Makefile.am): Likewise.
3733         * modules/ftello-tests (Makefile.am): Likewise.
3734         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
3735         * modules/isnanl-tests (Makefile.am): Likewise.
3736         * modules/lseek-tests (Makefile.am): Likewise.
3737         * modules/mbscasecmp-tests (Makefile.am): Likewise.
3738         * modules/mbscasestr-tests (Makefile.am): Likewise.
3739         * modules/mbschr-tests (Makefile.am): Likewise.
3740         * modules/mbscspn-tests (Makefile.am): Likewise.
3741         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
3742         * modules/mbspbrk-tests (Makefile.am): Likewise.
3743         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
3744         * modules/mbsrchr-tests (Makefile.am): Likewise.
3745         * modules/mbsspn-tests (Makefile.am): Likewise.
3746         * modules/mbsstr-tests (Makefile.am): Likewise.
3747         * modules/printf-posix-tests (Makefile.am): Likewise.
3748         * modules/snprintf-posix-tests (Makefile.am): Likewise.
3749         * modules/sprintf-posix-tests (Makefile.am): Likewise.
3750         * modules/tsearch-tests (Makefile.am): Likewise.
3751         * modules/uniname/uniname-tests (Makefile.am): Likewise.
3752         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
3753         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
3754         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
3755         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
3756         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
3757         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
3758         * modules/vprintf-posix-tests (Makefile.am): Likewise.
3759         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
3760         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
3761         * modules/xstrtoimax-tests (Makefile.am): Likewise.
3762         * modules/xstrtol-tests (Makefile.am): Likewise.
3763         * modules/xstrtoumax-tests (Makefile.am): Likewise.
3764         * modules/yesno-tests (Makefile.am): Likewise.
3765
3766 2007-10-03  Bruno Haible  <bruno@clisp.org>
3767
3768         * modules/trunc-tests: New file.
3769         * tests/test-trunc.c: New file.
3770
3771         * modules/trunc: New file.
3772         * lib/trunc.c: New file.
3773         * m4/trunc.m4: New file.
3774         * lib/math.in.h (trunc): New declaration.
3775         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
3776         HAVE_DECL_TRUNC.
3777         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
3778         HAVE_DECL_TRUNC.
3779         * doc/functions/trunc.texi: Mention the 'trunc' module.
3780
3781 2007-10-03  Bruno Haible  <bruno@clisp.org>
3782
3783         * tests/test-fpending.c: New file, mostly copied
3784         from coreutils/lib/t-fpending.c.
3785         * modules/fpending-tests: New file.
3786
3787 2007-10-03  Bruno Haible  <bruno@clisp.org>
3788
3789         Port the stdio extensions to QNX (untested).
3790         * lib/fseterr.c (fseterr): Add support for QNX.
3791         * lib/fbufmode.c (fbufmode): Likewise.
3792         * lib/freadable.c (freadable): Likewise.
3793         * lib/fwritable.c (fwritable): Likewise.
3794         * lib/freading.c (freading): Likewise.
3795         * lib/fwriting.c (fwriting): Likewise.
3796         * lib/freadahead.c (freadahed): Likewise.
3797         * lib/fpurge.c (fpurge): Likewise.
3798         * lib/fseeko.c (rpl_fseeko): Likewise.
3799
3800 2007-10-03  Bruno Haible  <bruno@clisp.org>
3801             Jim Meyering  <jim@meyering.net>
3802             Eric Blake  <ebb9@byu.net>
3803
3804         * doc/relocatable.texi: Use @command instead of @program.
3805
3806 2007-10-02  Jim Meyering  <jim@meyering.net>
3807
3808         Perform one more "_.h" -> ".in.h" substitution.
3809         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
3810         instead of unistd_.h here, too.
3811
3812 2007-10-01  Bruno Haible  <bruno@clisp.org>
3813
3814         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
3815         Needed for the alloca-opt module.
3816
3817 2007-09-30  Bruno Haible  <bruno@clisp.org>
3818
3819         * lib/alloca.in.h: Renamed from lib/alloca_.h.
3820         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
3821         alloca_.h.
3822         * lib/argz.in.h: Renamed from lib/argz_.h.
3823         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
3824         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
3825         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
3826         byteswap_.h.
3827         * lib/dirent.in.h: Renamed from lib/dirent_.h.
3828         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
3829         dirent_.h.
3830         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
3831         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
3832         fcntl_.h.
3833         * lib/float.in.h: Renamed from lib/float_.h.
3834         * modules/float (Files, Makefile.am): Use float.in.h instead of
3835         float_.h.
3836         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
3837         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
3838         fnmatch_.h.
3839         * lib/getopt.in.h: Renamed from lib/getopt_.h.
3840         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
3841         getopt_.h.
3842         * lib/glob.in.h: Renamed from lib/glob_.h.
3843         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
3844         * lib/iconv.in.h: Renamed from lib/iconv_.h.
3845         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
3846         iconv_.h.
3847         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
3848         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
3849         inttypes_.h.
3850         * lib/locale.in.h: Renamed from lib/locale_.h.
3851         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
3852         locale_.h.
3853         * lib/math.in.h: Renamed from lib/math_.h.
3854         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
3855         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
3856         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
3857         of netinet_in_.h. Add dependency.
3858         * lib/poll.in.h: Renamed from lib/poll_.h.
3859         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
3860         * lib/search.in.h: Renamed from lib/search_.h.
3861         * modules/search (Files, Makefile.am): Use search.in.h instead of
3862         search_.h.
3863         * lib/signal.in.h: Renamed from lib/signal_.h.
3864         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
3865         _signal.h.
3866         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
3867         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
3868         stdbool_.h.
3869         * lib/stdint.in.h: Renamed from lib/stdint_.h.
3870         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
3871         stdint_.h.
3872         * lib/stdio.in.h: Renamed from lib/stdio_.h.
3873         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
3874         stdio_.h.
3875         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
3876         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
3877         stdlib_.h.
3878         * lib/string.in.h: Renamed from lib/string_.h.
3879         * modules/string (Files, Makefile.am): Use string.in.h instead of
3880         string_.h.
3881         * doc/gnulib-tool.texi (Initial import): Update.
3882         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
3883         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
3884         of sys_select_.h. Add dependency.
3885         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
3886         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
3887         of sys_socket_.h.
3888         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
3889         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
3890         sys_stat_.h.
3891         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
3892         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
3893         sys_time_.h.
3894         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
3895         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
3896         sysexits_.h.
3897         * lib/time.in.h: Renamed from lib/time_.h.
3898         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
3899         * lib/unistd.in.h: Renamed from lib/unistd_.h.
3900         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
3901         unistd_.h.
3902         * lib/wchar.in.h: Renamed from lib/wchar_.h.
3903         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
3904         wchar_.h.
3905         * lib/wctype.in.h: Renamed from lib/wctype_.h.
3906         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
3907         wctype_.h.
3908         * build-aux/bootstrap (slurp): Update.
3909         * lib/.cppi-disable: Update.
3910
3911 2007-09-30  Bruno Haible  <bruno@clisp.org>
3912
3913         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
3914         Needed on BeOS.
3915
3916 2007-09-30  Bruno Haible  <bruno@clisp.org>
3917
3918         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
3919
3920 2007-09-29  Bruno Haible  <bruno@clisp.org>
3921
3922         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
3923
3924 2007-09-29  Bruno Haible  <bruno@clisp.org>
3925
3926         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
3927         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
3928         * build-aux/install-reloc: Compile also areadlink.c.
3929         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
3930
3931 2007-09-29  Bruno Haible  <bruno@clisp.org>
3932
3933         * gnulib-tool (func_emit_initmacro_done): Indentation.
3934
3935 2007-09-29  Bruno Haible  <bruno@clisp.org>
3936
3937         * README: Add CVS checkout update instructions.
3938         Info from Bob Proulx <bob@proulx.com>.
3939
3940 2007-09-28  Eric Blake  <ebb9@byu.net>
3941
3942         Provide move-if-change.
3943         * build-aux/move-if-change: New file, based on best practice
3944         rather than any canonical upstream location.
3945
3946 2007-09-28  Jim Meyering  <jim@meyering.net>
3947
3948         Fix canonicalize loop-detection corner case.
3949         Do not attempt to stat the symlink values stored via seen_triple.
3950         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
3951         on linux-2.6.18, (but not 2.6.22).
3952         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
3953         triple_compare.  The former compares dev,ino,filename, while the latter
3954         would actually stat dirname(filename) when dev and ino were equal.
3955         * lib/hash-triple.c: Install <string.h>.
3956         (STREQ): Define.
3957         (triple_compare_ino_str): New function.
3958         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
3959
3960 2007-09-28  Eric Blake  <ebb9@byu.net>
3961
3962         Enforce that AC_REPLACE_FUNCS files exist.
3963         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
3964         override check for typos.
3965
3966         Fix test-closein on Solaris 10.
3967         * tests/test-closein.c (main): Don't assume stdin can be inherited
3968         closed on all systems.
3969         * tests/test-closein.sh: Likewise.
3970         Reported by Piotr Tarnowski.
3971
3972 2007-09-28  Jim Meyering  <jim@meyering.net>
3973
3974         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
3975
3976 2007-09-27  Jim Meyering  <jim@meyering.net>
3977
3978         canonicalize: Avoid a false-positive cycle failure.
3979         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
3980         Sort.  Remove cycle-check.
3981         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
3982         not cycle-check.h.
3983         (seen_triple): New function.
3984         (canonicalize_filename_mode): Use it instead of cycle-check.
3985         * tests/test-canonicalize.c: Add a test for this bug.
3986         * tests/test-canonicalize.sh: Set up and run the test.
3987
3988         New module, file-set, from coreutils.
3989         * modules/file-set: Define it.
3990         * lib/file-set.c, lib/file-set.h: Implement.
3991
3992         New module, hash-triple, from coreutils.
3993         * modules/hash-triple: Define it.
3994         * lib/hash-triple.c, lib/hash-triple.h: Implement.
3995
3996 2007-09-25  Eric Blake  <ebb9@byu.net>
3997
3998         Fix strerror on Interix.
3999         * lib/string_.h (strerror): Declare replacement.
4000         * doc/functions/strerror.texi (strerror): Document the Interix
4001         shortcoming.
4002         * modules/string (Makefile.am): Support new hooks.
4003         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
4004         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
4005         gl_FUNC_STRERROR_SEPARATE.
4006         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
4007         * lib/strerror.c (rpl_strerror): Provide replacement.
4008         * modules/strerror (Depends-on): Add string.
4009         (configure.ac): Detect use of module.
4010         * tests/test-strerror.c: New file.
4011         * modules/strerror-tests: New test module.
4012         * modules/argp (Depends-on): Add strerror.
4013         * modules/error (Depends-on): Likewise.
4014         Reported by Martin Koeppe.
4015
4016 2007-09-24  Bruno Haible  <bruno@clisp.org>
4017
4018         * README: Update git instructions.
4019
4020 2007-09-24  Eric Blake  <ebb9@byu.net>
4021
4022         Revert fpending breakage from 2007-09-08.
4023         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
4024         __fpending.c.
4025
4026 2007-09-24  Jim Meyering  <jim@meyering.net>
4027
4028         filenamecat.c: Add a test.
4029         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
4030         showing how the function works when DIR is the empty string.
4031
4032 2007-09-21  Simon Josefsson  <simon@josefsson.org>
4033
4034         * tests/test-canonicalize.sh: Turn on executable bit.
4035
4036 2007-09-19  Eric Blake  <ebb9@byu.net>
4037
4038         * README: Update CVS instructions.
4039
4040 2007-09-18  Bruno Haible  <bruno@clisp.org>
4041
4042         * modules/areadlink: New file.
4043         * lib/areadlink.h (areadlink): New declaration.
4044         * lib/areadlink.c: New file, based on lib/xreadlink.c.
4045
4046 2007-09-17  Jim Meyering  <jim@meyering.net>
4047
4048         * lib/savewd.c (ESTALE) [!defined]: Define.
4049         Reported to be required on Interix by Martin Koeppe.
4050
4051 2007-09-17  Bruno Haible  <bruno@clisp.org>
4052
4053         * gnulib-tool (func_version): Use $version.
4054
4055 2007-09-16  Bruno Haible  <bruno@clisp.org>
4056
4057         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
4058         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
4059         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
4060         Reported by Greg Schafer <gschafer@zip.com.au>.
4061
4062 2007-09-15  Bruno Haible  <bruno@clisp.org>
4063
4064         * gnulib-tool (sed): Try a little harder to make bash understand the
4065         alias.
4066         Reported by Bruce Korb <bruce.korb@gmail.com>.
4067
4068 2007-09-13  Eric Blake  <ebb9@byu.net>
4069
4070         * ChangeLog: Remove conflict markers.
4071
4072 2007-09-13  Simon Josefsson  <simon@josefsson.org>
4073
4074         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
4075         Reported by Bruno Haible <bruno@clisp.org>.
4076
4077 2007-09-12  Bruno Haible  <bruno@clisp.org>
4078
4079         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
4080         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
4081         is not defined.
4082
4083 2007-09-12  Eric Blake  <ebb9@byu.net>
4084
4085         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
4086         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
4087         Autoconf definition.
4088         * modules/euidaccess (Depends-on): Add extensions, for
4089         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
4090         * modules/fnmatch (Depends-on): Likewise.
4091         * modules/getaddrinfo (Depends-on): Likewise.
4092         * modules/getdelim (Depends-on): Likewise.
4093         * modules/getline (Depends-on): Likewise.
4094         * modules/getsubopt (Depends-on): Likewise.
4095         * modules/gettext (Depends-on): Likewise.
4096         * modules/group-member (Depends-on): Likewise.
4097         * modules/mbchar (Depends-on): Likewise.
4098         * modules/memmem (Depends-on): Likewise.
4099         * modules/mempcpy (Depends-on): Likewise.
4100         * modules/memrchr (Depends-on): Likewise.
4101         * modules/pagealign_alloc (Depends-on): Likewise.
4102         * modules/readutmp (Depends-on): Likewise.
4103         * modules/stpcpy (Depends-on): Likewise.
4104         * modules/stpncpy (Depends-on): Likewise.
4105         * modules/strchrnul (Depends-on): Likewise.
4106         * modules/strndup (Depends-on): Likewise.
4107         * modules/strsep (Depends-on): Likewise.
4108         * modules/strverscmp (Depends-on): Likewise.
4109         * modules/vasprintf (Depends-on): Likewise.
4110         * modules/wcwidth (Depends-on): Likewise.
4111         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
4112         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
4113         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
4114         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
4115         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
4116         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
4117         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
4118         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
4119         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
4120         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
4121         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
4122         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
4123         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
4124         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
4125         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
4126         * m4/readutmp.m4 (gl_READUTMP): Likewise.
4127         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
4128         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
4129         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
4130         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
4131         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
4132         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
4133         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
4134         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
4135         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
4136         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
4137         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
4138         so that lock.m4 can be used in gettext without extensions module.
4139
4140 2007-09-11  Bruno Haible  <bruno@clisp.org>
4141
4142         * m4/isc-posix.m4: Remove file.
4143         Suggested by Eric Blake.
4144
4145 2007-09-11  Eric Blake  <ebb9@byu.net>
4146
4147         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
4148
4149 2007-09-10  Bruno Haible  <bruno@clisp.org>
4150
4151         * posix-modules: Fix typo in error message.
4152         Reported by Matt <mkraai@beckman.com>.
4153
4154 2007-09-09  Bruno Haible  <bruno@clisp.org>
4155
4156         * doc/functions/getdelim.texi: Update list of platforms lacking the
4157         function.
4158         * doc/functions/getline.texi: Likewise.
4159
4160 2007-09-09  Jim Meyering  <jim@meyering.net>
4161
4162         * lib/hash.c (hash_initialize): Detect calloc failure.
4163         Reported by Bruno Haible.
4164
4165 2007-09-09  Bruno Haible  <bruno@clisp.org>
4166
4167         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
4168         malloc or realloc fails.
4169
4170 2007-09-09  Bruno Haible  <bruno@clisp.org>
4171
4172         * modules/getcwd (Depends-on): Add malloc-posix.
4173         * modules/glob (Depends-on): Likewise.
4174         * modules/putenv (Depends-on): Likewise.
4175         * modules/strdup (Depends-on): Likewise.
4176         * modules/getdelim (Depends-on): Add realloc-posix.
4177         * modules/read-file (Depends-on): Likewise.
4178
4179 2007-09-09  Bruno Haible  <bruno@clisp.org>
4180
4181         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
4182         (gl_FUNC_MALLOC_POSIX): Require it.
4183         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
4184         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
4185         * modules/realloc (Files): Add m4/malloc.m4.
4186         * modules/calloc (Files): Likewise.
4187
4188 2007-09-09  Bruno Haible  <bruno@clisp.org>
4189
4190         * modules/malloc-posix: New file.
4191         * modules/malloc (Depends-on): Add malloc-posix.
4192         * lib/malloc.c: Include errno.h.
4193         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
4194         and a POSIX-compatible malloc into a single function. Set ENOMEM
4195         when returning NULL.
4196         * m4/malloc.m4: New file.
4197         * doc/functions/malloc.texi: Mention the malloc-posix module.
4198         * lib/stdlib_.h (malloc): New declaration.
4199         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
4200         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
4201         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
4202         and HAVE_MALLOC_POSIX.
4203
4204 2007-09-09  Bruno Haible  <bruno@clisp.org>
4205
4206         * modules/realloc-posix: New file.
4207         * modules/realloc (Depends-on): Add realloc-posix.
4208         * lib/realloc.c: Include errno.h.
4209         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
4210         and a POSIX-compatible realloc into a single function. Set ENOMEM
4211         when returning NULL.
4212         * m4/realloc.m4: New file.
4213         * doc/functions/realloc.texi: Mention the realloc-posix module.
4214         * lib/stdlib_.h (realloc): New declaration.
4215         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
4216         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
4217         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
4218         and HAVE_REALLOC_POSIX.
4219
4220 2007-09-09  Bruno Haible  <bruno@clisp.org>
4221
4222         * modules/calloc-posix: New file.
4223         * modules/calloc (Depends-on): Add calloc-posix.
4224         * lib/calloc.c: Include errno.h.
4225         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
4226         and a POSIX-compatible calloc into a single function. Set ENOMEM
4227         when returning NULL.
4228         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
4229         * doc/functions/calloc.texi: Mention the calloc-posix module.
4230         * lib/stdlib_.h (calloc): New declaration.
4231         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
4232         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
4233         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
4234         and HAVE_CALLOC_POSIX.
4235
4236 2007-09-09  Bruno Haible  <bruno@clisp.org>
4237
4238         Allow for modules to show an arbitrary notice.
4239         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
4240         * gnulib-tool: New option --extract-notice.
4241         (func_usage): Document it.
4242         (sed_extract_prog): Update.
4243         (func_get_notice): New function.
4244         (func_modules_notice): New function.
4245         (func_import, func_create_testdir): Invoke it.
4246         Suggested by Jim Meyering.
4247
4248 2007-09-09  Bruno Haible  <bruno@clisp.org>
4249
4250         * gnulib-tool: New options --verbose, --quiet.
4251         (func_usage): Document them.
4252         (verbose): New variable.
4253         (func_execute_command): New function.
4254         (func_import): Don't show the module list and the file list if
4255         $verbose < 0.
4256         (func_create_testdir): Likewise. Use func_execute_command.
4257         (func_create_megatestdir): Use func_execute_command.
4258
4259 2007-09-08  Bruno Haible  <bruno@clisp.org>
4260
4261         * gnulib-tool (func_import): Prefer rsync over wget when available,
4262         for fetching the PO files.
4263
4264 2007-09-08  Bruno Haible  <bruno@clisp.org>
4265
4266         * posix-modules: New file. Portions copied from gnulib-tool.
4267         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
4268
4269 2007-09-08  Jim Meyering  <jim@meyering.net>
4270
4271         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
4272         * lib/fpending.h: Rename from __fpending.h.
4273         * lib/fpending.c: Rename from __fpending.c.
4274         Include "fpending.h", not "__fpending.h".
4275         * lib/__fpending.h, lib/__fpending.c: Remove files.
4276         * modules/fpending (Files): Reflect new file names.
4277         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
4278
4279 2007-09-08  Bruno Haible  <bruno@clisp.org>
4280
4281         * m4/inttypes-h.m4: Remove stub file.
4282
4283 2007-09-07  Simon Josefsson  <simon@josefsson.org>
4284
4285         * doc/headers/stdint.texi: Discuss #include_next issue.
4286
4287 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
4288
4289         * build-aux/bootstrap: Remove obsolete comment about wget --help.
4290
4291 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4292
4293         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
4294         in variable name.
4295
4296 2007-09-03  Jim Meyering  <jim@meyering.net>
4297
4298         New module: git-version-gen.
4299         * modules/git-version-gen: New file.
4300
4301         Import changes from coreutils for bootstrap script.
4302
4303         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
4304
4305         bootstrap: uses rsync to download the .po files
4306         * build-aux/bootstrap (po_download_command_format): New global.
4307         (download_po_files): Use rsync.
4308         (update_po_files): Don't remove .po files after download,
4309         so future rsync runs can take advantage of the copies.
4310
4311         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
4312
4313         Solve the unnecessary-.po-file-regeneration problem once and for all.
4314         * build-aux/bootstrap (download_po_files): New function, renamed from
4315         get_translations.  Now, downloads, but doesn't update LINGUAS.
4316         (update_po_files): New function.
4317
4318         bootstrap: Ignore more.
4319         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
4320         uniwidth to e.g., lib/.gitignore.
4321         (slurp): Handle the sys_stat_.h -> sys mapping, too.
4322
4323         * build-aux/bootstrap: New setting: vc_ignore.
4324         (insert_sorted_if_absent): Create $file if absent.
4325         Adapt to new, possibly empty, list: $vc_ignore.
4326
4327         bootstrap: generate more ignorable names
4328         * build-aux/bootstrap (slurp): When generating ignorable names,
4329         also map .sin to .sed, .gperf to .c, and .y to .c.
4330
4331 2007-09-03  Jim Meyering  <jim@meyering.net>
4332
4333         * build-aux/git-version-gen: New file, from coreutils.  For details, see
4334         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
4335
4336 2007-09-02  Bruno Haible  <bruno@clisp.org>
4337
4338         Fix mis-recognition of 'mcs' on QNX 6.
4339         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
4340         output contains the string "Mono".
4341         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
4342         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
4343
4344 2007-09-01  Bruno Haible  <bruno@clisp.org>
4345
4346         Fix collision between uniwidth/* and linebreak modules.
4347         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
4348         u32_width): Remove declarations.
4349         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
4350         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
4351         streq3, streq2, streq1, streq0): Remove functions.
4352         (STREQ): Remove macro.
4353         (is_cjk_encoding): Remove function.
4354         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
4355         (uc_width, u8_width, u16_width, u32_width): Remove functions.
4356         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
4357         * NEWS: Document the change.
4358
4359 2007-09-01  Bruno Haible  <bruno@clisp.org>
4360
4361         * lib/streq.h: Add double-inclusion guard.
4362
4363 2007-09-01  Karl Berry  <karl@gnu.org>
4364
4365         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
4366
4367 2007-08-28  Jim Meyering  <jim@meyering.net>
4368
4369         Rename mreadlink_with_size to areadlink_with_size.
4370         * NEWS: Document the change.
4371         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
4372         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
4373         * lib/mreadlink.h: Rename this to...
4374         * lib/areadlink.h: ...this.
4375         * modules/mreadlink-with-size: Rename this to...
4376         * modules/areadlink-with-size: ...this.
4377         * lib/canonicalize.c: Reflect the renaming.
4378         * modules/canonicalize: Likewise.
4379
4380 2007-08-26  Bruno Haible  <bruno@clisp.org>
4381
4382         * gnulib-tool (func_import): When deciding which files to remove,
4383         consider also dangling symbolic links.
4384         Reported by Eric Blake.
4385
4386 2007-08-26  Bruno Haible  <bruno@clisp.org>
4387
4388         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
4389
4390 2007-08-23  Simon Josefsson  <simon@josefsson.org>
4391
4392         * lib/readline.c: Don't include getline.h, the prototype is now
4393         found in stdio.h.
4394
4395 2007-08-23  Jim Meyering  <jim@meyering.net>
4396
4397         Getdelim touchup.
4398         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
4399         around the funlockfile call, since funlockfile never sets errno.
4400         Don't set errno upon failed realloc.
4401
4402 2007-08-22  Eric Blake  <ebb9@byu.net>
4403
4404         Getline touchups.
4405         * lib/getdelim.c (getdelim): Revert regression that required *n to
4406         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
4407         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
4408         getdelim, rather than whether implementation is missing.
4409         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
4410         * lib/stdio_.h (getline): Also declare if replacement is
4411         required.
4412         * doc/functions/getdelim.texi: New file.
4413         * doc/functions/getline.texi: Likewise.
4414         * doc/gnulib.texi (Function Substitutes): Add new files.
4415         Reported by Bruno Haible.
4416
4417 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
4418
4419         * users.txt: Add Guile.
4420
4421 2007-08-22  Eric Blake  <ebb9@byu.net>
4422
4423         * tests/test-getdelim.c (main): Use remove, not unlink.
4424         * tests/test-getline.c (main): Likewise.
4425
4426         Move getline and getdelim into stdio.h, per POSIX 200x.
4427         * modules/getline (Files): Remove getline.h.
4428         (Depends-on): Add stdio.
4429         (configure.ac): Add module indicator.
4430         * modules/getdelim (Files): Remove getdelim.h.
4431         (Depends-on): Add stdio.
4432         (configure.ac): Add module indicator.
4433         * modules/stdio (Makefile.am): Work with new indicators.
4434         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
4435         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
4436         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
4437         * lib/getdelim.h: Delete.
4438         * lib/getline.h: Delete.
4439         * lib/stdio_.h (getdelim, getline): Declare.
4440         * modules/getdelim-tests: New module.
4441         * modules/getline-tests: Likewise.
4442         * tests/test-getdelim.c: New file.
4443         * tests/test-getline.c: Likewise.
4444         * NEWS: Document the change.
4445         * lib/getline.c: Update choice of header.
4446         * lib/csharpcomp.c: Likewise.
4447         * lib/getpass.c: Likewise.
4448         * lib/javacomp.c: Likewise.
4449         * lib/javaversion.c: Likewise.
4450         * lib/yesno.c: Likewise.
4451         * lib/getdelim.c: Likewise.
4452         (getdelim): Set errno on failure, and avoid memory leak.
4453
4454 2007-08-19  Bruno Haible  <bruno@clisp.org>
4455
4456         * modules/closein (Depends-on): Add freadahead.
4457         * lib/closein.c: Include freadahead.h.
4458         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
4459         is zero.
4460
4461 2007-08-19  Bruno Haible  <bruno@clisp.org>
4462
4463         * modules/freadahead-tests: New file.
4464         * tests/test-freadahead.sh: New file.
4465         * tests/test-freadahead.c: New file.
4466
4467         * modules/freadahead: New file.
4468         * lib/freadahead.h: New file.
4469         * lib/freadahead.c: New file.
4470         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
4471         fbufmode, fpurge, freadable, fwritable.
4472
4473 2007-08-19  Eric Blake  <ebb9@byu.net>
4474
4475         Test yesno in combination with closein.
4476         * lib/yesno.c (yesno): Document use of stdin.
4477         * modules/yesno-tests (Files): New module.
4478         * tests/test-yesno.c (main): New file.
4479         * tests/test-yesno.sh: Likewise.
4480
4481 2007-08-19  Bruno Haible  <bruno@clisp.org>
4482
4483         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
4484         * lib/fseeko.c (rpl_fseeko): Likewise.
4485         * lib/fseterr.c (fseterr): Likewise.
4486
4487 2007-08-19  Bruno Haible  <bruno@clisp.org>
4488
4489         * tests/test-lseek.c (main): Disable a test for BeOS.
4490         * doc/functions/lseek.texi: Document the BeOS bug.
4491
4492 2007-08-19  Bruno Haible  <bruno@clisp.org>
4493             Eric Blake  <ebb9@byu.net>
4494
4495         * lib/lseek.c: Include <sys/stat.h>.
4496         (rpl_lseek): Add workaround code also for Unix platforms.
4497         Needed for BeOS.
4498         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
4499         * doc/functions/lseek.texi: Document BeOS definiency.
4500
4501 2007-08-18  Bruno Haible  <bruno@clisp.org>
4502
4503         * modules/fstrcmp-tests: New file.
4504         * tests/test-fstrcmp.c: New file.
4505
4506 2007-08-18  Bruno Haible  <bruno@clisp.org>
4507
4508         * modules/fstrcmp: New file, from GNU gettext with modifications.
4509         * lib/fstrcmp.h: New file, from GNU gettext.
4510         * lib/fstrcmp.c: New file, from GNU gettext.
4511         * MODULES.html.sh (String handling): Add fstrcmp.
4512
4513 2007-08-18  Bruno Haible  <bruno@clisp.org>
4514
4515         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
4516         'bool'.
4517         (diag, compareseq): Remove const from the ctxt argument.
4518         (USE_HEURISTIC): Undefine at the end.
4519
4520 2007-08-18  Jim Meyering  <jim@meyering.net>
4521
4522         New file: lib/idcache.h
4523         * NEWS: Mention the addition.
4524         * modules/idcache (Files): Add lib/idcache.h
4525         * lib/idcache.c: Include "idcache.h".
4526         Don't include <sys/types.h>.
4527         Add a FIXME comment.
4528         Move file-scoped "static" declarations to the top.
4529         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
4530
4531 2007-08-17  Bruno Haible  <bruno@clisp.org>
4532         and Paul Eggert  <eggert@cs.ucla.edu>
4533
4534         * MODULES.html.sh: Add diffseq.
4535         * modules/diffseq: New file.
4536         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
4537         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
4538
4539 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
4540
4541         Import changes from coreutils for bootstrap script.
4542
4543         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
4544
4545         * build-aux/bootstrap (slurp): Work even in environments where
4546         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
4547         current code does not slurp files whose names start with ".", and
4548         this looks like it might be a troublesome area.
4549
4550         2007-07-11  Jim Meyering  <jim@meyering.net>
4551
4552         If there's a GPL vN copyright comment, require that N == 3.
4553
4554         2007-07-08  Jim Meyering  <jim@meyering.net>
4555
4556         Run the coreutils-specific code only if tests/Makefile.am.in exists.
4557         * build-aux/bootstrap (mam_template): Move definition out of loop.
4558
4559         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
4560
4561         * build-aux/bootstrap (symlink_to_dir): Rename function from
4562         symlink_to_gnulib.  Add a directory parameter.  Update all
4563         callers.
4564         (cp_mark_as_generated): Also check for -- and link to -- files in
4565         gl/.
4566
4567         2007-07-08  Jim Meyering  <jim@meyering.net>
4568
4569         Adapt to deeper hierarchy in gnulib.
4570         * build-aux/bootstrap (symlink_to_dir): If the destination
4571         directory doesn't exist, create it. This is required at least for
4572         "lib/uniwidth/cjk.h".
4573
4574         2007-05-15  Jim Meyering  <jim@meyering.net>
4575
4576         * build-aux/bootstrap: Now that generated Makefile.am files
4577         are no longer under version control, they must be created at
4578         bootstrap time.
4579
4580 2007-08-14  Ben Pfaff  <blp@gnu.org>
4581
4582         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
4583
4584 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
4585
4586         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
4587         given the changes below.
4588         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
4589         even on hosts that have padding bits beyond the supported 64.
4590
4591 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
4592
4593         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
4594         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
4595         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
4596         depends on it.
4597         (xstrtol_error): Remove.
4598         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
4599         but with a different signature.
4600         (ATTRIBUTE_NORETURN, __attribute__): New macros.
4601         * lib/xstrtol-error.c: Include exitfail.h.
4602         (xstrtol_fatal): New function, with a different signature from the
4603         old xstrtol_error, so that the caller need not worry about passing
4604         in an exit status, or about storage management of the option argument.
4605         (xstrtol_error): Now a static function.  Redo signature to
4606         implement xstrtol_fatal.  Output the correct number of hyphens in
4607         front of the option so that the caller need not worry about
4608         storage management.
4609         (N_): New macro.
4610         (_): Remove; not used now.
4611         * modules/xstrtol: Depend on getopt.
4612         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
4613         of old STRTOL_FATAL_ERROR macro.
4614         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
4615         of test program.
4616         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
4617         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
4618
4619 2007-08-08  Eric Blake  <ebb9@byu.net>
4620
4621         * lib/xstrtol-error.c: Add missing include.
4622
4623         Move xstrtol messages into gnulib domain, when --pobase is used.
4624         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
4625         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
4626         * modules/xstrtol (Files): Distribute new file.
4627         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
4628         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
4629         * tests/test-xstrtol.c: ...into new file.
4630         * tests/test-xstrtoul.c: Also test xstrtoul.
4631         * tests/test-xstrtoimax.c: Also test xstrtoimax.
4632         * tests/test-xstrtoumax.c: Also test xstrtoumax.
4633         * tests/test-xstrtol.sh: Drive the tests.
4634         * tests/test-xstrtoimax.sh: Likewise.
4635         * tests/test-xstrtoumax.sh: Likewise.
4636         * modules/xstrtol-tests: New module.
4637         * modules/xstrtoimax-tests: Likewise.
4638         * modules/xstrtoumax-tests: Likewise.
4639
4640 2007-08-08  Jim Meyering  <jim@meyering.net>
4641
4642         New function: mfile_name_concat.
4643         * lib/filenamecat.c (mfile_name_concat): New function, just like
4644         file_name_concat, but return NULL upon failure rather than exiting
4645         with a diagnostic.
4646         * lib/filenamecat.h: Declare it.
4647
4648 2007-08-07  Bruno Haible  <bruno@clisp.org>
4649
4650         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
4651         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
4652         warning from gcc.
4653         Reported by Eric Blake.
4654
4655 2007-08-07  Simon Josefsson  <simon@josefsson.org>
4656
4657         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
4658         * modules/crypto/arcfour (License): Likewise.
4659         * modules/crypto/des-tests (License): Likewise.
4660         * modules/crypto/gc-arctwo-tests (License): Likewise.
4661         * modules/crypto/gc-des-tests (License): Likewise.
4662         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
4663         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
4664         * modules/crypto/gc-md2-tests (License): Likewise.
4665         * modules/crypto/gc-md4-tests (License): Likewise.
4666         * modules/crypto/gc-md5-tests (License): Likewise.
4667         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
4668         * modules/crypto/gc-rijndael-tests (License): Likewise.
4669         * modules/crypto/gc-sha1-tests (License): Likewise.
4670         * modules/crypto/gc-tests (License): Likewise.
4671         * modules/crypto/hmac-md5 (License): Likewise.
4672         * modules/crypto/hmac-sha1 (License): Likewise.
4673         * modules/crypto/md2-tests (License): Likewise.
4674         * modules/crypto/md4-tests (License): Likewise.
4675         * modules/crypto/md5 (License): Likewise.
4676         * modules/crypto/rijndael (License): Likewise.
4677         * modules/crypto/sha1 (License): Likewise.
4678         * modules/memxor (License): Likewise.
4679
4680 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
4681         and Bruno Haible  <bruno@clisp.org>
4682
4683         * NEWS: Describe interface changes to human, xstrtol.
4684         * lib/human.h: Include <xstrtol.h>.
4685         (human_options): Return enum strtol_error, not int.  Remove
4686         bool arg; take int * instead.
4687         * lib/human.c: Don't include "gettext.h".
4688         (_): Remove; no longer used.
4689         Don't include <xstrtol.h>, since human.h does it.
4690         (human_options): Adjust to abovementioned interface changes.
4691         Do not report error to stderr; that's now the caller's
4692         responsibility.
4693         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
4694         interface change.
4695         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
4696         Str, Argument_type_string.  All uses changed.  Put " argument"
4697         in diagnostics to make them clearer.  Change wording of suffix
4698         message for clarity.
4699         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
4700         Argument_type_string.
4701         (STRTOL_FATAL_WARN): Remove; no longer used.
4702         * modules/human (Depends-on): Remove gettext-h.
4703
4704 2007-08-06  Simon Josefsson  <simon@josefsson.org>
4705
4706         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
4707
4708 2007-07-31  Bruno Haible  <bruno@clisp.org>
4709
4710         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
4711         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
4712         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
4713
4714 2007-07-31  Bruno Haible  <bruno@clisp.org>
4715
4716         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
4717         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
4718
4719 2007-07-30  Bruno Haible  <bruno@clisp.org>
4720
4721         * modules/base64 (License): Use the synonymous term "LGPLv2+".
4722         * modules/c-ctype (License): Likewise.
4723         * modules/c-strcase (License): Likewise.
4724         * modules/check-version (License): Likewise.
4725         * modules/iconv (License): Likewise.
4726         * modules/iconv_open (License): Likewise.
4727         * modules/read-file (License): Likewise.
4728         * modules/striconv (License): Likewise.
4729         * modules/strverscmp (License): Likewise.
4730         * modules/vasprintf (License): Likewise.
4731         * modules/crypto/des (License): Likewise.
4732         * modules/crypto/gc (License): Likewise.
4733         * modules/crypto/gc-arcfour (License): Likewise.
4734         * modules/crypto/gc-arctwo (License): Likewise.
4735         * modules/crypto/gc-des (License): Likewise.
4736         * modules/crypto/gc-hmac-md5 (License): Likewise.
4737         * modules/crypto/gc-hmac-sha1 (License): Likewise.
4738         * modules/crypto/gc-md2 (License): Likewise.
4739         * modules/crypto/gc-md4 (License): Likewise.
4740         * modules/crypto/gc-md5 (License): Likewise.
4741         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
4742         * modules/crypto/gc-random (License): Likewise.
4743         * modules/crypto/gc-rijndael (License): Likewise.
4744         * modules/crypto/gc-sha1 (License): Likewise.
4745         * modules/crypto/md2 (License): Likewise.
4746         * modules/crypto/md4 (License): Likewise.
4747
4748 2007-07-30  Jim Meyering  <jim@meyering.net>
4749
4750         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
4751         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
4752         it has valid stat data.  This bug would cause du not to count the
4753         sizes of inaccessible directories.
4754         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
4755         in <http://bugzilla.redhat.com/250077>.
4756
4757 2007-07-25  Peter O'Gorman  <peter@pogma.com>
4758             Bruno Haible  <bruno@clisp.org>
4759
4760         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
4761         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
4762         #include_next, gives a diagnostic about it, but reports no error in
4763         the exit code.
4764         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
4765
4766 2007-07-24  Ben Pfaff  <blp@gnu.org>
4767
4768         Improve name: "count-one-bits" is better than "popcount".
4769         * MODULES.html.sh: Update name.
4770         * lib/popcount.h: Renamed lib/count-one-bits.h.
4771         (popcount): Renamed count_one_bits.
4772         (popcountl): Renamed count_one_bits_l.
4773         (popcountll): Renamed count_one_bits_ll.
4774         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
4775         * modules/popcount: Renamed module/count-one-bits.
4776         * modules/popcount-tests: Renamed module/count-one-bits-tests.
4777         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
4778
4779 2007-07-23  Ben Pfaff  <blp@gnu.org>
4780
4781         * lib/popcount.h (popcount32): Reduce size of constants, to allow
4782         better code generation, and add U to large constants to avoid
4783         warnings, in non-GCC case.
4784         Suggested by Bruno Haible.
4785
4786 2007-07-23  Ben Pfaff  <blp@gnu.org>
4787
4788         * lib/popcount.h: Use verify_true instead of if...abort.
4789         * modules/popcount: Depend on verify module.
4790         Suggested by Jim Meyering.
4791
4792 2007-07-23  Bruno Haible  <bruno@clisp.org>
4793
4794         * gnulib-tool (func_import): Create a .cvsignore file also when the
4795         directory is not yet in CVS but the toplevel directory is. When
4796         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
4797         Reported by Karl Berry.
4798
4799 2007-07-22  Ben Pfaff  <blp@gnu.org>
4800
4801         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
4802         case.
4803         Suggested by Eric Blake.
4804
4805 2007-07-22  Ben Pfaff  <blp@gnu.org>
4806
4807         New module: popcount.
4808         * MODULES.html.sh: Add popcount.
4809         * modules/popcount: New file.
4810         * modules/popcount-tests: New file.
4811         * tests/test-popcount.c: New file.
4812         * lib/popcount.h: New file.
4813         * m4/popcount.m4: New file.
4814
4815 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
4816
4817         * build-aux/announce-gen: Update to GPLv3.
4818
4819         * build-aux/config.guess: Update from config.
4820
4821 2007-07-21  Bruno Haible  <bruno@clisp.org>
4822
4823         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
4824         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
4825
4826 2007-07-20  Jim Meyering  <jim@meyering.net>
4827
4828         * check-module: Diagnose a self-dependency.
4829
4830 2007-07-19  Bruno Haible  <bruno@clisp.org>
4831
4832         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
4833         empty.
4834         Reported by Eric Blake.
4835
4836 2007-07-18  Bruno Haible  <bruno@clisp.org>
4837
4838         * gnulib-tool: New options --po-base, --po-domain.
4839         (func_usage): Document them.
4840         (pobase, po_domain): New variables.
4841         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
4842         DEFAULT_TEXT_DOMAIN.
4843         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
4844         (func_import): Consider pobase and po_domain. Create a po/ directory.
4845         (func_create_testdir): Set pobase and po_domain to empty.
4846         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
4847         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
4848
4849 2007-07-18  Bruno Haible  <bruno@clisp.org>
4850
4851         * gnulib-tool (func_get_automake_snippet): Synthesize also an
4852         EXTRA_DIST augmentation for files in build-aux/.
4853
4854 2007-07-16  Bruno Haible  <bruno@clisp.org>
4855
4856         * modules/lseek (License): Use the synonymous term "LGPLv2+".
4857         * modules/getdelim (License): Likewise.
4858
4859 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4860
4861         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
4862         * modules/d-type (License): Likewise.
4863         * modules/extensions (License): Likewise.
4864         * modules/fnmatch (License): Likewise.
4865         * modules/fseeko (License): Likewise.
4866         * modules/getaddrinfo (License): Likewise.
4867         * modules/getline (License): Likewise.
4868         * modules/getlogin_r (License): Likewise.
4869         * modules/getpass (License): Likewise.
4870         * modules/gettimeofday (License): Likewise.
4871         * modules/glob (License): Likewise.
4872         * modules/inet_ntop (License): Likewise.
4873         * modules/malloc (License): Likewise.
4874         * modules/malloca (License): Likewise.
4875         * modules/memmem (License): Likewise.
4876         * modules/mempcpy (License): Likewise.
4877         * modules/memset (License): Likewise.
4878         * modules/minmax (License): Likewise.
4879         * modules/mktime (License): Likewise.
4880         * modules/netinet_in (License): Likewise.
4881         * modules/pathmax (License): Likewise.
4882         * modules/poll (License): Likewise.
4883         * modules/regex (License): Likewise.
4884         * modules/snprintf (License): Likewise.
4885         * modules/stdbool (License): Likewise.
4886         * modules/stdint (License): Likewise.
4887         * modules/stdio (License): Likewise.
4888         * modules/strcase (License): Likewise.
4889         * modules/strcasestr (License): Likewise.
4890         * modules/strdup (License): Likewise.
4891         * modules/string (License): Likewise.
4892         * modules/strndup (License): Likewise.
4893         * modules/strnlen (License): Likewise.
4894         * modules/strpbrk (License): Likewise.
4895         * modules/strptime (License): Likewise.
4896         * modules/strsep (License): Likewise.
4897         * modules/sys_select (License): Likewise.
4898         * modules/sys_socket (License): Likewise.
4899         * modules/sys_stat (License): Likewise.
4900         * modules/sys_time (License): Likewise.
4901         * modules/time (License): Likewise.
4902         * modules/time_r (License): Likewise.
4903         * modules/timegm (License): Likewise.
4904         * modules/unistd (License): Likewise.
4905         * modules/vsnprintf (License): Likewise.
4906         * modules/wctype (License): Likewise.
4907
4908 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4909
4910         * modules/argz (License): LGPLv2+.
4911
4912 2007-07-15  Karl Berry  <karl@gnu.org>
4913
4914         * doc/gnulib.texi: revise node structure per new fdl.texi.
4915
4916 2007-07-14  Bruno Haible  <bruno@clisp.org>
4917
4918         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
4919         the output file.
4920         * lib/uniname/uninames.h: Regenerated.
4921
4922 2007-07-14  Karl Berry  <karl@gnu.org>
4923
4924         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
4925         omitting sectioning and index commands.
4926
4927 2007-07-13  Bruno Haible  <bruno@clisp.org>
4928
4929         New gnulib-tool option --more-symlinks.
4930         * gnulib-tool (func_usage): Document --more-symlinks.
4931         (do_copyrights): New variable.
4932         Recognize option --more-symlinks.
4933         (func_import): Don't add a copyright notice transform to
4934         sed_transform_lib_file if do_copyrights is empty.
4935
4936 2007-07-13  Bruno Haible  <bruno@clisp.org>
4937
4938         * lib/vasnprintf.c (decimal_point_char): Define also if
4939         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
4940         && !NEED_PRINTF_DIRECTIVE_A.
4941         Reported by Clemens Koller <clemens.koller@anagramm.de> via
4942         Gary V. Vaughan <gary@gnu.org>.
4943
4944 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
4945
4946         * lib/inttypes_.h: Undo previous change, since it was fixed
4947         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
4948
4949 2007-07-13  Bruno Haible  <bruno@clisp.org>
4950
4951         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
4952         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
4953
4954 2007-07-13  Jim Meyering  <jim@meyering.net>
4955
4956         df: Don't fail for Tru64's "file-on-file mount".
4957         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
4958         so we fall through and use statfs instead.  Details here:
4959         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
4960         Reported by Albert Chin.
4961
4962 2007-07-13  Bruno Haible  <bruno@clisp.org>
4963
4964         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
4965         * modules/configmake (License): Likewise.
4966         * modules/gettext (License): Likewise.
4967         * modules/gettext-h (License): Likewise.
4968         * modules/include_next (License): Likewise.
4969         * modules/link-warning (License): Likewise.
4970         * modules/localcharset (License): Likewise.
4971         * modules/localename (License): Likewise.
4972         * modules/lock (License): Likewise.
4973         * modules/relocatable-lib-lgpl (License): Likewise.
4974         * modules/size_max (License): Likewise.
4975         * modules/vasnprintf (License): Likewise.
4976         * modules/wchar (License): Likewise.
4977         * modules/xsize (License): Likewise.
4978
4979 2007-07-13  Bruno Haible  <bruno@clisp.org>
4980
4981         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
4982         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
4983
4984 2007-07-12  Bruno Haible  <bruno@clisp.org>
4985
4986         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
4987         in the modules files.
4988
4989 2007-07-11  Karl Berry  <karl@gnu.org>
4990
4991         * MODULES.html.sh (func_module): use
4992          sed -e '\|^'"${includefile}"'$|d'
4993          instead of /.../d, to avoid errors on $includefile's containing /.
4994
4995 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
4996
4997         * gnulib-tool (func_import): Avoid duplication of --avoid
4998         statements
4999         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
5000         names to `_' in variable names.
5001
5002 2007-07-10  Eric Blake  <ebb9@byu.net>
5003
5004         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
5005         * NEWS: Document this change.
5006
5007 2007-07-08  Bruno Haible  <bruno@clisp.org>
5008
5009         Update to Unicode 5.0.
5010         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
5011         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
5012         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
5013         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
5014         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
5015         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
5016         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
5017         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
5018         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
5019         U+10A3F, U+1D242..U+1D244.
5020         (nonspacing_table_ind): Update.
5021         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
5022         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
5023
5024 2007-07-08  Bruno Haible  <bruno@clisp.org>
5025
5026         Update to Unicode 5.0.
5027         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
5028         code transform. Extend the name index field of unicode_name_to_code and
5029         unicode_code_to_name from 16 to 24 bits.
5030         * lib/uniname/uniname.c (unicode_character_name,
5031         unicode_name_character): Add the range 0x12xxx to the code transform.
5032         * lib/uniname/uninames.h: Regenerated.
5033         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
5034
5035 2007-07-07  Bruno Haible  <bruno@clisp.org>
5036
5037         * modules/wcwidth-tests: New file.
5038         * tests/test-wcwidth.c: New file.
5039
5040         Work around MacOS X wcwidth() bug.
5041         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
5042         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
5043         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
5044         original wcwidth in non-UTF-8 locales.
5045         * modules/wcwidth (Depends-on): Add localcharset, streq,
5046         uniwidth/width.
5047         * doc/functions/wcwidth.texi: Update.
5048
5049 2007-07-07  Bruno Haible  <bruno@clisp.org>
5050
5051         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
5052         (wcwidth): New declaration.
5053         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
5054         macros.
5055         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
5056         here. Prepare for creating <wchar.h> unconditionally.
5057         * modules/wchar (Depends-on): Add link-warning.
5058         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
5059         REPLACE_WCWIDTH, and GL_LINK_WARNING.
5060         * lib/wcwidth.h: Remove file.
5061         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
5062         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
5063         * modules/wcwidth (Files): Remove lib/wcwidth.h.
5064         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
5065         (Include): Replace wcwidth.h with <wchar.h>.
5066         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
5067         * lib/mbchar.h: Don't include wcwidth.h.
5068         * lib/mbswidth.c: Likewise.
5069         * NEWS: Mention the change.
5070
5071 2007-07-07  Bruno Haible  <bruno@clisp.org>
5072
5073         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
5074         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
5075         definition with an external declaration.
5076         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
5077         defined as a function. Remove AC_C_INLINE requirement.
5078         * modules/wcwidth (Files): Add lib/wcwidth.c.
5079         (Makefile.am): Remove redundant statement.
5080
5081 2007-07-07  Bruno Haible  <bruno@clisp.org>
5082
5083         * MODULES.html.sh (Unicode string functions): Add the new modules.
5084
5085         * tests/uniwidth/test-u32-strwidth.c: New file.
5086         * modules/uniwidth/u32-strwidth-tests: New file.
5087
5088         * lib/uniwidth/u32-strwidth.c: New file.
5089         * modules/uniwidth/u32-strwidth: New file.
5090
5091         * tests/uniwidth/test-u16-strwidth.c: New file.
5092         * modules/uniwidth/u16-strwidth-tests: New file.
5093
5094         * lib/uniwidth/u16-strwidth.c: New file.
5095         * modules/uniwidth/u16-strwidth: New file.
5096
5097         * tests/uniwidth/test-u8-strwidth.c: New file.
5098         * modules/uniwidth/u8-strwidth-tests: New file.
5099
5100         * lib/uniwidth/u8-strwidth.c: New file.
5101         * modules/uniwidth/u8-strwidth: New file.
5102
5103         * tests/uniwidth/test-u32-width.c: New file.
5104         * modules/uniwidth/u32-width-tests: New file.
5105
5106         * lib/uniwidth/u32-width.c: New file.
5107         * modules/uniwidth/u32-width: New file.
5108
5109         * tests/uniwidth/test-u16-width.c: New file.
5110         * modules/uniwidth/u16-width-tests: New file.
5111
5112         * lib/uniwidth/u16-width.c: New file.
5113         * modules/uniwidth/u16-width: New file.
5114
5115         * tests/uniwidth/test-u8-width.c: New file.
5116         * modules/uniwidth/u8-width-tests: New file.
5117
5118         * lib/uniwidth/u8-width.c: New file.
5119         * modules/uniwidth/u8-width: New file.
5120
5121         * tests/uniwidth/test-uc_width.c: New file.
5122         * modules/uniwidth/width-tests: New file.
5123
5124         * lib/uniwidth/width.c: New file, from GNU libiconv.
5125         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
5126         * modules/uniwidth/width: New file.
5127
5128         * lib/uniwidth.h: New file, from GNU libiconv.
5129         * modules/uniwidth/base: New file.
5130
5131 2007-07-07  Bruno Haible  <bruno@clisp.org>
5132
5133         * lib/uniname.h: New file, from GNU gettext.
5134         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
5135         * lib/uniname/uninames.h: New file, from GNU gettext.
5136         * lib/uniname/uniname.c: New file, from GNU gettext.
5137         * tests/uniname/test-uninames.sh: New file.
5138         * tests/uniname/test-uninames.c: New file, from GNU gettext.
5139         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
5140         * modules/uniname/base: New file.
5141         * modules/uniname/uniname: New file.
5142         * modules/uniname/uniname-tests: New file.
5143         * MODULES.html.sh (Unicode string functions): Add the new modules.
5144
5145 2007-07-06  Bruno Haible  <bruno@clisp.org>
5146
5147         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
5148
5149 2007-07-06  Bruno Haible  <bruno@clisp.org>
5150
5151         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
5152         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
5153         includes <cygwin/sys_time.h> which includes <sys/select.h> which
5154         include <sys/time.h>.
5155         Reported by Eric Blake.
5156
5157 2007-07-06  Eric Blake  <ebb9@byu.net>
5158
5159         Fix testing canonicalize on cygwin.
5160         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
5161         Revert patch from 2007-06-19.
5162         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
5163         canonicalize module is also in use.
5164         * tests/test-canonicalize.c: New file.
5165         * tests/test-canonicalize.sh: Likewise.
5166         * modules/canonicalize-tests: Likewise.
5167
5168 2007-07-06  Jim Meyering  <jim@meyering.net>
5169
5170         * lib/getugroups.c (getugroups): Detect getgrent failure.
5171         Adjust comment to reflect reality: this function may return -1.
5172
5173 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
5174
5175         * build-aux/bootstrap (TP_URL,get_translations): Update to use
5176         the new TP address.
5177         (usage): Fix typo
5178         (gnulib_mk): New variable.
5179
5180 2007-07-05  Jim Meyering  <jim@meyering.net>
5181
5182         Don't let endgrent clobber errno, no matter how improbable.
5183         * lib/getugroups.c (getugroups): Save and restore errno around
5184         endgrent call.
5185
5186         Close the group DB even when failing with 2^31 or more members.
5187         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
5188
5189 2007-07-04  Jim Meyering  <jim@meyering.net>
5190
5191         * lib/getugroups.h: New file.
5192         * lib/getugroups.c: Include "getugroups.h".
5193         Remove uses of "register" keyword.
5194         Move local variable, "cp", down into scope where used.
5195         Give "username" parameter the "const" attribute.
5196         * modules/getugroups (Files): Add lib/getugroups.h
5197
5198 2007-07-04  Karl Berry  <karl@gnu.org>
5199
5200         * MODULES.html.sh (func_all_modules): Complete rename of
5201         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
5202
5203 2007-07-02  Bruno Haible  <bruno@clisp.org>
5204
5205         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
5206         mode, when inttypes.h comes from gnulib.
5207         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
5208
5209 2007-07-02  Simon Josefsson  <simon@josefsson.org>
5210
5211         * NEWS: Mention lgpl module name change.
5212
5213         * modules/lgpl-2.1: Renamed from lgpl.
5214
5215         * NEWS: Mention gpl module name change.
5216
5217         * modules/gpl-3.0: New file, based on gpl-2.0.
5218
5219         * modules/gpl-2.0: Renamed from gpl.
5220
5221         * modules/gpl: Fix filename, doc/gpl.texi is now found at
5222         doc/gpl-2.0.texi.
5223
5224 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
5225
5226         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
5227         #define __STDC_LIMIT_MACROS temporarily while including
5228         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
5229         Problem reported by Joel E. Denny in
5230         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
5231
5232 2007-07-01  Bruno Haible  <bruno@clisp.org>
5233
5234         * lib/unistdio.h: New file.
5235         * lib/unistdio/u-asnprintf.h: New file.
5236         * lib/unistdio/u-asprintf.h: New file.
5237         * lib/unistdio/u-printf-args.c: New file.
5238         * lib/unistdio/u-printf-args.h: New file.
5239         * lib/unistdio/u-printf-parse.h: New file.
5240         * lib/unistdio/u-snprintf.h: New file.
5241         * lib/unistdio/u-sprintf.h: New file.
5242         * lib/unistdio/u-vasprintf.h: New file.
5243         * lib/unistdio/u-vsnprintf.h: New file.
5244         * lib/unistdio/u-vsprintf.h: New file.
5245         * lib/unistdio/ulc-asnprintf.c: New file.
5246         * lib/unistdio/ulc-asprintf.c: New file.
5247         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
5248         * lib/unistdio/ulc-printf-parse.c: New file.
5249         * lib/unistdio/ulc-snprintf.c: New file.
5250         * lib/unistdio/ulc-sprintf.c: New file.
5251         * lib/unistdio/ulc-vasnprintf.c: New file.
5252         * lib/unistdio/ulc-vasprintf.c: New file.
5253         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
5254         * lib/unistdio/ulc-vsnprintf.c: New file.
5255         * lib/unistdio/ulc-vsprintf.c: New file.
5256         * lib/unistdio/u8-asnprintf.c: New file.
5257         * lib/unistdio/u8-asprintf.c: New file.
5258         * lib/unistdio/u8-printf-parse.c: New file.
5259         * lib/unistdio/u8-snprintf.c: New file.
5260         * lib/unistdio/u8-sprintf.c: New file.
5261         * lib/unistdio/u8-vasnprintf.c: New file.
5262         * lib/unistdio/u8-vasprintf.c: New file.
5263         * lib/unistdio/u8-vsnprintf.c: New file.
5264         * lib/unistdio/u8-vsprintf.c: New file.
5265         * lib/unistdio/u8-u8-asnprintf.c: New file.
5266         * lib/unistdio/u8-u8-asprintf.c: New file.
5267         * lib/unistdio/u8-u8-snprintf.c: New file.
5268         * lib/unistdio/u8-u8-sprintf.c: New file.
5269         * lib/unistdio/u8-u8-vasnprintf.c: New file.
5270         * lib/unistdio/u8-u8-vasprintf.c: New file.
5271         * lib/unistdio/u8-u8-vsnprintf.c: New file.
5272         * lib/unistdio/u8-u8-vsprintf.c: New file.
5273         * lib/unistdio/u16-asnprintf.c: New file.
5274         * lib/unistdio/u16-asprintf.c: New file.
5275         * lib/unistdio/u16-printf-parse.c: New file.
5276         * lib/unistdio/u16-snprintf.c: New file.
5277         * lib/unistdio/u16-sprintf.c: New file.
5278         * lib/unistdio/u16-vasnprintf.c: New file.
5279         * lib/unistdio/u16-vasprintf.c: New file.
5280         * lib/unistdio/u16-vsnprintf.c: New file.
5281         * lib/unistdio/u16-vsprintf.c: New file.
5282         * lib/unistdio/u16-u16-asnprintf.c: New file.
5283         * lib/unistdio/u16-u16-asprintf.c: New file.
5284         * lib/unistdio/u16-u16-snprintf.c: New file.
5285         * lib/unistdio/u16-u16-sprintf.c: New file.
5286         * lib/unistdio/u16-u16-vasnprintf.c: New file.
5287         * lib/unistdio/u16-u16-vasprintf.c: New file.
5288         * lib/unistdio/u16-u16-vsnprintf.c: New file.
5289         * lib/unistdio/u16-u16-vsprintf.c: New file.
5290         * lib/unistdio/u32-asnprintf.c: New file.
5291         * lib/unistdio/u32-asprintf.c: New file.
5292         * lib/unistdio/u32-printf-parse.c: New file.
5293         * lib/unistdio/u32-snprintf.c: New file.
5294         * lib/unistdio/u32-sprintf.c: New file.
5295         * lib/unistdio/u32-vasnprintf.c: New file.
5296         * lib/unistdio/u32-vasprintf.c: New file.
5297         * lib/unistdio/u32-vsnprintf.c: New file.
5298         * lib/unistdio/u32-vsprintf.c: New file.
5299         * lib/unistdio/u32-u32-asnprintf.c: New file.
5300         * lib/unistdio/u32-u32-asprintf.c: New file.
5301         * lib/unistdio/u32-u32-snprintf.c: New file.
5302         * lib/unistdio/u32-u32-sprintf.c: New file.
5303         * lib/unistdio/u32-u32-vasnprintf.c: New file.
5304         * lib/unistdio/u32-u32-vasprintf.c: New file.
5305         * lib/unistdio/u32-u32-vsnprintf.c: New file.
5306         * lib/unistdio/u32-u32-vsprintf.c: New file.
5307         * tests/unistdio/test-ulc-asnprintf1.c: New file.
5308         * tests/unistdio/test-ulc-asnprintf1.h: New file.
5309         * tests/unistdio/test-ulc-printf1.h: New file.
5310         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
5311         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
5312         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
5313         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
5314         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
5315         * tests/unistdio/test-ulc-vasprintf1.c: New file.
5316         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
5317         * tests/unistdio/test-ulc-vsprintf1.c: New file.
5318         * tests/unistdio/test-u8-asnprintf1.c: New file.
5319         * tests/unistdio/test-u8-asnprintf1.h: New file.
5320         * tests/unistdio/test-u8-printf1.h: New file.
5321         * tests/unistdio/test-u8-vasnprintf1.c: New file.
5322         * tests/unistdio/test-u8-vasnprintf2.c: New file.
5323         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
5324         * tests/unistdio/test-u8-vasnprintf3.c: New file.
5325         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
5326         * tests/unistdio/test-u8-vasprintf1.c: New file.
5327         * tests/unistdio/test-u8-vsnprintf1.c: New file.
5328         * tests/unistdio/test-u8-vsprintf1.c: New file.
5329         * tests/unistdio/test-u16-asnprintf1.c: New file.
5330         * tests/unistdio/test-u16-asnprintf1.h: New file.
5331         * tests/unistdio/test-u16-printf1.h: New file.
5332         * tests/unistdio/test-u16-vasnprintf1.c: New file.
5333         * tests/unistdio/test-u16-vasnprintf2.c: New file.
5334         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
5335         * tests/unistdio/test-u16-vasnprintf3.c: New file.
5336         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
5337         * tests/unistdio/test-u16-vasprintf1.c: New file.
5338         * tests/unistdio/test-u16-vsnprintf1.c: New file.
5339         * tests/unistdio/test-u16-vsprintf1.c: New file.
5340         * tests/unistdio/test-u32-asnprintf1.c: New file.
5341         * tests/unistdio/test-u32-asnprintf1.h: New file.
5342         * tests/unistdio/test-u32-printf1.h: New file.
5343         * tests/unistdio/test-u32-vasnprintf1.c: New file.
5344         * tests/unistdio/test-u32-vasnprintf2.c: New file.
5345         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
5346         * tests/unistdio/test-u32-vasnprintf3.c: New file.
5347         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
5348         * tests/unistdio/test-u32-vasprintf1.c: New file.
5349         * tests/unistdio/test-u32-vsnprintf1.c: New file.
5350         * tests/unistdio/test-u32-vsprintf1.c: New file.
5351         * modules/unistdio/base: New file.
5352         * modules/unistdio/u-printf-args: New file.
5353         * modules/unistdio/ulc-asnprintf: New file.
5354         * modules/unistdio/ulc-asprintf: New file.
5355         * modules/unistdio/ulc-fprintf: New file.
5356         * modules/unistdio/ulc-printf-parse: New file.
5357         * modules/unistdio/ulc-snprintf: New file.
5358         * modules/unistdio/ulc-sprintf: New file.
5359         * modules/unistdio/ulc-vasnprintf: New file.
5360         * modules/unistdio/ulc-vasprintf: New file.
5361         * modules/unistdio/ulc-vfprintf: New file.
5362         * modules/unistdio/ulc-vsnprintf: New file.
5363         * modules/unistdio/ulc-vsprintf: New file.
5364         * modules/unistdio/u8-asnprintf: New file.
5365         * modules/unistdio/u8-asprintf: New file.
5366         * modules/unistdio/u8-printf-parse: New file.
5367         * modules/unistdio/u8-snprintf: New file.
5368         * modules/unistdio/u8-sprintf: New file.
5369         * modules/unistdio/u8-vasnprintf: New file.
5370         * modules/unistdio/u8-vasprintf: New file.
5371         * modules/unistdio/u8-vsnprintf: New file.
5372         * modules/unistdio/u8-vsprintf: New file.
5373         * modules/unistdio/u8-u8-asnprintf: New file.
5374         * modules/unistdio/u8-u8-asprintf: New file.
5375         * modules/unistdio/u8-u8-snprintf: New file.
5376         * modules/unistdio/u8-u8-sprintf: New file.
5377         * modules/unistdio/u8-u8-vasnprintf: New file.
5378         * modules/unistdio/u8-u8-vasprintf: New file.
5379         * modules/unistdio/u8-u8-vsnprintf: New file.
5380         * modules/unistdio/u8-u8-vsprintf: New file.
5381         * modules/unistdio/u16-asnprintf: New file.
5382         * modules/unistdio/u16-asprintf: New file.
5383         * modules/unistdio/u16-printf-parse: New file.
5384         * modules/unistdio/u16-snprintf: New file.
5385         * modules/unistdio/u16-sprintf: New file.
5386         * modules/unistdio/u16-vasnprintf: New file.
5387         * modules/unistdio/u16-vasprintf: New file.
5388         * modules/unistdio/u16-vsnprintf: New file.
5389         * modules/unistdio/u16-vsprintf: New file.
5390         * modules/unistdio/u16-u16-asnprintf: New file.
5391         * modules/unistdio/u16-u16-asprintf: New file.
5392         * modules/unistdio/u16-u16-snprintf: New file.
5393         * modules/unistdio/u16-u16-sprintf: New file.
5394         * modules/unistdio/u16-u16-vasnprintf: New file.
5395         * modules/unistdio/u16-u16-vasprintf: New file.
5396         * modules/unistdio/u16-u16-vsnprintf: New file.
5397         * modules/unistdio/u16-u16-vsprintf: New file.
5398         * modules/unistdio/u32-asnprintf: New file.
5399         * modules/unistdio/u32-asprintf: New file.
5400         * modules/unistdio/u32-printf-parse: New file.
5401         * modules/unistdio/u32-snprintf: New file.
5402         * modules/unistdio/u32-sprintf: New file.
5403         * modules/unistdio/u32-vasnprintf: New file.
5404         * modules/unistdio/u32-vasprintf: New file.
5405         * modules/unistdio/u32-vsnprintf: New file.
5406         * modules/unistdio/u32-vsprintf: New file.
5407         * modules/unistdio/u32-u32-asnprintf: New file.
5408         * modules/unistdio/u32-u32-asprintf: New file.
5409         * modules/unistdio/u32-u32-snprintf: New file.
5410         * modules/unistdio/u32-u32-sprintf: New file.
5411         * modules/unistdio/u32-u32-vasnprintf: New file.
5412         * modules/unistdio/u32-u32-vasprintf: New file.
5413         * modules/unistdio/u32-u32-vsnprintf: New file.
5414         * modules/unistdio/u32-u32-vsprintf: New file.
5415         * modules/unistdio/ulc-asnprintf-tests: New file.
5416         * modules/unistdio/ulc-vasnprintf-tests: New file.
5417         * modules/unistdio/ulc-vasprintf-tests: New file.
5418         * modules/unistdio/ulc-vsnprintf-tests: New file.
5419         * modules/unistdio/ulc-vsprintf-tests: New file.
5420         * modules/unistdio/u8-asnprintf-tests: New file.
5421         * modules/unistdio/u8-vasnprintf-tests: New file.
5422         * modules/unistdio/u8-vasprintf-tests: New file.
5423         * modules/unistdio/u8-vsnprintf-tests: New file.
5424         * modules/unistdio/u8-vsprintf-tests: New file.
5425         * modules/unistdio/u16-asnprintf-tests: New file.
5426         * modules/unistdio/u16-vasnprintf-tests: New file.
5427         * modules/unistdio/u16-vasprintf-tests: New file.
5428         * modules/unistdio/u16-vsnprintf-tests: New file.
5429         * modules/unistdio/u16-vsprintf-tests: New file.
5430         * modules/unistdio/u32-asnprintf-tests: New file.
5431         * modules/unistdio/u32-vasnprintf-tests: New file.
5432         * modules/unistdio/u32-vasprintf-tests: New file.
5433         * modules/unistdio/u32-vsnprintf-tests: New file.
5434         * modules/unistdio/u32-vsprintf-tests: New file.
5435         * MODULES.html.sh (Unicode string functions): Add the new modules.
5436
5437 2007-07-01  Bruno Haible  <bruno@clisp.org>
5438
5439         * lib/sprintf.c (sprintf): Limit the available length estimation,
5440         to avoid address wraparound.
5441         * lib/vsprintf.c (vsprintf): Likewise.
5442         * modules/sprintf-posix (Dependencies): Add stdint.
5443         * modules/vsprintf-posix (Dependencies): Likewise.
5444
5445 2007-07-01  Bruno Haible  <bruno@clisp.org>
5446
5447         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
5448         Windows PATH as well. Conservative double-quoting. Comments.
5449
5450 2007-07-01  Bruno Haible  <bruno@clisp.org>
5451             Eric Blake  <ebb9@byu.net>
5452             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5453
5454         * gnulib-tool (self_abspathname): Fix algorithm to cope with
5455         empty components in $PATH, denoting '.'.
5456
5457 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5458
5459         * gnulib-tool: Fix indentation.
5460         (func_create_megatestdir): Likewise.
5461         Report by Bruno Haible.
5462
5463 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5464
5465         Sync from Automake.
5466         * build-aux/gnupload: Fix shell portability issues with for loops.
5467         Report by Karl Berry.
5468
5469 2007-06-29  Simon Josefsson  <simon@josefsson.org>
5470
5471         * build-aux/maint.mk (POURL): Use translationproject.org.
5472
5473 2007-06-27  Simon Josefsson  <simon@josefsson.org>
5474             Bruno Haible  <bruno@clisp.org>
5475
5476         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
5477         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
5478         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
5479         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
5480         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
5481
5482 2007-06-27  Bruno Haible  <bruno@clisp.org>
5483
5484         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
5485         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
5486
5487 2007-06-26  Karl Berry  <karl@gnu.org>
5488
5489         * MODULES.html.sh: remove xreadlink-with-size.
5490
5491 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
5492
5493         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
5494         method that I hope also handles the double-include problem noted
5495         by Bruno Haible in
5496         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
5497
5498 2007-06-23  Bruno Haible  <bruno@clisp.org>
5499
5500         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
5501         Don't let the 'mostlyclean' target fail if the last subdirectory could
5502         not be removed.
5503         Reported by Karl Berry.
5504
5505 2007-06-23  Bruno Haible  <bruno@clisp.org>
5506
5507         * gnulib-tool (echo): Add a speedier workaround for ksh.
5508         * tests/test-echo.sh: Likewise.
5509
5510 2007-06-23  Bruno Haible  <bruno@clisp.org>
5511
5512         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
5513         * tests/test-echo.sh: Likewise.
5514
5515 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5516
5517         * gnulib-tool (IFS): Initialize early, so we don't set it to
5518         empty later.
5519         (self_abspathname): Rewrite algorithm to set it, reindent.
5520         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
5521         (func_create_megatestdir): Merge some sed scripts.
5522
5523 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
5524
5525         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
5526         exposed by Sun Studio 11 cc on Solaris 8.
5527
5528 2007-06-22  Bruno Haible  <bruno@clisp.org>
5529
5530         * gnulib-tool (echo): Ensure the echo primitive does not interpret
5531         backslashes.
5532         * tests/test-echo.sh: New file.
5533
5534 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5535
5536         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
5537         simplify `sed_replace_build_aux' scripts, they are portable but
5538         echoing them with `echo' is not.
5539         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
5540
5541 2007-06-21  Karl Berry  <karl@gnu.org>
5542
5543         * config/srclist.txt: guess we can't handle the licenses via
5544         srclist at the moment.
5545
5546 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
5547
5548         * MODULES.html.sh: Add include_next.
5549         * modules/include_next: New file.
5550
5551 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
5552
5553         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
5554         INCLUDE_NEXT.
5555         (gl_CHECK_NEXT_HEADERS): New macro.
5556         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
5557         the obsolescent gl_ABSOLUTE_HEADER.
5558         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
5559         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
5560         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
5561         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
5562         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
5563         * m4/math_h.m4 (gl_MATH_H): Likewise.
5564         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
5565         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
5566         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
5567         * m4/stdint.m4 (gl_STDINT_H): Likewise.
5568         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
5569         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
5570         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
5571         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
5572         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
5573         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
5574         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
5575         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
5576         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
5577         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
5578         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
5579         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
5580         * m4/inttypes.m4 (gl_INTTYPES_H): Define
5581         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
5582         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
5583         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
5584         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
5585         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
5586         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
5587         * lib/float_.h: Likewise.
5588         * lib/inttypes_.h: Likewise.
5589         * lib/math_.h: Likewise.
5590         * lib/search_.h: Likewise.
5591         * lib/signal_.h: Likewise.
5592         * lib/stdint_.h: Likewise.
5593         * lib/stdio_.h: Likewise.
5594         * lib/stdlib_.h: Likewise.
5595         * lib/string_.h: Likewise.
5596         * lib/sys_stat_.h: Likewise.
5597         * lib/sys_time_.h: Likewise.
5598         * lib/time_.h: Likewise.
5599         * lib/unistd_.h: Likewise.
5600         * lib/wchar_.h: Likewise.
5601         * lib/wctype_.h: Likewise.
5602         * lib/dirent_.h: Likewise.
5603         * lib/iconv_.h: Likewise.
5604         * lib/locale_.h: Likewise.
5605         * lib/netinet_in_.h: Likewise.
5606         * lib/sys_select_.h: Likewise.
5607         * lib/sys_socket_.h: Likewise.
5608         * lib/sysexits_.h: Likewise.
5609         * modules/fcntl (Depends-on): Depend on include_next, not
5610         absolute_header.
5611         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
5612         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
5613         * modules/fchdir: Likewise.
5614         * modules/float: Likewise.
5615         * modules/iconv_open: Likewise.
5616         * modules/inttypes: Likewise.
5617         * modules/locale: Likewise.
5618         * modules/math: Likewise.
5619         * modules/netinet_in: Likewise.
5620         * modules/search: Likewise.
5621         * modules/signal: Likewise.
5622         * modules/stdint: Likewise.
5623         * modules/stdio: Likewise.
5624         * modules/stdlib: Likewise.
5625         * modules/string: Likewise.
5626         * modules/sys_select: Likewise.
5627         * modules/sys_socket: Likewise.
5628         * modules/sys_stat: Likewise.
5629         * modules/sys_time: Likewise.
5630         * modules/sysexits: Likewise.
5631         * modules/time: Likewise.
5632         * modules/unistd: Likewise.
5633         * modules/wchar: Likewise.
5634         * modules/wctype: Likewise.
5635         * modules/sys_stat: Change maintainer to "all".
5636         * modules/unistd: Likewise.
5637
5638 2007-06-20  Karl Berry  <karl@gnu.org>
5639
5640         * config/srclist.txt: track www changes in license files.
5641
5642 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
5643
5644         * build-aux/bootstrap: Remove stray dot.
5645         Make sure build_aux settings are honored when linking
5646         gnulib_extra_files.
5647
5648 2007-06-19  Eric Blake  <ebb9@byu.net>
5649
5650         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
5651         Allow compilation on cygwin.
5652
5653 2007-06-19  Jim Meyering  <jim@meyering.net>
5654
5655         xreadlink-with-size: Remove module.  No longer used.
5656         Ex-callers now use xreadlink or mreadlink-with-size.
5657         * modules/xreadlink-with-size: Remove module.
5658         * lib/xreadlink-with-size.c: Remove file.
5659         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
5660         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
5661         just before the function definition *is* accurate.
5662
5663         Eliminate one way canonicalize_filename_mode could exit.
5664         * lib/canonicalize.c (canonicalize_filename_mode):
5665         Use mreadlink_with_size, not xreadlink_with_size.
5666
5667 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
5668
5669         Detect porting problems to FreeBSD/arm, which has time_t wider than
5670         long int.  Original problem reported for GNU diff by Xin Li in
5671         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
5672         * modules/getdate (Depends-on): Add intprops, verify.
5673         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
5674         is an integer type no wider than long int.
5675
5676 2007-06-18  Jim Meyering  <jim@meyering.net>
5677
5678         New module: mreadlink-with-size.
5679         * MODULES.html.sh: Add mreadlink-with-size.
5680         * modules/mreadlink-with-size: New module
5681         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
5682         not xreadlink-with-size.
5683         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
5684
5685 2007-06-16  Bruno Haible  <bruno@clisp.org>
5686
5687         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
5688         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
5689         Reported by Gary V. Vaughan <gary@gnu.org>.
5690
5691 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
5692
5693         Revamp lchown so that it lives in unistd.h where it belongs.
5694         * lib/lchown.h: Remove.
5695         * lib/dirchownmod.c: Don't include lib/lchown.h.
5696         * lib/fchownat.c: Likewise.
5697         * lib/openat.c: Likewise.
5698         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
5699         does not follow symlinks.
5700         (EOPNOTSUPP): Define if not defined.
5701         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
5702         is defined to 0.
5703         (lchown): New decl.
5704         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
5705         Do not check for lchown decl.
5706         Set REPLACE_LCHOWN.
5707         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
5708         REPLACE_LCHOWN.
5709         * modules/chown: Make it clear it follows symlinks.
5710         * modules/lchown: Make it clear it doesn't follow symlinks.
5711         (Files): Remove lib/lchown.h
5712         (Depends-on): Add unistd.
5713         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
5714         (Include): Include <unistd.h>, not "lchown.h".
5715         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
5716         REPLACE_LCHOWN.
5717
5718 2007-06-15  Jim Meyering  <jim@meyering.net>
5719
5720         Change license (GPL to LGPL) of fsusage and dependents.
5721         * modules/fsusage (License): Change to LGPL.
5722         * modules/full-read (License): Likewise.
5723         * modules/full-write (License): Likewise.
5724         * modules/safe-read (License): Likewise.
5725         * modules/safe-write (License): Likewise.
5726
5727 2007-06-14  Ben Pfaff  <blp@gnu.org>
5728
5729         Missing part of allocsa -> malloca transition.
5730         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
5731         gl_MALLOCA.
5732
5733 2007-06-12  Bruno Haible  <bruno@clisp.org>
5734
5735         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
5736         to ia64, x86_64, i386.
5737         Reported by Eric Blake.
5738
5739 2007-06-12  Bruno Haible  <bruno@clisp.org>
5740
5741         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
5742         cross-compiling to x86_64.
5743
5744 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
5745
5746         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
5747         glitch reported by Ralf Wildenhues in
5748         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
5749
5750         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
5751         Vin Shelton.
5752
5753 2007-06-11  Bruno Haible  <bruno@clisp.org>
5754
5755         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
5756         replacement string.
5757         Reported by Eric Blake.
5758
5759 2007-06-10  Bruno Haible  <bruno@clisp.org>
5760
5761         Prepare vasnprintf code for use with Unicode strings.
5762         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
5763         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
5764         TYPE_U32_STRING.
5765         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
5766         a_u32_string variants.
5767         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
5768         * lib/printf-args.c: Don't include config.h and the specification
5769         header if PRINTF_FETCHARGS is already defined.
5770         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
5771         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
5772         TYPE_U16_STRING, TYPE_U32_STRING.
5773         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
5774         u16_directive, u16_directives, u32_directive, u32_directives): New
5775         types.
5776         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
5777         New declarations.
5778         * lib/printf-parse.c: Don't include config.h and the specification
5779         header if PRINTF_PARSE is already defined. Eliminate the set of
5780         parameters for WIDE_CHAR_VERSION; the user of this file must provide
5781         them now. Include c-ctype.h.
5782         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
5783         directive and CHAR_T_ONLY_ASCII.
5784         * lib/vasnprintf.c: Don't include config.h and the specification header
5785         if VASNPRINTF is already defined.
5786         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
5787         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
5788         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
5789         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
5790         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
5791         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
5792         code accordingly.
5793         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
5794         pad_ourselves also in this case, with the 'c' and 's' directives, and
5795         with a different notion of "width".
5796         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
5797
5798 2007-06-10  Bruno Haible  <bruno@clisp.org>
5799
5800         * modules/unistr/u32-mbsnlen: New file.
5801         * lib/unistr/u32-mbsnlen.c: New file.
5802
5803         * modules/unistr/u16-mbsnlen: New file.
5804         * lib/unistr/u16-mbsnlen.c: New file.
5805
5806         * modules/unistr/u8-mbsnlen: New file.
5807         * lib/unistr/u8-mbsnlen.c: New file.
5808
5809         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
5810         declarations.
5811
5812 2007-06-10  Bruno Haible  <bruno@clisp.org>
5813
5814         * lib/string_.h (mbsnlen): New declaration.
5815         * lib/mbsnlen.c: New file.
5816         * m4/mbsnlen.m4: New file.
5817         * modules/mbsnlen: New file.
5818         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
5819         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
5820         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
5821
5822 2007-06-10  Bruno Haible  <bruno@clisp.org>
5823
5824         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
5825
5826 2007-06-10  Bruno Haible  <bruno@clisp.org>
5827
5828         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
5829         * lib/mbuiter.h: Likewise.
5830
5831 2007-06-10  Bruno Haible  <bruno@clisp.org>
5832
5833         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
5834         declaration.
5835
5836 2007-06-10  Karl Berry  <karl@gnu.org>
5837
5838         * config/srclist.txt: remove gettext entries, Bruno prefers
5839         to update individually.
5840
5841 2007-06-10  Bruno Haible  <bruno@clisp.org>
5842
5843         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
5844         'maxlen'. Ensure only length + width bytes are allocated, not
5845         length + 1 + width.
5846
5847 2007-06-09  Bruno Haible  <bruno@clisp.org>
5848
5849         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
5850         (CHAR_T): Remove macro.
5851         (VASNPRINTF): Update.
5852
5853 2007-06-09  Bruno Haible  <bruno@clisp.org>
5854
5855         * MODULES.html.sh (Unicode string functions): Add the new modules.
5856
5857         * modules/uniconv/u32-conv-to-enc: New file.
5858         * lib/uniconv/u32-conv-to-enc.c: New file.
5859         * modules/uniconv/u32-conv-to-enc-tests: New file.
5860         * tests/uniconv/test-u32-conv-to-enc.c: New file.
5861
5862         * modules/uniconv/u16-conv-to-enc: New file.
5863         * lib/uniconv/u16-conv-to-enc.c: New file.
5864         * lib/uniconv/u-conv-to-enc.h: New file.
5865         * modules/uniconv/u16-conv-to-enc-tests: New file.
5866         * tests/uniconv/test-u16-conv-to-enc.c: New file.
5867
5868         * modules/uniconv/u8-conv-to-enc: New file.
5869         * lib/uniconv/u8-conv-to-enc.c: New file.
5870         * modules/uniconv/u8-conv-to-enc-tests: New file.
5871         * tests/uniconv/test-u8-conv-to-enc.c: New file.
5872
5873         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
5874         u32_conv_to_encoding): New declarations.
5875
5876 2007-06-09  Bruno Haible  <bruno@clisp.org>
5877
5878         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
5879
5880 2007-06-09  Bruno Haible  <bruno@clisp.org>
5881
5882         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
5883         * modules/malloca: Renamed from modules/allocsa, updated.
5884         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
5885         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
5886         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
5887         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
5888         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
5889         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
5890         * modules/xmalloca: Renamed from modules/xallocsa, updated.
5891         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
5892         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
5893         * modules/c-strcasestr (Depends-on): Update.
5894         * lib/c-strcasestr.c: Update.
5895         * modules/c-strstr (Depends-on): Update.
5896         * lib/c-strstr.c: Update.
5897         * modules/canonicalize-lgpl (Depends-on): Update.
5898         * lib/canonicalize-lgpl.c: Update.
5899         * modules/clean-temp (Depends-on): Update.
5900         * lib/clean-temp.c: Update.
5901         * modules/csharpcomp (Depends-on): Update.
5902         * lib/csharpcomp.c: Update.
5903         * modules/csharpexec (Depends-on): Update.
5904         * lib/csharpexec.c: Update.
5905         * modules/javacomp (Depends-on): Update.
5906         * lib/javacomp.c: Update.
5907         * modules/javaexec (Depends-on): Update.
5908         * lib/javaexec.c: Update.
5909         * modules/mbscasestr (Depends-on): Update.
5910         * lib/mbscasestr.c: Update.
5911         * modules/mbsstr (Depends-on): Update.
5912         * lib/mbsstr.c: Update.
5913         * modules/setenv (Depends-on): Update.
5914         * lib/setenv.c: Update.
5915         * modules/strcasestr (Depends-on): Update.
5916         * lib/strcasestr.c: Update.
5917         * modules/striconveha (Depends-on): Update.
5918         * lib/striconveha.c: Update.
5919         * modules/relocatable-prog-wrapper (Files): Update.
5920         * lib/relocwrapper.c: Update.
5921         * build-aux/install-reloc: Update.
5922         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
5923
5924 2007-06-08  Bruno Haible  <bruno@clisp.org>
5925
5926         Port to uClibc.
5927         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
5928         * lib/fpurge.c (fpurge): Likewise.
5929         * lib/freading.c (freading): Likewise.
5930         * lib/fseeko.c (rpl_fseeko): Likewise.
5931         * lib/fseterr.c (fseterr): Likewise.
5932         * lib/fwriting.c (fwriting): Likewise.
5933         * tests/test-fflush.c (main): Avoid a failure on uClibc.
5934
5935 2007-06-08  Bruno Haible  <bruno@clisp.org>
5936
5937         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
5938         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
5939         * modules/gettext (Files): Add m4/intlmacosx.m4.
5940
5941 2007-06-07  Bruno Haible  <bruno@clisp.org>
5942
5943         * modules/localename-tests: New file.
5944         * tests/test-localename.c: New file.
5945
5946         New module 'localename'.
5947         * lib/localename.h: New file.
5948         * lib/localename.c: New file, from GNU gettext.
5949         * m4/localename.m4: New file.
5950         * modules/localename: New file.
5951
5952 2007-06-07  Bruno Haible  <bruno@clisp.org>
5953
5954         Work around the lack of <wchar.h> on some builds of uClibc.
5955         * doc/headers/wchar.texi: Update.
5956         * lib/wchar_.h: Include <wchar.h> only if it exists.
5957         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
5958         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
5959         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
5960         doesn't exist.
5961         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
5962         * modules/mbfile (Depends-on): Add wchar.
5963         * modules/mbiter (Depends-on): Likewise.
5964         * modules/mbuiter (Depends-on): Likewise.
5965         Reported by Simon Josefsson.
5966
5967 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
5968
5969         Work around problem reported by Steven M. Schweda in
5970         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
5971         Tru64 5.1B with the Compaq compiler environment installed declares
5972         an 'isblank' function but does not define it in the C library.
5973         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
5974         * lib/regex_internal.h (isblank): Likewise.
5975         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
5976         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
5977
5978 2007-06-05  Bruno Haible  <bruno@clisp.org>
5979
5980         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
5981         ia64.
5982         * modules/printf-safe: New file.
5983         * modules/fprintf-posix (Depends-on): Add printf-safe.
5984         * modules/printf-posix (Depends-on): Likewise.
5985         * modules/snprintf-posix (Depends-on): Likewise.
5986         * modules/sprintf-posix (Depends-on): Likewise.
5987         * modules/vasnprintf-posix (Depends-on): Likewise.
5988         * modules/vasprintf-posix (Depends-on): Likewise.
5989         * modules/vfprintf-posix (Depends-on): Likewise.
5990         * modules/vprintf-posix (Depends-on): Likewise.
5991         * modules/vsnprintf-posix (Depends-on): Likewise.
5992         * modules/vsprintf-posix (Depends-on): Likewise.
5993         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
5994         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
5995         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
5996         "no" on i386, x86_64, ia64.
5997         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
5998         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
5999         on i386, x86_64, ia64.
6000         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
6001         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
6002         on i386, x86_64, ia64.
6003         * tests/test-vasnprintf-posix.c: Include float.h.
6004         (LDBL80_WORDS): New macro.
6005         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
6006         on i386, x86_64, ia64.
6007         * tests/test-vasprintf-posix.c: Include float.h.
6008         (LDBL80_WORDS): New macro.
6009         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
6010         on i386, x86_64, ia64.
6011         * tests/test-snprintf-posix.c: Include float.h.
6012         * tests/test-sprintf-posix.c: Likewise.
6013         * tests/test-vsnprintf-posix.c: Likewise.
6014         * tests/test-vsprintf-posix.c: Likewise.
6015
6016 2007-06-05  Bruno Haible  <bruno@clisp.org>
6017
6018         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
6019         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
6020         non-IEEE numbers on i386, x86_64, ia64.
6021         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
6022         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
6023         * tests/test-isnanl.h: Include float.h.
6024         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
6025
6026 2007-06-05  Bruno Haible  <bruno@clisp.org>
6027
6028         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
6029         also the %a / %A. Handle the %a / %A code before this extra handling.
6030
6031 2007-06-05  Bruno Haible  <bruno@clisp.org>
6032
6033         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
6034         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
6035
6036 2007-06-05  Bruno Haible  <bruno@clisp.org>
6037
6038         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
6039         typo in variable name.
6040
6041 2007-06-05  Eric Blake  <ebb9@byu.net>
6042
6043         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
6044         Reported by Simon Josefsson.
6045
6046 2007-06-04  Bruno Haible  <bruno@clisp.org>
6047
6048         Avoid test failures on some PowerPC platforms.
6049         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
6050         Define differently for PowerPC.
6051         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
6052         Reported by Gary V. Vaughan <gary@gnu.org>.
6053
6054 2007-06-02  Bruno Haible  <bruno@clisp.org>
6055
6056         Fix test-stdint failure on FreeBSD/ia64.
6057         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
6058         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
6059         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
6060         * doc/headers/stdint.texi: Update.
6061
6062 2007-06-01  Bruno Haible  <bruno@clisp.org>
6063
6064         * tests/test-binary-io.c (main): Pass a third argument to open().
6065         Reported by Gary V. Vaughan <gary@gnu.org>.
6066
6067 2007-06-01  Bruno Haible  <bruno@clisp.org>
6068
6069         * doc/functions/frexpl.texi: Update for mingw.
6070
6071 2007-06-01  Bruno Haible  <bruno@clisp.org>
6072
6073         * tests/test-lseek.c (main): Disable test of errno for invalid third
6074         argument.
6075         * doc/functions/lseek.texi: Update.
6076         Reported by Gary V. Vaughan <gary@gnu.org>.
6077
6078 2007-05-28  Bruno Haible  <bruno@clisp.org>
6079
6080         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
6081
6082 2007-05-31  Eric Blake  <ebb9@byu.net>
6083
6084         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
6085         cross compiling.
6086
6087 2007-05-30  Eric Blake  <ebb9@byu.net>
6088         and Bruno Haible  <bruno@clisp.org>
6089
6090         Work around mingw test failures exposed by m4-1.4.9b.
6091         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
6092         * tests/test-unistd.c: Disable uid_t and git_t tests for the
6093         moment.
6094
6095 2007-05-30  Bruno Haible  <bruno@clisp.org>
6096
6097         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
6098         assuming that they are closed. Needed on HP-UX 11.
6099
6100 2007-05-29  Bruno Haible  <bruno@clisp.org>
6101
6102         Fix a problem with #include_next.
6103         * lib/dirent_.h: Split the double-inclusion guard.
6104         * lib/fcntl_.h: Likewise.
6105         * lib/float_.h: Likewise.
6106         * lib/iconv_.h: Likewise.
6107         * lib/inttypes_.h: Likewise.
6108         * lib/locale_.h: Likewise.
6109         * lib/math_.h: Likewise.
6110         * lib/netinet_in_.h: Likewise.
6111         * lib/search_.h: Likewise.
6112         * lib/signal_.h: Likewise.
6113         * lib/stdint_.h: Likewise.
6114         * lib/stdio_.h: Likewise.
6115         * lib/stdlib_.h: Likewise.
6116         * lib/string_.h: Likewise.
6117         * lib/sys_select_.h: Likewise.
6118         * lib/sys_socket_.h: Likewise.
6119         * lib/sys_stat_.h: Likewise.
6120         * lib/sys_time_.h: Likewise.
6121         * lib/sysexits_.h: Likewise.
6122         * lib/time_.h: Likewise.
6123         * lib/unistd_.h: Likewise.
6124         * lib/wchar_.h: Likewise.
6125         * lib/wctype_.h: Likewise.
6126
6127 2007-05-29  Bruno Haible  <bruno@clisp.org>
6128
6129         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
6130         for the moment.
6131
6132 2007-05-29  Bruno Haible  <bruno@clisp.org>
6133
6134         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
6135         invocation.
6136         Reported by Eric Blake.
6137
6138 2007-05-29  Bruno Haible  <bruno@clisp.org>
6139
6140         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
6141         compiling case.
6142
6143 2007-05-29  Eric Blake  <ebb9@byu.net>
6144             Bruno Haible  <bruno@clisp.org>
6145
6146         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
6147         cross compiles.
6148
6149 2007-05-28  Eric Blake  <ebb9@byu.net>
6150
6151         * modules/closein-tests (test_closein_LDADD): Support test on
6152         cygwin with libtool.
6153
6154 2007-05-28  Bruno Haible  <bruno@clisp.org>
6155
6156         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
6157         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
6158         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
6159         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
6160         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
6161         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
6162         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
6163         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
6164         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
6165
6166 2007-05-28  Eric Blake  <ebb9@byu.net>
6167
6168         Unconditionally include <config.h> in unit tests.
6169         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
6170         * tests/test-allocsa.c, tests/test-arcfour.c,
6171         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
6172         tests/test-array_list.c, tests/test-array_oset.c,
6173         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
6174         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
6175         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
6176         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
6177         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
6178         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
6179         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
6180         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
6181         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
6182         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
6183         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
6184         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
6185         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
6186         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
6187         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
6188         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
6189         test-md5.c, test-memmem.c, test-printf-posix.c,
6190         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
6191         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
6192         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
6193         test-strcasestr.c, test-striconv.c, test-striconveh.c,
6194         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
6195         test-vasnprintf-posix2.c, test-vasnprintf.c,
6196         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
6197         test-vfprintf-posix.c, test-vprintf-posix.c,
6198         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
6199         test-xvasprintf.c: Likewise.
6200
6201 2007-05-28  Bruno Haible  <bruno@clisp.org>
6202
6203         * gnulib-tool (func_import): Remember the --with-tests command-line
6204         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
6205         Reported by Eric Blake.
6206
6207 2007-05-28  Bruno Haible  <bruno@clisp.org>
6208
6209         * modules/ftell-tests: New file.
6210         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
6211         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
6212
6213         * lib/ftell.c: New file.
6214         * modules/ftell: New file.
6215         * m4/ftell.m4: New file.
6216         * doc/functions/ftell.texi: Update.
6217         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
6218         REPLACE_FTELL.
6219         * lib/stdio_.h (rpl_ftell): New declaration.
6220         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
6221         REPLACE_FTELL.
6222
6223 2007-05-28  Eric Blake  <ebb9@byu.net>
6224
6225         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
6226
6227 2007-05-28  Bruno Haible  <bruno@clisp.org>
6228
6229         * modules/fseek-tests: New file.
6230         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
6231         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
6232
6233         * lib/fseek.c: New file.
6234         * modules/fseek: New file.
6235         * m4/fseek.m4: New file.
6236         * doc/functions/fseek.texi: Update.
6237         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
6238         REPLACE_FSEEK.
6239         * lib/stdio_.h (rpl_fseek): New declaration.
6240         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
6241         REPLACE_FSEEK.
6242
6243 2007-05-28  Bruno Haible  <bruno@clisp.org>
6244
6245         * lib/stdio_.h (fflush): More comments.
6246
6247 2007-05-28  Bruno Haible  <bruno@clisp.org>
6248
6249         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
6250         runtime test.
6251
6252 2007-05-28  Eric Blake  <ebb9@byu.net>
6253
6254         Improve lseek module.
6255         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
6256         * lib/unistd_.h (lseek): Scale back link warning message.
6257         * tests/test-lseek.c: Beef up test.
6258         * tests/test-lseek.sh: Exercise more facets of lseek.
6259         Reported by Bruno Haible.
6260
6261 2007-05-28  Bruno Haible  <bruno@clisp.org>
6262
6263         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
6264         to define.
6265
6266 2007-05-27  Bruno Haible  <bruno@clisp.org>
6267
6268         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
6269
6270 2007-05-27  Bruno Haible  <bruno@clisp.org>
6271
6272         * modules/openmp: New file.
6273         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
6274         Noah Misch.
6275
6276 2007-05-26  Bruno Haible  <bruno@clisp.org>
6277
6278         * modules/chdir-long (Depends-on): Add fchdir.
6279         * modules/chdir-safer (Depends-on): Likewise.
6280         * modules/fts (Depends-on): Likewise.
6281         * modules/fts-lgpl (Depends-on): Likewise.
6282         * modules/openat (Depends-on): Likewise.
6283         * modules/savewd (Depends-on): Likewise.
6284
6285 2007-05-24  Eric Blake  <ebb9@byu.net>
6286
6287         Fix lseek on mingw.
6288         * modules/lseek: New module.
6289         * m4/lseek.m4: New file.
6290         * lib/lseek.c: New file.
6291         * modules/lseek-tests: New file.
6292         * tests/test-lseek.c: New file.
6293         * tests/test-lseek.sh: New file.
6294         * MODULES.html.sh: Document lseek module.
6295         * modules/fflush (Depends-on): Add lseek, fseeko.
6296         * modules/fseeko (Depends-on): Likewise.
6297         * modules/ftello (Depends-on): Likewise.
6298         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
6299         broken.
6300         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
6301         broken.
6302         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
6303         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
6304         * lib/ftello.c (rpl_ftello): Likewise.
6305         * tests/test-fseeko.c (main): Test this.
6306         * tests/test-fseeko.sh: Likewise.
6307         * tests/test-ftello.c (main): Likewise.
6308         * tests/test-ftello.sh: Likewise.
6309         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
6310         implies replacing fseek.
6311         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
6312         HAVE_FTELLO.
6313         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
6314         * modules/unistd (Makefile.am): Likewise.
6315         * lib/unistd_.h (lseek): Declare a replacement.
6316         * doc/functions/lseek.texi (lseek): Document this fix.
6317         * doc/functions/fseek.texi (fseek): Likewise.
6318         * doc/functions/ftell.texi (ftell): Likewise.
6319
6320 2007-05-24  Bruno Haible  <bruno@clisp.org>
6321
6322         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
6323         in the printed representation of a NaN.
6324         * tests/test-vasprintf-posix.c (test_function): Likewise.
6325         * tests/test-snprintf-posix.h (test_function): Likewise.
6326         * tests/test-sprintf-posix.h (test_function): Likewise.
6327         Reported by Eric Blake.
6328
6329 2007-05-23  Eric Blake  <ebb9@byu.net>
6330
6331         Fix fseeko/ftello on cygwin 1.5.24.
6332         * doc/functions/fseeko.texi (fseeko): Document the fix.
6333         * doc/functions/ftello.texi (ftello): Document the fix.
6334         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
6335         * doc/functions/stdout.text (stdout): New file.
6336         * doc/functions/stderr.text (stderr): New file.
6337         * doc/gnulib.texi (Function Substitutes): Use new files.
6338         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
6339         prior to 1.7.0.
6340         * tests/test-ftello.c (main): Likewise for ftello.
6341         * tests/test-fseeko.sh: New file.
6342         * tests/test-ftello.sh: New file.
6343         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
6344         with seekable stdin.
6345         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
6346         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
6347         (gl_REPLACE_FSEEKO): New macro.
6348         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
6349         * modules/fseeko (Files): Distribute fseeko.c.
6350         * modules/ftello (Files): Distribute ftello.c.
6351         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
6352         mode.
6353         * lib/ftello.c (rpl_ftello): New file.
6354         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
6355         fseeko, ftello.
6356         (gl_STDIN_LARGE_OFFSET): New macro.
6357         * modules/stdio (Makefile.am): Perform the replacement.
6358         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
6359
6360 2007-05-23  Bruno Haible  <bruno@clisp.org>
6361
6362         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
6363         GNULIB_POSIXCHECK is defined.
6364
6365 2007-05-21  Bruno Haible  <bruno@clisp.org>
6366
6367         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
6368         Check also the output for NaN arguments. When cross-compiling, guess
6369         no on IRIX.
6370         * lib/vasnprintf.c: Update comments.
6371         * tests/test-vasnprintf-posix.c (strisnan): New function.
6372         (test_function): Use it.
6373         * tests/test-vasprintf-posix.c (strisnan): New function.
6374         (test_function): Use it.
6375         * tests/test-snprintf-posix.h (strisnan): New function.
6376         (test_function): Use it.
6377         * tests/test-sprintf-posix.h (strisnan): New function.
6378         (test_function): Use it.
6379         Reported by Eric Blake.
6380
6381 2007-05-20  Bruno Haible  <bruno@clisp.org>
6382
6383         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
6384         numbers that fails on BeOS.
6385         * doc/functions/frexpl.texi: Update.
6386
6387 2007-05-20  Jim Meyering  <jim@meyering.net>
6388
6389         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
6390         forced upon us by glibc-2.6.
6391
6392 2007-05-20  Bruno Haible  <bruno@clisp.org>
6393
6394         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
6395         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
6396         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
6397         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
6398         NEED_PRINTF_INFINITE.
6399         (is_infinitel): New function.
6400         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
6401         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
6402         gl_PREREQ_VASNPRINTF_INFINITE.
6403         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
6404         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6405         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
6406         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
6407         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
6408         gl_PREREQ_VASNPRINTF_INFINITE.
6409         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6410         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6411         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6412         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6413         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6414         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6415         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6416         * doc/functions/fprintf.texi: Update.
6417         * doc/functions/printf.texi: Update.
6418         * doc/functions/snprintf.texi: Update.
6419         * doc/functions/sprintf.texi: Update.
6420         * doc/functions/vfprintf.texi: Update.
6421         * doc/functions/vprintf.texi: Update.
6422         * doc/functions/vsnprintf.texi: Update.
6423         * doc/functions/vsprintf.texi: Update.
6424
6425 2007-05-20  Bruno Haible  <bruno@clisp.org>
6426
6427         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
6428         was not found in libc.
6429         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
6430
6431 2007-05-20  Bruno Haible  <bruno@clisp.org>
6432
6433         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
6434         printed as "-nan" instead of "nan".
6435         * tests/test-vasprintf-posix.c (test_function): Likewise.
6436         * tests/test-snprintf-posix.h (test_function): Likewise.
6437         * tests/test-sprintf-posix.h (test_function): Likewise.
6438         Needed for HP-UX 11.
6439
6440 2007-05-20  Jim Meyering  <jim@meyering.net>
6441
6442         Fix buggy test for the fchownat-deref bug.
6443         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
6444         symlink required for the run-test.  Without it, this test would
6445         always declare that fchownat doesn't work, and client code would
6446         unnecessarily use the replacement function with fixed libc.
6447         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
6448         Reported by Greg Schafer.
6449
6450 2007-05-19  Bruno Haible  <bruno@clisp.org>
6451
6452         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
6453         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
6454         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
6455         Needed for IRIX 6.5 and Solaris 2.5.1.
6456
6457 2007-05-19  Bruno Haible  <bruno@clisp.org>
6458
6459         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
6460         (test_function): Skip tests involving -0.0 on platforms where
6461         -0.0 = 0.0.
6462         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
6463         (test_function): Skip tests involving -0.0 on platforms where
6464         -0.0 = 0.0.
6465         * tests/test-snprintf-posix.h (have_minus_zero): New function.
6466         (test_function): Skip tests involving -0.0 on platforms where
6467         -0.0 = 0.0.
6468         * tests/test-sprintf-posix.h (have_minus_zero): New function.
6469         (test_function): Skip tests involving -0.0 on platforms where
6470         -0.0 = 0.0.
6471         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
6472         tests.
6473         * tests/test-printf-posix.h (test_function): Likewise.
6474         * tests/test-printf-posix.output: Remove all -0.0 related results.
6475         Needed for IRIX 6.5.
6476
6477 2007-05-19  Bruno Haible  <bruno@clisp.org>
6478
6479         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
6480         printed as "nan0x7fffffff" instead of "nan".
6481         * tests/test-vasprintf-posix.c (test_function): Likewise.
6482         * tests/test-snprintf-posix.h (test_function): Likewise.
6483         * tests/test-sprintf-posix.h (test_function): Likewise.
6484         * tests/test-fprintf-posix.h (NaN): Remove macro.
6485         (test_function): Remove all NaN related tests.
6486         * tests/test-printf-posix.h (NaN): Remove macro.
6487         (test_function): Remove all NaN related tests.
6488         * tests/test-printf-posix.output: Remove all NaN related results.
6489         Needed for IRIX 6.5.
6490
6491 2007-05-19  Bruno Haible  <bruno@clisp.org>
6492
6493         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
6494         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
6495
6496 2007-05-19  Bruno Haible  <bruno@clisp.org>
6497
6498         * lib/float_.h: New file.
6499         * m4/float_h.m4: New file.
6500         * modules/float: New file.
6501         * modules/isnanl (Dependencies): Add float.
6502         * modules/isnanl-nolibm (Dependencies): Likewise.
6503         * modules/mathl (Dependencies): Likewise.
6504         * modules/printf-frexpl (Dependencies): Likewise.
6505         * modules/signbit (Dependencies): Likewise.
6506         * modules/vasnprintf (Dependencies): Likewise.
6507         * doc/headers/float.texi: Update.
6508
6509 2007-05-19  Jim Meyering  <jim@meyering.net>
6510
6511         * lib/utimens.c (gl_futimens): Rename from futimens,
6512         now that glibc-2.6 declares futimens.
6513         * lib/utimens.h: Likewise.
6514
6515 2007-05-19  Bruno Haible  <bruno@clisp.org>
6516
6517         Avoid test failures on mingw.
6518         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
6519         * tests/test-printf-posix.sh: Likewise.
6520         * tests/test-vfprintf-posix.sh: Likewise.
6521         * tests/test-vprintf-posix.sh: Likewise.
6522
6523 2007-05-19  Bruno Haible  <bruno@clisp.org>
6524
6525         Fix *printf result for NaN, Inf, -0.0 on mingw.
6526         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
6527         * lib/vasnprintf.c: Include math.h and isnan.h.
6528         (is_infinite_or_zero): New function.
6529         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
6530         values in the %f, %F, %e, %E, %g, %G directives.
6531         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
6532         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6533         gl_PRINTF_INFINITE and test its result. Invoke
6534         gl_PREREQ_VASNPRINTF_INFINITE.
6535         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6536         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6537         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6538         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6539         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6540         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6541         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6542         * doc/functions/fprintf.texi: Update.
6543         * doc/functions/printf.texi: Update.
6544         * doc/functions/snprintf.texi: Update.
6545         * doc/functions/sprintf.texi: Update.
6546         * doc/functions/vfprintf.texi: Update.
6547         * doc/functions/vprintf.texi: Update.
6548         * doc/functions/vsnprintf.texi: Update.
6549         * doc/functions/vsprintf.texi: Update.
6550
6551 2007-05-19  Bruno Haible  <bruno@clisp.org>
6552
6553         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
6554         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
6555         Instead of multiplying with 10^k, set extra_zeroes to k.
6556         (scale10_round_long_double): Remove function.
6557
6558 2007-05-18  Bruno Haible  <bruno@clisp.org>
6559
6560         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
6561         introduced on 2007-05-06.
6562
6563 2007-05-18  Bruno Haible  <bruno@clisp.org>
6564
6565         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
6566         %g directives.
6567         * tests/test-vasprintf-posix.c (test_function): Likewise.
6568         * tests/test-snprintf-posix.h (test_function): Likewise.
6569         * tests/test-sprintf-posix.h (test_function): Likewise.
6570
6571 2007-05-18  Bruno Haible  <bruno@clisp.org>
6572
6573         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
6574         (strmatch): New function.
6575         (test_function): Test the %f directive on numbers of various exponents.
6576         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
6577         (strmatch): New function.
6578         (test_function): Test the %f directive on numbers of various exponents.
6579         * tests/test-snprintf-posix.h (strmatch): New function.
6580         (test_function): Test the %f directive on numbers of various exponents.
6581         * tests/test-sprintf-posix.h (strmatch): New function.
6582         (test_function): Test the %f directive on numbers of various exponents.
6583         * tests/test-snprintf-posix.c (SIZEOF): New macro.
6584         * tests/test-sprintf-posix.c (SIZEOF): New macro.
6585         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
6586         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
6587
6588 2007-05-18  Bruno Haible  <bruno@clisp.org>
6589
6590         Add support for 'long double' number output.
6591         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
6592         * lib/vasnprintf.c: Include math.h and float+.h.
6593         (mp_limb_t): New type.
6594         (GMP_LIMB_BITS): New macro.
6595         (mp_twolimb_t): New type.
6596         (GMP_TWOLIMB_BITS): New macro.
6597         (mpn_t): New type.
6598         (multiply, divide, convert_to_decimal, decode_long_double,
6599         scale10_round_long_double, scale10_round_decimal_long_double,
6600         floorlog10l): New functions.
6601         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
6602         for the %f, %F, %e, %E, %g, %G directives.
6603         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
6604         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6605         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
6606         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
6607         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6608         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6609         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6610         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6611         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6612         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6613         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6614         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
6615         * modules/snprintf-posix (Depends-on): Likewise.
6616         * modules/sprintf-posix (Depends-on): Likewise.
6617         * modules/vasnprintf-posix (Depends-on): Likewise.
6618         * modules/vasprintf-posix (Depends-on): Likewise.
6619         * modules/vfprintf-posix (Depends-on): Likewise.
6620         * modules/vsnprintf-posix (Depends-on): Likewise.
6621         * modules/vsprintf-posix (Depends-on): Likewise.
6622         * modules/vasnprintf (Files): Add lib/float+.h.
6623         * doc/functions/fprintf.texi: Update.
6624         * doc/functions/printf.texi: Update.
6625         * doc/functions/snprintf.texi: Update.
6626         * doc/functions/sprintf.texi: Update.
6627         * doc/functions/vfprintf.texi: Update.
6628         * doc/functions/vprintf.texi: Update.
6629         * doc/functions/vsnprintf.texi: Update.
6630         * doc/functions/vsprintf.texi: Update.
6631
6632 2007-05-18  Bruno Haible  <bruno@clisp.org>
6633
6634         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
6635
6636 2007-05-18  Bruno Haible  <bruno@clisp.org>
6637
6638         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
6639         for printing 64-bit integers. Needed for mingw.
6640
6641 2007-05-18  Bruno Haible  <bruno@clisp.org>
6642
6643         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
6644         gl_FUNC_FREXPL_WORKS.
6645         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
6646
6647 2007-05-18  Bruno Haible  <bruno@clisp.org>
6648
6649         * modules/frexpl-nolibm-tests: New file.
6650
6651         * modules/frexpl-nolibm: New file.
6652         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
6653
6654 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
6655
6656         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
6657         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
6658         GCC 4.2, which otherwise issues a lot of warnings.
6659         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
6660         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
6661         Likewise.
6662         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
6663         * modules/iconv_open (iconv.h): Likewise.
6664         * modules/locale (locale.h): Likewise.
6665         * modules/netinet_in (netinet/in.h): Likewise.
6666         * modules/sys_select (sys_select.h): Likewise.
6667         * modules/sys_socket (sys/socket.h): Likewise.
6668         * modules/sys_stat (sys/stat.h): Likewise.
6669         * modules/sysexits (sysexits.h): Likewise.
6670         * modules/unistd (unistd.h): Likewise.
6671
6672 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6673
6674         * modules/closein-tests (Makefile.am): Distribute
6675         `test-closein.sh'.
6676
6677 2007-05-17  Bruno Haible  <bruno@clisp.org>
6678
6679         * tests/test-printf-posix.output: Renamed from
6680         tests/test-fprintf-posix.out.
6681         * modules/fprintf-posix-tests: Update.
6682         * modules/printf-posix-tests: Update.
6683         * modules/vfprintf-posix-tests: Update.
6684         * modules/vprintf-posix-tests: Update.
6685         * tests/test-fprintf-posix.sh: Update.
6686         * tests/test-printf-posix.sh: Update.
6687         * tests/test-vfprintf-posix.sh: Update.
6688         * tests/test-vprintf-posix.sh: Update.
6689         Reported by Ralf Wildenhues.
6690
6691 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
6692
6693         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
6694         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
6695         GCC 4.2, which otherwise issues a lot of warnings.
6696         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
6697         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
6698         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
6699         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
6700         it should no longer be needed.
6701         * lib/string_.h: Likewise.
6702         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
6703         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
6704         * modules/inttypes (inttypes.h): Likewise.
6705         * modules/math (math.h): Likewise.
6706         * modules/search (search.h): Likewise.
6707         * modules/signal (signal.h): Likewise.
6708         * modules/stdint (stdint.h): Likewise.
6709         * modules/stdio (stdio.h): Likewise.
6710         * modules/stdlib (stdlib.h): Likewise.
6711         * modules/string (string.h): Likewise.
6712         * modules/sys_time (sys/time.h): Likewise.
6713         * modules/time (time.h): Likewise.
6714         * modules/wchar (wchar.h): Likewise.
6715         * modules/wctype (wtype.h): Likewise.
6716
6717 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
6718
6719         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
6720
6721 2007-05-13  Bruno Haible  <bruno@clisp.org>
6722
6723         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
6724         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
6725         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
6726         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
6727         (gl_PREREQ_STRTOK_R): Don't require it here.
6728
6729 2007-05-13  Bruno Haible  <bruno@clisp.org>
6730
6731         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
6732         when used in C++ mode.
6733
6734 2007-05-12  Bruno Haible  <bruno@clisp.org>
6735
6736         * lib/linebuffer.h: Tweak doc.
6737         * lib/linebuffer.c: Likewise.
6738
6739 2007-05-12  James Youngman  <jay@gnu.org>
6740
6741         * lib/linebuffer.c (readlinebuffer_delim): New function,
6742         like readlinebuffer, but use a caller-specified delimiter.
6743         (readlinebuffer): Just call readlinebuffer_delim with '\n'
6744         as the delimiter.
6745         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
6746
6747 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
6748
6749         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
6750         * modules/openat (Files): Remove openat-die.c.
6751         (Depends-on): Add openat-die.
6752         * modules/openat-die: New module.
6753
6754 2007-05-06  Bruno Haible  <bruno@clisp.org>
6755
6756         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
6757         Update with info about Cygwin.
6758         * doc/functions/fprintf.texi: Update.
6759         * doc/functions/printf.texi: Update.
6760         * doc/functions/snprintf.texi: Update.
6761         * doc/functions/sprintf.texi: Update.
6762         * doc/functions/vfprintf.texi: Update.
6763         * doc/functions/vprintf.texi: Update.
6764         * doc/functions/vsnprintf.texi: Update.
6765         * doc/functions/vsprintf.texi: Update.
6766         Reported by Eric Blake.
6767
6768 2007-05-06  Bruno Haible  <bruno@clisp.org>
6769
6770         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
6771         padding ourselves for the floating-point directives.
6772         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
6773         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
6774         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
6775         gl_PRINTF_FLAG_ZERO and test its result. Invoke
6776         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
6777         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6778         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
6779         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6780         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6781         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6782         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6783         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6784         * tests/test-snprintf-posix.h (test_function): Also check the width
6785         and some flags in the %f directive.
6786         * tests/test-sprintf-posix.h (test_function): Likewise.
6787         * tests/test-vasnprintf-posix.c (test_function): Likewise.
6788         * tests/test-vasprintf-posix.c (test_function): Likewise.
6789         * doc/functions/fprintf.texi: Update.
6790         * doc/functions/printf.texi: Update.
6791         * doc/functions/snprintf.texi: Update.
6792         * doc/functions/sprintf.texi: Update.
6793         * doc/functions/vfprintf.texi: Update.
6794         * doc/functions/vprintf.texi: Update.
6795         * doc/functions/vsnprintf.texi: Update.
6796         * doc/functions/vsprintf.texi: Update.
6797
6798 2007-05-06  Bruno Haible  <bruno@clisp.org>
6799
6800         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
6801         pass the ' flag character to sprintf or snprintf.
6802         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
6803         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
6804         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
6805         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
6806         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
6807         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6808         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
6809         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6810         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6811         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6812         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6813         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6814         * tests/test-snprintf-posix.h (test_function): Also check the grouping
6815         flag.
6816         * tests/test-sprintf-posix.h (test_function): Likewise.
6817         * tests/test-vasnprintf-posix.c (test_function): Likewise.
6818         * tests/test-vasprintf-posix.c (test_function): Likewise.
6819         * doc/functions/fprintf.texi: Update.
6820         * doc/functions/printf.texi: Update.
6821         * doc/functions/snprintf.texi: Update.
6822         * doc/functions/sprintf.texi: Update.
6823         * doc/functions/vfprintf.texi: Update.
6824         * doc/functions/vprintf.texi: Update.
6825         * doc/functions/vsnprintf.texi: Update.
6826         * doc/functions/vsprintf.texi: Update.
6827
6828 2007-05-01  Bruno Haible  <bruno@clisp.org>
6829
6830         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
6831
6832 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
6833
6834         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
6835         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
6836
6837 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
6838
6839         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
6840         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
6841         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
6842
6843 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
6844
6845         * lib/argp-help.c (struct hol_entry): New member `ord'.
6846         (HOL_ENTRY_PTRCMP): Use ord for comparison
6847         (hol_sort): Initialize ord.
6848
6849 2007-05-01  Bruno Haible  <bruno@clisp.org>
6850
6851         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
6852         Reported by Eric Blake.
6853         * doc/gnulib.texi (Function Substitutes): Update.
6854
6855 2007-05-01  Bruno Haible  <bruno@clisp.org>
6856
6857         * doc/functions.texi: Remove file, now redundant through
6858         doc/functions/*.texi.
6859
6860 2007-05-01  Bruno Haible  <bruno@clisp.org>
6861
6862         * modules/argp (Depends-on): Add sleep.
6863
6864 2007-05-01  Bruno Haible  <bruno@clisp.org>
6865
6866         * modules/sleep-tests: New file.
6867         * tests/test-sleep.c: New file.
6868
6869         * modules/sleep: New file.
6870         * lib/sleep.c: New file.
6871         * m4/sleep.m4: New file.
6872         * lib/unistd_.h (sleep): New declaration.
6873         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
6874         HAVE_SLEEP.
6875         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
6876         * doc/functions/sleep.texi: Document the sleep module.
6877
6878 2007-05-01  Bruno Haible  <bruno@clisp.org>
6879
6880         * lib/sigprocmask.h: Remove file.
6881         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
6882         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
6883         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
6884         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
6885         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
6886         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
6887         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
6888         HAVE_SIGSET_T as a shell variable.
6889         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
6890         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
6891         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
6892         (Depends-on): Add signal. Remove verify.
6893         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
6894         (Include): Mention <signal.h> instead of sigprocmask.h.
6895         * NEWS: Mention the change.
6896         * lib/fatal-signal.c: Don't include sigprocmask.h.
6897
6898 2007-05-01  Bruno Haible  <bruno@clisp.org>
6899
6900         * modules/signal: New file.
6901         * lib/signal_.h: New file.
6902         * m4/signal_h.m4: New file.
6903
6904 2007-05-01  Bruno Haible  <bruno@clisp.org>
6905
6906         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
6907         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
6908         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
6909         HAVE_WCTYPE_CTMP_BUG into wctype.h.
6910
6911 2007-05-01  Bruno Haible  <bruno@clisp.org>
6912
6913         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
6914         configure time.
6915         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
6916         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
6917         * modules/sys_stat (Makefile.am): Substitute their values into
6918         sys/stat.h.
6919
6920 2007-05-01  Bruno Haible  <bruno@clisp.org>
6921
6922         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
6923         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
6924         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
6925
6926 2007-05-01  Bruno Haible  <bruno@clisp.org>
6927
6928         * doc/header/assert.texi: Undo last change: don't mention the gnulib
6929         'assert' module here.
6930
6931 2007-05-01  Bruno Haible  <bruno@clisp.org>
6932
6933         * doc/functions/*.texi: New files.
6934         * doc/functions/google-ranking.txt: New file.
6935         * doc/gnulib.texi (Function Substitutes): New chapter.
6936         (ctime, inet_ntoa): Remove sections.
6937         * doc/ctime.texi: Remove file.
6938         * doc/inet_ntoa.texi: Remove file.
6939         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
6940         dependencies.
6941         (%.info): New rule, specifying a --reference-limit.
6942
6943 2007-05-01  Bruno Haible  <bruno@clisp.org>
6944
6945         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
6946
6947 2007-05-01  Bruno Haible  <bruno@clisp.org>
6948
6949         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
6950         the portability of 'mkdir' to mingw systems.
6951
6952 2007-05-01  Bruno Haible  <bruno@clisp.org>
6953
6954         * doc/headers/google-ranking.txt: New file.
6955
6956 2007-04-30  Eric Blake  <ebb9@byu.net>
6957
6958         Prefer fseeko to fseek.
6959         * modules/getpass (Depends-on): Add fseeko.
6960         * lib/getpass.c (getpass): Use fseeko, not fseek.
6961
6962 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
6963
6964         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
6965         assumes the sorting is stable, while most qsort implementations
6966         are not.  Use argument addresses to ensure they never compare as
6967         equal.
6968
6969         * tests/test-argp-2.sh (usage-indent test): Fix output
6970         (func_compare): Restore diff options
6971         * tests/test-argp.c: Restore #include "progname.h"
6972
6973 2007-04-29  Bruno Haible  <bruno@clisp.org>
6974
6975         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
6976         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
6977         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
6978         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6979         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
6980         (configure.ac): Define CHECK_SNPRINTF_POSIX.
6981         (TESTS, check_PROGRAMS): Add test-snprintf.
6982         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
6983         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
6984         (TESTS, check_PROGRAMS): Add test-vsnprintf.
6985         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
6986         assertions that fail on HP-UX, OSF/1, or IRIX.
6987         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
6988
6989 2007-04-29  Bruno Haible  <bruno@clisp.org>
6990
6991         * MODULES.html.sh (posix_functions): Remove 'contents'.
6992
6993 2007-04-29  Karl Berry  <karl@gnu.org>
6994
6995         * config/srclist.txt (gendocs_template_min): new entry.
6996
6997 2007-04-29  Bruno Haible  <bruno@clisp.org>
6998
6999         Work around fpurge bug on BSD systems.
7000         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
7001         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
7002         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
7003         fpurge to rpl_fpurge if the system already has this function.
7004         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
7005         the case where the system already has this function. Correct invariants
7006         on BSD systems.
7007         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
7008         BSD systems.
7009
7010 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
7011
7012         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
7013         proposed by Sven Verdoolaege.
7014
7015         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
7016         options.
7017         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
7018         (usage and help tests): Update
7019
7020 2007-04-29  Bruno Haible  <bruno@clisp.org>
7021
7022         * tests/test-fflush.c (main): Use a file of size 17, not 10.
7023         Print more information in case of failure. Disable a test on BeOS.
7024
7025 2007-04-29  Bruno Haible  <bruno@clisp.org>
7026
7027         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
7028         This helps debugging on systems on which no gdb is available.
7029
7030 2007-04-29  Bruno Haible  <bruno@clisp.org>
7031
7032         * lib/freading.h: Improve comments.
7033         * lib/fwriting.h: Likewise.
7034         * tests/test-freading.c (main): Don't check freading immediately after
7035         repositioning. Needed for glibc.
7036
7037 2007-04-29  Bruno Haible  <bruno@clisp.org>
7038
7039         * lib/freading.c (freading): Trivial simplification.
7040
7041 2007-04-28  Bruno Haible  <bruno@clisp.org>
7042
7043         * tests/test-fwriting.c (main): Also test the interaction between
7044         fflush and fwriting.
7045         * modules/fwriting-tests (Depends-on): Add fflush.
7046
7047         * tests/test-freading.c (main): Also test the interaction between
7048         fflush and freading.
7049         * modules/freading-tests (Depends-on): Add fflush.
7050
7051 2007-04-28  Bruno Haible  <bruno@clisp.org>
7052
7053         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
7054         fseeko and ftello.
7055         Suggested by Eric Blake.
7056
7057 2007-04-28  Jim Meyering  <jim@meyering.net>
7058
7059         Avoid false-negative in gl_STDINT_H's C99 conformance test.
7060         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
7061         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
7062
7063 2007-04-27  Eric Blake  <ebb9@byu.net>
7064
7065         * doc/headers/assert.texi (assert.h): Document assert module use.
7066
7067 2007-04-27  Bruno Haible  <bruno@clisp.org>
7068
7069         * doc/headers/*.texi: New files.
7070         * doc/gnulib.texi (Header File Substitutes): New chapter.
7071         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
7072         dependencies.
7073         (standards.info ,standards.html, standards.dvi): Update dependencies.
7074         (mostlyclean, clean): New targets.
7075
7076 2007-04-27  Bruno Haible  <bruno@clisp.org>
7077
7078         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
7079         * modules/sysexits (Files, Makefile.am): Update.
7080
7081         * lib/sys_socket_.h: Renamed from lib/socket_.h.
7082         * modules/sys_socket (Files, Makefile.am): Update.
7083
7084         * lib/sys_stat_.h: Renamed from lib/stat_.h.
7085         * modules/sys_stat (Files, Makefile.am): Update.
7086
7087 2007-04-27  Eric Blake  <ebb9@byu.net>
7088
7089         * lib/freading.h: Improve comments.
7090         * lib/fwriting.h: Likewise.
7091         * lib/fflush.c: Likewise.
7092
7093         Fix closein for mingw.
7094         * modules/closein-tests: Add tests for closein.
7095         * tests/test-closein.c: New file.
7096         * tests/test-closein.sh: Likewise.
7097         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
7098         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
7099
7100 2007-04-27  Bruno Haible  <bruno@clisp.org>
7101
7102         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
7103         version is < 6.
7104         * lib/math_.h [__DECC]: Likewise.
7105         * lib/stdio_.h [__DECC]: Likewise.
7106         * lib/stdlib_.h [__DECC]: Likewise.
7107         * lib/string_.h [__DECC]: Likewise.
7108         * lib/time_.h [__DECC]: Likewise.
7109         * lib/wchar_.h [__DECC]: Likewise.
7110         * lib/wctype_.h [__DECC]: Likewise.
7111
7112 2007-04-27  Bruno Haible  <bruno@clisp.org>
7113
7114         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
7115
7116 2007-04-27  Bruno Haible  <bruno@clisp.org>
7117
7118         * lib/fflush.c: Add comments.
7119         * modules/fpurge-tests (Depends-on): Add fflush.
7120         * modules/freadable-tests (Depends-on): Likewise.
7121         * modules/fwritable-tests (Depends-on): Likewise.
7122
7123 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
7124
7125         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
7126         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
7127         Report by Bruno Haible <bruno@clisp.org>.
7128
7129 2007-04-26  Eric Blake  <ebb9@byu.net>
7130
7131         Fix fflush on mingw.
7132         * modules/fflush (Depends-on): Add freading.
7133         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
7134         but unread data.
7135
7136 2007-04-26  Eric Blake  <ebb9@byu.net>
7137         and Bruno Haible  <bruno@clisp.org>
7138
7139         Implement freading and fwriting.
7140         * lib/freading.c: New file.
7141         * lib/freading.h: Likewise.
7142         * m4/freading.m4: Likewise.
7143         * modules/freading: Likewise.
7144         * modules/freading-tests: Likewise.
7145         * tests/test-freading.c: Likewise.
7146         * lib/fwriting.c: New file.
7147         * lib/fwriting.h: Likewise.
7148         * m4/fwriting.m4: Likewise.
7149         * modules/fwriting: Likewise.
7150         * modules/fwriting-tests: Likewise.
7151         * tests/test-fwriting.c: Likewise.
7152         * MODULES.html.sh (File stream based Input/Output): Mention them.
7153
7154 2007-04-26  Bruno Haible  <bruno@clisp.org>
7155
7156         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
7157         'long' when we assume it.
7158         Suggested by Eric Blake.
7159
7160 2007-04-26  Bruno Haible  <bruno@clisp.org>
7161
7162         Ensure fseeko, ftello are declared on glibc systems.
7163         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
7164         * modules/fseeko (configure.ac-early): Likewise.
7165         * modules/ftello (configure.ac-early): Likewise.
7166         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
7167         AC_FUNC_FSEEKO for this.
7168         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
7169         (gl_CHECK_FSEEKO): Remove macro.
7170
7171 2007-04-26  Bruno Haible  <bruno@clisp.org>
7172
7173         * tests/test-fflush.c (main): Also check the ftell result after
7174         fflush and fseek/fseeko.
7175         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
7176         file descriptor position cache in the stream.
7177         * lib/fseeko.c (rpl_fseeko): Likewise.
7178
7179 2007-04-26  Bruno Haible  <bruno@clisp.org>
7180
7181         * modules/fflush-tests (Depends-on): Add fseeko.
7182
7183 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
7184             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7185
7186         * lib/argz_.h: ensure error_t definition is obtained in same
7187         mechanism system argz.h would have.
7188         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
7189         argz facilities are known bad.  Err on the side of caution if
7190         cross-compiling.
7191
7192 2007-04-25  Eric Blake  <ebb9@byu.net>
7193
7194         * lib/fpurge.c (includes): Use stdlib.h for free.
7195         * tests/test-fflush.c (main): Also test fflush-fseeko.
7196
7197 2007-04-25  Bruno Haible  <bruno@clisp.org>
7198
7199         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
7200         * lib/fseeko.c: New file.
7201         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
7202         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
7203         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
7204         gl_FUNC_FSEEKO.
7205         (gl_FUNC_FSEEKO): Invoke it.
7206         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
7207         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
7208         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
7209
7210 2007-04-25  Bruno Haible  <bruno@clisp.org>
7211
7212         * modules/fflush (Depends-on): Add ftello.
7213
7214 2007-04-25  Bruno Haible  <bruno@clisp.org>
7215
7216         * modules/ftello-tests: New file.
7217         * tests/test-ftello.c: New file.
7218
7219         * modules/ftello: New file.
7220         * m4/ftello.m4: New file.
7221         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
7222         HAVE_FTELLO.
7223         * lib/stdio_.h (ftello): New declaration.
7224         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
7225         HAVE_FTELLO.
7226
7227 2007-04-25  Bruno Haible  <bruno@clisp.org>
7228
7229         * modules/fseeko-tests: New file.
7230         * tests/test-fseeko.c: New file.
7231
7232         * modules/fseeko: New file.
7233         * m4/fseeko.m4: New file.
7234         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
7235         HAVE_FSEEKO.
7236         * lib/stdio_.h (fseeko): New declaration.
7237         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
7238         HAVE_FSEEKO.
7239
7240 2007-04-25  Bruno Haible  <bruno@clisp.org>
7241
7242         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
7243
7244 2007-04-25  Bruno Haible  <bruno@clisp.org>
7245
7246         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
7247         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
7248         * tests/test-unistd.c: Likewise.
7249         * tests/test-fcntl.c: Likewise.
7250
7251 2007-04-23  Eric Blake  <ebb9@byu.net>
7252
7253         * lib/fflush.c: Fix missing include.
7254         Reported by Bruno Haible.
7255
7256 2007-04-23  Bruno Haible  <bruno@clisp.org>
7257
7258         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
7259         Reported by Eric Blake.
7260
7261 2007-04-23  Bruno Haible  <bruno@clisp.org>
7262
7263         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
7264
7265 2007-04-23  Bruno Haible  <bruno@clisp.org>
7266
7267         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
7268
7269 2007-04-23  Bruno Haible  <bruno@clisp.org>
7270
7271         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
7272         Needed on HP-UX 11.
7273
7274 2007-04-16  Eric Blake  <ebb9@byu.net>
7275
7276         Make fflush rely on fpurge.
7277         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
7278         open coding all variants.
7279         * modules/fflush (Depends-on): Add fpurge and unistd.
7280         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
7281         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
7282
7283         Fix --with-tests compilation on cygwin.
7284         * modules/argmatch-tests (Makefile.am): List gnulib library first
7285         in LDADD.
7286         * modules/argp-tests (Makefile.am): Likewise.
7287         * modules/array-list-tests (Makefile.am): Likewise.
7288         * modules/array-oset-tests (Makefile.am): Likewise.
7289         * modules/avltree-list-tests (Makefile.am): Likewise.
7290         * modules/avltree-oset-tests (Makefile.am): Likewise.
7291         * modules/avltreehash-list-tests (Makefile.am): Likewise.
7292         * modules/carray-list-tests (Makefile.am): Likewise.
7293         * modules/dirname-tests (Makefile.am): Likewise.
7294         * modules/frexp-tests (Makefile.am): Likewise.
7295         * modules/isnanl-tests (Makefile.am): Likewise.
7296         * modules/linked-list-tests (Makefile.am): Likewise.
7297         * modules/linkedhash-list-tests (Makefile.am): Likewise.
7298         * modules/lock-tests (Makefile.am): Likewise.
7299         * modules/rbtree-list-tests (Makefile.am): Likewise.
7300         * modules/rbtree-oset-tests (Makefile.am): Likewise.
7301         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
7302         * modules/tls-tests (Makefile.am): Likewise.
7303         * modules/tsearch-tests (Makefile.am): Likewise.
7304         * modules/xvasprintf-tests (Makefile.am): Likewise.
7305
7306         Fix fpurge for cygwin.
7307         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
7308         value.
7309         * modules/fpurge-tests (Depends-on): Clean up trash.
7310
7311 2007-04-16  Simon Josefsson  <simon@josefsson.org>
7312
7313         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
7314
7315         * m4/autobuild.m4: Re-indent.
7316
7317 2007-04-13  Bruno Haible  <bruno@clisp.org>
7318
7319         * modules/fpurge-tests: New file.
7320         * tests/test-fpurge.c: New file.
7321
7322         * modules/fpurge: New file.
7323         * lib/fpurge.h: New file.
7324         * lib/fpurge.c: New file.
7325         * m4/fpurge.m4: New file.
7326
7327 2007-04-13  Bruno Haible  <bruno@clisp.org>
7328
7329         * modules/fbufmode-tests: New file.
7330         * tests/test-fbufmode.c: New file.
7331
7332         * modules/fbufmode: New file.
7333         * lib/fbufmode.h: New file.
7334         * lib/fbufmode.c: New file.
7335         * m4/fbufmode.m4: New file.
7336
7337 2007-04-13  Bruno Haible  <bruno@clisp.org>
7338
7339         * modules/fwritable-tests: New file.
7340         * tests/test-fwritable.c: New file.
7341
7342         * modules/fwritable: New file.
7343         * lib/fwritable.h: New file.
7344         * lib/fwritable.c: New file.
7345         * m4/fwritable.m4: New file.
7346
7347 2007-04-13  Bruno Haible  <bruno@clisp.org>
7348
7349         * modules/freadable-tests: New file.
7350         * tests/test-freadable.c: New file.
7351
7352         * modules/freadable: New file.
7353         * lib/freadable.h: New file.
7354         * lib/freadable.c: New file.
7355         * m4/freadable.m4: New file.
7356
7357 2007-04-13  Bruno Haible  <bruno@clisp.org>
7358
7359         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
7360         MOSTLYCLEANFILES.
7361
7362 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
7363
7364         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
7365         gzip bootstrap.conf to avoid dragging in i18n machinery.
7366         (gnulib_tool_option): Use it.
7367
7368 2007-04-13  Bruno Haible  <bruno@clisp.org>
7369
7370         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
7371         %F directives.
7372         * tests/test-vasprintf-posix.c (test_function): Likewise.
7373         * tests/test-snprintf-posix.h (test_function): Likewise.
7374         * tests/test-sprintf-posix.h (test_function): Likewise.
7375         * tests/test-fprintf-posix.h (test_function): Likewise.
7376         * tests/test-printf-posix.h (test_function): Likewise.
7377         * tests/test-fprintf-posix.out: Likewise.
7378
7379 2007-04-13  Bruno Haible  <bruno@clisp.org>
7380
7381         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
7382         * modules/tls-tests (configure.ac): Likewise.
7383         Reported by Arto C. Nirkko <anirkko@insel.ch>.
7384
7385 2007-04-13  Bruno Haible  <bruno@clisp.org>
7386
7387         * lib/tls.c (glthread_tls_get): Fix return type.
7388         Patch by Arto C. Nirkko <anirkko@insel.ch>.
7389
7390 2007-04-12  Eric Blake  <ebb9@byu.net>
7391
7392         * modules/gettime (Depends-on): Remove gettime.
7393         Reported by Dmitry V. Levin.
7394
7395 2007-04-12  Bruno Haible  <bruno@clisp.org>
7396
7397         * modules/fflush (Include): Mention <stdio.h>.
7398         * modules/strtoimax (Include): Mention <inttypes.h>.
7399         * modules/strtoumax (Include): Likewise.
7400
7401 2007-04-12  Eric Blake  <ebb9@byu.net>
7402
7403         * .cvsignore: New file.
7404         * .gitignore: Likewise.
7405
7406 2007-04-12  Bruno Haible  <bruno@clisp.org>
7407
7408         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
7409         not before, since $(LDADD) often contains libgnu.a.
7410         * modules/striconv-tests (test_striconv_LDADD): Likewise.
7411         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
7412         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
7413         Needed on Cygwin.
7414
7415 2007-04-12  Eric Blake  <ebb9@byu.net>
7416
7417         Work around glibc's failure to flush stdin on fclose.
7418         * lib/closein.c (close_stdin): Flush stdin before closing.
7419
7420         Work around glibc's failure to reset seekable stdin on exit.
7421         * modules/closein: New module.
7422         * lib/closein.c: New file.
7423         * lib/closein.h: Likewise.
7424         * m4/closein.m4: Likewise.
7425         * MODULES.html.sh (File stream based Input/Output): Document it.
7426
7427 2007-04-12  Simon Josefsson  <simon@josefsson.org>
7428
7429         * gnulib-tool: Rename generated 'autobuild' script to
7430         'do-autobuild' in --create-megatestdir output.
7431
7432         * doc/gnulib.texi (Build robot for gnulib): Fix.
7433
7434 2007-04-12  Simon Josefsson  <simon@josefsson.org>
7435
7436         * modules/sysexits (Depends-on): Add absolute-header.
7437
7438 2007-04-12  Eric Blake  <ebb9@byu.net>
7439
7440         No need to preserve errno on success.
7441         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
7442         Reported by Bruno Haible.
7443
7444 2007-04-12  Simon Josefsson  <simon@josefsson.org>
7445
7446         * MODULES.html.sh (Support for maintaining and releasing
7447         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
7448
7449 2007-04-12  Simon Josefsson  <simon@josefsson.org>
7450
7451         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
7452
7453 2007-04-12  Simon Josefsson  <simon@josefsson.org>
7454
7455         * modules/autobuild: New module.
7456
7457         * m4/autobuild.m4: New file.
7458
7459 2007-04-11  Bruno Haible  <bruno@clisp.org>
7460
7461         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
7462         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
7463         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
7464         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
7465         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
7466         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7467         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7468         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
7469         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7470         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7471         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
7472         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7473         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7474         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
7475         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7476         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7477         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
7478         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7479         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7480         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
7481         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7482         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7483         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
7484         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7485         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7486         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
7487         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
7488         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
7489         Reported by Eric Blake.
7490
7491 2007-04-11  Bruno Haible  <bruno@clisp.org>
7492
7493         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
7494
7495 2007-04-10  Bruno Haible  <bruno@clisp.org>
7496
7497         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
7498         for NaN and Infinity. Needed on FreeBSD 6.1.
7499         * tests/test-vasnprintf-posix.c (test_function): Undo last change
7500         regarding results for "%010a" of Infinity and NaN.
7501         * tests/test-vasprintf-posix.c (test_function): Likewise.
7502         * tests/test-snprintf-posix.h (test_function): Likewise.
7503         * tests/test-sprintf-posix.h (test_function): Likewise.
7504         * tests/test-fprintf-posix.h (test_function): Likewise.
7505         * tests/test-printf-posix.h (test_function): Likewise.
7506         * tests/test-fprintf-posix.out: Likewise.
7507
7508 2007-04-10  Bruno Haible  <bruno@clisp.org>
7509
7510         * modules/locale-tests: New file.
7511         * tests/test-locale.c: New file.
7512
7513         * modules/locale: New file.
7514         * lib/locale_.h: New file.
7515         * m4/locale_h.m4: New file.
7516
7517 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
7518             Bruno Haible  <bruno@clisp.org>
7519
7520         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
7521         be determined, test for availability of the copysignf, copysign,
7522         copysignl functions.
7523         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
7524         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
7525         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
7526
7527 2007-04-09  Eric Blake  <ebb9@byu.net>
7528
7529         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
7530         * modules/stdio (Makefile.am): Support fflush.
7531         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
7532         * modules/fflush: New file.
7533         * lib/fflush.c: Likewise.
7534         * m4/fflush.m4: Likewise.
7535         * modules/fflush-tests: New test.
7536         * tests/test-fflush.c: Likewise.
7537         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
7538
7539 2007-04-06  Bruno Haible  <bruno@clisp.org>
7540
7541         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
7542         (VASNPRINTF): Use signbit for faster determination whether to print a
7543         minus sign.
7544         * modules/vasnprintf (Files): Remove lib/float+.h.
7545         * modules/fprintf-posix (Depends-on): Add signbit.
7546         * modules/snprintf-posix (Depends-on): Likewise.
7547         * modules/sprintf-posix (Depends-on): Likewise.
7548         * modules/vasnprintf-posix (Depends-on): Likewise.
7549         * modules/vasprintf-posix (Depends-on): Likewise.
7550         * modules/vfprintf-posix (Depends-on): Likewise.
7551         * modules/vsnprintf-posix (Depends-on): Likewise.
7552         * modules/vsprintf-posix (Depends-on): Likewise.
7553
7554 2007-04-06  Bruno Haible  <bruno@clisp.org>
7555
7556         * tests/test-frexp.c (main): Test also the sign bit of zero results.
7557         * tests/test-frexpl.c (main): Likewise.
7558         * tests/test-ldexpl.c (main): Likewise.
7559         * modules/frexp-tests (Depends-on): Add signbit.
7560         * modules/frexpl-tests (Depdends-on): Likewise.
7561         * modules/ldexpl-tests (Depdends-on): Likewise.
7562
7563 2007-04-06  Bruno Haible  <bruno@clisp.org>
7564
7565         * modules/signbit-tests: New file.
7566         * tests/test-signbit.c: New file.
7567
7568         * modules/signbit: New file.
7569         * lib/signbitf.c: New file.
7570         * lib/signbitd.c: New file.
7571         * lib/signbitl.c: New file.
7572         * m4/signbit.m4: New file.
7573         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
7574         (signbit): New macro.
7575         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
7576         REPLACE_SIGNBIT.
7577         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
7578         REPLACE_FREXPL into math.h.
7579
7580 2007-04-06  Bruno Haible  <bruno@clisp.org>
7581
7582         * modules/isnanf-nolibm-tests: New file.
7583         * tests/test-isnanf.c: New file.
7584
7585         * modules/isnanf-nolibm: New file.
7586         * lib/isnanf.h: New file.
7587         * lib/isnanf.c: New file.
7588         * lib/isnan.c: Consider the USE_FLOAT macro.
7589         * m4/isnanf.m4: New file.
7590
7591 2007-04-06  Bruno Haible  <bruno@clisp.org>
7592
7593         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
7594         (Link): New section.
7595
7596         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
7597
7598 2007-04-06  Bruno Haible  <bruno@clisp.org>
7599
7600         Assume the 'long double' type.
7601         * m4/longdouble.m4: Remove file.
7602         * config/srclist.txt: Don't mention longdouble.m4.
7603         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
7604         * lib/float+.h: Likewise.
7605         * lib/frexp.c: Likewise.
7606         * lib/printf-args.h: Likewise.
7607         * lib/printf-args.c: Likewise.
7608         * lib/printf-frexp.c: Likewise.
7609         * lib/printf-parse.c: Likewise.
7610         * lib/vasnprintf.c: Likewise.
7611         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
7612         * m4/intl.m4: Likewise.
7613         * m4/isnanl.m4: Likewise.
7614         * m4/printf.m4: Likewise.
7615         * m4/printf-frexpl.m4: Likewise.
7616         * m4/vasnprintf.m4: Likewise.
7617         * modules/allocsa (Files): Remove m4/longdouble.m4.
7618         * modules/gettext (Files): Likewise.
7619         * modules/relocatable-prog-wrapper (Files): Likewise.
7620         * modules/vasnprintf (Files): Likewise.
7621         * modules/isnanl (Files): Likewise.
7622         (Include): Simplify.
7623         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
7624         (Include): Simplify.
7625         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
7626         (Include): Simplify.
7627         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
7628         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7629         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
7630         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7631         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
7632         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7633         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
7634         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7635         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
7636         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7637         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
7638         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
7639         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
7640         * tests/test-isnanl.c: Likewise.
7641         * tests/test-snprintf-posix.h: Likewise.
7642         * tests/test-sprintf-posix.h: Likewise.
7643         * tests/test-vasnprintf-posix.c: Likewise.
7644         * tests/test-vasnprintf-posix2.c: Likewise.
7645         * tests/test-vasprintf-posix.c: Likewise.
7646
7647 2007-04-06  Bruno Haible  <bruno@clisp.org>
7648
7649         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
7650         * lib/math_.h [__DECC]: Include the overridden include file through
7651         #include_next, outside the double-inclusion guard.
7652         * lib/stdio_.h [__DECC]: Likewise.
7653         * lib/stdlib_.h [__DECC]: Likewise.
7654         * lib/string_.h [__DECC]: Likewise.
7655         * lib/time_.h [__DECC]: Likewise.
7656         * lib/wchar_.h [__DECC]: Likewise.
7657         * lib/wctype_.h [__DECC]: Likewise.
7658         * lib/inttypes_.h [__DECC]: Likewise.
7659         Reported by Albert Chin <china@thewrittenword.com> in
7660         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
7661
7662 2007-04-04  Eric Blake  <ebb9@byu.net>
7663
7664         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
7665         1.5.x.
7666
7667 2007-04-04  Bruno Haible  <bruno@clisp.org>
7668
7669         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
7670         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
7671
7672 2007-04-04  Bruno Haible  <bruno@clisp.org>
7673
7674         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
7675         results for "%010a" of Infinity and NaN.
7676         * tests/test-vasprintf-posix.c (test_function): Likewise.
7677         * tests/test-snprintf-posix.h (test_function): Likewise.
7678         * tests/test-sprintf-posix.h (test_function): Likewise.
7679         * tests/test-fprintf-posix.h (test_function): Remove these tests.
7680         * tests/test-printf-posix.h (test_function): Likewise.
7681         * tests/test-fprintf-posix.out: Update.
7682         Needed for FreeBSD 6.1.
7683
7684 2007-04-04  Bruno Haible  <bruno@clisp.org>
7685
7686         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
7687         directly used by the gnulib modules nor by gnulib-tool.
7688
7689 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
7690
7691         * DEPENDENCIES: Give overall description of version dependency
7692         desirability.  Use more-typical names for apps.
7693         Add shell, coreutils, diffutils, grep, tar, gzip.
7694
7695 2007-04-04  Simon Josefsson  <simon@josefsson.org>
7696
7697         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
7698
7699 2007-04-04  Karl Berry  <karl@gnu.org>
7700
7701         * MODULES.html.sh (func_module): missing '.
7702
7703 2007-04-03  Bruno Haible  <bruno@clisp.org>
7704
7705         * modules/argmatch-tests (Makefile.am): New variable
7706         test_argmatch_LDADD.
7707         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
7708         * modules/array-list-tests (Makefile.am): New variable
7709         test_array_list_LDADD.
7710         * modules/array-oset-tests (Makefile.am): New variable
7711         test_array_oset_LDADD.
7712         * modules/avltree-list-tests (Makefile.am): New variable
7713         test_avltree_list_LDADD.
7714         * modules/avltree-oset-tests (Makefile.am): New variable
7715         test_avltree_oset_LDADD.
7716         * modules/avltreehash-list-tests (Makefile.am): New variable
7717         test_avltreehash_list_LDADD.
7718         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
7719         test_canonicalize_lgpl_LDADD.
7720         * modules/carray-list-tests (Makefile.am): New variable
7721         test_carray_list_LDADD.
7722         * modules/dirname-tests (Makefile.am): New variable
7723         test_dirname_LDADD.
7724         * modules/linked-list-tests (Makefile.am): New variable
7725         test_linked_list_LDADD.
7726         * modules/linkedhash-list-tests (Makefile.am): New variable
7727         test_linkedhash_list_LDADD.
7728         * modules/rbtree-list-tests (Makefile.am): New variable
7729         test_rbtree_list_LDADD.
7730         * modules/rbtree-oset-tests (Makefile.am): New variable
7731         test_rbtree_oset_LDADD.
7732         * modules/rbtreehash-list-tests (Makefile.am): New variable
7733         test_rbtreehash_list_LDADD.
7734         * modules/xvasprintf-tests (Makefile.am): New variable
7735         test_xvasprintf_LDADD.
7736         Reported by Eric Blake.
7737
7738 2007-04-03  Eric Blake  <ebb9@byu.net>
7739
7740         * DEPENDENCIES: Weaken m4 requirements.
7741
7742 2007-04-03  Bruno Haible  <bruno@clisp.org>
7743
7744         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
7745         * modules/isnanl-tests (configure.ac): Likewise.
7746
7747 2007-04-03  Ben Pfaff  <blp@gnu.org>
7748
7749         * modules/iconv_open: Add $(srcdir)/ to source directory
7750         references in Makefile fragments that call gperf, to fix VPATH
7751         builds.
7752
7753 2007-04-03  Bruno Haible  <bruno@clisp.org>
7754
7755         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
7756         * lib/ldexpl.c: Undo last change.
7757
7758 2007-04-03  Bruno Haible  <bruno@clisp.org>
7759
7760         * modules/printf-frexpl (Depends-on): Undo last change.
7761         (Files): Add m4/ldexpl.m4.
7762
7763 2007-04-03  Bruno Haible  <bruno@clisp.org>
7764
7765         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
7766         * modules/isnanl (Link): New section.
7767
7768         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
7769         * modules/frexp (Link): New section.
7770
7771         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
7772         * modules/frexpl (Link): New section.
7773
7774         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
7775         * modules/ldexpl (Link): New section.
7776
7777 2007-04-03  Bruno Haible  <bruno@clisp.org>
7778
7779         * modules/TEMPLATE-EXTENDED: New file.
7780         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
7781
7782 2007-04-03  Bruno Haible  <bruno@clisp.org>
7783
7784         * DEPENDENCIES: New file.
7785         Suggested by Simon Josefsson.
7786
7787 2007-04-03  Bruno Haible  <bruno@clisp.org>
7788
7789         * doc/gnulib.texi: Escape @.
7790
7791 2007-04-03  James Youngman  <jay@gnu.org>
7792         and Paul Eggert  <eggert@cs.ucla.edu>
7793
7794         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
7795         birthtime on all systems that have birthtime, not just those which
7796         use st_birthtimensec rather than st_birthtim.  Putting zero in
7797         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
7798         that the birth time is not available for files on an NFS mount.
7799
7800 2007-04-03  Simon Josefsson  <simon@josefsson.org>
7801
7802         * modules/memxor: Move back from crypto/, suggested by Bruno.
7803         * modules/crypto/hmac-sha1: Fix memxor dependency.
7804
7805         * modules/crypto/gc: Moved from ../.
7806
7807 2007-04-02  Eric Blake  <ebb9@byu.net>
7808
7809         * lib/ldexpl.c (includes): Avoid libm.
7810
7811         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
7812
7813 2007-04-02  Bruno Haible  <bruno@clisp.org>
7814
7815         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
7816         on IRIX.
7817
7818 2007-04-02  Bruno Haible  <bruno@clisp.org>
7819
7820         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
7821         x86 or x86_64 platforms running MacOS X.
7822         Reported by Ryan Schmidt <@ryandesign.com>.
7823
7824 2007-04-02  Bruno Haible  <bruno@clisp.org>
7825
7826         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
7827         i386.
7828
7829 2007-04-01  Simon Josefsson  <simon@josefsson.org>
7830
7831         * modules/crypto/arcfour: Moved from ../.
7832         * modules/crypto/arcfour-tests: Moved from ../.
7833         * modules/crypto/arctwo: Moved from ../.
7834         * modules/crypto/arctwo-tests: Moved from ../.
7835         * modules/crypto/des: Moved from ../.
7836         * modules/crypto/des-tests: Moved from ../.
7837         * modules/crypto/gc-arcfour: Moved from ../.
7838         * modules/crypto/gc-arcfour-tests: Moved from ../.
7839         * modules/crypto/gc-arctwo: Moved from ../.
7840         * modules/crypto/gc-arctwo-tests: Moved from ../.
7841         * modules/crypto/gc-des: Moved from ../.
7842         * modules/crypto/gc-des-tests: Moved from ../.
7843         * modules/crypto/gc-hmac-md5: Moved from ../.
7844         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
7845         * modules/crypto/gc-hmac-sha1: Moved from ../.
7846         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
7847         * modules/crypto/gc-md2: Moved from ../.
7848         * modules/crypto/gc-md2-tests: Moved from ../.
7849         * modules/crypto/gc-md4: Moved from ../.
7850         * modules/crypto/gc-md4-tests: Moved from ../.
7851         * modules/crypto/gc-md5: Moved from ../.
7852         * modules/crypto/gc-md5-tests: Moved from ../.
7853         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
7854         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
7855         * modules/crypto/gc-random: Moved from ../.
7856         * modules/crypto/gc-rijndael: Moved from ../.
7857         * modules/crypto/gc-rijndael-tests: Moved from ../.
7858         * modules/crypto/gc-sha1: Moved from ../.
7859         * modules/crypto/gc-sha1-tests: Moved from ../.
7860         * modules/crypto/gc-tests: Moved from ../.
7861         * modules/crypto/hmac-md5: Moved from ../.
7862         * modules/crypto/hmac-md5-tests: Moved from ../.
7863         * modules/crypto/hmac-sha1: Moved from ../.
7864         * modules/crypto/hmac-sha1-tests: Moved from ../.
7865         * modules/crypto/md2: Moved from ../.
7866         * modules/crypto/md2-tests: Moved from ../.
7867         * modules/crypto/md4: Moved from ../.
7868         * modules/crypto/md4-tests: Moved from ../.
7869         * modules/crypto/md5: Moved from ../.
7870         * modules/crypto/md5-tests: Moved from ../.
7871         * modules/crypto/memxor: Moved from ../.
7872         * modules/crypto/rijndael: Moved from ../.
7873         * modules/crypto/rijndael-tests: Moved from ../.
7874         * modules/crypto/sha1: Moved from ../.
7875
7876 2007-03-30  James Youngman  <jay@gnu.org>
7877
7878         * tests/test-stat-time.c (prepare_test): use chmod() rather than
7879         rename() to change the ctime of a file (because ctime is unaffected
7880         by rename on jfs2 on AIX 5.1).
7881         (main): Start by doing cleanup, in case a previous run failed leaving
7882         test files behind.
7883
7884 2007-03-31  Bruno Haible  <bruno@clisp.org>
7885
7886         Support old proprietary implementations of iconv.
7887         * modules/iconv_open: New file.
7888         * lib/iconv_.h: New file.
7889         * m4/iconv_h.m4: New file.
7890         * lib/iconv_open.c: New file.
7891         * lib/iconv_open-aix.gperf: New file.
7892         * lib/iconv_open-hpux.gperf: New file.
7893         * lib/iconv_open-irix.gperf: New file.
7894         * lib/iconv_open-osf.gperf: New file.
7895         * m4/iconv_open.m4: New file.
7896         * modules/linebreak (Depends-on): Add iconv_open.
7897         * modules/striconv (Depends-on): Likewise.
7898         * modules/striconveh (Depends-on): Likewise.
7899         * modules/unicodeio (Depends-on): Likewise.
7900         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
7901         (iconv_t)(-1).
7902         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
7903         conversion if cd is (iconv_t)(-1).
7904         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
7905         is not possible.
7906
7907 2007-03-31  Bruno Haible  <bruno@clisp.org>
7908
7909         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
7910         work on Solaris either. Protect also second use of "autodetect_jp".
7911
7912 2007-03-31  Bruno Haible  <bruno@clisp.org>
7913
7914         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
7915         the function is not present.
7916
7917 2007-03-31  Bruno Haible  <bruno@clisp.org>
7918
7919         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
7920         the function is not present.
7921
7922 2007-03-31  Bruno Haible  <bruno@clisp.org>
7923
7924         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
7925         a bug in HP-UX iconv_open().
7926
7927 2007-03-31  Bruno Haible  <bruno@clisp.org>
7928
7929         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
7930         (Mathematics <math.h>): New section, add fpieee.
7931         (Input/output <stdio.h>): Add fseterr.
7932         (Mathematics <math.h>): New section, add printf-frexp.
7933         (Container data structures): Add sublist.
7934         (Core language properties): Add fpucw, inline.
7935         (Functions for greatest-width integer types <inttypes.h>): Add
7936         imaxabs, imaxdiv, inttypes.
7937         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
7938         isnanl-nolibm, ldexp.
7939         (Mathematics <math.h>): New section, add printf-frexpl.
7940         (Support for systems lacking POSIX:2001): Add fprintf-posix,
7941         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
7942         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
7943         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
7944         (Unicode string functions): Add unistr/u*-mbtoucr.
7945         (Java): Add javacomp-script, javaexec-script.
7946         (C#): Add csharpcomp-script, csharpexec-script.
7947         (Support for building libraries and executables): Add havelib,
7948         relocatable-*.
7949         (Support for maintaining and releasing projects): Renamed from
7950         'Support for maintaining and release projects'. Add announce-gen.
7951
7952 2007-03-31  Bruno Haible  <bruno@clisp.org>
7953
7954         * README: Talk primarily about git.
7955         (git and CVS): Renamed from CVS.
7956         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
7957         gnulib is available through git.
7958         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
7959
7960 2007-03-30  Bruno Haible  <bruno@clisp.org>
7961
7962         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
7963         * lib/poll_.h: Likewise.
7964         * lib/stat_.h: Likewise.
7965         * lib/sys_time_.h: Likewise.
7966         * lib/sysexit_.h: Likewise.
7967         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
7968         * lib/stdbool_.h: Likewise.
7969         * lib/byteswap_.h: Add double-inclusion guard.
7970
7971 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
7972
7973         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
7974
7975 2007-03-30  Karl Berry  <karl@gnu.org>
7976
7977         * config/srclist-update: double space after USA in the license
7978         substitution, since that's how it's usually (?) written.
7979
7980 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
7981
7982         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
7983         reported by Bruno Haible.
7984
7985 2007-03-29  Bruno Haible  <bruno@clisp.org>
7986
7987         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
7988         a bug in AIX iconv().
7989
7990 2007-03-29  Bruno Haible  <bruno@clisp.org>
7991
7992         * modules/ldexpl-tests: New file.
7993         * tests/test-ldexpl.c: New file.
7994
7995 2007-03-29  Bruno Haible  <bruno@clisp.org>
7996
7997         * lib/ldexpl.c: Include fpucw.h.
7998         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
7999         multiplication.
8000         * modules/ldexpl (Depends-on): Add fpucw.
8001
8002 2007-03-29  Bruno Haible  <bruno@clisp.org>
8003
8004         * modules/ldexpl: New file.
8005         * m4/ldexpl.m4: New file.
8006         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
8007         set.
8008         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
8009         REPLACE_LDEXPL.
8010         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
8011         REPLACE_LDEXPL.
8012         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
8013         gl_FUNC_LDEXPL_WORKS.
8014         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
8015         * modules/mathl (Files): Remove lib/ldexpl.c.
8016         (Depends-on): Add ldexpl.
8017
8018 2007-03-29  Bruno Haible  <bruno@clisp.org>
8019
8020         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
8021
8022 2007-03-29  Bruno Haible  <bruno@clisp.org>
8023
8024         * tests/test-striconveh.c (main): Don't assume that a direct conversion
8025         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
8026         and possibly also HP-UX.
8027         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
8028         work on AIX, IRIX, HP-UX, OSF/1.
8029         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
8030         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
8031         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
8032         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
8033         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
8034         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
8035
8036 2007-03-29  Bruno Haible  <bruno@clisp.org>
8037
8038         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
8039
8040 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
8041
8042         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
8043         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
8044
8045 2007-03-29  Eric Blake  <ebb9@byu.net>
8046
8047         * lib/acl-internal.h: Remove redundant include.
8048         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
8049         Cygwin when a file is locked.
8050
8051 2007-03-29  Bruno Haible  <bruno@clisp.org>
8052
8053         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
8054         file.
8055         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
8056
8057 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
8058
8059         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
8060         try to remove a parent directory if the child couldn't be removed
8061         (except for the first rmdir, which could fail because the child
8062         doesn't exist).  Problem reported by Jeff Blaine in
8063         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
8064
8065 2007-03-28  Bruno Haible  <bruno@clisp.org>
8066
8067         * lib/striconveh.c (utf8conv_carefully): New function.
8068         (mem_cd_iconveh_internal): Invoke it.
8069
8070 2007-03-28  Bruno Haible  <bruno@clisp.org>
8071
8072         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
8073         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
8074         input.
8075         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
8076         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
8077         unistr/u8-uctomb.
8078
8079 2007-03-28  Bruno Haible  <bruno@clisp.org>
8080
8081         * modules/unistr/u8-mbtoucr: New file.
8082         * lib/unistr/u8-mbtoucr.c: New file.
8083         * modules/unistr/u16-mbtoucr: New file.
8084         * lib/unistr/u16-mbtoucr.c: New file.
8085         * modules/unistr/u16-mbtoucr: New file.
8086         * lib/unistr/u16-mbtoucr.c: New file.
8087         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
8088
8089 2007-03-27  Simon Josefsson  <simon@josefsson.org>
8090             Bruno Haible  <bruno@clisp.org>
8091
8092         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
8093         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
8094         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
8095
8096         * m4/stdio_h.m4: Add stubs for vasprintf too.
8097
8098         * modules/stdio: Support vasprintf in sed command.
8099
8100         * modules/vasprintf: Depend on stdio for prototypes.  Remove
8101         vasprintf.h.  Add stdio module indicator.
8102
8103         * lib/stdio_.h: Declare asprintf and vasprintf, based on
8104         vasprintf.h.
8105
8106         * lib/vasprintf.h: File removed.
8107
8108         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
8109         * lib/vasprintf.c: Ditto.
8110         * lib/xvasprintf.c: Ditto.
8111         * tests/test-vasprintf-posix.c: Ditto.
8112         * tests/test-vasprintf.c: Ditto.
8113
8114 2007-03-27  Bruno Haible  <bruno@clisp.org>
8115
8116         Make vasnprintf multithread-safe.
8117         * lib/vasnprintf.c (decimal_point_char): New function.
8118         (VASNPRINTF): Use it.
8119         Suggested by Simon Josefsson.
8120
8121 2007-03-27  Eric Blake  <ebb9@byu.net>
8122
8123         Support sub-second birthtime on cygwin.
8124         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
8125         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
8126         (get_stat_birthtime): Also work with st_birthtim.
8127
8128 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
8129
8130         * lib/stat-time.h (USE_BIRTHTIME): Remove.
8131         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
8132         (get_stat_birthtime_ns): Do not try to use "spare" fields.
8133         (get_stat_birthtime_ns): Simplify compile-time tests.
8134         (get_stat_birthtime): Change the API to look like
8135         get_stat_mtime etc., except return a negative tv_nsec on error.
8136         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
8137         Don't check for "spare" fields.
8138         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
8139         or for struct stat.st_birthtime, as these tests aren't used.
8140         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
8141
8142 2007-03-27  Bruno Haible  <bruno@clisp.org>
8143
8144         * lib/stat-time.h: Include <sys/stat.h>.
8145
8146 2007-03-27  James Youngman  <jay@gnu.org>
8147
8148         * lib/stat-time.h (get_stat_birthtime): New function for
8149           retrieving st_birthtime as provided by UFS2 (hence *BSD).
8150         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
8151           and its variants.
8152         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
8153         * modules/stat-time-test: New file.
8154         * tests/test-stat-time.c: New test, devised by Bruno Haible.
8155
8156 2007-03-26  Bruno Haible  <bruno@clisp.org>
8157
8158         Better support of signalling NaNs.
8159         * lib/atanl.c: Include isnanl.h.
8160         (atanl): Perform test for NaN at the beginning of the function and
8161         through a call to isnanl.
8162         * lib/cosl.c: Include isnanl.h.
8163         (cosl): Perform test for NaN at the beginning of the function and
8164         through a call to isnanl.
8165         * lib/ldexpl.c: Include isnanl.h.
8166         (ldexpl): Perform test for NaN through a call to isnanl.
8167         * lib/logl.c: Include isnanl.h.
8168         (logl): Perform test for NaN at the beginning of the function and
8169         through a call to isnanl.
8170         * lib/sinl.c: Include isnanl.h.
8171         (sinl): Perform test for NaN at the beginning of the function and
8172         through a call to isnanl.
8173         * lib/sqrtl.c: Include isnanl.h.
8174         (sqrtl): Perform test for NaN at the beginning of the function and
8175         through a call to isnanl.
8176         * lib/tanl.c: Include isnanl.h.
8177         (tanl): Perform test for NaN at the beginning of the function and
8178         through a call to isnanl.
8179         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
8180         * modules/mathl (Depends-on): Add isnanl.
8181
8182 2007-03-26  Eric Blake  <ebb9@byu.net>
8183
8184         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
8185         regression in logic sense of previous patch.
8186
8187 2007-03-26  Bruno Haible  <bruno@clisp.org>
8188
8189         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
8190         unportable shell command "if ! ...".
8191         Reported by Ralf Wildenhues.
8192
8193 2007-03-25  Bruno Haible  <bruno@clisp.org>
8194
8195         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
8196         <sysexits.h> file, and only add EX_CONFIG.
8197         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
8198         absolute file name and whether it is sufficient. Substitute also
8199         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
8200         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
8201         ABSOLUTE_SYSEXITS_H into sysexits.h.
8202
8203 2007-03-25  Bruno Haible  <bruno@clisp.org>
8204
8205         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
8206         hints is NULL.
8207
8208 2007-03-25  Bruno Haible  <bruno@clisp.org>
8209
8210         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
8211         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
8212
8213 2007-03-25  Bruno Haible  <bruno@clisp.org>
8214
8215         * lib/vasnprintf.c: Include langinfo.h.
8216         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
8217         multithread-safe.
8218         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
8219         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
8220         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
8221         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
8222         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
8223         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
8224         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
8225         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
8226         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
8227         Reported by Simon Josefsson.
8228
8229 2007-03-25  Bruno Haible  <bruno@clisp.org>
8230
8231         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
8232         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
8233         * modules/vasnprintf (Depends-on): Add stdint.
8234
8235 2007-03-25  Bruno Haible  <bruno@clisp.org>
8236
8237         * modules/fpieee: New file.
8238         * m4/fpieee.m4: New file.
8239         * modules/isnan-nolibm (Depends-on): Add fpieee.
8240         * modules/isnanl-nolibm (Depends-on): Add fpieee.
8241         * modules/isnanl (Depends-on): Add fpieee.
8242
8243 2007-03-25  Bruno Haible  <bruno@clisp.org>
8244
8245         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
8246
8247 2007-03-25  Bruno Haible  <bruno@clisp.org>
8248
8249         Avoid test failures on IRIX 6.5.
8250         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
8251         (main): Use it.
8252         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
8253         macros.
8254         (main): Use them.
8255
8256 2007-03-25  Bruno Haible  <bruno@clisp.org>
8257
8258         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
8259         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
8260         exists but doesn't work.
8261         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
8262         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
8263         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
8264         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
8265
8266 2007-03-25  Bruno Haible  <bruno@clisp.org>
8267
8268         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
8269         returns inf. Needed on IRIX 6.5.
8270
8271 2007-03-25  Bruno Haible  <bruno@clisp.org>
8272
8273         * tests/test-frexpl.c: Include isnanl-nolibm.h.
8274         (main): Use isnanl instead of x != x idiom.
8275         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
8276
8277         * tests/test-frexp.c: Include isnan.h.
8278         (main): Use isnan instead of x != x idiom.
8279         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
8280
8281 2007-03-25  Bruno Haible  <bruno@clisp.org>
8282
8283         * tests/test-frexp.c (NaN): New function/macro.
8284         (main): Use it instead of 0.0 / 0.0.
8285         * tests/test-isnan.c (NaN): New function/macro.
8286         (main): Use it instead of 0.0 / 0.0.
8287         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
8288         (test_function): Use it instead of 0.0 / 0.0.
8289         * tests/test-vasprintf-posix.c (NaN): New function/macro.
8290         (test_function): Use it instead of 0.0 / 0.0.
8291         * tests/test-snprintf-posix.h (NaN): New function/macro.
8292         (test_function): Use it instead of 0.0 / 0.0.
8293         * tests/test-sprintf-posix.h (NaN): New function/macro.
8294         (test_function): Use it instead of 0.0 / 0.0.
8295         * tests/test-fprintf-posix.h (NaN): New function/macro.
8296         (test_function): Use it instead of 0.0 / 0.0.
8297         * tests/test-printf-posix.h (NaN): New function/macro.
8298         (test_function): Use it instead of 0.0 / 0.0.
8299
8300         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
8301
8302 2007-03-25  Bruno Haible  <bruno@clisp.org>
8303
8304         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
8305
8306 2007-03-25  Bruno Haible  <bruno@clisp.org>
8307
8308         * lib/regexec.c (merge_state_with_log): Make static.
8309
8310 2007-03-25  Bruno Haible  <bruno@clisp.org>
8311
8312         * lib/trigl.c (kernel_rem_pio2): Make static.
8313
8314 2007-03-25  Bruno Haible  <bruno@clisp.org>
8315
8316         * lib/sincosl.c (sincosl_table): Make static.
8317
8318 2007-03-25  Bruno Haible  <bruno@clisp.org>
8319
8320         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
8321         if the compiler does not support C99.
8322
8323 2007-03-25  Bruno Haible  <bruno@clisp.org>
8324
8325         * modules/time (Makefile.am): Ensure all rule action lines start with a
8326         tab.
8327
8328 2007-03-24  Bruno Haible  <bruno@clisp.org>
8329
8330         * modules/tsearch-tests: New file.
8331         * tests/test-tsearch.sh: New file.
8332         * tests/test-tsearch.c: New file, mostly copied from glibc.
8333
8334         * modules/search-tests: New file.
8335         * tests/test-search.c: New file.
8336
8337         * modules/search: New file.
8338         * lib/search_.h: New file, incorporating lib/tsearch.h.
8339         * m4/search_h.m4: New file.
8340         * lib/tsearch.h: Remove file.
8341         * lib/tsearch.c: Include search.h instead of tsearch.h.
8342         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
8343         HAVE_TSEARCH.
8344         * modules/tsearch (Files): Remove lib/tsearch.h.
8345         (Depends-on): Add search.
8346         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
8347         (Include): Change tsearch.h into search.h.
8348
8349 2007-03-24  Bruno Haible  <bruno@clisp.org>
8350
8351         * modules/fpucw: New file.
8352         * lib/fpucw.h: New file.
8353         * lib/frexp.c: Include fpucw.h.
8354         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
8355         (FUNC): Use them.
8356         * lib/printf-frexp.c: Include fpucw.h.
8357         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
8358         (FUNC): Use them.
8359         * lib/vasnprintf.c: Include fpucw.h.
8360         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
8361         'long double' calculations.
8362         * tests/test-frexpl.c: Include fpucw.h.
8363         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
8364         * tests/test-printf-frexpl.c: Include fpucw.h.
8365         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
8366         * modules/frexpl (Depends-on): Add fpucw.
8367         * modules/printf-frexpl (Depends-on): Likewise.
8368         * modules/fprintf-posix (Depends-on): Likewise.
8369         * modules/snprintf-posix (Depends-on): Likewise.
8370         * modules/sprintf-posix (Depends-on): Likewise.
8371         * modules/vasnprintf-posix (Depends-on): Likewise.
8372         * modules/vasprintf-posix (Depends-on): Likewise.
8373         * modules/vfprintf-posix (Depends-on): Likewise.
8374         * modules/vsnprintf-posix (Depends-on): Likewise.
8375         * modules/vsprintf-posix (Depends-on): Likewise.
8376         * modules/frexpl-tests (Depends-on): Likewise.
8377         * modules/printf-frexpl-tests (Depends-on): Likewise.
8378
8379 2007-03-24  Bruno Haible  <bruno@clisp.org>
8380
8381         * lib/float+.h: New file.
8382         * lib/isnan.c: Include float+.h.
8383         (SIZE): New macro.
8384         (FUNC): Compare only SIZE bytes of the value.
8385         * lib/vasnprintf.c: Include float+.h.
8386         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
8387         SIZEOF_LDBL or SIZEOF_DBL bytes.
8388         * modules/isnan-nolibm (Files): Add lib/float+.h.
8389         * modules/isnanl-nolibm (Files): Add lib/float+.h.
8390         * modules/isnanl (Files): Add lib/float+.h.
8391         * modules/vasnprintf (Files): Add lib/float+.h.
8392
8393 2007-03-24  Bruno Haible  <bruno@clisp.org>
8394
8395         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
8396         include isnanl-nolibm.h.
8397
8398 2007-03-24  Bruno Haible  <bruno@clisp.org>
8399
8400         * tests/test-read-file.c (main): Don't produce spurious output for
8401         expected situations. Make the test fail if it encountered unexpected
8402         results.
8403
8404 2007-03-24  Bruno Haible  <bruno@clisp.org>
8405
8406         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
8407         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
8408
8409 2007-03-24  Bruno Haible  <bruno@clisp.org>
8410
8411         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
8412
8413 2007-03-24  Bruno Haible  <bruno@clisp.org>
8414
8415         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
8416         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
8417
8418         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
8419         * modules/utf8-ucs4: Turn into a symbolic link to module
8420         unistr/u8-mbtouc.
8421
8422         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
8423         utf8-ucs4-unsafe.
8424         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
8425         unistr/u8-mbtouc-unsafe.
8426
8427         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
8428         * modules/utf16-ucs4: Turn into a symbolic link to module
8429         unistr/u16-mbtouc.
8430
8431         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
8432         utf16-ucs4-unsafe.
8433         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
8434         unistr/u16-mbtouc-unsafe.
8435
8436         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
8437         * modules/ucs4-utf8: Turn into a symbolic link to module
8438         unistr/u8-ubtomb.
8439
8440         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
8441         * modules/ucs4-utf16: Turn into a symbolic link to module
8442         unistr/u16-ubtomb.
8443
8444 2007-03-24  Bruno Haible  <bruno@clisp.org>
8445
8446         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
8447         Enable the function only if HAVE_INLINE.
8448         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
8449         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
8450         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
8451         Enable the function only if HAVE_INLINE.
8452         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
8453         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
8454         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
8455         Enable the function only if HAVE_INLINE.
8456         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
8457         Enable the function only if HAVE_INLINE.
8458         * modules/utf8-ucs4: Update.
8459         * modules/utf8-ucs4-unsafe: Update.
8460         * modules/utf16-ucs4: Update.
8461         * modules/utf16-ucs4-unsafe: Update.
8462         * modules/ucs4-utf8: Update.
8463         * modules/ucs4-utf16: Update.
8464
8465 2007-03-24  Bruno Haible  <bruno@clisp.org>
8466
8467         * lib/utf8-ucs4.h: Remove file.
8468         * lib/utf8-ucs4-unsafe.h: Remove file.
8469         * lib/utf16-ucs4.h: Remove file.
8470         * lib/utf16-ucs4-unsafe.h: Remove file.
8471         * lib/ucs4-utf8.h: Remove file.
8472         * lib/ucs4-utf16.h: Remove file.
8473         * lib/unistr.h: Include their previous contents.
8474         * m4/utf-ucs4.m4: Remove file.
8475         * m4/ucs4-utf.m4: Remove file.
8476         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
8477         (Depends-on): Add unistr/base.
8478         (configure.ac): Remove gl_UTF_UCS4.
8479         (Makefile.am): Update.
8480         (Include): Change to unistr.h.
8481         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
8482         (Depends-on): Add unistr/base.
8483         (configure.ac): Remove gl_UTF_UCS4.
8484         (Makefile.am): Update.
8485         (Include): Change to unistr.h.
8486         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
8487         (Depends-on): Add unistr/base.
8488         (configure.ac): Remove gl_UTF_UCS4.
8489         (Makefile.am): Update.
8490         (Include): Change to unistr.h.
8491         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
8492         (Depends-on): Add unistr/base.
8493         (configure.ac): Remove gl_UTF_UCS4.
8494         (Makefile.am): Update.
8495         (Include): Change to unistr.h.
8496         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
8497         (Depends-on): Add unistr/base.
8498         (configure.ac): Remove gl_UCS4_UTF.
8499         (Makefile.am): Update.
8500         (Include): Change to unistr.h.
8501         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
8502         (Depends-on): Add unistr/base.
8503         (configure.ac): Remove gl_UCS4_UTF.
8504         (Makefile.am): Update.
8505         (Include): Change to unistr.h.
8506         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
8507         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
8508         utf8-ucs4-unsafe.h.
8509         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
8510         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
8511         utf16-ucs4-unsafe.h.
8512         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
8513         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
8514         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
8515         * lib/unistr/u8-strchr.c: Likewise.
8516         * lib/unistr/u8-strrchr.c: Likewise.
8517         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
8518         * lib/unistr/u16-strchr.c: Likewise.
8519         * lib/unistr/u16-strrchr.c: Likewise.
8520         * lib/striconveh.c: Update.
8521         * lib/linebreak.c: Update.
8522
8523 2007-03-24  Bruno Haible  <bruno@clisp.org>
8524
8525         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
8526         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
8527
8528 2007-03-22  Bruno Haible  <bruno@clisp.org>
8529
8530         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
8531
8532 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
8533
8534         * MODULES.html.sh (File system functions): New module write-any-file.
8535         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
8536         * m4/write-any-file.m4: New files.
8537
8538 2007-03-23  Eric Blake  <ebb9@byu.net>
8539
8540         * gnulib-tool: Rearrange space-tab sequences, since some editors
8541         like to eat them.
8542
8543 2007-03-23  Eric Blake  <ebb9@byu.net>
8544
8545         * lib/version-etc.c (version_etc_va): Update license wording to
8546         be more concise.  Recommended by Richard Stallman.
8547
8548 2007-03-22  Bruno Haible  <bruno@clisp.org>
8549
8550         * lib/poll.c (MSG_PEEK): New fallback definition.
8551
8552 2007-03-22  Bruno Haible  <bruno@clisp.org>
8553
8554         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
8555         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
8556         (main): Update.
8557         Fixes a compilation error on BeOS.
8558
8559 2007-03-22  Bruno Haible  <bruno@clisp.org>
8560
8561         * modules/frexpl-tests: New file.
8562         * tests/test-frexpl.c: New file.
8563
8564         * modules/frexpl: New file.
8565         * m4/frexpl.m4: New file.
8566         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
8567         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
8568         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
8569         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
8570         (Depends-on): Add frexpl. Remove isnanl-nolibm.
8571         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
8572
8573 2007-03-22  Bruno Haible  <bruno@clisp.org>
8574
8575         * lib/frexpl.c: Share code with lib/frexp.c.
8576         * modules/mathl (Files): Add lib/frexp.c.
8577         (Depends-on): Add isnanl-nolibm.
8578
8579 2007-03-22  Bruno Haible  <bruno@clisp.org>
8580
8581         * modules/printf-frexp (Files): Add m4/frexp.m4.
8582         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
8583         only if the found frexp function actually works.
8584
8585 2007-03-22  Bruno Haible  <bruno@clisp.org>
8586
8587         * lib/frexp.c: Remove older implementation that uses divisions.
8588
8589 2007-03-21  Bruno Haible  <bruno@clisp.org>
8590
8591         * modules/frexp-tests: New file.
8592         * tests/test-frexp.c: New file.
8593
8594         * modules/frexp: New file.
8595         * lib/frexp.c: New file.
8596         * m4/frexp.m4: New file.
8597         * lib/math_.h (frexp): New declaration.
8598         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
8599         REPLACE_FREXP.
8600         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
8601
8602 2007-03-21  Bruno Haible  <bruno@clisp.org>
8603
8604         * modules/isnanl-tests: New file.
8605         * tests/test-isnanl.c: New file.
8606
8607         * modules/isnanl: New file.
8608         * lib/isnanl.h: New file.
8609         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
8610         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
8611         gl_FUNC_ISNANL_WORKS.
8612         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
8613         New macros.
8614
8615 2007-03-21  Bruno Haible  <bruno@clisp.org>
8616
8617         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
8618         lib/isnanl.h.
8619         (Include): Update.
8620         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
8621         * lib/vasnprintf.c: Update.
8622         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
8623         tests/test-isnanl.h, remove tests/test-isnanl.c.
8624         (Makefile.am): Update.
8625         * tests/test-isnanl-nolibm.c: New file.
8626         * tests/test-isnanl.h: New file.
8627         * tests/test-isnanl.c: Remove file.
8628
8629 2007-03-21  Jim Meyering  <jim@meyering.net>
8630
8631         When trying to open ".", treat ESTALE like EACCES.
8632         * lib/savewd.c (savewd_save): Resort to forking not just upon
8633         failure with EACCES, but also when errno is ESTALE.
8634
8635 2007-03-20  Bruno Haible  <bruno@clisp.org>
8636
8637         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
8638         Needed on AIX 5.1. Reported by Matthew Woehlke.
8639
8640 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
8641
8642         Suggestions by Bruno Haible:
8643         * lib/acl-internal.h: Include "gettext.h" rather than rolling
8644         our own.
8645         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
8646         * modules/acl (Depends-on): Add gettext.
8647
8648 2007-03-19  Bruno Haible  <bruno@clisp.org>
8649
8650         * modules/iconvme: Remove file.
8651         * lib/iconvme.h: Remove file.
8652         * lib/iconvme.c: Remove file.
8653         * m4/iconvme.m4: Remove file.
8654
8655 2007-03-19  Bruno Haible  <bruno@clisp.org>
8656
8657         * doc/relocatable-maint.texi: Break long shell script line.
8658         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
8659
8660 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
8661
8662         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
8663         handle file_has_acl.
8664         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
8665         * lib/acl.c: Move header inclusions and related macro defns into
8666         lib/acl-internal.h.
8667         (S_ISLNK): Remove defn, since that's now done for us.
8668         (file_has_acl): Move to lib/file-has-acl.c.
8669         Call acl_trivial if available.  This is the crucial part of the fix.
8670         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
8671         shared within the library.  Rewrite a bit, partly to make it compatible
8672         with the GNU coding style.
8673         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
8674         Remove unnecessary double-quotes.
8675         Don't test for acl_to_text; the build will catch that.
8676         Replace acl_entries if it doesn't exist and it is needed.
8677         Check for -lsec and acl_trivial (as used on Solaris 10).
8678         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
8679         lib/file-has-acl.c.
8680         (Depends-on): Add sys_stat, for S_ISLNK.
8681
8682 2007-03-19  Ben Pfaff  <blp@gnu.org>
8683
8684         * doc/gnulib.texi: Fix typos.
8685         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
8686
8687 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
8688
8689         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
8690         If size is zero here, buf must be zero.
8691
8692 2007-03-19  Simon Josefsson  <simon@josefsson.org>
8693
8694         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
8695         <bruno@clisp.org>.
8696
8697 2007-03-18  Bruno Haible  <bruno@clisp.org>
8698
8699         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
8700         Suggested by Eric Blake.
8701
8702 2007-03-18  Ben Pfaff  <blp@gnu.org>
8703
8704         * doc/relocatable.texi: Recommend using as prefix a directory
8705         that does not exist and will never be created.  Based on
8706         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
8707         and others.
8708
8709 2007-03-17  Bruno Haible  <bruno@clisp.org>
8710
8711         * lib/fchownat.c: Include lchown.h.
8712
8713 2007-03-17  Bruno Haible  <bruno@clisp.org>
8714
8715         Fix endless loop when the given allocated size was > INT_MAX.
8716         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
8717         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
8718         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
8719         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
8720         * lib/sprintf.c (sprintf): Likewise.
8721
8722 2007-03-17  Bruno Haible  <bruno@clisp.org>
8723
8724         * tests/test-argp-2.sh (func_compare): Output a context diff.
8725
8726 2007-03-17  Bruno Haible  <bruno@clisp.org>
8727
8728         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
8729         locale's decimal-point character.
8730
8731 2007-03-17  Bruno Haible  <bruno@clisp.org>
8732
8733         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
8734         before comparing it. Needed because on some platforms (e.g. x86) a
8735         'long double' occupies less bytes than sizeof (long double).
8736
8737 2007-03-17  Bruno Haible  <bruno@clisp.org>
8738
8739         * tests/test-crc.c (main): Make printf statements 64-bit clean.
8740         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
8741         * tests/test-getaddrinfo.c (simple): Likewise.
8742         * tests/test-read-file.c (main): Likewise.
8743
8744 2007-03-17  Bruno Haible  <bruno@clisp.org>
8745
8746         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
8747
8748 2007-03-17  Bruno Haible  <bruno@clisp.org>
8749
8750         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
8751         unused variable.
8752
8753 2007-03-17  Bruno Haible  <bruno@clisp.org>
8754
8755         * tests/test-c-strcasecmp.c: Include c-strcase.h.
8756         * tests/test-c-strncasecmp.c: Likewise.
8757
8758 2007-03-17  Bruno Haible  <bruno@clisp.org>
8759
8760         * modules/stdlib (Depends-on): Add unistd.
8761         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
8762         Needed for MacOS X 10.3.
8763
8764 2007-03-17  Bruno Haible  <bruno@clisp.org>
8765
8766         * lib/unistr/u-strdup.h: Include <stdlib.h>.
8767
8768 2007-03-17  Bruno Haible  <bruno@clisp.org>
8769
8770         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
8771
8772 2007-03-17  Bruno Haible  <bruno@clisp.org>
8773
8774         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
8775         to reflect files copied from gnulib (with or without modifications).
8776         Suggested by Jim Meyering.
8777
8778 2007-03-17  Eric Blake  <ebb9@byu.net>
8779
8780         * NEWS: Document stdlib change from 2007-02-18.
8781
8782 2007-03-17  Jim Meyering  <jim@meyering.net>
8783
8784         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
8785         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
8786         someone uses a name containing shell meta-characters.
8787         Reported by Alfred M. Szmidt.
8788
8789         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
8790
8791 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
8792
8793         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
8794         and copy gettext configuration files only if configure.ac contains
8795         a use of AM_GNU_GETTEXT_VERSION.
8796
8797 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
8798
8799         * build-aux/bootstrap (gnulib_name): New variable.
8800         (gnulib_tool_options): Use it.
8801
8802 2007-03-13  Simon Josefsson  <simon@josefsson.org>
8803
8804         * tests/test-des.c: Use new namespace.
8805
8806 2007-03-15  Bruno Haible  <bruno@clisp.org>
8807
8808         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
8809         Reported by James Youngman <jay@gnu.org>.
8810
8811 2007-03-15  Bruno Haible  <bruno@clisp.org>
8812
8813         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
8814         declared prototype. Needed with cc on OSF/1 5.1.
8815
8816 2007-03-15  Bruno Haible  <bruno@clisp.org>
8817
8818         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
8819         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
8820         (struct gl_list_implementation): Add dispose_fn argument to the
8821         'create_empty', 'create' methods.
8822         (struct gl_list_impl_base): Add field 'dispose_fn'.
8823         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
8824         argument.
8825         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
8826         dispose_fn argument.
8827         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
8828         dispose_fn on the dropped values.
8829         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
8830         dispose_fn argument.
8831         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
8832         dropped values.
8833         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
8834         (gl_tree_remove_node): Call dispose_fn on the dropped value.
8835         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
8836         (gl_tree_remove_node): Call dispose_fn on the dropped value.
8837         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
8838         argument.
8839         (gl_tree_list_free): Call dispose_fn on the dropped values.
8840         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
8841         the dropped values.
8842         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
8843         Add dispose_fn argument.
8844         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
8845         Call dispose_fn on the dropped values.
8846         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
8847         Add dispose_fn argument.
8848         (gl_sublist_create): Initialize the 'dispose_fn' field.
8849         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
8850         * tests/test-array_list.c (main): Update.
8851         * tests/test-carray_list.c (main): Update.
8852         * tests/test-avltree_list.c (main): Update.
8853         * tests/test-rbtree_list.c (main): Update.
8854         * tests/test-avltreehash_list.c (main): Update.
8855         * tests/test-rbtreehash_list.c (main): Update.
8856         * tests/test-linked_list.c (main): Update.
8857         * tests/test-linkedhash_list.c (main): Update.
8858         * tests/test-array_oset.c (main): Update.
8859
8860 2007-03-15  Bruno Haible  <bruno@clisp.org>
8861
8862         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
8863         (gl_oset_create_empty): Add dispose_fn argument.
8864         (struct gl_oset_implementation): Add dispose_fn argument to
8865         'create_empty' method.
8866         (struct gl_oset_impl_base): Add dispose_fn field.
8867         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
8868         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
8869         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
8870         values.
8871         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
8872         (gl_tree_oset_free): Call dispose_fn on the dropped values.
8873         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
8874         dropped value.
8875         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
8876         dropped value.
8877         * tests/test-array_oset.c (main): Update.
8878         * tests/test-avltree_oset.c (main): Update.
8879         * tests/test-rbtree_oset.c (main): Update.
8880         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
8881
8882 2007-03-13  Bruno Haible  <bruno@clisp.org>
8883
8884         * tests/test-stdbool.c (i): Update after last patch.
8885
8886 2007-03-12  Bruno Haible  <bruno@clisp.org>
8887
8888         * lib/quotearg.c: Include <wctype.h> early, before the definition of
8889         the iswprint macro. Needed on Solaris 2.5.1.
8890
8891 2007-03-12  Bruno Haible  <bruno@clisp.org>
8892
8893         * tests/test-printf-frexp.c (main): Declare x as volatile.
8894
8895 2007-03-12  Simon Josefsson  <simon@josefsson.org>
8896
8897         * doc/gnulib.texi (Build robot for gnulib): New section.
8898
8899 2007-03-12  Jim Meyering  <jim@meyering.net>
8900
8901         * build-aux/bootstrap: New file.
8902         * build-aux/bootstrap.conf: New file, from coreutils.
8903
8904 2007-03-11  Bruno Haible  <bruno@clisp.org>
8905
8906         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
8907
8908 2007-03-12  Simon Josefsson  <simon@josefsson.org>
8909
8910         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
8911         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
8912         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
8913
8914 2007-03-11  Bruno Haible  <bruno@clisp.org>
8915
8916         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
8917         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
8918
8919 2007-03-11  Bruno Haible  <bruno@clisp.org>
8920
8921         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
8922         formula. Needed for SunPRO C 5.0.
8923
8924 2007-03-11  Bruno Haible  <bruno@clisp.org>
8925
8926         * modules/long-options (Depends-on): Add getopt.
8927
8928 2007-03-11  Bruno Haible  <bruno@clisp.org>
8929
8930         * modules/modechange (Depends-on): Add stdbool.
8931
8932 2007-03-11  Bruno Haible  <bruno@clisp.org>
8933
8934         * modules/i-ring (Depends-on): Add stdbool.
8935
8936 2007-03-11  Bruno Haible  <bruno@clisp.org>
8937
8938         * modules/gc-des (Depends-on): Add stdbool.
8939
8940 2007-03-11  Bruno Haible  <bruno@clisp.org>
8941
8942         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
8943
8944 2007-03-11  Bruno Haible  <bruno@clisp.org>
8945
8946         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
8947
8948 2007-03-11  Bruno Haible  <bruno@clisp.org>
8949
8950         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
8951
8952 2007-03-11  Bruno Haible  <bruno@clisp.org>
8953
8954         * lib/vasnprintf.c (sprintf): Undefine.
8955
8956 2007-03-11  Bruno Haible  <bruno@clisp.org>
8957
8958         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
8959         initializers in SunPRO C and Compaq C compilers.
8960
8961 2007-03-11  Bruno Haible  <bruno@clisp.org>
8962
8963         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
8964         decrementing code ANSI C compliant.
8965
8966 2007-03-11  Bruno Haible  <bruno@clisp.org>
8967
8968         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
8969         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
8970
8971 2007-03-11  Bruno Haible  <bruno@clisp.org>
8972
8973         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
8974         <stdbool.h> substitute doesn't pass.
8975
8976 2007-03-11  Bruno Haible  <bruno@clisp.org>
8977
8978         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
8979
8980 2007-03-11  Bruno Haible  <bruno@clisp.org>
8981
8982         * gnulib-tool (func_create_megatestdir): Create also an autobuild
8983         script, for submission to autobuild.josefsson.org.
8984
8985 2007-03-10  Bruno Haible  <bruno@clisp.org>
8986
8987         * modules/canonicalize-lgpl-tests: New file.
8988         * tests/test-canonicalize-lgpl.sh: New file.
8989         * tests/test-canonicalize-lgpl.c: New file.
8990
8991         * modules/c-strcase-tests: New file.
8992         * tests/test-c-strcase.sh: New file.
8993         * tests/test-c-strcasecmp.c: New file.
8994         * tests/test-c-strncasecmp.c: New file.
8995
8996         * modules/atexit-tests: New file.
8997         * tests/test-atexit.sh: New file.
8998         * tests/test-atexit.c: New file.
8999
9000 2007-03-10  Bruno Haible  <bruno@clisp.org>
9001
9002         * tests/test-binary-io.sh: Use temporary filenames that are not so
9003         likely to clash with those of other tests (in a parallel make).
9004         * tests/test-binary-io.c: Likewise.
9005
9006 2007-03-10  Bruno Haible  <bruno@clisp.org>
9007
9008         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
9009         fallback; use #error instead.
9010         Suggested by Simon Josefsson.
9011
9012 2007-03-10  Bruno Haible  <bruno@clisp.org>
9013
9014         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
9015         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
9016         first and the last.
9017
9018 2007-03-10  Bruno Haible  <bruno@clisp.org>
9019
9020         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
9021
9022 2007-03-10  Bruno Haible  <bruno@clisp.org>
9023
9024         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
9025         "make distcheck".
9026         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
9027         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
9028         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
9029
9030 2007-03-10  Bruno Haible  <bruno@clisp.org>
9031
9032         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
9033         variable.
9034         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
9035         variable.
9036
9037 2007-03-09  Eric Blake  <ebb9@byu.net>
9038         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
9039
9040         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
9041         types are not being provided by gnulib.
9042         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
9043         types are supported.
9044
9045 2007-03-10  Bruno Haible  <bruno@clisp.org>
9046
9047         * lib/stdio_.h (__attribute__): New macro.
9048         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
9049         vsprintf): Specify __attribute__ __format__ for GCC.
9050         Suggested by Eric Blake.
9051
9052 2007-03-09  Bruno Haible  <bruno@clisp.org>
9053
9054         * modules/printf-posix-tests: New file.
9055         * tests/test-printf-posix.sh: New file.
9056         * tests/test-printf-posix.c: New file.
9057
9058         * modules/printf-posix: New file.
9059         * lib/printf.c: New file.
9060         * m4/printf-posix-rpl.m4: New file.
9061         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
9062         REPLACE_PRINTF.
9063         * lib/stdio_.h (printf): New declaration.
9064         (format, __format__, ____printf____, ____scanf____, ____strftime____,
9065         ____strfmon____): New macros.
9066         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
9067         REPLACE_PRINTF.
9068
9069 2007-03-09  Bruno Haible  <bruno@clisp.org>
9070
9071         * tests/test-vasnprintf-posix2.sh: New file.
9072         * tests/test-vasnprintf-posix2.c: New file.
9073         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
9074         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
9075         (Makefile.am): Activate test-vasnprintf-posix2.sh.
9076
9077         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
9078         a locale dependent decimal point, rather than always '.'.
9079
9080 2007-03-09  Eric Blake  <ebb9@byu.net>
9081
9082         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
9083         spite of platforms like Tandem/NSK that define it to -1.
9084
9085 2007-03-08  Bruno Haible  <bruno@clisp.org>
9086
9087         * modules/vprintf-posix-tests: New file.
9088         * tests/test-vprintf-posix.sh: New file.
9089         * tests/test-vprintf-posix.c: New file.
9090         * tests/test-printf-posix.h: New file.
9091
9092         * modules/vprintf-posix: New file.
9093         * lib/vprintf.c: New file.
9094         * m4/vprintf-posix.m4: New file.
9095         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
9096         REPLACE_VPRINTF.
9097         * lib/stdio_.h (vprintf): New declaration.
9098         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
9099         REPLACE_VPRINTF.
9100
9101 2007-03-08  Bruno Haible  <bruno@clisp.org>
9102
9103         * modules/fprintf-posix-tests: New file.
9104         * tests/test-fprintf-posix.sh: New file.
9105         * tests/test-fprintf-posix.c: New file.
9106
9107         * modules/fprintf-posix: New file.
9108         * lib/fprintf.c: New file.
9109         * m4/fprintf-posix.m4: New file.
9110         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
9111         REPLACE_FPRINTF.
9112         * lib/stdio_.h (fprintf): New declaration.
9113         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
9114         REPLACE_FPRINTF.
9115
9116 2007-03-08  Bruno Haible  <bruno@clisp.org>
9117
9118         * modules/vfprintf-posix-tests: New file.
9119         * tests/test-vfprintf-posix.sh: New file.
9120         * tests/test-vfprintf-posix.c: New file.
9121         * tests/test-fprintf-posix.h: New file.
9122         * tests/test-fprintf-posix.out: New file.
9123
9124         * modules/vfprintf-posix: New file.
9125         * lib/vfprintf.c: New file.
9126         * m4/vfprintf-posix.m4: New file.
9127         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
9128         REPLACE_VFPRINTF.
9129         * lib/stdio_.h (vfprintf): New declaration.
9130         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
9131         REPLACE_VFPRINTF.
9132
9133 2007-03-08  Bruno Haible  <bruno@clisp.org>
9134
9135         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
9136
9137 2007-03-08  Bruno Haible  <bruno@clisp.org>
9138
9139         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
9140         instead of 'expr' invocations.
9141         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
9142         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
9143         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
9144         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
9145         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
9146         Suggested by Paul Eggert.
9147
9148 2007-03-08  Bruno Haible  <bruno@clisp.org>
9149
9150         * modules/fseterr-tests: New file.
9151         * tests/test-fseterr.c: New file.
9152
9153         * modules/fseterr: New file.
9154         * lib/fseterr.h: New file.
9155         * lib/fseterr.c: New file.
9156
9157 2007-03-08  Bruno Haible  <bruno@clisp.org>
9158
9159         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
9160         * lib/getopt_.h: Likewise.
9161         * lib/mbswidth.h: Likewise.
9162         * lib/setenv.h: Likewise.
9163         * lib/vasnprintf.h: Likewise.
9164         * lib/vasprintf.h: Likewise.
9165         * lib/verror.h: Likewise.
9166         * lib/xsetenv.h: Likewise.
9167         * lib/xvasprintf.h: Likewise.
9168
9169 2007-03-08  Jim Meyering  <jim@meyering.net>
9170
9171         * users.txt: Add parted.
9172
9173         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
9174
9175 2007-03-07  Bruno Haible  <bruno@clisp.org>
9176
9177         * m4/printf.m4: Make the shell script snippets copy&pastable.
9178
9179 2007-03-02  Bruno Haible  <bruno@clisp.org>
9180
9181         * lib/netinet_in_.h: New file.
9182         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
9183         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
9184         * modules/netinet_in (Files): Add lib/netinet_in_.h.
9185         (Depends-on): Add absolute-header.
9186         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
9187         into netinet/in.h.
9188
9189 2007-03-03  Bruno Haible  <bruno@clisp.org>
9190
9191         * lib/sys_select_.h: New file.
9192         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
9193         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
9194         * modules/sys_select (Files): Add lib/sys_select_.h.
9195         (Depends-on): Add absolute-header.
9196         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
9197         into sys/select.h.
9198
9199 2007-03-02  Bruno Haible  <bruno@clisp.org>
9200
9201         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
9202         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
9203         values.
9204         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
9205         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
9206         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
9207         * modules/sys_socket (Depends-on): Add absolute-header.
9208         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
9209         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
9210         (Include): Remove requirement of inclusion of <sys/types.h>.
9211
9212 2007-03-02  Bruno Haible  <bruno@clisp.org>
9213
9214         * lib/byteswap_.h (bswap_32): Fix formula.
9215
9216 2007-03-06  Bruno Haible  <bruno@clisp.org>
9217
9218         * modules/sprintf-posix-tests: New file.
9219         * tests/test-sprintf-posix.c: New file.
9220
9221         * modules/sprintf-posix: New file.
9222         * lib/sprintf.c: New file.
9223         * m4/sprintf-posix.m4: New file.
9224         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
9225         REPLACE_SPRINTF.
9226         * lib/stdio_.h (sprintf): New declaration.
9227         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
9228         REPLACE_SPRINTF.
9229
9230 2007-03-06  Bruno Haible  <bruno@clisp.org>
9231
9232         * modules/vsprintf-posix-tests: New file.
9233         * tests/test-vsprintf-posix.c: New file.
9234         * tests/test-sprintf-posix.h: New file.
9235
9236         * modules/vsprintf-posix: New file.
9237         * lib/vsprintf.c: New file.
9238         * m4/vsprintf-posix.m4: New file.
9239         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
9240         REPLACE_VSPRINTF.
9241         * lib/stdio_.h (vsprintf): New declaration.
9242         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
9243         REPLACE_VSPRINTF.
9244
9245 2007-03-06  Bruno Haible  <bruno@clisp.org>
9246
9247         * modules/vsnprintf (Depend-on): Remove minmax.
9248
9249 2007-03-06  Bruno Haible  <bruno@clisp.org>
9250
9251         * modules/snprintf-posix-tests: New file.
9252         * tests/test-snprintf-posix.c: New file.
9253
9254         * modules/snprintf-posix: New file.
9255         * m4/snprintf-posix.m4: New file.
9256         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
9257         gl_FUNC_SNPRINTF.
9258         (gl_FUNC_SNPRINTF): Invoke it.
9259         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
9260         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
9261         is set.
9262         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
9263
9264 2007-03-06  Bruno Haible  <bruno@clisp.org>
9265
9266         * modules/vsnprintf-posix-tests: New file.
9267         * tests/test-vsnprintf-posix.c: New file.
9268         * tests/test-snprintf-posix.h: New file.
9269
9270         * modules/vsnprintf-posix: New file.
9271         * m4/vsnprintf-posix.m4: New file.
9272         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
9273         gl_FUNC_VSNPRINTF.
9274         (gl_FUNC_VSNPRINTF): Invoke it.
9275         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
9276         * lib/stdio_.h (vsnprintf): Define as a replacement if
9277         REPLACE_VSNPRINTF is set.
9278         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
9279
9280 2007-03-06  Bruno Haible  <bruno@clisp.org>
9281
9282         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
9283         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
9284
9285 2007-03-06  Bruno Haible  <bruno@clisp.org>
9286
9287         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
9288         (asinl): Declare also if HAVE_DECL_ASINL is set.
9289         (atanl): Declare also if HAVE_DECL_ATANL is set.
9290         (ceill): Declare also if HAVE_DECL_CEILL is set.
9291         (cosl): Declare also if HAVE_DECL_COSL is set.
9292         (expl): Declare also if HAVE_DECL_EXPL is set.
9293         (floorl): Declare also if HAVE_DECL_FLOORL is set.
9294         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
9295         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
9296         (logl): Declare also if HAVE_DECL_LOGL is set.
9297         (sinl): Declare also if HAVE_DECL_SINL is set.
9298         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
9299         (tanl): Declare also if HAVE_DECL_TANL is set.
9300         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
9301         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
9302         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
9303         declaration of frexpl, ldexpl.
9304         * modules/printf-frexpl (Depends-on): Add math.
9305         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
9306
9307 2007-03-05  Bruno Haible  <bruno@clisp.org>
9308
9309         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
9310         frexpl and ldexpl are declared.
9311         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
9312
9313 2007-03-05  Bruno Haible  <bruno@clisp.org>
9314
9315         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
9316         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
9317
9318 2007-03-05  Bruno Haible  <bruno@clisp.org>
9319
9320         * lib/stdio_.h: Include <stddef.h>.
9321
9322 2007-03-05  Bruno Haible  <bruno@clisp.org>
9323
9324         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
9325
9326 2007-03-05  Bruno Haible  <bruno@clisp.org>
9327
9328         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
9329         NetBSD 4, from Ralf Wildenhues.
9330
9331 2007-03-04  Bruno Haible  <bruno@clisp.org>
9332
9333         * lib/vasprintf.h: Update #if logic for the case when the functions
9334         exist but are overridden.
9335
9336 2007-03-04  Bruno Haible  <bruno@clisp.org>
9337
9338         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
9339         implementations: glibc-2.4 and MacOS X 10.3.
9340         * tests/test-vasnprintf-posix.c (test_function): Test also the case
9341         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
9342         * tests/test-vasprintf-posix.c (test_function): Likewise.
9343
9344 2007-03-04  Bruno Haible  <bruno@clisp.org>
9345
9346         * modules/vasprintf-posix-tests: New file.
9347         * tests/test-vasprintf-posix.c: New file.
9348
9349         * modules/vasprintf-posix: New file.
9350         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
9351         defined.
9352         * m4/vasprintf-posix.m4: New file.
9353         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
9354         gl_FUNC_VASPRINTF.
9355         (gl_FUNC_VASPRINTF): Invoke it.
9356         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
9357         here.
9358         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
9359
9360 2007-03-04  Bruno Haible  <bruno@clisp.org>
9361
9362         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
9363         REPLACE_GETTIMEOFDAY.
9364         * modules/sys_time (Makefile.am): Likewise.
9365         * m4/sys_time_h.m4: Likewise.
9366         * m4/gettimeofday.m4: Likewise.
9367
9368 2007-03-04  Bruno Haible  <bruno@clisp.org>
9369
9370         * modules/vasnprintf-posix-tests: New file.
9371         * tests/test-vasnprintf-posix.c: New file.
9372
9373         * modules/vasnprintf-posix: New file.
9374         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
9375         printf-frexpl.h.
9376         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
9377         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
9378         REPLACE_VASNPRINTF is defined.
9379         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
9380         gl_FUNC_VASNPRINTF.
9381         (gl_FUNC_VASNPRINTF): Invoke it.
9382         * m4/vasnprintf-posix.m4: New file.
9383         * m4/printf.m4: New file.
9384
9385 2007-03-04  Bruno Haible  <bruno@clisp.org>
9386
9387         Compile progreloc.c only if --enable-relocatable is specified.
9388         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
9389         if --enable-relocatable was specified.
9390         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
9391         lib_SOURCES.
9392
9393 2007-03-04  Jim Meyering  <jim@meyering.net>
9394
9395         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
9396         Use it consistently, rather than enumerating errno constants.
9397
9398 2007-03-04  Bruno Haible  <bruno@clisp.org>
9399
9400         * modules/xvasprintf-tests: New file.
9401         * tests/test-xvasprintf.c: New file.
9402
9403         * modules/vasprintf-tests: New file.
9404         * tests/test-vasprintf.c: New file.
9405
9406         * modules/vasnprintf-tests: New file.
9407         * tests/test-vasnprintf.c: New file.
9408
9409         * modules/vsnprintf-tests: New file.
9410         * tests/test-vsnprintf.c: New file.
9411
9412         * modules/snprintf-tests: New file.
9413         * tests/test-snprintf.c: New file.
9414
9415 2007-03-04  Bruno Haible  <bruno@clisp.org>
9416
9417         Compile relocatable.c only if --enable-relocatable is specified.
9418         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
9419         gl_RELOCATABLE_LIBRARY.
9420         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
9421         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
9422         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
9423         gl_RELOCATABLE_LIBRARY.
9424         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
9425         (Makefile.am): Remove lib_SOURCES.
9426         * modules/relocatable-lib-lgpl (configure.ac): Invoke
9427         gl_RELOCATABLE_LIBRARY.
9428         (Makefile.am): Remove lib_SOURCES.
9429         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
9430         always.
9431         * modules/relocatable-prog-wrapper (configure.ac): Invoke
9432         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
9433
9434 2007-03-04  Bruno Haible  <bruno@clisp.org>
9435
9436         * modules/argmatch-tests: New file.
9437         * tests/test-argmatch.c: New file.
9438
9439         * tests/test-allocsa.c (main): Halve the number of loop runs.
9440
9441         * modules/alloca-opt-tests: New file.
9442         * tests/test-alloca-opt.c: New file.
9443
9444 2007-03-04  Jim Meyering  <jim@meyering.net>
9445
9446         Work around difference between Linux ACLs and Solaris 10 ZFS.
9447         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
9448         for EINVAL.
9449
9450 2007-03-03  Bruno Haible  <bruno@clisp.org>
9451
9452         * modules/relocatable-prog (Depends-on): Add back progreloc's
9453         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
9454
9455 2007-03-03  Bruno Haible  <bruno@clisp.org>
9456
9457         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
9458         * modules/relocatable-lib: New file.
9459
9460 2007-03-03  Bruno Haible  <bruno@clisp.org>
9461
9462         * modules/relocatable-prog: Renamed from modules/relocatable.
9463         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
9464
9465 2007-03-03  Bruno Haible  <bruno@clisp.org>
9466
9467         * modules/relocatable-script (Files): Add doc/relocatable.texi,
9468         m4/relocatable-lib.m4.
9469         (Depends-on): Remove 'relocatable'.
9470         (configure.ac): Add gl_RELOCATABLE_NOP.
9471
9472 2007-03-03  Bruno Haible  <bruno@clisp.org>
9473
9474         * modules/relocatable-prog-wrapper: New file.
9475         * modules/relocatable (Depends-on): Add it. Remove all other
9476         dependencies except progname.
9477         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
9478
9479         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
9480         (gl_FUNC_STRERROR): Nop.
9481         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
9482
9483         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
9484         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
9485
9486         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
9487         (gl_FUNC_READLINK): Update.
9488
9489         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
9490
9491 2007-03-03  Bruno Haible  <bruno@clisp.org>
9492
9493         * lib/xreadlink.c: Include <unistd.h> unconditionally.
9494         * modules/xreadlink (Depends-on): Add unistd.
9495         * modules/xreadlink-with-size (Depends-on): Likewise.
9496
9497 2007-03-03  Bruno Haible  <bruno@clisp.org>
9498
9499         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
9500         extracted from gt_FUNC_SETENV.
9501         (gt_FUNC_SETENV): Remove macro.
9502         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
9503         remove gt_FUNC_SETENV.
9504
9505 2007-03-03  Bruno Haible  <bruno@clisp.org>
9506
9507         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
9508         ENABLE_RELOCATABLE here.
9509         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
9510
9511 2007-03-03  Bruno Haible  <bruno@clisp.org>
9512
9513         * modules/rbtreehash-list-tests (Depends-on): Add progname.
9514         * tests/test-rbtreehash_list.c: Include progname.h.
9515         (main): Call set_program_name.
9516
9517         * modules/rbtree-oset-tests (Depends-on): Add progname.
9518         * tests/test-rbtree_oset.c: Include progname.h.
9519         (main): Call set_program_name.
9520
9521         * modules/rbtree-list-tests (Depends-on): Add progname.
9522         * tests/test-rbtree_list.c: Include progname.h.
9523         (main): Call set_program_name.
9524
9525         * modules/linked-list-tests (Depends-on): Add progname.
9526         * tests/test-linked_list.c: Include progname.h.
9527         (main): Call set_program_name.
9528
9529 2007-03-03  Bruno Haible  <bruno@clisp.org>
9530
9531         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
9532         All uses of __restrict changed to _Restrict_.
9533         * lib/glob_.h (__restrict): Remove macro.
9534
9535 2007-03-02  Bruno Haible  <bruno@clisp.org>
9536
9537         * modules/gettext (configure.ac): Require gettext infrastructure
9538         from version 0.16.1.
9539
9540 2007-03-02  Bruno Haible  <bruno@clisp.org>
9541
9542         * modules/linkedhash-list-tests (Depends-on): Add progname.
9543         * tests/test-linkedhash_list.c: Include progname.h.
9544         (main): Call set_program_name.
9545
9546         * modules/carray-list-tests (Depends-on): Add progname.
9547         * tests/test-carray_list.c: Include progname.h.
9548         (main): Call set_program_name.
9549
9550         * modules/avltreehash-list-tests (Depends-on): Add progname.
9551         * tests/test-avltreehash_list.c: Include progname.h.
9552         (main): Call set_program_name.
9553
9554         * modules/avltree-oset-tests (Depends-on): Add progname.
9555         * tests/test-avltree_oset.c: Include progname.h.
9556         (main): Call set_program_name.
9557
9558         * modules/avltree-list-tests (Depends-on): Add progname.
9559         * tests/test-avltree_list.c: Include progname.h.
9560         (main): Call set_program_name.
9561
9562         * modules/array-oset-tests (Depends-on): Add progname.
9563         * tests/test-array_oset.c: Include progname.h.
9564         (main): Call set_program_name.
9565
9566         * modules/array-list-tests (Depends-on): Add progname.
9567         * tests/test-array_list.c: Include progname.h.
9568         (main): Call set_program_name.
9569
9570         * modules/argp-tests (Depends-on): Add progname.
9571         * tests/test-argp.c: Include argp.h first. Include progname.h.
9572         (main): Call set_program_name.
9573
9574 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
9575
9576         * doc/gnulib-tool.texi (Initial import): Reword description of
9577         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
9578         limited effect even if defined after the first system include.
9579
9580 2007-03-01  Bruno Haible  <bruno@clisp.org>
9581
9582         * build-aux/config.libpath: Update to libtool-1.5.22.
9583         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
9584
9585 2007-03-01  Bruno Haible  <bruno@clisp.org>
9586
9587         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
9588         foo_CFLAGS.
9589         Reported by Ralf Wildenhues.
9590
9591 2007-03-01  Bruno Haible  <bruno@clisp.org>
9592
9593         * build-aux/install-reloc: Remove object files left over by some
9594         compilers.
9595         Reported by Ralf Wildenhues.
9596
9597 2007-03-01  Bruno Haible  <bruno@clisp.org>
9598
9599         * build-aux/install-reloc: Break long lines.
9600
9601 2007-03-01  Bruno Haible  <bruno@clisp.org>
9602
9603         * doc/relocatable.texi: Document that it may not work on OpenBSD.
9604         Reported by Ralf Wildenhues.
9605
9606 2007-03-01  Bruno Haible  <bruno@clisp.org>
9607
9608         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
9609         include ordering constraints.
9610
9611 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
9612
9613         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
9614         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
9615         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
9616         as another example.
9617         * lib/time_.h: Fix misspelling.
9618         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
9619         Require gl_HEADER_TIME_H_DEFAULTS.
9620         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
9621         * m4/time_r.m4 (gl_TIME_R): Likewise.
9622         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
9623
9624 2007-03-01  Bruno Haible  <bruno@clisp.org>
9625
9626         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
9627         * m4/utimens.m4 (gl_UTIMENS): Likewise.
9628
9629 2007-03-01  Jim Meyering  <jim@meyering.net>
9630
9631         * modules/xreadlink (Maintainer): Add my name.
9632         * modules/xreadlink-with-size (Depends-on): Alphabetize.
9633
9634 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
9635             Bruno Haible  <bruno@clisp.org>
9636
9637         * build-aux/install-reloc: Compile also c-ctype.c.
9638         * build-aux/relocatable.sh.in: New file.
9639         * doc/relocatable.texi: New file.
9640         * doc/relocatable-maint.texi: New file.
9641         * doc/gnulib.texi: Include relocatable-maint.texi.
9642         * lib/progreloc.c: Include unistd.h unconditionally.
9643         * lib/relocwrapper.c: Include unistd.h unconditionally.
9644         Include c-ctype.h.
9645         (add_dotbin): Use c_tolower.
9646         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
9647         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
9648         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
9649         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
9650         to m4/relocatable-lib.m4.
9651         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
9652         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
9653         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
9654         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
9655         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
9656         * modules/relocatable: New file.
9657         * modules/relocatable-lib: New file.
9658         * modules/relocatable-script: New file.
9659
9660 2007-02-28  Bruno Haible  <bruno@clisp.org>
9661
9662         Import --enable-relocatable infrastructure.
9663         * build-aux/config.libpath: New file, from GNU gettext.
9664         * build-aux/install-reloc: New file, from GNU gettext.
9665         * build-aux/reloc-ldflags: New file, from GNU gettext.
9666         * lib/relocatable.h: New file, from GNU gettext.
9667         * lib/relocatable.c: New file, from GNU gettext.
9668         * lib/relocwrapper.c: New file, from GNU gettext.
9669         * m4/relocatable.m4: New file, from GNU gettext.
9670
9671 2007-02-28  Bruno Haible  <bruno@clisp.org>
9672
9673         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
9674
9675         * modules/xreadlink: New file, from GNU gettext with modifications.
9676         * lib/xreadlink.c: New file, from GNU gettext.
9677         * lib/xreadlink.h: Add comments.
9678         (xreadlink): New declaration.
9679
9680         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
9681         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
9682         lib/xreadlink-with-size.c.
9683         (configure.ac): Remove gl_XREADLINK invocation.
9684         (Makefile.am): Augment lib_SOURCES.
9685         * m4/xreadlink.m4: Remove file.
9686         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
9687         (xreadlink_with_size): Renamed from xreadink.
9688         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
9689         * modules/canonicalize (Depends-on): Replace xreadlink with
9690         xreadlink-with-size.
9691         * lib/canonicalize.c (canonicalize_filename_mode): Update.
9692
9693 2007-02-25  Jim Meyering  <jim@meyering.net>
9694
9695         * build-aux/announce-gen: When complaining about excess arguments,
9696         list them.
9697
9698 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
9699
9700         * README: Document signed integer overflow situation more
9701         accurately.
9702
9703 2007-02-25  Bruno Haible  <bruno@clisp.org>
9704
9705         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
9706         'a' or 'A' conversion.
9707
9708 2007-02-25  Bruno Haible  <bruno@clisp.org>
9709
9710         * modules/filename: Renamed from modules/pathname.
9711         (Files): Replace lib/pathname.h with lib/filename.h. Replace
9712         lib/concatpath.c with lib/concat-filename.c.
9713         (Makefile.am): Update.
9714         (Include): Replace pathname.h with filename.h.
9715         * lib/filename.h: Renamed from lib/pathname.h.
9716         (concatenated_filename): Renamed from concatenated_pathname.
9717         * lib/concat-filename.c: Renamed from lib/concatpath.c.
9718         (concatenated_filename): Renamed from concatenated_pathname.
9719         * lib/findprog.c: Include filename.h instead of pathname.h.
9720         (find_in_path): Update.
9721         * lib/javacomp.c: Include filename.h instead of pathname.h.
9722         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
9723         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
9724         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
9725         is_oldgcj_14_13_usable, is_javac_usable): Update.
9726         * lib/javaexec.c: Include filename.h instead of pathname.h.
9727         (execute_java_class): Update.
9728         * modules/findprog: Update.
9729         * modules/javacomp: Update.
9730         * modules/javaexec: Update.
9731         * MODULES.html.sh (File system functions): Add 'filename', remove
9732         'pathname'.
9733
9734 2007-02-25  Bruno Haible  <bruno@clisp.org>
9735
9736         * modules/printf-frexpl-tests: New file.
9737         * tests/test-printf-frexpl.c: New file.
9738
9739         * modules/printf-frexpl: New file.
9740         * lib/printf-frexpl.h: New file.
9741         * lib/printf-frexpl.c: New file.
9742         * m4/printf-frexpl.m4: New file.
9743
9744 2007-02-25  Bruno Haible  <bruno@clisp.org>
9745
9746         * modules/printf-frexp-tests: New file.
9747         * tests/test-printf-frexp.c: New file.
9748
9749         * modules/printf-frexp: New file.
9750         * lib/printf-frexp.h: New file.
9751         * lib/printf-frexp.c: New file.
9752         * m4/printf-frexp.m4: New file.
9753
9754 2007-02-25  Bruno Haible  <bruno@clisp.org>
9755
9756         Assume automake >= 1.10 for the tests.
9757         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
9758         * modules/arctwo-tests: Likewise.
9759         * modules/argp-tests: Likewise.
9760         * modules/avltree-list-tests: Likewise.
9761         * modules/avltree-oset-tests: Likewise.
9762         * modules/avltreehash-list-tests: Likewise.
9763         * modules/carray-list-tests: Likewise.
9764         * modules/crc-tests: Likewise.
9765         * modules/des-tests: Likewise.
9766         * modules/gc-arcfour-tests: Likewise.
9767         * modules/gc-arctwo-tests: Likewise.
9768         * modules/gc-des-tests: Likewise.
9769         * modules/gc-hmac-md5-tests: Likewise.
9770         * modules/gc-hmac-sha1-tests: Likewise.
9771         * modules/gc-md2-tests: Likewise.
9772         * modules/gc-md4-tests: Likewise.
9773         * modules/gc-md5-tests: Likewise.
9774         * modules/gc-pbkdf2-sha1-tests: Likewise.
9775         * modules/gc-rijndael-tests: Likewise.
9776         * modules/gc-sha1-tests: Likewise.
9777         * modules/gc-tests: Likewise.
9778         * modules/getaddrinfo-tests: Likewise.
9779         * modules/hmac-md5-tests: Likewise.
9780         * modules/hmac-sha1-tests: Likewise.
9781         * modules/linked-list-tests: Likewise.
9782         * modules/linkedhash-list-tests: Likewise.
9783         * modules/lock-tests: Likewise.
9784         * modules/md2-tests: Likewise.
9785         * modules/md4-tests: Likewise.
9786         * modules/md5-tests: Likewise.
9787         * modules/rbtree-list-tests: Likewise.
9788         * modules/rbtree-oset-tests: Likewise.
9789         * modules/rbtreehash-list-tests: Likewise.
9790         * modules/read-file-tests: Likewise.
9791         * modules/rijndael-tests: Likewise.
9792         * modules/stdint-tests: Likewise.
9793         * modules/tls-tests: Likewise.
9794
9795 2007-02-24  Bruno Haible  <bruno@clisp.org>
9796
9797         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
9798         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
9799         function; instead check whether isnan with a double argument links.
9800         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
9801         function; instead check whether isnan with a 'long double' argument
9802         links.
9803         Reported by Eric Blake <ebb9@byu.net>.
9804
9805 2007-02-24  Bruno Haible  <bruno@clisp.org>
9806
9807         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
9808         defined.
9809         * lib/isnanl.c: Remove all code. Just include isnan.c.
9810         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
9811
9812 2007-02-25  Jim Meyering  <jim@meyering.net>
9813
9814         Avoid conflicting types for 'unsetenv' on FreeBSD.
9815         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
9816         conflicting with FreeBSD's (5.0 and 6.1) function declaration
9817         in stdlib.h.
9818
9819 2007-02-24  Bruno Haible  <bruno@clisp.org>
9820
9821         * modules/isnanl-nolibm-tests: New file.
9822         * tests/test-isnanl.c: New file.
9823
9824         * modules/isnanl-nolibm: New file.
9825         * lib/isnanl.h: New file.
9826         * lib/isnanl.c: New file.
9827         * m4/isnanl.m4: New file.
9828
9829 2007-02-24  Bruno Haible  <bruno@clisp.org>
9830
9831         * modules/isnan-nolibm-tests: New file.
9832         * tests/test-isnan.c: New file.
9833
9834         * modules/isnan-nolibm: New file.
9835         * lib/isnan.h: New file.
9836         * lib/isnan.c: New file.
9837         * m4/isnan.m4: New file.
9838
9839 2007-02-24  Bruno Haible  <bruno@clisp.org>
9840
9841         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
9842         assume that an exponent fits in 20 bits.
9843
9844 2007-02-24  Jim Meyering  <jim@meyering.net>
9845
9846         * m4/regex.m4: Update the description of the configure-time option,
9847         --without-included-regex, to state accurately what the defaults are,
9848         and perhaps to give people an idea why using this option is risky.
9849
9850 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
9851
9852         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
9853         loops on small arguments.  This attempts to avoid the problem
9854         Bruno Haible reported for AIX 4.3.2 in
9855         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
9856
9857 2007-02-23  Bruno Haible  <bruno@clisp.org>
9858
9859         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
9860         Needed for help2man.
9861
9862 2007-02-23  Karl Berry  <karl@gnu.org>
9863
9864         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
9865         exists, foo.h should be cvs-ignored, not committed.
9866
9867 2007-02-23  Eric Blake  <ebb9@byu.net>
9868
9869         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
9870         * lib/stat-time.h (includes): Likewise.
9871         * lib/utimecmp.c (includes): Likewise.
9872         * lib/utimens.h (includes): Likewise.
9873         * lib/getdate.y (includes): Also include "timespec.h" for use
9874         internal to the module.
9875         * modules/utimens (Depends-on): Revert yesterday's patch.
9876         * modules/nanosleep (Depends-on): Add missing dependency.
9877
9878 2007-02-22  Bruno Haible  <bruno@clisp.org>
9879
9880         * lib/glob.c: Don't include getlogin_r.h.
9881
9882 2007-02-22  Jim Meyering  <jim@meyering.net>
9883
9884         * modules/utimens (Depends-on): Add timespec, required for
9885         utimens.h's inclusion of timespec.h.
9886
9887 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
9888
9889         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
9890         long unreadable paths in GNU/Linux.  Problem reported by Andreas
9891         Schwab in
9892         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
9893         I'll try to think of a better way to fix the Solaris problem.
9894
9895         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
9896         like glibc; on Solaris 10, it fails with errno == EINVAL.
9897         POSIX says the behavior is unspecified if the first argument is NULL,
9898         so play it safe and never pass NULL to the system getcwd.
9899
9900 2007-02-21  Jim Meyering  <jim@meyering.net>
9901
9902         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
9903         of gettimeofday.  It would conflict with the one now always
9904         provided via sys_time_.h.  Reported by Matthew Woehlke, as
9905         an IRIX 6.5 build failure.
9906
9907 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
9908
9909         Minor fixups to port to Solaris 10 with Sun C 5.8.
9910         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
9911         * modules/getcwd (Depends-on): Add dirfd.
9912         * lib/putenv.c (putenv): #undef it.
9913         (rpl_putenv): New decl.
9914         (malloc, free): Include <stdlib.h> rather than prototyping separately.
9915
9916 2007-02-20  Bruno Haible  <bruno@clisp.org>
9917
9918         * modules/stdio-tests: New file.
9919         * tests/test-stdio.c: New file.
9920
9921         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
9922         (Depends-on): Add stdio.
9923         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
9924         (Include): Use <stdio.h> instead of vsnprintf.h.
9925         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
9926         HAVE_DECL_VSNPRINTF.
9927         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
9928
9929         * modules/snprintf (Files): Remove lib/snprintf.h.
9930         (Depends-on): Add stdio.
9931         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
9932         (Include): Use <stdio.h> instead of snprintf.h.
9933         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
9934         HAVE_DECL_SNPRINTF.
9935         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
9936         * lib/getaddrinfo.c: Likewise.
9937
9938         * modules/stdio: New file.
9939         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
9940         * lib/snprintf.h: Remove file.
9941         * lib/vsnprintf.h: Remove file.
9942         * lib/.cppi-disable: Remove snprintf.h.
9943         * m4/stdio_h.m4: New file.
9944         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
9945
9946 2007-02-20  Jim Meyering  <jim@meyering.net>
9947
9948         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
9949         used by e.g., mingw.  From Bruno Haible.
9950
9951 2007-02-19  Bruno Haible  <bruno@clisp.org>
9952
9953         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
9954         warnings.
9955         Reported by Ben Pfaff <blp@cs.stanford.edu>.
9956
9957 2007-02-19  Bruno Haible  <bruno@clisp.org>
9958
9959         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
9960         from mingw users.
9961
9962 2007-02-19  Bruno Haible  <bruno@clisp.org>
9963
9964         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
9965         warnings.
9966         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
9967
9968 2007-02-19  Jim Meyering  <jim@meyering.net>
9969
9970         Don't use FD after a successful "fdopendir (fd)".
9971         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
9972         Reset it by calling dirfd on the just-obtained DIR*.
9973
9974         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
9975         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
9976
9977 2007-02-18  Bruno Haible  <bruno@clisp.org>
9978
9979         * lib/readlink.c: Include <unistd.h>.
9980         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
9981         HAVE_READLINK.
9982         * modules/readlink (Depends-on): Add unistd.
9983         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9984         (Include): Add <unistd.h>.
9985
9986         * lib/getlogin_r.h: Remove file.
9987         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
9988         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
9989         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
9990         HAVE_DECL_GETLOGIN_R.
9991         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
9992         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9993         (Include): Use <unistd.h> instead of getlogin_r.h.
9994
9995         * lib/getcwd.h: Remove file.
9996         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
9997         * lib/xgetcwd.c: Likewise.
9998         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
9999         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
10000         * modules/getcwd (Files): Remove lib/getcwd.h.
10001         (Depends-on): Add unistd.
10002         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10003         (Include): Use <unistd.h> instad of getcwd.h.
10004
10005         * lib/ftruncate.c: Include <unistd.h> first.
10006         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
10007         Set HAVE_FTRUNCATE.
10008         * modules/ftruncate (Depends-on): Add unistd.
10009         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10010
10011         * lib/fchdir.c: Include <unistd.h> first.
10012         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
10013         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
10014         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
10015         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10016         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
10017
10018         * lib/dup2.c: Include <unistd.h> first.
10019         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
10020         HAVE_DUP2.
10021         * modules/dup2 (Depends-on): Add unistd.
10022         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10023
10024         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
10025         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
10026         REPLACE_CHOWN. Don't define chown as a macro here.
10027         * modules/chown (Depends-on): Add unistd.
10028         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10029
10030         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
10031         Add definition for GL_LINK_WARNING.
10032         (chown, dup2): New declarations.
10033         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
10034         link warning.
10035         (ftruncate): New declaration.
10036         (getcwd): New declaration, taken from old getcwd.h.
10037         (getlogin_r): New declaration, taken from old getlogin_r.h.
10038         (readlink): New declaration.
10039         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
10040         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
10041         (gl_PREREQ_UNISTD): Remove macro.
10042         (gl_UNISTD_MODULE_INDICATOR): New macro.
10043         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
10044         many new variables. Don't set UNISTD_H.
10045         * modules/unistd (Description): Change.
10046         (Depends-on): Add link-warning.
10047         (configure.ac): Update.
10048         (Makefile.am): Create unistd.h always. Substitute many new variables
10049         into it.
10050
10051 2007-02-18  Bruno Haible  <bruno@clisp.org>
10052
10053         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
10054         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
10055         HAVE_GETSUBOPT.
10056         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
10057         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
10058         * lib/getsubopt.h: Remove file.
10059         * modules/getsubopt (Files): Remove lib/getsubopt.h.
10060         (Depends-on): Add stdlib.
10061         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
10062         (Includes): Use <stdlib.h> instead of getsubopt.h.
10063         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
10064         Set HAVE_GETSUBOPT.
10065         * lib/getsubopt.c: Don't include getsubopt.h.
10066
10067 2007-02-18  Bruno Haible  <bruno@clisp.org>
10068
10069         * modules/fchdir (Depends-on): Add dup2.
10070
10071 2007-02-18  Bruno Haible  <bruno@clisp.org>
10072
10073         * lib/stdlib_.h: Handle glibc's special invocation convention
10074         specially.
10075
10076 2007-02-18  Bruno Haible  <bruno@clisp.org>
10077
10078         * modules/stdlib-tests: New file.
10079         * tests/test-stdlib.c: New file.
10080
10081         * modules/mkstemp (Files): Remove lib/mkstemp.h.
10082         (Depends-on): Add stdlib.
10083         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
10084         (Includes): Use <stdlib.h> instead of mkstemp.h.
10085         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
10086         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
10087         * lib/mkstemp.c: Don't include mkstemp.h.
10088         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
10089         * lib/stdlib--.h: Don't include mkstemp.h.
10090
10091         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
10092         (Depends-on): Add stdlib.
10093         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
10094         (Includes): Use <stdlib.h> instead of mkdtemp.h.
10095         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
10096         HAVE_MKDTEMP.
10097         * lib/mkdtemp.c: Don't include mkdtemp.h.
10098         * lib/clean-temp.c: Don't include mkdtemp.h.
10099
10100         * modules/exit (Files): Remove lib/exit.h.
10101         (Depends-on): Add stdlib.
10102         (Makefile.am): Remove lib_SOURCES.
10103         (Include): Use <stdlib.h> instead of exit.h.
10104         * lib/argmatch.c: Don't include exit.h.
10105         * lib/execute.c: Likewise.
10106         * lib/pagealign_alloc.c: Likewise.
10107         * lib/pipe.c: Likewise.
10108         * lib/wait-process.c: Likewise.
10109         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
10110         * lib/exitfail.c: Likewise.
10111         * lib/savewd.c: Likewise.
10112         * lib/xsetenv.c: Likewise.
10113
10114         * modules/stdlib: New file.
10115         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
10116         and extra comments about mkstemp().
10117         * lib/exit.h: Remove file.
10118         * lib/mkdtemp.h: Remove file.
10119         * lib/mkstemp.h: Remove file.
10120         * m4/stdlib_h.m4: New file.
10121         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
10122
10123 2007-02-18  Bruno Haible  <bruno@clisp.org>
10124
10125         * modules/math-tests: New file.
10126         * tests/test-math.c: New file.
10127
10128         * modules/math: New file.
10129         * modules/mathl (Files): Remove lib/mathl.h.
10130         (Depends-on): Add math.
10131         (Makefile.am): Don't mention mathl.h.
10132         (Include): Use <math.h> instead of mathl.h.
10133         * lib/math_.h: New file.
10134         * lib/mathl.h: Remove file.
10135         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
10136         mathl.h.
10137         * lib/asinl.c: Likewise.
10138         * lib/atanl.c: Likewise.
10139         * lib/ceill.c: Likewise.
10140         * lib/cosl.c: Likewise.
10141         * lib/expl.c: Likewise.
10142         * lib/floorl.c: Likewise.
10143         * lib/frexpl.c: Likewise.
10144         * lib/ldexpl.c: Likewise.
10145         * lib/logl.c: Likewise.
10146         * lib/sincosl.c: Likewise.
10147         * lib/sinl.c: Likewise.
10148         * lib/sqrtl.c: Likewise.
10149         * lib/tanl.c: Likewise.
10150         * lib/trigl.c: Likewise.
10151         * m4/math_h.m4: New file.
10152         * MODULES.html.sh (Mathematics): Add math.
10153
10154 2007-02-17  Bruno Haible  <bruno@clisp.org>
10155
10156         * modules/wctype-tests: New file.
10157         * tests/test-wctype.c: New file.
10158
10159         * modules/wchar-tests: New file.
10160         * tests/test-wchar.c: New file.
10161
10162         * modules/unistd-tests: New file.
10163         * tests/test-unistd.c: New file.
10164
10165         * modules/time-tests: New file.
10166         * tests/test-time.c: New file.
10167
10168         * modules/sysexits-tests: New file.
10169         * tests/test-sysexits.c: New file.
10170
10171         * modules/sys_time-tests: New file.
10172         * tests/test-sys_time.c: New file.
10173
10174         * modules/sys_stat-tests: New file.
10175         * tests/test-sys_stat.c: New file.
10176
10177         * modules/sys_socket-tests: New file.
10178         * tests/test-sys_socket.c: New file.
10179
10180         * modules/sys_select-tests: New file.
10181         * tests/test-sys_select.c: New file.
10182
10183         * modules/string-tests: New file.
10184         * tests/test-string.c: New file.
10185
10186         * modules/stdbool-tests: New file.
10187         * tests/test-stdbool.c: New file.
10188
10189         * modules/netinet_in-tests: New file.
10190         * tests/test-netinet_in.c: New file.
10191
10192         * modules/inttypes-tests: New file.
10193         * tests/test-inttypes.c: New file.
10194
10195         * modules/fcntl-tests: New file.
10196         * tests/test-fcntl.c: New file.
10197
10198         * modules/byteswap-tests: New file.
10199         * tests/test-byteswap.c: New file.
10200
10201         * modules/arpa_inet-tests: New file.
10202         * tests/test-arpa_inet.c: New file.
10203
10204 2007-02-17  Bruno Haible  <bruno@clisp.org>
10205
10206         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
10207         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
10208         if the corresponding module is not enabled. Emit link warnings if
10209         the function is used nevertheless.
10210         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
10211         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
10212         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
10213         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
10214         * modules/inttypes (Depends-on): Add link-warning.
10215         (Makefile.am): Copy the contents of build-aux/link-warning.h into
10216         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
10217         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
10218         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
10219         * modules/imaxdiv (configure.ac): Likewise.
10220         * modules/strtoimax (configure.ac): Likewise.
10221         * modules/strtoumax (configure.ac): Likewise.
10222
10223 2007-02-17  Bruno Haible  <bruno@clisp.org>
10224
10225         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
10226         gl_STRING_MODULE_INDICATOR_DEFAULTS.
10227         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
10228         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
10229
10230 2007-02-17  Bruno Haible  <bruno@clisp.org>
10231
10232         * modules/link-warning: New file.
10233         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
10234         * lib/string_.h (GL_LINK_WARNING): Remove definition.
10235         * modules/string (Depends-on): Add link-warning.
10236         (Makefile.am): Copy the contents of build-aux/link-warning.h into
10237         string.h.
10238         * MODULES.html.sh (Support for building libraries and executables): Add
10239         link-warning.
10240
10241 2007-02-17  Bruno Haible  <bruno@clisp.org>
10242
10243         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
10244         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
10245         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
10246         long lines.
10247
10248 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
10249             Bruno Haible  <bruno@clisp.org>
10250
10251         * modules/tmpfile: New file.
10252         * lib/tmpfile.c: New file.
10253         * m4/tmpfile.m4: New file.
10254         * MODULES.html.sh (func_all_modules): New section "Input/output".
10255
10256 2007-02-15  Bruno Haible  <bruno@clisp.org>
10257
10258         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
10259         (supports_delete_on_close): New function.
10260         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
10261
10262 2007-02-14  Bruno Haible  <bruno@clisp.org>
10263
10264         * modules/mbspcasecmp-tests: New file.
10265         * tests/test-mbspcasecmp.sh: New file.
10266         * tests/test-mbspcasecmp.c: New file.
10267
10268         New module mbspcasecmp.
10269         * modules/mbspcasecmp: New file.
10270         * lib/mbspcasecmp.c: New file.
10271         * lib/string_.h (strncasecmp): Change warning message.
10272         (mbspcasecmp): New declaration.
10273         * m4/mbspcasecmp.m4: New file.
10274         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10275         GNULIB_MBSPCASECMP.
10276         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
10277         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
10278
10279 2007-02-14  Bruno Haible  <bruno@clisp.org>
10280
10281         * modules/mbsncasecmp-tests: New file.
10282         * tests/test-mbsncasecmp.sh: New file.
10283         * tests/test-mbsncasecmp.c: New file.
10284
10285         New module mbsncasecmp.
10286         * modules/mbsncasecmp: New file.
10287         * lib/mbsncasecmp.c: New file.
10288         * lib/string_.h (mbsncasecmp): New declaration.
10289         * m4/mbsncasecmp.m4: New file.
10290         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10291         GNULIB_MBSNCASECMP.
10292         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
10293         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
10294
10295 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
10296
10297         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
10298         Verify that it doesn't overlap with our flags.
10299         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
10300         do not have the desired effect in multibyte locales; instead, use
10301         mbscasecmp.
10302         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
10303         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
10304         we don't require GNU fnmatch ourselves (if our users require it, they
10305         should do so explicitly).
10306
10307         Fix regex code so it doesn't rely on strcasecmp.
10308         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
10309         Otherwise, include gnulib's langinfo.h.
10310         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
10311         undesirable behavior in non-C locales.  Instead, rely on localecharset.
10312         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
10313         * modules/regex (FILES): Remove m4/codeset.m4.
10314         (Depends-on): Add localcharset.  Remove strcase.
10315
10316 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10317
10318         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
10319         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
10320
10321 2007-02-13  Bruno Haible  <bruno@clisp.org>
10322
10323         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
10324         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
10325
10326 2007-02-12  Bruno Haible  <bruno@clisp.org>
10327
10328         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
10329         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
10330         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
10331         time warning rather than a link error.
10332
10333 2007-02-12  Bruno Haible  <bruno@clisp.org>
10334
10335         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
10336         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
10337         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
10338
10339 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
10340
10341         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
10342         args, not 2.
10343
10344 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
10345
10346         New module 'time', so that apps can include <time.h> as per
10347         POSIX and GNU instead of separate include files like time_r.h
10348         and timegm.h.  This implementation tries out a simpler approach
10349         for replacing decls in standard include files (as compared to
10350         the string module), somewhat as an experiment.
10351
10352         * config/srclist.txt: Comment out mktime.c for now.
10353         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
10354         since it doesn't apply any more.  Use generic wording instead.
10355         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
10356         'time'.
10357         * lib/time_.h, m4/time_h.m4, modules/time: New files.
10358         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
10359         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
10360         Don't include <sys/types.h>; no longer needed since we assume C89.
10361         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
10362         * lib/strftime.c: Likewise.
10363         * lib/time_r.c: Likewise.
10364         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
10365         * lib/nanosleep.c: Include <time.h> first, to check interface.
10366         * lib/strptime.c: Likewise.
10367         * lib/time_r.c: Likewise.
10368         * lib/timegm.c: Likewise.
10369         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
10370         needed.
10371         * lib/timegm.c: Don't include timegm.h; no longer needed.
10372         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
10373         time.h now handles any problems in that area.
10374         (struct timespec, nanosleep): Remove; time.h now arranges for these.
10375         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
10376         that time.h defines struct timespec.
10377         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
10378         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
10379         handles that.
10380         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
10381         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
10382         needed.  Set REPLACE_LOCALTIME.
10383         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
10384         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
10385         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
10386         nanosleep; time_h.m4 now does that.  Don't require
10387         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
10388         module handles this now.
10389         * modules/getdate (Depends-on): Remove timespec.  Add time.
10390         * modules/nanosleep (Depends-on): Likewise.
10391         * modules/stat-time (Depends-on): Likewise.
10392         * modules/nanosleep (Include): Include time.h, not timespec.h.
10393         * modules/strptime (Files): Remove lib/strptime.h.
10394         (Depends-on): Add extensions, time.
10395         (Include): Include time.h, not strptime.h.
10396         * modules/time_r (Files): Remove lib/time_r.h.
10397         (Depends-on): Add time.
10398         (Include): Include time.h, not time_r.h.
10399         * modules/timegm: Likewise.
10400         * modules/timespec (Description): Now does timespec-related decls
10401         of our own, instead of struct timespec itself.
10402         (Depends-on): Add time; remove extensions.
10403         (Maintainer): Add self.
10404         * modules/utimecmp (Depends-on): Add time; remove timespec.
10405         * modules/utimens (Depends-on): Likewise.
10406         * modules/xnanosleep (Depends-on): Likewise.
10407
10408 2007-02-11  Bruno Haible  <bruno@clisp.org>
10409
10410         * lib/c-strstr.c: Include allocsa.h.
10411         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
10412         * lib/c-strcasestr.c: Include allocsa.h.
10413         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
10414         * lib/strcasestr.c: Include allocsa.h.
10415         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
10416         * lib/mbsstr.c: Include allocsa.h.
10417         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
10418         allocsa/freesa instead of malloc/free.
10419         * lib/mbscasestr.c: Include allocsa.h.
10420         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
10421         allocsa/freesa instead of malloc/free.
10422         * modules/c-strstr (Depends-on): Add allocsa.
10423         * modules/c-strcasestr (Depends-on): Likewise.
10424         * modules/strcasestr (Depends-on): Likewise.
10425         * modules/mbsstr (Depends-on): Likewise.
10426         * modules/mbscasestr (Depends-on): Likewise.
10427
10428 2007-02-11  Bruno Haible  <bruno@clisp.org>
10429
10430         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
10431
10432         * modules/mbsspn-tests: New file.
10433         * tests/test-mbsspn.sh: New file.
10434         * tests/test-mbsspn.c: New file.
10435
10436 2007-02-11  Bruno Haible  <bruno@clisp.org>
10437
10438         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
10439
10440         * modules/mbspbrk-tests: New file.
10441         * tests/test-mbspbrk.sh: New file.
10442         * tests/test-mbspbrk.c: New file.
10443
10444 2007-02-11  Bruno Haible  <bruno@clisp.org>
10445
10446         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
10447         unneeded cast.
10448
10449         * modules/mbscspn-tests: New file.
10450         * tests/test-mbscspn.sh: New file.
10451         * tests/test-mbscspn.c: New file.
10452
10453 2007-02-11  Bruno Haible  <bruno@clisp.org>
10454
10455         * modules/mbscasecmp-tests: New file.
10456         * tests/test-mbscasecmp.sh: New file.
10457         * tests/test-mbscasecmp.c: New file.
10458
10459 2007-02-11  Bruno Haible  <bruno@clisp.org>
10460
10461         Ensure O(n) worst-case complexity of mbscasestr.
10462         * lib/mbscasestr.c: Include stdbool.h.
10463         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
10464         functions.
10465         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
10466         the bookkeeping indicates that it's worth it.
10467         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
10468
10469         * modules/mbscasestr-tests: New file.
10470         * tests/test-mbscasestr1.c: New file.
10471         * tests/test-mbscasestr2.sh: New file.
10472         * tests/test-mbscasestr2.c: New file.
10473         * tests/test-mbscasestr3.sh: New file.
10474         * tests/test-mbscasestr3.c: New file.
10475         * tests/test-mbscasestr4.sh: New file.
10476         * tests/test-mbscasestr4.c: New file.
10477         * m4/locale-tr.m4: New file.
10478
10479 2007-02-11  Bruno Haible  <bruno@clisp.org>
10480
10481         Ensure O(n) worst-case complexity of mbsstr.
10482         * lib/mbsstr.c: Include stdbool.h.
10483         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
10484         functions.
10485         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
10486         bookkeeping indicates that it's worth it.
10487         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
10488
10489         * modules/mbsstr-tests: New file.
10490         * tests/test-mbsstr1.c: New file.
10491         * tests/test-mbsstr2.sh: New file.
10492         * tests/test-mbsstr2.c: New file.
10493         * tests/test-mbsstr3.sh: New file.
10494         * tests/test-mbsstr3.c: New file.
10495         * m4/locale-fr.m4: New file.
10496
10497 2007-02-11  Bruno Haible  <bruno@clisp.org>
10498
10499         * lib/mbsrchr.c (mbsrchr): Fix bug.
10500
10501         * modules/mbsrchr-tests: New file.
10502         * tests/test-mbsrchr.sh: New file.
10503         * tests/test-mbsrchr.c: New file.
10504
10505 2007-02-11  Bruno Haible  <bruno@clisp.org>
10506
10507         * lib/mbschr.c (mbschr): Fix bug.
10508
10509         * modules/mbschr-tests: New file.
10510         * tests/test-mbschr.sh: New file.
10511         * tests/test-mbschr.c: New file.
10512         * m4/locale-zh.m4: New file.
10513
10514 2007-02-11  Bruno Haible  <bruno@clisp.org>
10515
10516         Support for copying multibyte string iterators.
10517         * lib/mbiter.h: Include <string.h>.
10518         (mbiter_multi_copy): New function.
10519         (mbi_copy): New macro.
10520         * lib/mbuiter.h: Include <string.h>.
10521         (mbuiter_multi_copy): New function.
10522         (mbui_copy): New macro.
10523
10524 2007-02-11  Bruno Haible  <bruno@clisp.org>
10525
10526         New module mbslen.
10527         * modules/mbslen: New file.
10528         * lib/mbslen.c: New file.
10529         * lib/string_.h (mbslen): New declaration.
10530         * m4/mbslen.m4: New file.
10531         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10532         GNULIB_MBSLEN.
10533         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
10534         * MODULES.html.sh (Internationalization functions): Add mbslen.
10535
10536 2007-02-11  Bruno Haible  <bruno@clisp.org>
10537
10538         Ensure O(n) worst-case complexity of strcasestr substitute.
10539         * lib/strcasestr.c: Include stdbool.h.
10540         (knuth_morris_pratt): New function.
10541         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
10542         bookkeeping indicates that it's worth it.
10543         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
10544
10545         * modules/strcasestr-tests: New file.
10546         * tests/test-strcasestr.c: New file.
10547
10548 2007-02-11  Bruno Haible  <bruno@clisp.org>
10549
10550         Ensure O(n) worst-case complexity of c_strcasestr.
10551         * lib/c-strcasestr.c: Include stdbool.h, string.h.
10552         (knuth_morris_pratt): New function.
10553         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
10554         the bookkeeping indicates that it's worth it.
10555         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
10556
10557         * modules/c-strcasestr-tests: New file.
10558         * tests/test-c-strcasestr.c: New file.
10559
10560 2007-02-11  Bruno Haible  <bruno@clisp.org>
10561
10562         Ensure O(n) worst-case complexity of c_strstr.
10563         * lib/c-strstr.c: Include stdbool.h, string.h.
10564         (knuth_morris_pratt): New function.
10565         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
10566         bookkeeping indicates that it's worth it.
10567         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
10568
10569         * lib/c-strstr.c: Complete rewrite for maintainability.
10570
10571         * modules/c-strstr-tests: New file.
10572         * tests/test-c-strstr.c: New file.
10573
10574 2007-02-11  Bruno Haible  <bruno@clisp.org>
10575
10576         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
10577         5.2.1 and earlier, whereby \055 was treated just like the range
10578         delimiter '-'.
10579         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
10580
10581 2007-02-08  Bruno Haible  <bruno@clisp.org>
10582
10583         * modules/regex (Depends-on): Add stdbool.
10584         Reported by Dalibor Topic <robilad@kaffe.org>.
10585
10586 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
10587
10588         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
10589         Prefer returning from main to exiting from it.
10590         Remove unnecessary parens after sizeof.
10591
10592 2007-02-05  Bruno Haible  <bruno@clisp.org>
10593
10594         New module mbssep.
10595         * modules/mbssep: New file.
10596         * lib/mbssep.c: New file.
10597         * lib/string_.h (strsep): Add a conditional link warning.
10598         (mbssep): New declaration.
10599         * m4/mbssep.m4: New file.
10600         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10601         GNULIB_MBSSEP.
10602         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
10603         * MODULES.html.sh (Internationalization functions): Add mbssep.
10604
10605 2007-02-05  Bruno Haible  <bruno@clisp.org>
10606
10607         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
10608         Optimize search in case of 1 delimiter.
10609
10610 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
10611
10612         * lib/acl.h: Include sys/types.h before sys/acl.h.
10613
10614 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
10615
10616         Merge upstream fix for glibc bugzilla #3957:
10617
10618         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
10619
10620         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
10621         bit for RE_HAT_LISTS_NOT_NEWLINE.
10622         (build_charclass_op): Remove bogus comment.
10623
10624 2007-02-05  Simon Josefsson  <simon@josefsson.org>
10625
10626         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
10627
10628 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
10629
10630         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
10631         * lib/memmem.c [!defined _LIBC]: Include config.h.
10632
10633 2007-02-04  Bruno Haible  <bruno@clisp.org>
10634
10635         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
10636         warning message.
10637
10638 2007-02-04  Bruno Haible  <bruno@clisp.org>
10639
10640         New module mbstok_r.
10641         * modules/mbstok_r: New file.
10642         * lib/mbstok_r.c: New file.
10643         * lib/string_.h (strtok_r): Change argument names to match the
10644         comments. Add a conditional link warning.
10645         (mbstok_r): New declaration.
10646         * m4/mbstok_r.m4: New file.
10647         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10648         GNULIB_MBSTOK_R.
10649         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
10650         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
10651
10652 2007-02-04  Bruno Haible  <bruno@clisp.org>
10653
10654         New module mbsspn.
10655         * modules/mbsspn: New file.
10656         * lib/mbsspn.c: New file.
10657         * lib/string_.h (strspn): Add a conditional link warning.
10658         (mbsspn): New declaration.
10659         * m4/mbsspn.m4: New file.
10660         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10661         GNULIB_MBSSPN.
10662         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
10663         * MODULES.html.sh (Internationalization functions): Add mbsspn.
10664
10665 2007-02-04  Bruno Haible  <bruno@clisp.org>
10666
10667         New module mbspbrk.
10668         * modules/mbspbrk: New file.
10669         * lib/mbspbrk.c: New file.
10670         * lib/string_.h (strpbrk): Add a conditional link warning.
10671         (mbspbrk): New declaration.
10672         * m4/mbspbrk.m4: New file.
10673         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10674         GNULIB_MBSPBRK.
10675         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
10676         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
10677
10678 2007-02-04  Bruno Haible  <bruno@clisp.org>
10679
10680         New module mbscspn.
10681         * modules/mbscspn: New file.
10682         * lib/mbscspn.c: New file.
10683         * lib/string_.h (strcspn): Add a conditional link warning.
10684         (mbscspn): New declaration.
10685         * m4/mbscspn.m4: New file.
10686         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10687         GNULIB_MBSCSPN.
10688         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
10689         * MODULES.html.sh (Internationalization functions): Add mbscspn.
10690
10691 2007-02-04  Bruno Haible  <bruno@clisp.org>
10692
10693         New module mbscasestr, reduced goal of strcasestr.
10694         * modules/mbscasestr: New file.
10695         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
10696         (mbscasestr): Renamed from strcasestr.
10697         * lib/strcasestr.c: Don't include mbuiter.h.
10698         (strcasestr): Remove support for multibyte locales.
10699         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
10700         Change the conditional link warning.
10701         (mbscasestr): New declaration.
10702         * m4/mbscasestr.m4: New file.
10703         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
10704         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
10705         REPLACE_STRCASESTR.
10706         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
10707         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
10708         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
10709         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
10710         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
10711         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
10712         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
10713         (Depends-on): Remove mbuiter.
10714         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
10715
10716 2007-02-04  Bruno Haible  <bruno@clisp.org>
10717
10718         Simplify handling of strncasecmp.
10719         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
10720         the conditional link warning.
10721         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
10722         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
10723         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
10724         * modules/strcase (configure.ac): Don't invoke
10725         gl_STRING_MODULE_INDICATOR.
10726         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
10727
10728 2007-02-04  Bruno Haible  <bruno@clisp.org>
10729
10730         New module mbscasecmp, reduced goal of strcasecmp.
10731         * modules/mbscasecmp: New file.
10732         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
10733         (mbscasecmp): Renamed from strcasecmp.
10734         * lib/strcasecmp.c: Don't include mbuiter.h.
10735         (strcasecmp): Remove support for multibyte locales.
10736         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
10737         Change the conditional link warning.
10738         (mbscasecmp): New declaration.
10739         * m4/mbscasecmp.m4: New file.
10740         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
10741         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
10742         REPLACE_STRCASECMP.
10743         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
10744         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10745         GNULIB_MBSCASECMP.
10746         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
10747         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
10748         * modules/strcase (Files): Remove m4/mbrtowc.m4.
10749         (Depends-on): Remove mbuiter.
10750         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
10751
10752 2007-02-04  Bruno Haible  <bruno@clisp.org>
10753
10754         New module mbsstr. Remove module strstr.
10755         * modules/mbsstr: New file.
10756         * modules/strstr: Remove file.
10757         * lib/mbsstr.c: Renamed from lib/strstr.c.
10758         (mbsstr): Renamed from strstr.
10759         * lib/string_.h (strstr): Remove declaration. Change the conditional
10760         link warning.
10761         (mbsstr): New declaration.
10762         * m4/mbsstr.m4: New file.
10763         * m4/strstr.m4: Remove file.
10764         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
10765         REPLACE_STRSTR.
10766         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
10767         Don't initialize GNULIB_STRSTR.
10768         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
10769         substitute GNULIB_STRSTR and REPLACE_STRSTR.
10770         * MODULES.html.sh (Internationalization functions): Add mbsstr.
10771         (Support for systems lacking ANSI C 89): Remove strstr.
10772
10773 2007-02-04  Bruno Haible  <bruno@clisp.org>
10774
10775         New module mbsrchr.
10776         * modules/mbsrchr: New file.
10777         * lib/mbsrchr.c: New file.
10778         * lib/string_.h (strrchr): Add a conditional link warning.
10779         (mbsrchr): New declaration.
10780         * m4/mbsrchr.m4: New file.
10781         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10782         GNULIB_MBSRCHR.
10783         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
10784         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
10785
10786 2007-02-04  Bruno Haible  <bruno@clisp.org>
10787
10788         New module mbschr.
10789         * modules/mbschr: New file.
10790         * lib/mbschr.c: New file.
10791         * lib/string_.h (strchr): Add a conditional link warning.
10792         (mbschr): New declaration.
10793         * m4/mbschr.m4: New file.
10794         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
10795         GNULIB_MBSCHR.
10796         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
10797         * MODULES.html.sh (Internationalization functions): Add mbschr.
10798
10799 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
10800
10801         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
10802
10803         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
10804
10805 2007-02-04  Bruno Haible  <bruno@clisp.org>
10806
10807         New module description section 'configure.ac-early'.
10808         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
10809         (func_get_autoconf_early_snippet): New function.
10810         (func_import, func_create_testdir): Use it. Remove special cases for
10811         modules 'extensions' and 'lock'.
10812         * modules/extensions (configure.ac-early): Require
10813         gl_USE_SYSTEM_EXTENSIONS.
10814         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
10815
10816 2007-02-04  Bruno Haible  <bruno@clisp.org>
10817
10818         Make use of gcj-4.3's -fsource and -ftarget option.
10819         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
10820         and if so try the options -fsource and -ftarget.
10821         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
10822         source_version, ftarget_option, target_version arguments.
10823         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
10824         (is_envjavac_oldgcj_14_14_usable): Renamed from
10825         is_envjavac_gcj_14_14_usable.
10826         (is_envjavac_oldgcj_14_13_usable): Renamed from
10827         is_envjavac_gcj_14_13_usable.
10828         (is_gcj_present): Update.
10829         (is_gcj_43, is_gcj43_usable): New functions.
10830         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
10831         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
10832         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
10833         try the options -fsource and -ftarget.
10834
10835 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
10836
10837         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
10838         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
10839         larger value.
10840
10841 2007-02-03  Jim Meyering  <jim@meyering.net>
10842
10843         Give tools a better chance to allocate space for very large buffers.
10844         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
10845
10846         Make pwd and readlink work also when run with an unreadable parent dir
10847         on systems with openat support.
10848         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
10849         provided getcwd function, even when we have openat support.
10850         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
10851
10852 2007-02-02  Bruno Haible  <bruno@clisp.org>
10853
10854         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
10855         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
10856         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
10857         portability problems if one of these functions is only used on specific
10858         platforms.
10859         Reported by Paul Eggert.
10860
10861 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
10862
10863         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
10864         is causing more trouble than it's curing.
10865         * lib/regex_internal.h (__mempcpy): Remove.
10866         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
10867         (and make the code a tad smaller to boot).
10868         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
10869
10870 2007-02-02  Jim Meyering  <jim@meyering.net>
10871
10872         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
10873         section, not in the Makefile.am: one.
10874
10875 2007-02-02  Eric Blake  <ebb9@byu.net>
10876
10877         * lib/strchrnul.c: Always include config.h first.
10878
10879         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
10880         gnulib strstr is not necessary here.
10881
10882 2007-02-02  Simon Josefsson  <simon@josefsson.org>
10883
10884         * m4/socklen.m4: Fix typo.
10885
10886 2007-02-02  Eric Blake  <ebb9@byu.net>
10887
10888         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
10889         * modules/netinet_in (Makefile.am): Likewise.
10890
10891 2007-02-01  Bruno Haible  <bruno@clisp.org>
10892
10893         * lib/string_.h (GL_LINK_WARNING): New macro.
10894         (strcasecmp, strstr, strcasestr): If provided by the system,
10895         conditionally define as a macro that leads to a warning instead of to
10896         an error.
10897         (strncasecmp): Conditionally define as a macro that leads to a warning.
10898
10899 2007-02-01  Karl Berry  <karl@gnu.org>
10900
10901         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
10902
10903 2007-02-01  Bruno Haible  <bruno@clisp.org>
10904
10905         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
10906         renamings.
10907
10908 2007-02-01  Eric Blake  <ebb9@byu.net>
10909
10910         * modules/regex (Depends-on): Revert dependence on mempcpy.
10911         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
10912         module's definition of mempcpy.
10913         Reported by Paul Eggert.
10914
10915 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
10916
10917         * lib/string_.h: If the gnulib module XYZ is not present, undefine
10918         the symbol XYZ before redefining it.  This fixes a problem with
10919         programs that don't use XYZ, when compiled on systems that define
10920         XYZ to something else.
10921
10922 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
10923
10924         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
10925         occurs when "mkdir -m foo" creates a setgid directory that is (1)
10926         writeable to group or other and (2) is intended to have a special
10927         mode bit that is set or cleared.  In such a case, the directory
10928         should be neither group- nor other-writeable until the special
10929         mode bits are right.
10930
10931 2007-01-31  Eric Blake  <ebb9@byu.net>
10932
10933         * modules/mountlist (Depends-on): Add strstr.
10934
10935         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
10936         bug.
10937         * modules/string (Makefile.am): Remove redundant replacement.
10938         * modules/regex (Depends-on): Add mempcpy.
10939
10940 2007-01-31  Bruno Haible  <bruno@clisp.org>
10941
10942         New module description field 'Link'.
10943         * gnulib-tool (func_usage): Document --extract-link-directive.
10944         (sed_extract_prog): Recognize 'Link' directive.
10945         (func_get_link_directive): New function.
10946         (func_import): Show summary of link directives.
10947         Handle --extract-link-directive option.
10948         * modules/acl (Link): New section.
10949         * modules/clock-time (Link): New section.
10950         * modules/euidaccess (Link): New section.
10951         * modules/gettext (Link): New section.
10952         * modules/iconv (Link): New section.
10953         * modules/lock (Link): New section.
10954         * modules/nanosleep (Link): New section.
10955         * modules/readline (Link): New section.
10956
10957 2007-01-27  Bruno Haible  <bruno@clisp.org>
10958
10959         Enforce the use of gnulib modules for unportable <string.h> functions.
10960         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
10961         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
10962         (gl_HEADER_STRING_H_BODY): Require it.
10963         * lib/string_.h: If the gnulib module XYZ is not present, redefine
10964         the symbol XYZ to one that gives a link error.
10965         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
10966         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
10967         * modules/mempcpy (configure.ac): Likewise.
10968         * modules/memrchr (configure.ac): Likewise.
10969         * modules/stpcpy (configure.ac): Likewise.
10970         * modules/stpncpy (configure.ac): Likewise.
10971         * modules/strcase (configure.ac): Likewise.
10972         * modules/strcasestr (configure.ac): Likewise.
10973         * modules/strchrnul (configure.ac): Likewise.
10974         * modules/strdup (configure.ac): Likewise.
10975         * modules/strndup (configure.ac): Likewise.
10976         * modules/strnlen (configure.ac): Likewise.
10977         * modules/strpbrk (configure.ac): Likewise.
10978         * modules/strsep (configure.ac): Likewise.
10979         * modules/strstr (configure.ac): Likewise.
10980         * modules/strtok_r (configure.ac): Likewise.
10981
10982 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
10983
10984         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
10985
10986 2007-01-30  Jim Meyering  <jim@meyering.net>
10987
10988         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
10989
10990 2007-01-29  Bruno Haible  <bruno@clisp.org>
10991
10992         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
10993         * lib/execute.c: Likewise.
10994         * lib/pipe.c: Likewise.
10995         * lib/printf-args.h: Likewise.
10996         * lib/printf-args.c: Likewise.
10997         * lib/printf-parse.c: Likewise.
10998         * lib/vasnprintf.c: Likewise.
10999
11000 2007-01-29  Eric Blake  <ebb9@byu.net>
11001
11002         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
11003         declaration.
11004
11005 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
11006
11007         * lib/strptime.h (strptime): Use 'restrict' for args where
11008         POSIX requires this.
11009         * lib/strptime.c (strptime): Likewise.
11010         Change license notice from LGPL to GPL, since gnulib-tool will
11011         change this as needed.
11012         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
11013         defined.
11014         Include "strptime.h" first, to check interface.
11015         Do not #undef _LIBC and _NL_CURRENT.
11016         Do not include <stdlib.h>; no longer needed.
11017         Include "time_r.h" and declare ptime_locale_status
11018         only if _LIBC is not defined.
11019         (__P): Remove unused macro.
11020         (match_string): Bring back glibc version, but use it only if _LIBC
11021         is defined.
11022         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
11023         Remove unnecessary assertion and abort() call.
11024         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
11025         * m4/strptime.m4: Fix serial number comment.
11026         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
11027         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
11028         (Depends-on): Add time_r.
11029
11030 2007-01-29  Bruno Haible  <bruno@clisp.org>
11031
11032         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11033         strptime.
11034         * modules/strptime (Depends-on): Add stdbool.
11035         * lib/strptime.h: Include <time.h> always. Add comments.
11036
11037 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
11038
11039         * modules/strptime: New file.
11040         * lib/strptime.h: New file.
11041         * lib/strptime.c: New file.
11042         * m4/strptime.m4: New file.
11043
11044 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
11045
11046         * MODULES.html.sh: New module mpsort.
11047         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
11048
11049         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
11050         a circularity problem with HP-UX ia64 reported by Bob Proulx in
11051         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
11052         All uses changed.
11053         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
11054         All uses changed.
11055         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
11056         to _Restrict_.
11057         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
11058         the parameter matches the prototype.
11059
11060 2007-01-28  Jim Meyering  <jim@meyering.net>
11061
11062         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
11063         sys/time.h here, reverting that part of the previous patch:
11064         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
11065
11066 2007-01-28  Bruno Haible  <bruno@clisp.org>
11067
11068         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
11069         value of $(SYS_TIME_H).
11070         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
11071         remove it conditionally, too. [added by Jim Meyering]
11072         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
11073         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
11074         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
11075         GETTIMEOFDAY_REPLACEMENT to 1.
11076
11077 2007-01-28  Bruno Haible  <bruno@clisp.org>
11078
11079         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
11080         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
11081         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
11082         Set UNISTD_H instead of UNISTD_H2.
11083         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
11084
11085 2007-01-28  Bruno Haible  <bruno@clisp.org>
11086
11087         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
11088         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
11089
11090 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11091
11092         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
11093         (func_create_testdir): Ensure C locale for `grep' and `tr'
11094         character ranges.
11095         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
11096         ACLOCAL_AMFLAGS parsing state machine.
11097
11098 2007-01-27  Bruno Haible  <bruno@clisp.org>
11099
11100         * modules/unistr/base: Update.
11101
11102 2007-01-27  Bruno Haible  <bruno@clisp.org>
11103
11104         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
11105         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
11106         * modules/unistr/u32-mbtouc-unsafe: Renamed from
11107         modules/unistr/u32-mbtouc.
11108         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
11109         * lib/unistr.h: Update.
11110         * lib/linebreak.c: Update.
11111         * modules/unistr/u32-mbtouc: Renamed from
11112         modules/unistr/u32-mbtouc-safe.
11113         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
11114         * lib/unistr.h: Update.
11115         * lib/unistr/u32-to-u8.c: Update.
11116         * lib/unistr/u32-to-u16.c: Update.
11117
11118 2007-01-27  Bruno Haible  <bruno@clisp.org>
11119
11120         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
11121         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
11122         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
11123         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
11124         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
11125         * modules/unistr/u16-mbtouc-unsafe: Renamed from
11126         modules/unistr/u16-mbtouc.
11127         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
11128         * lib/unistr.h: Update.
11129         * lib/linebreak.c: Update.
11130         * modules/linebreak: Update.
11131         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
11132         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
11133         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
11134         * modules/unistr/u16-mbtouc: Renamed from
11135         modules/unistr/u16-mbtouc-safe.
11136         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
11137         * lib/unistr.h: Update.
11138         * lib/unistr/u16-to-u8.c: Update.
11139         * modules/unistr/u16-to-u8: Update.
11140         * lib/unistr/u16-to-u32.c: Update.
11141         * modules/unistr/u16-to-u32: Update.
11142
11143 2007-01-27  Bruno Haible  <bruno@clisp.org>
11144
11145         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
11146         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
11147         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
11148         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
11149         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
11150         * modules/unistr/u8-mbtouc-unsafe: Renamed from
11151         modules/unistr/u8-mbtouc.
11152         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
11153         * lib/unistr.h: Update.
11154         * lib/striconveh.c: Update.
11155         * modules/striconveh: Update.
11156         * lib/linebreak.c: Update.
11157         * modules/linebreak: Update.
11158         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
11159         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
11160         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
11161         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
11162         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
11163         * lib/unistr.h: Update.
11164         * lib/striconveh.c: Update.
11165         * modules/striconveh: Update.
11166         * lib/unistr/u8-to-u16.c: Update.
11167         * modules/unistr/u8-to-u16: Update.
11168         * lib/unistr/u8-to-u32.c: Update.
11169         * modules/unistr/u8-to-u32: Update.
11170
11171 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11172
11173         Sync from Libtool.
11174         * lib/argz.c: Do not include strings.h nor memory.h, include
11175         string.h unconditionally.  Patch by Simon Josefsson.
11176
11177 2007-01-27  Bruno Haible  <bruno@clisp.org>
11178
11179         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
11180         from gl_HEADER_STRING_H_BODY.
11181         (gl_HEADER_STRING_H_BODY): Require it.
11182         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
11183         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
11184         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
11185         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
11186         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
11187         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
11188         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
11189         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
11190         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
11191         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
11192         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
11193         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
11194         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
11195         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
11196         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
11197
11198 2007-01-27  Bruno Haible  <bruno@clisp.org>
11199
11200         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
11201         check_PROGRAMS into noinst_PROGRAMS.
11202         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
11203         check_PROGRAMS in this case.
11204         (func_import): Set for_test to false.
11205         (func_create_testdir): Set for_test to true.
11206
11207 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
11208             Bruno Haible  <bruno@clisp.org>
11209
11210         * modules/strcasestr (Files): Remove lib/strcasestr.h.
11211         (Depends-on): Add string.
11212         (Includes): Use <string.h> instead of strcasestr.h.
11213         * modules/string (Makefile.am): Also substitute the value of
11214         REPLACE_STRCASESTR.
11215         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
11216         assume strcasestr is declared in <string.h> not <strings.h>. Also
11217         set REPLACE_STRCASESTR.
11218         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
11219         REPLACE_STRCASESTR.
11220         * lib/strcasestr.h: Remove file.
11221         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
11222         * lib/string_.h (strcasestr): New declaration.
11223
11224 2007-01-27  Bruno Haible  <bruno@clisp.org>
11225
11226         * lib/string_.h: Use 'extern'.
11227
11228 2007-01-27  Jim Meyering  <jim@meyering.net>
11229
11230         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
11231         of set-but-not-used local, "q".
11232
11233         * lib/mempcpy.c: Include <config.h> before <string.h>.
11234         This fixes a compilation error on HP-UX, due to the system's
11235         "restrict"-using mempcpy prototype.
11236
11237 2007-01-26  Bruno Haible  <bruno@clisp.org>
11238
11239         Small optimization.
11240         * lib/javacomp.c: Include c-strstr.h.
11241          (is_envjavac_gcj): Use c_strstr instead of strstr.
11242         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
11243
11244 2007-01-26  Bruno Haible  <bruno@clisp.org>
11245
11246         * MODULES.html.sh (Unicode string functions): Add the new modules.
11247
11248         * modules/uniconv/u32-strconv-to-locale: New file.
11249         * lib/uniconv/u32-strconv-to-locale.c: New file.
11250
11251         * modules/uniconv/u16-strconv-to-locale: New file.
11252         * lib/uniconv/u16-strconv-to-locale.c: New file.
11253
11254         * modules/uniconv/u8-strconv-to-locale: New file.
11255         * lib/uniconv/u8-strconv-to-locale.c: New file.
11256
11257         * modules/uniconv/u32-strconv-from-locale: New file.
11258         * lib/uniconv/u32-strconv-from-locale.c: New file.
11259
11260         * modules/uniconv/u16-strconv-from-locale: New file.
11261         * lib/uniconv/u16-strconv-from-locale.c: New file.
11262
11263         * modules/uniconv/u8-strconv-from-locale: New file.
11264         * lib/uniconv/u8-strconv-from-locale.c: New file.
11265
11266         * modules/uniconv/u32-strconv-to-enc: New file.
11267         * lib/uniconv/u32-strconv-to-enc.c: New file.
11268         * modules/uniconv/u32-strconv-to-enc-tests: New file.
11269         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
11270
11271         * modules/uniconv/u16-strconv-to-enc: New file.
11272         * lib/uniconv/u16-strconv-to-enc.c: New file.
11273         * lib/uniconv/u-strconv-to-enc.h: New file.
11274         * modules/uniconv/u16-strconv-to-enc-tests: New file.
11275         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
11276
11277         * modules/uniconv/u8-strconv-to-enc: New file.
11278         * lib/uniconv/u8-strconv-to-enc.c: New file.
11279         * modules/uniconv/u8-strconv-to-enc-tests: New file.
11280         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
11281
11282         * modules/uniconv/u32-strconv-from-enc: New file.
11283         * lib/uniconv/u32-strconv-from-enc.c: New file.
11284         * modules/uniconv/u32-strconv-from-enc-tests: New file.
11285         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
11286
11287         * modules/uniconv/u16-strconv-from-enc: New file.
11288         * lib/uniconv/u16-strconv-from-enc.c: New file.
11289         * modules/uniconv/u16-strconv-from-enc-tests: New file.
11290         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
11291
11292         * modules/uniconv/u8-strconv-from-enc: New file.
11293         * lib/uniconv/u8-strconv-from-enc.c: New file.
11294         * lib/uniconv/u-strconv-from-enc.h: New file.
11295         * modules/uniconv/u8-strconv-from-enc-tests: New file.
11296         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
11297
11298         * modules/uniconv/u32-conv-from-enc: New file.
11299         * lib/uniconv/u32-conv-from-enc.c: New file.
11300         * modules/uniconv/u32-conv-from-enc-tests: New file.
11301         * tests/uniconv/test-u32-conv-from-enc.c: New file.
11302
11303         * modules/uniconv/u16-conv-from-enc: New file.
11304         * lib/uniconv/u16-conv-from-enc.c: New file.
11305         * lib/uniconv/u-conv-from-enc.h: New file.
11306         * modules/uniconv/u16-conv-from-enc-tests: New file.
11307         * tests/uniconv/test-u16-conv-from-enc.c: New file.
11308
11309         * modules/uniconv/u8-conv-from-enc: New file.
11310         * lib/uniconv/u8-conv-from-enc.c: New file.
11311         * modules/uniconv/u8-conv-from-enc-tests: New file.
11312         * tests/uniconv/test-u8-conv-from-enc.c: New file.
11313
11314         * modules/uniconv/base: New file.
11315         * lib/uniconv.h: New file.
11316
11317 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
11318
11319         * doc/gnulib-tool.texi (Initial import): Update to match current
11320         behavior with strdup module.
11321         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
11322         * lib/memmem.h: Remove; all uses removed.  This is now done
11323         by <string.h>.
11324         * lib/mempcpy.h: Likewise.
11325         * lib/memrchr.h: Likewise.
11326         * lib/stpcpy.h: Likewise.
11327         * lib/stpncpy.h: Likewise.
11328         * lib/strcase.h: Likewise.
11329         * lib/strchrnul.h: Likewise.
11330         * lib/strdup.h: Likewise.
11331         * lib/strndup.h: Likewise.
11332         * lib/strnlen.h: Likewise.
11333         * lib/strpbrk.h: Likewise.
11334         * lib/strsep.h: Likewise.
11335         * lib/strstr.h: Likewise.
11336         * lib/strtok_r.h: Likewise.
11337         * lib/string_.h: New file.
11338         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
11339         Rely on <string.h> instead.
11340         * lib/canon-host.c: Likewise.
11341         * lib/chdir-long.c: Likewise.
11342         * lib/concatpath.c: Likewise.
11343         * lib/exclude.c: Likewise.
11344         * lib/fchdir.c: Likewise.
11345         * lib/getaddrinfo.c: Likewise.
11346         * lib/getcwd.c: Likewise.
11347         * lib/getsubopt.c: Likewise.
11348         * lib/glob.c: Likewise.
11349         * lib/hard-locale.c: Likewise.
11350         * lib/iconvme.c: Likewise.
11351         * lib/javacomp.c: Likewise.
11352         * lib/mempcpy.c: Likewise.
11353         * lib/memrchr.c: Likewise.
11354         * lib/regex_internal.h: Likewise.
11355         * lib/stpncpy.c: Likewise.
11356         * lib/strcasecmp.c: Likewise.
11357         * lib/strchrnul.c: Likewise.
11358         * lib/strdup.c: Likewise.
11359         * lib/striconv.c: Likewise.
11360         * lib/striconveh.c: Likewise.
11361         * lib/striconveha.c: Likewise.
11362         * lib/strncasecmp.c: Likewise.
11363         * lib/strndup.c: Likewise.
11364         * lib/strnlen.c: Likewise.
11365         * lib/strsep.c: Likewise.
11366         * lib/strstr.c: Likewise.
11367         * lib/strtok_r.c: Likewise.
11368         * lib/userspec.c: Likewise.
11369         * lib/w32spawn.h: Likewise.
11370         * lib/xstrndup.c: Likewise.
11371         * lib/mountlist.c (strstr): Remove decl.
11372         * m4/string_h.m4: New file.
11373         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
11374         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
11375         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
11376         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
11377         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
11378         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
11379         Set REPLACE_STRCASECMP if necessary.
11380         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
11381         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
11382         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
11383         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
11384         HAVE_DECL_STRDUP if necessary.
11385         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
11386         since gl_FUNC_STRNDUP does that now.
11387         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
11388         Check for decl here...
11389         (gl_PREREQ_STRNLEN): ... not here.
11390         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
11391         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
11392         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
11393         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
11394         necessary.
11395         * modules/string: New file.
11396         * modules/memmem (Files): Remove special-purpose include file.
11397         (Depends-on): Add string.
11398         (Include): Include <string.h>, not the removed file.
11399         * modules/mempcpy: Likewise.
11400         * modules/memrchr: Likewise.
11401         * modules/stpcpy: Likewise.
11402         * modules/stpncpy: Likewise.
11403         * modules/strcase: Likewise.
11404         * modules/strchrnul: Likewise.
11405         * modules/strdup: Likewise.
11406         * modules/strndup: Likewise.
11407         * modules/strnlen: Likewise.
11408         * modules/strpbrk: Likewise.
11409         * modules/strsep: Likewise.
11410         * modules/strstr: Likewise.
11411         * modules/strtok_r: Likewise.
11412         * tests/test-dirname.c: Don't include "strdup.h", since
11413         <string.h> now suffices.
11414         * tests/test-memmem.c: Don't include "memmem.h", since
11415         <string.h> now suffices.
11416
11417 2007-01-25  Bruno Haible  <bruno@clisp.org>
11418
11419         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
11420         *resultp is 0.
11421
11422         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
11423         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
11424         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
11425         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
11426
11427         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
11428         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
11429         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
11430         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
11431         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
11432         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
11433
11434 2007-01-24  Bruno Haible  <bruno@clisp.org>
11435
11436         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
11437         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
11438         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
11439         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
11440         gl_FUNC_FTS_CORE.
11441         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
11442         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
11443         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
11444         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
11445         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
11446         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
11447         gl_FUNC_FCHOWNAT.
11448         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
11449         gl_FUNC_STRFTIME.
11450         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
11451         Reported by Ralf Wildenhues.
11452
11453 2007-01-24  Bruno Haible  <bruno@clisp.org>
11454
11455         Drop AC_REQUIRE calls that are redundant with the module dependencies.
11456         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
11457         gl_GETADDRINFO.
11458         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
11459         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
11460         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
11461
11462 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
11463
11464         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
11465         Don't use 'exit'; just return from 'main'.
11466         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
11467
11468         * lib/fnmatch_.h: Readjust white space and comments to match
11469         glibc, to avoid spurious diffs.
11470
11471 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
11472
11473         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
11474         2004-12-01 change by Jakub Jelinek, since this code won't compile
11475         if !LIBC.  Problem reported by Bob Proulx.
11476
11477 2007-01-23  Bruno Haible  <bruno@clisp.org>
11478
11479         * lib/striconveh.c: Include c-strcaseeq.h.
11480         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
11481         * modules/striconveh (Depends-on): Add c-strcaseeq.
11482
11483 2007-01-23  Bruno Haible  <bruno@clisp.org>
11484
11485         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
11486
11487         * modules/c-strcaseeq: New file.
11488         * lib/c-strcaseeq.h: New file.
11489
11490         * modules/streq: New file.
11491         * lib/streq.h: New file.
11492
11493 2007-01-23  Bruno Haible  <bruno@clisp.org>
11494
11495         * modules/striconveha-tests: New file.
11496         * tests/test-striconveha.c: New file.
11497
11498         * lib/striconveha.h: Include <stdbool.h>.
11499         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
11500         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
11501         (mem_iconveha_notranslit): Renamed from mem_iconveha.
11502         (mem_iconveha): New function.
11503         (str_iconveha_notranslit): Renamed from str_iconveha.
11504         (str_iconveha): New function.
11505         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
11506         c-strcase.
11507
11508 2007-01-23  Bruno Haible  <bruno@clisp.org>
11509
11510         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
11511         encodings without forgiving before trying any encoding with handler.
11512         (str_iconveha): Try all encodings without forgiving before trying any
11513         encoding with handler.
11514
11515 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
11516
11517         Import the following changes from libc.
11518
11519         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
11520
11521         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
11522
11523         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
11524
11525         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
11526         normal_bracket label.
11527
11528         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
11529
11530         [BZ #361]
11531         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
11532         to normal_bracket after fetching the next character.
11533
11534 2007-01-22  Bruno Haible  <bruno@clisp.org>
11535
11536         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
11537         argument.
11538         * lib/striconveh.c (iconv_carefully_1): New function.
11539         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
11540         argument.
11541         (str_cd_iconveh): Update.
11542         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
11543         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
11544         * tests/test-striconveh.c (MAGIC): New macro.
11545         (new_offsets): New function.
11546         (main): Test call with and without offsets.
11547
11548 2007-01-22  Bruno Haible  <bruno@clisp.org>
11549
11550         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
11551         * modules/sys_select (Makefile.am): Likewise.
11552         * modules/sys_socket (Makefile.am): Likewise.
11553         * modules/sys_time (Makefile.am): Likewise.
11554
11555 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
11556
11557         * modules/gettimeofday (License): Change from GPL to LGPL, since
11558         gettimeofday is a library function.
11559
11560 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11561
11562         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
11563
11564 2007-01-21  Bruno Haible  <bruno@clisp.org>
11565
11566         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
11567
11568 2007-01-21  Bruno Haible  <bruno@clisp.org>
11569
11570         * modules/striconveha: New file.
11571         * lib/striconveha.h: New file.
11572         * lib/striconveha.c: New file.
11573         * MODULES.html.sh (Internationalization functions): Add striconveha.
11574         * lib/striconv.c (str_iconv): Optimize the case of an empty input
11575         string.
11576         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
11577
11578 2007-01-21  Bruno Haible  <bruno@clisp.org>
11579
11580         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
11581         * lib/striconveh.c (str_iconveh): Likewise.
11582
11583 2007-01-21  Bruno Haible  <bruno@clisp.org>
11584
11585         * lib/striconveh.h (mem_iconveh): New declaration.
11586         * lib/striconveh.c (mem_iconveh): New function.
11587         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
11588
11589 2007-01-21  Bruno Haible  <bruno@clisp.org>
11590
11591         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
11592
11593         * lib/striconveh.h (mem_cd_iconveh): Change specification.
11594         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
11595         original result buffer.
11596         (str_cd_iconveh): Update.
11597         * tests/test-striconveh.c (main): Update.
11598
11599         * lib/striconv.h (mem_cd_iconv): Change specification.
11600         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
11601         result buffer.
11602         (str_cd_iconv): Update.
11603         * tests/test-striconv.c (main): Update.
11604
11605 2007-01-21  Bruno Haible  <bruno@clisp.org>
11606
11607         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
11608
11609 2007-01-20  Jim Meyering  <jim@meyering.net>
11610
11611         * lib/userspec.c (parse_with_separator): If a user or group string
11612         starts with "+", skip the corresponding name-to-ID look-up, since
11613         such a look-up must fail: user and group names may not include "+".
11614
11615 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
11616
11617         * lib/poll.c: Include sys/time.h and time.h unconditionally,
11618         since we now assume the sys_time module.
11619         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
11620         check for sys/time.h; no longer needed.
11621         * modules/poll (Depends-on): Depend on sys_time.
11622
11623 2007-01-18  Bruno Haible  <bruno@clisp.org>
11624
11625         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
11626         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
11627
11628         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
11629         gettimeofday.
11630
11631         * tests/test-gettimeofday.c: Include <time.h>.
11632         (dummy): Remove variable.
11633
11634         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
11635         gl_HEADER_SYS_TIME_H.
11636         (gl_HEADER_SYS_TIME_H): New macro.
11637
11638         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
11639         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11640         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
11641         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
11642         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11643         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
11644         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
11645         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11646         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
11647         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
11648         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11649
11650         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
11651         last change; it caused a compilation error when cross-compiling to
11652         Cygwin.
11653
11654 2007-01-18  Jim Meyering  <jim@meyering.net>
11655
11656         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
11657         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
11658         than the race-prone "test -d sys || mkdir sys".
11659         (configure.ac): Use AC_PROG_MKDIR_P.
11660         * modules/sys_select: Likewise.
11661         * modules/sys_socket: Likewise.
11662         * modules/sys_time: Likewise.
11663
11664 2007-01-18  Eric Blake  <ebb9@byu.net>
11665
11666         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
11667         replace gettimeofday.
11668         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
11669         name, to avoid infinite recursion.
11670
11671 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
11672
11673         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
11674         module sys_time.
11675         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
11676         assume timespec.h defines struct timeval.
11677         * lib/settime.c: Likewise.
11678         * lib/utimens.c: Likewise.
11679         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
11680         since we now assume the gettimeofday module.
11681         * lib/tempname.c (__gen_tempname): Likewise.
11682         * lib/gettimeofday.h: Remove.
11683         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
11684         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
11685         Include <time.h>, for 'time()'.
11686         (localtime_buffer_addr): Also use this workaround if
11687         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
11688         to simplify the uses.  All uses changed.
11689         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
11690         that #undef is inside {}, and 'const' follows type name consistently.
11691         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
11692         (gettimeofday): Do not use the maximum possible value for
11693         tv->tv_usec, since that might break usages other than ls.c.
11694         Instead, we'll leave ls.c alone.  This undoes today's patch
11695         by Bruno.  Add a compile-time warning for 1s-clock resolution;
11696         we've never observed the problem but might as well keep the
11697         canary.
11698         * lib/nanosleep.c: Include timespec.h first, for interface check.
11699         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
11700         now assume the sys_time module.
11701         * lib/tempname.c: Likewise.
11702         * lib/timespec.h: Likewise.
11703         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
11704         needed.
11705         * lib/strftime.c: Likewise.
11706         * lib/timespec.h: Likewise.
11707         * lib/posixtm.c: Include posixtm.h first, for interface check.
11708         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
11709         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
11710         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
11711         * lib/sys_time_.h: New file.
11712         * lib/timespec.h (struct timespec): Use long int, not long.
11713         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
11714         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
11715         Remove obsolescent call to AC_HEADER_TIME.
11716         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
11717         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
11718         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
11719         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
11720         Likewise.
11721         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
11722         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
11723         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
11724         into the sys_time module.  Check for gettimeofday just once.
11725         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
11726         for gettimeofday signature to just check the signature.  Merely
11727         compile it, since linking doesn't test signature.  Improve test for
11728         whether gettimeofday.o is actually needed.
11729         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
11730         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
11731         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
11732         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11733         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
11734         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
11735         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
11736         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
11737         than worrying about sys/time.h.
11738         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
11739         Don't bother worrying about TIME_WITH_SYS_TIME.
11740         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
11741         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
11742         * m4/sys_time_h.m4: New file.
11743         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
11744         Don't include sys/time.h.  Return from main rather than exiting.
11745         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
11746         all uses changed.
11747         * modules/gethrxtime (Depends-on): Add sys_time.
11748         * modules/gettime (Depends-on): Likewise.
11749         * modules/gettimeofday (Depends-on): Likewise.
11750         * modules/nanosleep (Depends-on): Likewise.
11751         * modules/settime (Depends-on): Likewise.
11752         * modules/tempname (Depends-on): Likewise.
11753         * modules/utimens (Depends-on): Likewise.
11754         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
11755         (Include:) Change back to <sys/time.h>.
11756         (Maintainer:) Add self.
11757         * modules/sys_time: New file.
11758         * modules/tempname (Depends-on): Add gettimeofday.
11759         * tests/test-gettimeofday.c: Include <sys/time.h>
11760         rather than gettimeofday.h.
11761
11762 2007-01-17  Bruno Haible  <bruno@clisp.org>
11763
11764         * gnulib-tool (func_get_license): Revert last patch. Instead, let
11765         the license default to GPL.
11766         (func_create_testdir): Don't complain if a module is LGPL and its
11767         tests module depends on GPLed modules.
11768
11769 2007-01-17  Bruno Haible  <bruno@clisp.org>
11770
11771         * lib/gettimeofday.c (gettimeofday): Add code for the case
11772         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
11773         maximum possible value for tv->tv_usec, rather than the minimum one.
11774
11775 2005-10-08  Martin Lambers  <marlam@marlam.de>
11776 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
11777 2007-01-16  Bruno Haible  <bruno@clisp.org>
11778
11779         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
11780         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
11781         gl_FUNC_GETTIMEOFDAY.
11782         (Include): Add gettimeofday.h.
11783         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
11784         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
11785         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
11786         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
11787         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
11788         * lib/gettimeofday.h: New file.
11789         * lib/gettimeofday.c: Include <sys/timeb.h>.
11790         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
11791         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
11792         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
11793         fall back on time().
11794
11795         * tests/test-gettimeofday.c: New file.
11796         * modules/gettimeofday-tests: New file.
11797
11798 2007-01-16  Eric Blake  <ebb9@byu.net>
11799
11800         * modules/fnmatch (Depends-on): Depend on wchar.
11801         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
11802         * m4/fnmatch.m4: Likewise.
11803         * modules/mbchar (Makefile.am): Assume <wchar.h>.
11804         * m4/mbchar.m4: Likewise.
11805         * modules/mbswidth (Depends-on): Depend on wchar.
11806         * lib/mbswidth.c: Assume <wchar.h>.
11807         * m4/mbswidth.m4: Likewise.
11808         * modules/quotearg (Depends-on): Depend on wchar.
11809         * lib/quotearg.c: Assume <wchar.h>.
11810         * m4/quotearg.m4: Likewise.
11811         * modules/regex (Depends-on): Depend on wchar.
11812         * lib/regex_internal.h: Assume <wchar.h>.
11813         * m4/regex.m4: Likewise.
11814         * modules/stdint (Depends-on): Depend on wchar.
11815         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
11816         * m4/stdint.m4: Likewise.
11817         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
11818         * modules/strftime (Depends-on): Depend on wchar.
11819         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
11820         * modules/strtol (Depends-on): Depend on wchar.
11821         * lib/strtol.c: Assume <wchar.h>.
11822         * modules/wcwidth (Depends-on): Depend on wchar.
11823         * lib/wcwidth.h: Assume <wchar.h>.
11824         * m4/wcwidth.m4: Likewise.
11825
11826 2007-01-16  Bruno Haible  <bruno@clisp.org>
11827
11828         * modules/csharpexec-script: New, created from...
11829         * modules/csharpexec: ... this.
11830
11831 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
11832
11833         * modules/javaexec-script: New, created from...
11834         * modules/javaexec: ... this.
11835
11836 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11837
11838         * modules/poll (Dependencies): Add sys_select.
11839
11840 2007-01-15  Jim Meyering  <jim@meyering.net>
11841
11842         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
11843         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
11844         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
11845         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
11846
11847 2007-01-15  Bruno Haible  <bruno@clisp.org>
11848
11849         * modules/striconveh: New file.
11850         * lib/striconveh.h: New file.
11851         * lib/striconveh.c: New file.
11852         * MODULES.html.sh (Internationalization functions): Add striconveh.
11853
11854         * modules/striconveh-tests: New file.
11855         * tests/test-striconveh.c: New file.
11856
11857 2007-01-15  Bruno Haible  <bruno@clisp.org>
11858
11859         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
11860         not from GNU libiconv or GNU libc.
11861
11862 2007-01-15  Bruno Haible  <bruno@clisp.org>
11863
11864         * doc/gnulib-intro.texi (Copyright): Explain the different license
11865         terms for module descriptions, autoconf macros, tests, documentation.
11866
11867 2007-01-14  Bruno Haible  <bruno@clisp.org>
11868
11869         * modules/striconv-tests: New file.
11870         * tests/test-striconv.c: New file.
11871
11872 2007-01-14  Bruno Haible  <bruno@clisp.org>
11873
11874         * modules/iconv-tests: New file.
11875         * tests/test-iconv.c: New file.
11876
11877 2007-01-14  Bruno Haible  <bruno@clisp.org>
11878
11879         * gnulib-tool (func_get_license): For test modules, use the license of
11880         the main module.
11881
11882 2007-01-14  Bruno Haible  <bruno@clisp.org>
11883
11884         * modules/iconv (Include): Clarify that <iconv.h> can only be included
11885         if iconv is found to exist.
11886
11887 2007-01-14  Bruno Haible  <bruno@clisp.org>
11888
11889         * modules/c-ctype-tests: New file.
11890         * tests/test-c-ctype.c: New file.
11891
11892 2007-01-14  Bruno Haible  <bruno@clisp.org>
11893
11894         * modules/binary-io-tests: New file.
11895         * tests/test-binary-io.sh: New file.
11896         * tests/test-binary-io.c: New file.
11897
11898 2007-01-14  Bruno Haible  <bruno@clisp.org>
11899
11900         * modules/array-oset-tests: New file.
11901         * tests/test-array_oset.c: New file.
11902
11903 2007-01-14  Bruno Haible  <bruno@clisp.org>
11904
11905         * modules/array-list-tests: New file.
11906         * tests/test-array_list.c: New file.
11907
11908 2007-01-14  Bruno Haible  <bruno@clisp.org>
11909
11910         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
11911         and make.
11912         Reported by Simon Josefsson in
11913         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
11914
11915 2007-01-14  Bruno Haible  <bruno@clisp.org>
11916
11917         * modules/allocsa-tests: New file.
11918         * tests/test-allocsa.c: New file.
11919
11920 2007-01-14  Bruno Haible  <bruno@clisp.org>
11921
11922         * modules/fchdir (Depends-on): Add absolute-header.
11923         * modules/unistd (Depends-on): Likewise.
11924
11925 2006-12-30  Bruno Haible  <bruno@clisp.org>
11926
11927         * modules/fchdir: New file.
11928         * modules/unistd (Files): Add lib/unistd_.h.
11929         (Makefile.am): Generate unistd.h from unistd_.h.
11930         * lib/fchdir.c: New file.
11931         * lib/dirent_.h: New file.
11932         * lib/unistd_.h: New file.
11933         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
11934         * m4/fchdir.m4: New file.
11935         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
11936         (gl_HEADER_UNISTD): Invoke it.
11937         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
11938         function.
11939         * lib/backupfile.c (opendir, closedir): Undefine.
11940         * lib/chown.c (open, close): Undefine.
11941         * lib/clean-temp.c (open, close): Undefine.
11942         * lib/copy-file.c (open, close): Undefine.
11943         * lib/execute.c (open, close): Undefine.
11944         * lib/fsusage.c (open, close): Undefine.
11945         * lib/gc-gnulib.c (open, close): Undefine.
11946         * lib/getcwd.c (opendir, closedir): Undefine.
11947         * lib/glob.c (opendir, closedir): Undefine.
11948         * lib/javacomp.c (open, close): Undefine.
11949         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
11950         * lib/openat-proc.c (open, close): Undefine.
11951         * lib/pagealign_alloc.c (open, close): Undefine.
11952         * lib/pipe.c (open, close): Undefine.
11953         * lib/progreloc.c (open, close): Undefine.
11954         * lib/savedir.c (opendir, closedir): Undefine.
11955         * lib/utime.c (open, close): Undefine.
11956         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
11957
11958 2007-01-10  Bruno Haible  <bruno@clisp.org>
11959
11960         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
11961
11962 2007-01-12  Eric Blake  <ebb9@byu.net>
11963
11964         Provide a robust <wchar.h>.  Further simplifications are now
11965         possible in other modules, but not included here.
11966         * modules/wchar: New module.
11967         * m4/wchar.m4: New file.
11968         * lib/wchar_.h: Likewise.
11969         * modules/mbchar (Depends-on): Depend on wchar, as the first use
11970         of the new module.
11971         * MODULES.html.sh (Extended multibyte and wide character utilities):
11972         New section.
11973
11974 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
11975
11976         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
11977         to a reasonable default for memory allocation.
11978         (xreadlink): Don't allocate a huge buffer, to work around a buggy
11979         file system that reports garbage st_size values for symlinks.
11980         Problem reported by Liyang Hu.
11981
11982 2007-01-11  Simon Josefsson  <simon@josefsson.org>
11983
11984         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
11985         Emacs .#* auto-save files).
11986
11987 2007-01-11  Bruno Haible  <bruno@clisp.org>
11988
11989         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
11990         directory.
11991
11992 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11993
11994         Use @...@ consistently in lib/wctype_.h.
11995         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
11996         on it being set to 1 or 0.
11997         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
11998         go back to AC_SUBSTing it.
11999         * modules/wctype (Makefile.am): Undo previous change.
12000
12001 2007-01-10  Eric Blake  <ebb9@byu.net>
12002
12003         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
12004         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
12005         * modules/wctype (Makefile.am): Likewise.
12006         Reported by Chris McGuire.
12007
12008 2007-01-10  Jim Meyering  <jim@meyering.net>
12009
12010         fts.c: a small readability/maintainability improvement
12011         * lib/fts.c (fts_read): Make this code slightly more readable and
12012         maintainable by hoisting the "sp->fts_cur = p" assignments to
12013         immediately follow the statements that set P.  Derived from
12014         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
12015
12016 2007-01-10  Eric Blake  <ebb9@byu.net>
12017
12018         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
12019         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
12020         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
12021         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
12022         Reported by Chris McGuire.
12023
12024 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12025
12026         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
12027         in sed script.
12028
12029 2007-01-09  Bruno Haible  <bruno@clisp.org>
12030
12031         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
12032         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
12033         variables.
12034         (func_module): Use them.
12035
12036 2007-01-09  Bruno Haible  <bruno@clisp.org>
12037
12038         * modules/unistr/base: New file.
12039         * lib/unistr.h: New file.
12040
12041         * modules/unistr/u8-to-u16: New file.
12042         * lib/unistr/u8-to-u16.c: New file.
12043
12044         * modules/unistr/u8-to-u32: New file.
12045         * lib/unistr/u8-to-u32.c: New file.
12046
12047         * modules/unistr/u16-to-u8: New file.
12048         * lib/unistr/u16-to-u8.c: New file.
12049
12050         * modules/unistr/u16-to-u32: New file.
12051         * lib/unistr/u16-to-u32.c: New file.
12052
12053         * modules/unistr/u32-to-u8: New file.
12054         * lib/unistr/u32-to-u8.c: New file.
12055
12056         * modules/unistr/u32-to-u16: New file.
12057         * lib/unistr/u32-to-u16.c: New file.
12058
12059         * modules/unistr/u8-check: New file.
12060         * modules/unistr/u16-check: New file.
12061         * modules/unistr/u32-check: New file.
12062         * lib/unistr/u8-check.c: New file.
12063         * lib/unistr/u16-check.c: New file.
12064         * lib/unistr/u32-check.c: New file.
12065
12066         * modules/unistr/u8-chr: New file.
12067         * modules/unistr/u16-chr: New file.
12068         * modules/unistr/u32-chr: New file.
12069         * lib/unistr/u8-chr.c: New file.
12070         * lib/unistr/u16-chr.c: New file.
12071         * lib/unistr/u32-chr.c: New file.
12072
12073         * modules/unistr/u8-cmp: New file.
12074         * modules/unistr/u16-cmp: New file.
12075         * modules/unistr/u32-cmp: New file.
12076         * lib/unistr/u8-cmp.c: New file.
12077         * lib/unistr/u16-cmp.c: New file.
12078         * lib/unistr/u32-cmp.c: New file.
12079
12080         * modules/unistr/u8-cpy: New file.
12081         * modules/unistr/u16-cpy: New file.
12082         * modules/unistr/u32-cpy: New file.
12083         * lib/unistr/u8-cpy.c: New file.
12084         * lib/unistr/u16-cpy.c: New file.
12085         * lib/unistr/u32-cpy.c: New file.
12086         * lib/unistr/u-cpy.h: New file.
12087
12088         * modules/unistr/u8-cpy-alloc: New file.
12089         * modules/unistr/u16-cpy-alloc: New file.
12090         * modules/unistr/u32-cpy-alloc: New file.
12091         * lib/unistr/u8-cpy-alloc.c: New file.
12092         * lib/unistr/u16-cpy-alloc.c: New file.
12093         * lib/unistr/u32-cpy-alloc.c: New file.
12094         * lib/unistr/u-cpy-alloc.h: New file.
12095
12096         * modules/unistr/u8-endswith: New file.
12097         * modules/unistr/u16-endswith: New file.
12098         * modules/unistr/u32-endswith: New file.
12099         * lib/unistr/u8-endswith.c: New file.
12100         * lib/unistr/u16-endswith.c: New file.
12101         * lib/unistr/u32-endswith.c: New file.
12102         * lib/unistr/u-endswith.h: New file.
12103
12104         * modules/unistr/u8-mblen: New file.
12105         * modules/unistr/u16-mblen: New file.
12106         * modules/unistr/u32-mblen: New file.
12107         * lib/unistr/u8-mblen.c: New file.
12108         * lib/unistr/u16-mblen.c: New file.
12109         * lib/unistr/u32-mblen.c: New file.
12110
12111         * modules/unistr/u8-mbtouc: New file.
12112         * modules/unistr/u16-mbtouc: New file.
12113         * modules/unistr/u32-mbtouc: New file.
12114         * lib/unistr/u8-mbtouc.c: New file.
12115         * lib/unistr/u16-mbtouc.c: New file.
12116         * lib/unistr/u32-mbtouc.c: New file.
12117
12118         * modules/unistr/u8-mbtouc-safe: New file.
12119         * modules/unistr/u16-mbtouc-safe: New file.
12120         * modules/unistr/u32-mbtouc-safe: New file.
12121         * lib/unistr/u8-mbtouc-safe.c: New file.
12122         * lib/unistr/u16-mbtouc-safe.c: New file.
12123         * lib/unistr/u32-mbtouc-safe.c: New file.
12124
12125         * modules/unistr/u8-move: New file.
12126         * modules/unistr/u16-move: New file.
12127         * modules/unistr/u32-move: New file.
12128         * lib/unistr/u8-move.c: New file.
12129         * lib/unistr/u16-move.c: New file.
12130         * lib/unistr/u32-move.c: New file.
12131         * lib/unistr/u-move.h: New file.
12132
12133         * modules/unistr/u8-next: New file.
12134         * modules/unistr/u16-next: New file.
12135         * modules/unistr/u32-next: New file.
12136         * lib/unistr/u8-next.c: New file.
12137         * lib/unistr/u16-next.c: New file.
12138         * lib/unistr/u32-next.c: New file.
12139
12140         * modules/unistr/u8-prev: New file.
12141         * modules/unistr/u16-prev: New file.
12142         * modules/unistr/u32-prev: New file.
12143         * lib/unistr/u8-prev.c: New file.
12144         * lib/unistr/u16-prev.c: New file.
12145         * lib/unistr/u32-prev.c: New file.
12146
12147         * modules/unistr/u8-set: New file.
12148         * modules/unistr/u16-set: New file.
12149         * modules/unistr/u32-set: New file.
12150         * lib/unistr/u8-set.c: New file.
12151         * lib/unistr/u16-set.c: New file.
12152         * lib/unistr/u32-set.c: New file.
12153         * lib/unistr/u-set.h: New file.
12154
12155         * modules/unistr/u8-startswith: New file.
12156         * modules/unistr/u16-startswith: New file.
12157         * modules/unistr/u32-startswith: New file.
12158         * lib/unistr/u8-startswith.c: New file.
12159         * lib/unistr/u16-startswith.c: New file.
12160         * lib/unistr/u32-startswith.c: New file.
12161         * lib/unistr/u-startswith.h: New file.
12162
12163         * modules/unistr/u8-stpcpy: New file.
12164         * modules/unistr/u16-stpcpy: New file.
12165         * modules/unistr/u32-stpcpy: New file.
12166         * lib/unistr/u8-stpcpy.c: New file.
12167         * lib/unistr/u16-stpcpy.c: New file.
12168         * lib/unistr/u32-stpcpy.c: New file.
12169         * lib/unistr/u-stpcpy.h: New file.
12170
12171         * modules/unistr/u8-stpncpy: New file.
12172         * modules/unistr/u16-stpncpy: New file.
12173         * modules/unistr/u32-stpncpy: New file.
12174         * lib/unistr/u8-stpncpy.c: New file.
12175         * lib/unistr/u16-stpncpy.c: New file.
12176         * lib/unistr/u32-stpncpy.c: New file.
12177         * lib/unistr/u-stpncpy.h: New file.
12178
12179         * modules/unistr/u8-strcat: New file.
12180         * modules/unistr/u16-strcat: New file.
12181         * modules/unistr/u32-strcat: New file.
12182         * lib/unistr/u8-strcat.c: New file.
12183         * lib/unistr/u16-strcat.c: New file.
12184         * lib/unistr/u32-strcat.c: New file.
12185         * lib/unistr/u-strcat.h: New file.
12186
12187         * modules/unistr/u8-strchr: New file.
12188         * modules/unistr/u16-strchr: New file.
12189         * modules/unistr/u32-strchr: New file.
12190         * lib/unistr/u8-strchr.c: New file.
12191         * lib/unistr/u16-strchr.c: New file.
12192         * lib/unistr/u32-strchr.c: New file.
12193
12194         * modules/unistr/u8-strcmp: New file.
12195         * modules/unistr/u16-strcmp: New file.
12196         * modules/unistr/u32-strcmp: New file.
12197         * lib/unistr/u8-strcmp.c: New file.
12198         * lib/unistr/u16-strcmp.c: New file.
12199         * lib/unistr/u32-strcmp.c: New file.
12200
12201         * modules/unistr/u8-strcpy: New file.
12202         * modules/unistr/u16-strcpy: New file.
12203         * modules/unistr/u32-strcpy: New file.
12204         * lib/unistr/u8-strcpy.c: New file.
12205         * lib/unistr/u16-strcpy.c: New file.
12206         * lib/unistr/u32-strcpy.c: New file.
12207         * lib/unistr/u-strcpy.h: New file.
12208
12209         * modules/unistr/u8-strcspn: New file.
12210         * modules/unistr/u16-strcspn: New file.
12211         * modules/unistr/u32-strcspn: New file.
12212         * lib/unistr/u8-strcspn.c: New file.
12213         * lib/unistr/u16-strcspn.c: New file.
12214         * lib/unistr/u32-strcspn.c: New file.
12215         * lib/unistr/u-strcspn.h: New file.
12216
12217         * modules/unistr/u8-strdup: New file.
12218         * modules/unistr/u16-strdup: New file.
12219         * modules/unistr/u32-strdup: New file.
12220         * lib/unistr/u8-strdup.c: New file.
12221         * lib/unistr/u16-strdup.c: New file.
12222         * lib/unistr/u32-strdup.c: New file.
12223         * lib/unistr/u-strdup.h: New file.
12224
12225         * modules/unistr/u8-strlen: New file.
12226         * modules/unistr/u16-strlen: New file.
12227         * modules/unistr/u32-strlen: New file.
12228         * lib/unistr/u8-strlen.c: New file.
12229         * lib/unistr/u16-strlen.c: New file.
12230         * lib/unistr/u32-strlen.c: New file.
12231         * lib/unistr/u-strlen.h: New file.
12232
12233         * modules/unistr/u8-strmblen: New file.
12234         * modules/unistr/u16-strmblen: New file.
12235         * modules/unistr/u32-strmblen: New file.
12236         * lib/unistr/u8-strmblen.c: New file.
12237         * lib/unistr/u16-strmblen.c: New file.
12238         * lib/unistr/u32-strmblen.c: New file.
12239
12240         * modules/unistr/u8-strmbtouc: New file.
12241         * modules/unistr/u16-strmbtouc: New file.
12242         * modules/unistr/u32-strmbtouc: New file.
12243         * lib/unistr/u8-strmbtouc.c: New file.
12244         * lib/unistr/u16-strmbtouc.c: New file.
12245         * lib/unistr/u32-strmbtouc.c: New file.
12246
12247         * modules/unistr/u8-strncat: New file.
12248         * modules/unistr/u16-strncat: New file.
12249         * modules/unistr/u32-strncat: New file.
12250         * lib/unistr/u8-strncat.c: New file.
12251         * lib/unistr/u16-strncat.c: New file.
12252         * lib/unistr/u32-strncat.c: New file.
12253         * lib/unistr/u-strncat.h: New file.
12254
12255         * modules/unistr/u8-strncmp: New file.
12256         * modules/unistr/u16-strncmp: New file.
12257         * modules/unistr/u32-strncmp: New file.
12258         * lib/unistr/u8-strncmp.c: New file.
12259         * lib/unistr/u16-strncmp.c: New file.
12260         * lib/unistr/u32-strncmp.c: New file.
12261
12262         * modules/unistr/u8-strncpy: New file.
12263         * modules/unistr/u16-strncpy: New file.
12264         * modules/unistr/u32-strncpy: New file.
12265         * lib/unistr/u8-strncpy.c: New file.
12266         * lib/unistr/u16-strncpy.c: New file.
12267         * lib/unistr/u32-strncpy.c: New file.
12268         * lib/unistr/u-strncpy.h: New file.
12269
12270         * modules/unistr/u8-strnlen: New file.
12271         * modules/unistr/u16-strnlen: New file.
12272         * modules/unistr/u32-strnlen: New file.
12273         * lib/unistr/u8-strnlen.c: New file.
12274         * lib/unistr/u16-strnlen.c: New file.
12275         * lib/unistr/u32-strnlen.c: New file.
12276         * lib/unistr/u-strnlen.h: New file.
12277
12278         * modules/unistr/u8-strpbrk: New file.
12279         * modules/unistr/u16-strpbrk: New file.
12280         * modules/unistr/u32-strpbrk: New file.
12281         * lib/unistr/u8-strpbrk.c: New file.
12282         * lib/unistr/u16-strpbrk.c: New file.
12283         * lib/unistr/u32-strpbrk.c: New file.
12284         * lib/unistr/u-strpbrk.h: New file.
12285
12286         * modules/unistr/u8-strrchr: New file.
12287         * modules/unistr/u16-strrchr: New file.
12288         * modules/unistr/u32-strrchr: New file.
12289         * lib/unistr/u8-strrchr.c: New file.
12290         * lib/unistr/u16-strrchr.c: New file.
12291         * lib/unistr/u32-strrchr.c: New file.
12292
12293         * modules/unistr/u8-strspn: New file.
12294         * modules/unistr/u16-strspn: New file.
12295         * modules/unistr/u32-strspn: New file.
12296         * lib/unistr/u8-strspn.c: New file.
12297         * lib/unistr/u16-strspn.c: New file.
12298         * lib/unistr/u32-strspn.c: New file.
12299         * lib/unistr/u-strspn.h: New file.
12300
12301         * modules/unistr/u8-strstr: New file.
12302         * modules/unistr/u16-strstr: New file.
12303         * modules/unistr/u32-strstr: New file.
12304         * lib/unistr/u8-strstr.c: New file.
12305         * lib/unistr/u16-strstr.c: New file.
12306         * lib/unistr/u32-strstr.c: New file.
12307         * lib/unistr/u-strstr.h: New file.
12308
12309         * modules/unistr/u8-strtok: New file.
12310         * modules/unistr/u16-strtok: New file.
12311         * modules/unistr/u32-strtok: New file.
12312         * lib/unistr/u8-strtok.c: New file.
12313         * lib/unistr/u16-strtok.c: New file.
12314         * lib/unistr/u32-strtok.c: New file.
12315         * lib/unistr/u-strtok.h: New file.
12316
12317         * modules/unistr/u8-uctomb: New file.
12318         * modules/unistr/u16-uctomb: New file.
12319         * modules/unistr/u32-uctomb: New file.
12320         * lib/unistr/u8-uctomb.c: New file.
12321         * lib/unistr/u16-uctomb.c: New file.
12322         * lib/unistr/u32-uctomb.c: New file.
12323
12324         * MODULES.html.sh (Unicode string functions): Add the new modules.
12325
12326 2007-01-08  Bruno Haible  <bruno@clisp.org>
12327
12328         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
12329         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
12330         subdirectories.
12331
12332 2007-01-08  Karl Berry  <karl@gnu.org>
12333
12334         * doc/error.texi: mention that main() fns must set program_name
12335         when progname is used.
12336
12337 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
12338
12339         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
12340         WCTYPE_H is empty, for the benefit of builds from non-distclean
12341         directories.  Problem reported by Eric Blake in
12342         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
12343
12344 2007-01-08  Bruno Haible  <bruno@clisp.org>
12345
12346         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
12347         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
12348         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
12349         PROVIDE_CANONICALIZE_FILENAME_MODE.
12350         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
12351
12352 2007-01-08  Bruno Haible  <bruno@clisp.org>
12353
12354         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
12355         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
12356         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
12357         * lib/fts.c: Likewise.
12358         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
12359
12360 2006-12-25  Bruno Haible  <bruno@clisp.org>
12361
12362         * modules/utf8-ucs4-safe: New file.
12363         * lib/utf8-ucs4-safe.h: New file.
12364         * lib/unistr/utf8-ucs4-safe.c: New file.
12365
12366         * modules/utf16-ucs4-safe: New file.
12367         * lib/utf16-ucs4-safe.h: New file.
12368         * lib/unistr/utf16-ucs4-safe.c: New file.
12369
12370         * MODULES.html.sh (Unicode string functions): Add the new modules.
12371
12372 2007-01-08  Bruno Haible  <bruno@clisp.org>
12373
12374         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
12375         (Depends-on): Add unitypes.
12376         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
12377         (u8_mbtouc_aux): Move out to separate file.
12378         (u8_mbtouc): Use ucs4_t, uint8_t types.
12379         * lib/unistr/utf8-ucs4.c: New file.
12380
12381         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
12382         (Depends-on): Add unitypes.
12383         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
12384         (u16_mbtouc_aux): Move out to separate file.
12385         (u16_mbtouc): Use ucs4_t, uint16_t types.
12386         * lib/unistr/utf16-ucs4.c: New file.
12387
12388         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
12389         (Depends-on): Add unitypes.
12390         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
12391         (u8_uctomb_aux): Move out to separate file.
12392         (u8_uctomb): Use ucs4_t, uint8_t types.
12393         * lib/unistr/ucs4-utf8.c: New file.
12394
12395         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
12396         (Depends-on): Add unitypes.
12397         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
12398         (u16_uctomb_aux): Move out to separate file.
12399         (u16_uctomb): Use ucs4_t, uint16_t types.
12400         * lib/unistr/ucs4-utf16.c: New file.
12401
12402 2006-12-25  Bruno Haible  <bruno@clisp.org>
12403
12404         * modules/unitypes: New file.
12405         * lib/unitypes.h: New file.
12406         * MODULES.html.sh (func_all_modules): New section "Unicode string
12407         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
12408         this section. Add unitypes.
12409
12410 2007-01-08  Bruno Haible  <bruno@clisp.org>
12411
12412         Avoid variable names that conflict with those from libtool.
12413         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
12414         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
12415         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
12416         library_names_spec to acl_library_names_spec, hardcode_* to
12417         acl_hardcode_*.
12418         Reported by Ralf Wildenhues.
12419
12420 2007-01-08  Bruno Haible  <bruno@clisp.org>
12421
12422         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
12423         definition.
12424         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
12425         definition.
12426         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
12427         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
12428         definition.
12429         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
12430         definition.
12431         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
12432         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
12433         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
12434         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
12435         definition.
12436         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
12437         definition.
12438         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
12439         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
12440         GC_USE_<algorithm>.
12441         * lib/gc-libgcrypt.c: Likewise.
12442         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
12443         * modules/gc-arctwo (configure.ac): Likewise.
12444         * modules/gc-des (configure.ac): Likewise.
12445         * modules/gc-hmac-md5 (configure.ac): Likewise.
12446         * modules/gc-hmac-sha1 (configure.ac): Likewise.
12447         * modules/gc-md2 (configure.ac): Likewise.
12448         * modules/gc-md4 (configure.ac): Likewise.
12449         * modules/gc-md5 (configure.ac): Likewise.
12450         * modules/gc-random (configure.ac): Likewise.
12451         * modules/gc-rijndael (configure.ac): Likewise.
12452         * modules/gc-sha1 (configure.ac): Likewise.
12453
12454 2007-01-08  Bruno Haible  <bruno@clisp.org>
12455
12456         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
12457         macro definition.
12458         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
12459         definition.
12460         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
12461         definition.
12462         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
12463         * modules/fcntl-safer (configure.ac): Likewise.
12464         * modules/fopen-safer (configure.ac): Likewise.
12465         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
12466         GNULIB_FWRITEERROR macro definition.
12467
12468 2007-01-08  Bruno Haible  <bruno@clisp.org>
12469
12470         * m4/gnulib-common.m4: New file.
12471         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
12472         (func_get_filelist): Add m4/gnulib-common.m4.
12473
12474 2007-01-08  Bruno Haible  <bruno@clisp.org>
12475
12476         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
12477         command.
12478
12479 2007-01-08  Jim Meyering  <jim@meyering.net>
12480
12481         Use a more robust test for a "can't happen" condition.
12482         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
12483         narrowed the st_size value.  Presuming the "can't happen" condition
12484         is true, that narrowing could conceivably convert an invalid st_size
12485         value into a valid one.  Instead, use a change based on Matthew
12486         Woehlke's original patch.
12487
12488         Slight readability improvement: use an assert-like macro
12489         in place of literal "abort ()" uses.
12490         * lib/fts.c (fts_assert): Define.
12491         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
12492         Use this macro instead of a bare 'abort'.
12493
12494 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
12495
12496         Don't worry about using IRIX 5.3's wctype.h broken definitions;
12497         simply work around them.
12498         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
12499         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
12500         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
12501         declaring.
12502         Don't bother to define as macros, since the standard doesn't require it.
12503         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
12504         longer worry about IRIX 5.3.
12505         (HAVE_WCTYPE_CTMP_BUG): Remove.
12506
12507 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
12508
12509         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
12510         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
12511         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
12512         Problems reported by Georg Schwarz for IRIX 5.3.
12513
12514         * gnulib-tool (autoconf_minversion): Take the maximum version number
12515         found, not the minimum.  Problem reported by James Youngman.
12516
12517 2007-01-03  Karl Berry  <karl@gnu.org>
12518
12519         * doc/error.texi: new file, explaining interaction with progname.
12520         * doc/gnulib.texi: include it.  Update copyright.
12521
12522 2007-01-03  Simon Josefsson  <simon@josefsson.org>
12523
12524         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
12525         AC_CANONICAL_HOST, to improve autobuild outputs.
12526
12527 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
12528             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
12529
12530         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
12531         sockets, server sockets, and other file descriptors.  Count errors
12532         to compute the return value.  Reorder the code a bit to be easier
12533         to follow.  Don't set event bits that were not requested (except
12534         POLLERR and POLLHUP).
12535
12536 2007-01-01  Bruno Haible  <bruno@clisp.org>
12537
12538         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
12539
12540 2007-01-03  Jim Meyering  <jim@meyering.net>
12541
12542         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
12543
12544 2007-01-02  Bruno Haible  <bruno@clisp.org>
12545
12546         * modules/settime (Include): Require timespec.h.
12547         * modules/nanosleep (Include): Likewise.
12548
12549 2007-01-01  Bruno Haible  <bruno@clisp.org>
12550
12551         * gnulib-tool (func_emit_copyright_notice): Bump year.
12552         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
12553
12554 2007-01-01  Bruno Haible  <bruno@clisp.org>
12555
12556         Improve support for OpenBSD.
12557         * build-aux/config.rpath (libname_spec): Export.
12558         (library_names_spec): New variable. Export.
12559         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
12560         library_names_spec from the config.rpath output. Locate shared library
12561         through the name pattern in library_names_spec.
12562
12563 2007-01-01  Eric Blake  <ebb9@byu.net>
12564
12565         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
12566
12567 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
12568
12569         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
12570         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
12571         assume the C locale, and avoid an "eval" that could cause trouble.
12572         Problem with SORT reported by Bob Proulx.
12573
12574         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
12575         Define.  Trivial patch from Henning Nielsen Lund, originally
12576         sent to bug-grep@gnu.org today.
12577
12578 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
12579
12580         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
12581         struct stat.  Problem reported by Henning Nielsen Lund.
12582         * lib/acl.c: Include acl.h first, to check interface.  Don't
12583         bother to include sys/types.h and sys/stat.h again.
12584
12585 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
12586
12587         Import the following change from libc; problem reported by
12588         Sven Verdoolaege.
12589
12590         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
12591
12592         [BZ #1373]
12593         * lib/argp.h: Remove __NTH for __argp_usage inline function.
12594
12595 2006-12-28  Jim Meyering  <jim@meyering.net>
12596
12597         * build-aux/announce-gen: Do not assume that the package
12598         builds any of tar.gz, tar.bz2, and .xdelta files.
12599         Suggestion from Simon Josefsson.
12600
12601 2006-12-28  Simon Josefsson  <simon@josefsson.org>
12602
12603         * modules/announce-gen: New file.
12604
12605 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
12606
12607         * lib/mbchar.h: Just include <wctype.h>; the wctype module
12608         handles its gotchas now.
12609         * lib/mbswidth.c: Likewise.
12610         * lib/wcwidth.h: Likewise.
12611         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
12612         and iswcntrl; the wctype module does this stuff now.
12613         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
12614         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
12615         * modules/mbchar (Depends-on): Add wctype.
12616         * modules/mbswidth (Depends-on): Likewise.
12617         * modules/wcwidth (Depends-on): Likewise.
12618
12619 2006-12-27  Eric Blake  <ebb9@byu.net>
12620
12621         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
12622         module uses more than what <wctype.h> is required to provide.
12623
12624 2006-12-26  Eric Blake  <ebb9@byu.net>
12625
12626         * gnulib-tool (sed_extract_prog): Avoid space-tab.
12627
12628 2006-12-26  Eric Blake  <ebb9@byu.net>
12629
12630         * modules/absolute-header: New module.
12631         * modules/fcntl (Depends-on): Depend on it.
12632         * modules/inttypes (Depends-on): Likewise.
12633         * modules/stdint (Depends-on): Likewise.
12634         * modules/sys_stat (Depends-on): Likewise.
12635         * modules/wctype (Depends-on): Likewise.
12636         * MODULES.html.sh (Support for building libraries and
12637         executables): Document it.
12638
12639 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
12640
12641         * gnulib-tool (SED): Remove, undoing previous change.
12642         The problem was that it broke coreutils on Solaris, because
12643         "sed --posix" leaked into a makefile.
12644         (sed): New alias, if 'alias' and GNU sed.
12645
12646 2006-12-24  Jim Meyering  <jim@meyering.net>
12647
12648         Work around an fchownat bug in glibc-2.4:
12649         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
12650         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
12651         in spite of the -P option.
12652         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
12653         New macros.
12654         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
12655         * modules/openat (Files): Add lib/fchownat.c.
12656         * lib/openat.c (fchownat): Don't define here.  Move to...
12657         * lib/fchownat.c: ...this new file.
12658
12659 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
12660
12661         Fix bug reported by Bruno Haible in
12662         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
12663         where quotearg.c didn't compile on Mac OS X 10.2 because it
12664         lacks <wchar.h> and wint_t.
12665         * lib/wctype_.h (__wctype_wint_t): New type.
12666         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
12667         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
12668         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
12669         Arg is now of type __wctype_wint_t, not wint_t.
12670         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
12671         substitute HAVE_WINT_T.
12672         * modules/wctype (Files): Add m4/wint_t.m4.
12673         (wctype.h): Substitute HAVE_WINT_T.
12674
12675 2006-12-23  Bruno Haible  <bruno@clisp.org>
12676
12677         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
12678
12679 2006-12-23  Bruno Haible  <bruno@clisp.org>
12680
12681         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
12682         S_ISLNK.
12683         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
12684         mingw.
12685
12686 2006-12-22  Bruno Haible  <bruno@clisp.org>
12687
12688         * lib/copy-file.c: Include acl.h.
12689         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
12690         Close the file descriptors only after being done with copy_acl.
12691         * modules/copy-file (Depends-on): Add acl.
12692
12693 2006-12-22  Bruno Haible  <bruno@clisp.org>
12694
12695         * gnulib-tool (SED): New variable.
12696         Use $SED instead of sed everywhere.
12697
12698 2006-12-22  Bruno Haible  <bruno@clisp.org>
12699
12700         * modules/no-c++: New file.
12701         * m4/no-c++.m4: New file.
12702         * MODULES.html.sh (Support for building libraries and executables):
12703         Add no-c++.
12704
12705 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
12706
12707         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
12708         Include <limits.h>, and use its INT_MAX to rewrite the
12709         j loop so that it does not overflow 'int'.  Problem reported by
12710         Ralf Wildenhues in
12711         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
12712         Play it safe by shifting left by 1 rather than multiplying by 2,
12713         as GCC is less likely to optimize this away when the value
12714         is signed (when it assumes overflow leads to undefined behavior).
12715         Also, don't assume time_t uses two's complement.
12716
12717 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12718
12719         * MODULES.html.sh: New module wctype.
12720         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
12721         * lib/fnmatch.c: Don't bother to include <wchar.h> before
12722         <wctype.h>, since the new wctype module should fix this.
12723         * lib/quotearg.c: Include <wctype.h> unconditionally, since
12724         the wctype module should arrange for it.
12725         * lib/regex_internal.h: Likewise.
12726         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
12727         since the wctype module should handle this now.
12728         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
12729         * modules/fnmatch (Depends-on): Add wctype.
12730         * modules/quotearg (Depends-on): Likewise.
12731         * modules/regex (Depends-on): Likewise.
12732
12733 2006-12-19  Bruno Haible  <bruno@clisp.org>
12734
12735         * lib/strdup.h [C++]: Wrap definitions in extern "C".
12736         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
12737
12738 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12739
12740         * modules/savewd (Depends-on): Fix dependency on fcntl.
12741
12742 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
12743
12744         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
12745         conforms to C99, rather than relying on the user's environment
12746         setting of STDINT_H.
12747
12748 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
12749         and Eric Blake  <ebb9@byu.net>
12750
12751         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
12752         This is more consistent with the other defines here.
12753         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
12754         Port to z/OS.  Problem reported by Paul Gilmartin.
12755         Change local vars to use gl_ prefix rather than ac_.
12756         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
12757         with other defines.
12758         * modules/double-slash-root: New module.
12759         * modules/dirname (Files): Remove m4/double-slash-root.m4.
12760         (Depends-on): Add double-slash-root.
12761         * MODULES.html.sh (File system functions): Mention new module.
12762
12763 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
12764
12765         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
12766         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
12767         This is for the benefit of gzip, which doesn't do i18n.
12768
12769 2006-12-12  Jim Meyering  <jim@meyering.net>
12770
12771         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
12772         Reported by Andreas Schwab <schwab@suse.de>.
12773
12774 2006-12-12  Bruno Haible  <bruno@clisp.org>
12775
12776         Merge these changes.
12777         2006-09-05  Bruno Haible  <bruno@clisp.org>
12778         * lib/iconvme.c (iconv_string): No need to save and restore errno when
12779         iconv_alloc succeeded.
12780         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
12781         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
12782         test for " && dest " at the end - dest is always != NULL there. Call
12783         iconv with 4xNULL arguments initially, to reset the state. Call iconv
12784         with 2xNULL arguments, also to flush the state storage. Handle the
12785         IRIX iconv behaviour. Realloc the final result, to throw away unused
12786         memory.
12787
12788 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
12789
12790         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
12791         and fchmodat unconditionally, since glibc 2.4 has them.
12792         Problem reported by Arkadiusz Miskiewicz.
12793
12794 2006-12-10  Bruno Haible  <bruno@clisp.org>
12795
12796         * gnulib-tool (func_import): Show the include files only for those
12797         modules that are copied and specified.
12798         Reported by Karl Berry.
12799
12800 2006-12-08  Jim Meyering  <jim@meyering.net>
12801
12802         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
12803         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
12804
12805         * build-aux/announce-gen: Add two new options, both optional:
12806         --bootstrap-tools=TOOL_LIST
12807               a comma-separated list of tools, e.g.,
12808               autoconf,automake,bison,gnulib
12809         --gnulib-snapshot-date=DATE
12810               if gnulib is in the bootstrap tool list,
12811               then report this as the snapshot date.
12812               If not specified, use the current date/time.
12813               If you specify a date here, be sure it's UTC.
12814
12815 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12816
12817         * tests/test-argp-2.sh: Fix test to match actual output.
12818         (func_compare): Fix sed script to be portable.
12819
12820 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
12821
12822         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
12823         workaround for this case.  It is not autoconfigured now; offhand
12824         it's hard to see how to autoconfigure it.
12825
12826 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
12827
12828         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
12829         a directory that is about to be chowned.  Such a directory's
12830         initial file permissions should permit the owner only and this
12831         should not be changed until after the chown, since the group and
12832         other bits would be incorrect if they granted permission before
12833         the chown.
12834
12835         Fix porting problem for iswctype reported by Georg Schwarz in:
12836         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
12837         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
12838         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
12839         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
12840         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
12841
12842 2006-12-03  Jim Meyering  <jim@meyering.net>
12843
12844         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
12845         p->fts_statp may not yet be defined.
12846         (fts_read): Instead, set it in the caller, once p->fts_statp is
12847         sure to be defined, and corresponds to a top-level directory.
12848         This bug made du -x fail.  Here's the coreutils test case:
12849         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
12850         Reported by Mike Frysinger.
12851
12852 2006-12-01  Jim Meyering  <jim@meyering.net>
12853
12854         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
12855         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
12856         Reported by Simon Josefsson.
12857
12858 2006-11-30  Jim Meyering  <jim@meyering.net>
12859
12860         * m4/warning.m4: Use the all-permissive copyright notice
12861         recommended by RMS (rather than LGPL).
12862         * m4/vararrays.m4: Likewise.
12863         * m4/flexmember.m4: Likewise.
12864
12865 2006-11-29  Bruno Haible  <bruno@clisp.org>
12866
12867         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
12868         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
12869         using +=.
12870         Reported by Simon Josefsson <simon@josefsson.org>.
12871
12872 2006-11-28  James Youngman <jay@gnu.org>
12873
12874         * README: Advise users that they might find the bug-gnulib@gnu.org
12875         and autotools-announce@gnu.org mailing lists useful.
12876
12877 2006-11-28  Bruno Haible  <bruno@clisp.org>
12878
12879         * m4/ptrdiff_max.m4: Remove file.
12880
12881 2006-11-21  Bruno Haible  <bruno@clisp.org>
12882
12883         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
12884         _AC_COMPUTE_INT.
12885         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
12886         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
12887         _AC_COMPUTE_INT.
12888         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
12889         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
12890         _AC_COMPUTE_INT.
12891         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
12892
12893 2006-11-28  Jim Meyering  <jim@meyering.net>
12894
12895         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
12896         warning from "gcc -Wshadow" about shadowing the builtin.
12897
12898 2006-11-27  Bruno Haible  <bruno@clisp.org>
12899
12900         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
12901         _AC_COMPUTE_INT.
12902         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
12903
12904 2006-11-27  Bruno Haible  <bruno@clisp.org>
12905             Paul Eggert  <eggert@cs.ucla.edu>
12906
12907         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
12908
12909 2006-11-26  Bruno Haible  <bruno@clisp.org>
12910
12911         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
12912         noinst_LTLIBRARIES.
12913
12914 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
12915             Bruno Haible  <bruno@clisp.org>
12916
12917         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
12918         if compiling with "gcc -ansi".
12919
12920 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
12921
12922         Fix some incompatibilities with gcc -ansi -pedantic.
12923         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
12924         if compiling pedantically with GCC, unless it's C99 or later.
12925         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
12926         it mishandles gcc -ansi -pedantic as well.
12927         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
12928         if gcc -pedantic.
12929         * lib/regexec.c (check_node_accept_bytes): Don't use auto
12930         initializers for struct if -pedantic, unless it's C99 or later.
12931
12932 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
12933
12934         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
12935         Don't close an fd more than once. Identical atimes indicate
12936         success, not failure.
12937
12938 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
12939
12940         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
12941
12942 2006-11-23  Jim Meyering  <jim@meyering.net>
12943
12944         * build-aux/announce-gen: New file.  From coreutils.
12945
12946 2006-11-22  Jim Meyering  <jim@meyering.net>
12947
12948         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
12949         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
12950         (fts_read): Use a temporary to narrow the overused st_size member
12951         before using it in a switch statement.  Reported by Matthew Woehlke.
12952
12953         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
12954         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
12955
12956 2006-11-20  Bruno Haible  <bruno@clisp.org>
12957
12958         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
12959         changequote instead of pairs of brackets.
12960         Reported by Andreas Schwab <schwab@suse.de>.
12961
12962 2006-11-21  Jim Meyering  <jim@meyering.net>
12963
12964         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
12965         so as to remain compatible with older compilers.
12966         Patch from Michael Deutschmann.
12967
12968 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12969
12970         * MODULES.html.sh (File system functions): Add openat.
12971
12972         * lib/openat.h (rpl_fstatat): New macro, if
12973         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
12974         (fstatat): Define to rpl_fstatat under the same conditions,
12975         unless COMPILING_FSTATAT.
12976         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
12977         seems to have the bug.
12978         * lib/fstatat.c: New file.
12979         * modules/openat (Files): Add it.
12980
12981 2006-11-20  Bruno Haible  <bruno@clisp.org>
12982
12983         * Makefile: New file.
12984
12985 2006-11-20  Jim Meyering  <jim@meyering.net>
12986
12987         The beginnings of syntax-related checks for gnulib.
12988         * lib/Makefile: New file.
12989         * lib/t-idcache: New script.  Ensure that the two halves of
12990         idcache.c stay in sync.
12991
12992         * lib/idcache.c: Adjust comments in user- and group- portions to
12993         be more accurate, and to be consistent with one another.
12994
12995 2006-11-20  Jim Meyering  <jim@meyering.net>
12996
12997         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
12998         continue using the flexible array member (thus, this module performs
12999         half as many malloc calls), with the addition that...
13000         (getgroup, getuser): Consistently record a non-match via an empty
13001         "name" string, and map an empty string match to a NULL return value.
13002         * modules/idcache (Depends-on): Re-add flexmember.
13003
13004         * lib/idcache.c (getuser): Remove all uses of the register keyword.
13005         (getuidbyname, getgroup, getgidbyname): Likewise.
13006
13007         Use cleaner syntax: NULL rather than 0.
13008         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
13009
13010 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
13011
13012         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
13013         It mishandled the case where the group was missing.
13014         Problem reported by Greg Schafer.
13015         * modules/idcache: Likewise.
13016
13017 2006-11-18  Jim Meyering  <jim@meyering.net>
13018
13019         * check-module (%exempt_header): Add exception for some
13020         conditionally-included headers.
13021
13022         * modules/i-ring (Depends-on): Add verify.
13023         (License): Change to LGPL.
13024
13025 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
13026
13027         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
13028         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
13029         and inttostr.h.  Use snprintf rather than uinttostr, so that
13030         LGPLed code doesn't depend on GPLed.
13031
13032 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
13033
13034         * modules/inline (License): Change from GPL to LGPL.
13035
13036 2006-11-17  Jim Meyering  <jim@meyering.net>
13037
13038         * modules/d-type (License): Switch to LGPL.
13039
13040 2006-11-15  Bruno Haible  <bruno@clisp.org>
13041
13042         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
13043
13044 2006-11-15  Eric Blake  <ebb9@byu.net>
13045
13046         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
13047         the module dependency.
13048
13049 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
13050             Bruno Haible  <bruno@clisp.org>
13051
13052         * gnulib-tool (func_create_testdir): Add license consistency check.
13053
13054 2006-11-15  Eric Blake  <ebb9@byu.net>
13055
13056         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
13057         random "(cached)" in configure output.
13058
13059 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13060
13061         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
13062         test for conforming inttypes.h is both announced and cached.
13063
13064         * MODULES.html.sh (seen_modules, seen_files): New variables.
13065         (func_module): Rewrite to use a few less gnulib-tool and sed
13066         invocations.  Avoid a couple of quadratic algorithms for ...
13067         (missed_modules, missed_files): ... these, with ...
13068         (func_append, func_tmpdir): ... these new functions, from
13069         gnulib-tool.  Analogously, install traps for cleanup.
13070
13071         * tests/test-gc.c (main): Remove unused variables.
13072         * tests/test-read-file.c: Include stdlib.h, for 'free'.
13073
13074 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
13075
13076         * modules/inttostr (License): Change to LGPL.
13077
13078 2006-11-14  Eric Blake  <ebb9@byu.net>
13079
13080         * modules/tempname (License): Change to LGPL.
13081
13082 2006-11-14  Eric Blake  <ebb9@byu.net>
13083
13084         * doc/functions.texi (Function Portability): *printf functions on
13085         Cygwin now understand all POSIX size specifiers.
13086
13087 2006-11-14  Bruno Haible  <bruno@clisp.org>
13088
13089         * modules/c-ctype (License): Change to LGPL.
13090
13091 2006-11-12  Bruno Haible  <bruno@clisp.org>
13092
13093         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
13094         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
13095         for GNOME libraries, for which the include files are installed in
13096         subdirectories of $prefix/include.
13097
13098 2006-11-12  Bruno Haible  <bruno@clisp.org>
13099
13100         * m4/lib-link.m4: Require at least autoconf-2.54.
13101         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
13102         name to underscores for the --with option.
13103
13104 2006-11-13  Bruno Haible  <bruno@clisp.org>
13105
13106         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
13107         the tests directory.
13108         Reported by Ralf Wildenhues.
13109
13110 2006-11-13  Bruno Haible  <bruno@clisp.org>
13111
13112         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
13113         (func_emit_initmacro_end): Undo the override here.
13114         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
13115         Works around the famous automake error in coreutils.
13116
13117 2006-11-13  Eric Blake  <ebb9@byu.net>
13118
13119         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
13120         element, not its node.
13121
13122 2006-11-12  Bruno Haible  <bruno@clisp.org>
13123
13124         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
13125         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
13126
13127 2006-11-12  Bruno Haible  <bruno@clisp.org>
13128
13129         * gnulib-tool: New option --local-symlink.
13130         (func_usage): Document it.
13131         (lsymbolic): New variable.
13132         (func_import, func_create_testdir): If --symlink was not specified,
13133         test whether --local-symlink was specified and the file comes from
13134         the local_gnulib_dir.
13135
13136 2006-11-12  Bruno Haible  <bruno@clisp.org>
13137
13138         * gnulib-tool (func_ln): New function.
13139         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
13140
13141 2006-11-12  Bruno Haible  <bruno@clisp.org>
13142
13143         Finish support for source files in subdirectories.
13144         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
13145         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
13146         AUTOMAKE_OPTIONS.
13147         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
13148
13149 2006-11-12  Bruno Haible  <bruno@clisp.org>
13150
13151         * gnulib-tool (func_get_automake_snippet): Synthesize also an
13152         EXTRA_lib_SOURCES augmentation.
13153         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
13154
13155 2006-11-12  Jim Meyering  <jim@meyering.net>
13156
13157         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
13158         file descriptors.  This also averts a failure on systems with
13159         native openat support when a traversed directory lacks "x" access.
13160         * lib/fts_.h: Include "i-ring.h"
13161         (struct FTS) [fts_fd_ring]: New member.
13162         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
13163         (FCHDIR): Add parentheses.
13164         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
13165         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
13166         When descending, rather than simply closing the previous
13167         fts_cwd_fd value, push that file descriptor onto the ring.
13168         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
13169         (fts_open): Initialize the new fd_ring member.
13170         (fts_close): Clear the ring.
13171         (fts_safe_changedir): When possible, use our new fd_ring to skip
13172         the diropen and fstat and dev/ino comparison that would normally
13173         accompany a virtual `chdir ("..")'.
13174
13175         * modules/fts (Depends-on): Add i-ring.
13176         * modules/i-ring: New module.
13177         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
13178         * m4/i-ring.m4: New file.
13179
13180 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13181
13182         * gnulib-tool (func_create_testdir): Fix replacement of
13183         `build-aux' in configure.ac.  Run autotools in gltests
13184         subdirectory.
13185         (func_create_testdir, func_create_megatestdir, test): There is
13186         no need for '--force' in most autotool invocations in a new
13187         tree.  Actually fail the whole test if any of the tools, or the
13188         configure or make stages fail.
13189
13190         Sync from Automake.
13191         * build-aux/gnupload: Revert last change.  Add pointer to upload
13192         instructions of the GNU Maintenance Instructions.
13193         Suggestion by Karl Berry.
13194
13195 2006-11-10  Jim Meyering  <jim@meyering.net>
13196
13197         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
13198
13199 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
13200
13201         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
13202         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
13203         (bind_textdomain_codeset) [! ENABLE_NLS]:
13204         Evaluate all the arguments.  That way, callers get compatible behavior
13205         if the arguments have side effects.  Also, it avoids some GCC
13206         diagnostics in some cases; Joel E. Denny reported problems when Bison
13207         was configured with --enable-gcc-warnigs.
13208
13209 2006-11-10  Jim Meyering  <jim@meyering.net>
13210
13211         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
13212         relevant options in CFLAGS (like -O, -fno-inline) are taken into
13213         account.
13214
13215 2006-11-10  Jim Meyering  <jim@meyering.net>
13216
13217         * modules/inline: New file/module.
13218         * modules/xalloc (Files): Remove m4/inline.m4.
13219         (Depends-on): Add inline, instead.
13220         * modules/oset: Likewise.
13221         * modules/list: Likewise.
13222
13223 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
13224
13225         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
13226         Problem reported by Matthew Woehlke.
13227
13228 2006-11-09  Bruno Haible  <bruno@clisp.org>
13229
13230         * lib/tempname.c (gen_tempname): Remove variant that invokes
13231         __gen_tempname.
13232         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
13233         __gen_tempname.
13234
13235 2006-11-08  Bruno Haible  <bruno@clisp.org>
13236
13237         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
13238         to 'yes' instead of 'cross-compiling'.
13239
13240 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
13241
13242         * lib/quotearg.h (quotearg_free): New decl.
13243         * lib/quotearg.c (quotearg_free): New function.
13244         (slot0, nslots, slotvec0, slotvec):
13245         Now file-scope so that quotearg_free can get at them.
13246
13247 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13248
13249         Sync from Automake.
13250         * build-aux/gnupload: Add missing 'gnu' to example URL.
13251         Report by Karl Berry.
13252
13253 2006-11-08  Bruno Haible  <bruno@clisp.org>
13254
13255         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
13256         Suggested by Paul Eggert.
13257
13258 2006-11-08  Jim Meyering  <jim@meyering.net>
13259
13260         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
13261         It's already included if !_LIBC.
13262         (fts_safe_changedir): Add a comment.
13263
13264 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
13265
13266         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
13267         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
13268         Matthew Woehlke.
13269
13270         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
13271         definitions up, to avoid colliding with change below.
13272         (static_inline) [HAVE_INLINE]: New macro.
13273         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
13274         Provide extern decls when !HAVE_INLINE.  Do not define unless
13275         static_inline is defined, either by us or by xmalloc.c.  Use
13276         static_inline rather than static inline.
13277         (XCALLOC): Optimize sizeof(T) = 1 case.
13278         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
13279
13280 2006-11-07  Bruno Haible  <bruno@clisp.org>
13281
13282         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
13283         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
13284         AC_C_INLINE.
13285         * modules/xalloc (Files): Add m4/inline.m4.
13286
13287 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13288
13289         * README: Fix typo.
13290         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
13291         (Miscellanous Notes): ...from this.
13292
13293 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
13294
13295         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
13296         Mention that offsetof should be used instead of sizeof.
13297         From Bruno Haible.
13298
13299 2006-11-07  Bruno Haible  <bruno@clisp.org>
13300
13301         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
13302
13303 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
13304
13305         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
13306         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
13307         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
13308         (gl_tree_add_before, gl_tree_add_after):
13309         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
13310         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
13311         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
13312         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
13313         (gl_linked_add_after, gl_linked_add_at): Likewise.
13314         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
13315         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
13316         (gl_tree_add_before, gl_tree_add_after): Likewise.
13317         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
13318         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
13319         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
13320
13321 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13322
13323         * lib/gl_oset.h: Use C comment style, not C++ comment style.
13324
13325 2006-11-06  Bruno Haible  <bruno@clisp.org>
13326
13327         * m4/inline.m4: New file.
13328         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
13329         * modules/list (Files): Add m4/inline.m4.
13330         * modules/oset (Files): Likewise.
13331
13332 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
13333
13334         * lib/idcache.c: Include <stddef.h>, for offsetof.
13335         (struct userid.name): Change from char * to a flexible array member.
13336         All uses changed.
13337         * modules/idcache (Depends-on): Add flexmember.
13338
13339         * MODULES.html.sh (Core language properties): New module flexmember.
13340         * modules/flexmember, m4/flexmember.m4: New files.
13341
13342         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
13343         inline functions that are identical with the old xnmalloc_inline,
13344         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
13345         that we can avoid some unnecessary integer multiplications and
13346         divisions in the common case where the element size is known at
13347         compile time.
13348         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
13349         needed.
13350         (xnboundedmalloc): Remove.
13351         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
13352         arguments, for consistency with rest of this header.
13353         (xcharalloc): Rewrite using XNMALLOC.
13354         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
13355         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
13356         versions have been moved to lib/xalloc.h and renamed to be the
13357         non-*_inline versions.
13358         (xmalloc, xrealloc): Implement without reference to the xnmalloc
13359         and xnrealloc functions, since those functions are now inline and
13360         now call us.
13361         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
13362         renaming described above.
13363         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
13364         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
13365         captures the dependency in AC_C_INLINE.
13366
13367         New module canonicalize-lgpl, proposed by Charles Wilson in
13368         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
13369         with a few small changes afterwards.
13370         * MODULES.html.sh (File system functions): New module
13371         canonicalize-lgpl.
13372         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
13373         and canonicalize_file_name.
13374         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
13375         * modules/canonicalize-lgpl: New files.
13376
13377 2006-11-05  Bruno Haible  <bruno@clisp.org>
13378
13379         * gnulib-tool (func_import, func_create_testdir): Create directories
13380         also for files in subdirectories of lib/.
13381
13382 2006-11-05  Bruno Haible  <bruno@clisp.org>
13383
13384         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
13385         ANSI C compliant.
13386
13387 2006-11-03  Bruno Haible  <bruno@clisp.org>
13388
13389         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
13390         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
13391         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
13392         (xnboundedmalloc): New inline function.
13393         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
13394         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
13395         xmalloc.
13396         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
13397         xmalloc.
13398         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
13399         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
13400         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
13401         xmalloc.
13402         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
13403         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
13404         xmalloc.
13405         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
13406         gl_tree_add_after): Use XMALLOC instead of xmalloc.
13407         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
13408         xmalloc.
13409         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
13410         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
13411         gl_tree_add_after): Use XMALLOC instead of xmalloc.
13412         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
13413         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
13414         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
13415         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
13416
13417 2006-11-03  Bruno Haible  <bruno@clisp.org>
13418
13419         * lib/c-ctype.h [C++]: Define functions without name mangling.
13420         * lib/fwriteerror.h [C++]: Likewise.
13421         * lib/gcd.h [C++]: Likewise.
13422         * lib/linebreak.h [C++]: Likewise.
13423
13424 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
13425
13426         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
13427         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
13428         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
13429         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
13430         Check for functions and headers just once.
13431         Check for declaration of canonicalize_file_name.
13432         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
13433
13434 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
13435
13436         * gnulib-tool (func_import): Fix typo in actioncmd.
13437
13438 2006-11-02  Bruno Haible  <bruno@clisp.org>
13439
13440         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
13441         newline sequence in the Makefile.am snippet as a space, like "make"
13442         does.
13443         Reported by Roger Persson <perrog@gmail.com>.
13444
13445 2006-11-01  Bruno Haible  <bruno@clisp.org>
13446
13447         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
13448         already declared in <string.h>.
13449         * lib/strcase.h (strncasecmp): Don't declare it if yes.
13450
13451 2006-11-01  Bruno Haible  <bruno@clisp.org>
13452
13453         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
13454         * lib/strcase.h: Include <string.h>.
13455         (strcasecmp): Define to rpl_strcasecmp here.
13456
13457 2006-11-01  Bruno Haible  <bruno@clisp.org>
13458
13459         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
13460
13461 2006-11-01  Eric Blake  <ebb9@byu.net>
13462
13463         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
13464
13465         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
13466
13467 2006-10-29  Bruno Haible  <bruno@clisp.org>
13468
13469         Make it compile in C++ mode.
13470         * lib/full-write.c (full_rw): Add a cast.
13471
13472 2006-11-01  Bruno Haible  <bruno@clisp.org>
13473
13474         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
13475         be POSIX compliant.
13476         Reported by Roger Persson <perrog@gmail.com>.
13477
13478 2006-11-01  Eric Blake  <ebb9@byu.net>
13479
13480         * lib/getopt_.h: Fix comments.
13481
13482 2006-10-31  Eric Blake  <ebb9@byu.net>
13483
13484         * modules/tmpdir (Depends-on): Add sys_stat.
13485         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
13486         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
13487         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
13488         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
13489         tempname.
13490
13491 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
13492
13493         Avoid some C++ diagnostics reported by Bruno Haible.
13494         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
13495         xmalloc.
13496         (quotearg_alloc): Use xcharalloc rather than xmalloc.
13497         (struct slotvec): Move to top level.
13498         (quotearg_n_options): Rewrite to avoid xmalloc.
13499         * lib/xalloc.h (xcharalloc): New function.
13500         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
13501         [defined __cplusplus]: Add function template that provides result
13502         type propagation.  This part of the change is from Bruno Haible.
13503
13504 2006-10-29  Bruno Haible  <bruno@clisp.org>
13505
13506         Make it compile in C++ mode.
13507         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
13508         * lib/strnlen1.c (strnlen1): Cast memchr result.
13509         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
13510         * lib/clean-temp.c (string_equals, string_hash): Add casts.
13511         (create_temp_dir): Rename local variable 'template'.
13512         (compile_csharp_using_sscli): Add cast.
13513         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
13514         * lib/findprog.c (find_in_path): Likewise.
13515         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
13516         * lib/wait-process.c (register_slave_subprocess): Likewise.
13517
13518 2006-10-22  Bruno Haible  <bruno@clisp.org>
13519
13520         * modules/tsearch: New file.
13521         * lib/tsearch.h: New file.
13522         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
13523         * m4/tsearch.m4: New file.
13524         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
13525
13526 2006-10-29  Eric Blake  <ebb9@byu.net>
13527
13528         * lib/arcfour.c: Assume config.h.
13529         * lib/arctwo.c: Likewise.
13530         * lib/base64.c: Likewise.
13531         * lib/check-version.c: Likewise.
13532         * lib/crc.c: Likewise.
13533         * lib/des.c: Likewise.
13534         * lib/gc-gnulib.c: Likewise.
13535         * lib/gc-libgcrypt.c: Likewise.
13536         * lib/gc-pbkdf2-sha1.c: Likewise.
13537         * lib/getaddrinfo.c: Likewise.
13538         * lib/getdelim.c: Likewise.
13539         * lib/getline.c: Likewise.
13540         * lib/hmac-md5.c: Likewise.
13541         * lib/hmac-sha1.c: Likewise.
13542         * lib/iconvme.c: Likewise.
13543         * lib/md2.c: Likewise.
13544         * lib/md4.c: Likewise.
13545         * lib/memxor.c: Likewise.
13546         * lib/read-file.c: Likewise.
13547         * lib/readline.c: Likewise.
13548         * lib/rijndael-alg-fst.c: Likewise.
13549         * lib/rijndael-api-fst.c: Likewise.
13550         * lib/xgetdomainname.c: Likewise.
13551
13552 2006-10-28  Eric Blake  <ebb9@byu.net>
13553
13554         * lib/xstrndup.c: Assume config.h.
13555
13556 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
13557
13558         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
13559         stat-macros.h is now for our own macros, whereas stat_h is for
13560         macros in the <sys/stat.h> name space.
13561         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
13562         (STAT_MACROS_H): Remove.
13563         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
13564         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
13565         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
13566         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
13567         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
13568         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
13569         Move these macros to ...
13570         * lib/stat_.h: here.  Don't include stat-macros.h.
13571         * lib/canonicalize.c: Don't include stat-macros.h.
13572         * lib/chown.c: Likewise.
13573         * lib/euidaccess.c: Likewise.
13574         * lib/file-type.c: Likewise.
13575         * lib/filemode.c: Likewise.
13576         * lib/glob.c: Likewise.
13577         * lib/isapipe.c: Likewise.
13578         * lib/lchown.c: Likewise.
13579         * lib/lstat.c: Likewise.
13580         * lib/mkdir-p.c: Likewise.
13581         * lib/rmdir.c: Likewise.
13582         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
13583         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
13584         unless mkdir isn't declared, to speed up 'configure'.
13585         Always create sys/stat.h, since it's unlikely any real sys/stat.h
13586         would define all the S_* symbols.
13587         * modules/canonicalize (Depends-on):
13588         Depend on sys_stat, not stat-macros.
13589         * modules/chown: Likewise.
13590         * modules/euidaccess: Likewise.
13591         * modules/filemode: Likewise.
13592         * modules/file-type: Likewise.
13593         * modules/glob: Likewise.
13594         * modules/isapipe: Likewise.
13595         * modules/lchown: Likewise.
13596         * modules/lstat: Likewise.
13597         * modules/mkancesdirs: Likewise.
13598         * modules/rmdir: Likewise.
13599         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
13600         * modules/modechange: Likewise.
13601         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
13602         (configure.ac): Remove gl_STAT_MACROS.
13603         * modules/sys_stat (Depends-on): Remove stat-macros.
13604
13605 2006-10-27  Bruno Haible  <bruno@clisp.org>
13606
13607         * m4/signed.m4: Remove file.
13608         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
13609         invocation.
13610         * modules/vasnprintf (Files): Remove m4/signed.m4.
13611
13612 2006-10-27  Bruno Haible  <bruno@clisp.org>
13613
13614         Update to GNU gettext 0.16.
13615         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
13616         m4/inttypes-h.m4, m4/signed.m4.
13617         * m4/gettext.m4: Update to GNU gettext 0.16.
13618         * m4/intl.m4: New file, from GNU gettext.
13619         * m4/intldir.m4: New file, from GNU gettext.
13620         * config/srclist.txt: Update
13621
13622 2006-10-27  Eric Blake  <ebb9@byu.net>
13623
13624         * MODULES.html.sh: Document tempname.
13625         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
13626         dependencies.
13627         (Files): Move lib/tempname.c...
13628         * modules/tempname: ...to this new module.
13629         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
13630         (gl_PREREQ_TEMPNAME): Move...
13631         * m4/tempname.m4: ...to this new file.
13632         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
13633         * modules/sys_stat (Depends-on): Add stat-macros.
13634         * lib/stat_.h (includes): Pick up stat macros.
13635         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
13636         if stat macros are broken.
13637         * lib/tempname.c (includes): No need to include "stat-macros.h".
13638         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
13639         (direxists, __path_search) [!_LIBC]: Don't compile these in
13640         gnulib; the tmpdir module covers that.
13641         * lib/tempname.h: New file.
13642
13643 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
13644
13645         * COPYING: Explain how gnulib-tool converts licence headers.
13646         Almost all wording by Eric Blake.
13647
13648 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
13649
13650         * lib/mbchar.h (is_basic_table): Make read-only.
13651         * lib/mbchar.c (is_basic_table): Likewise.
13652         Reported by John Darrington.
13653
13654 2006-10-25  Bruno Haible  <bruno@clisp.org>
13655
13656         * lib/progname.h (set_program_name): Undefine before defining.
13657
13658 2006-10-25  Bruno Haible  <bruno@clisp.org>
13659
13660         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
13661         false for non-gcc C++ compilers.
13662         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
13663
13664 2006-10-24  Bruno Haible  <bruno@clisp.org>
13665
13666         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
13667         iconv implementations like Irix iconv.
13668
13669 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
13670
13671         * modules/vararrays: New file.
13672         * m4/vararrays.m4: New file, taken from diffutils.
13673         * MODULES.html.sh: New module vararrays.
13674
13675 2006-10-24  Karl Berry  <karl@gnu.org>
13676
13677         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
13678         Don't call GNU Unix.
13679
13680 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13681
13682         * users.txt: Add Libtool.
13683
13684         Sync from Libtool:
13685
13686         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
13687
13688         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
13689         to gnulib's policy of including config.h unconditionally.
13690
13691 2006-10-24  Bruno Haible  <bruno@clisp.org>
13692
13693         * modules/wcwidth (Files): Add m4/wint_t.m4.
13694         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
13695         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
13696
13697 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
13698
13699         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
13700         to pacify GCC with some -W flags enabled.  Problem reported by
13701         Bruno Haible.
13702
13703 2006-10-24  Jim Meyering  <jim@meyering.net>
13704
13705         * MODULES.html.sh: Remove uinttostr.  It's not a module.
13706         Reported by Karl Berry.
13707
13708 2006-10-23  Bruno Haible  <bruno@clisp.org>
13709
13710         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
13711
13712 2006-10-24  Bruno Haible  <bruno@clisp.org>
13713
13714         * lib/gl_list.h: Use C comment style, not C++ comment style.
13715
13716 2006-10-23  Eric Blake  <ebb9@byu.net>
13717
13718         * lib/getaddrinfo.c (includes): Add missing include.
13719
13720 2006-10-23  Bruno Haible  <bruno@clisp.org>
13721             Paul Eggert  <eggert@cs.ucla.edu>
13722
13723         Ability to rename obstack_free.
13724         * lib/obstack.h (__obstack_free): New macro. Declare instead of
13725         obstack_free.
13726         (obstack_free): Invoke the __obstack_free macro.
13727         * lib/obstack.c (obstack_free): Use __obstack_free macro.
13728
13729 2006-10-23  Bruno Haible  <bruno@clisp.org>
13730             Paul Eggert  <eggert@cs.ucla.edu>
13731
13732         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
13733         __argc, __argv from the declaration. (They are defined as macros on
13734         mingw.)
13735
13736 2006-10-22  Bruno Haible  <bruno@clisp.org>
13737
13738         * doc/gnulib-intro.texi: New file.
13739         * doc/gnulib.texi: Include it.
13740
13741 2006-10-21  Bruno Haible  <bruno@clisp.org>
13742
13743         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
13744         "Introduction", "Miscellanous Notes", "Particular Modules".
13745
13746 2006-10-21  Bruno Haible  <bruno@clisp.org>
13747
13748         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13749         Change mostlyclean-local rule to avoid sh syntax error from bash
13750         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
13751
13752 2006-10-23  Jim Meyering  <jim@meyering.net>
13753
13754         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
13755         in place of snprintf.
13756
13757         * modules/inttostr (Files): Add lib/uinttostr.c.
13758         * lib/uinttostr.c (inttostr): New file/function.
13759         * lib/inttostr.h (uinttostr): Declare.
13760         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
13761         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
13762         Add uinttostr.
13763         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
13764
13765 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
13766
13767         * lib/canonicalize.c (ELOOP): Define if not already defined.
13768         Problem reported by Bruno Haible in
13769         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
13770
13771 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
13772
13773         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
13774         Problem reported by Perry Smith and Ville Laurikari.
13775
13776         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
13777         uses.
13778
13779 2006-10-19  Bruno Haible  <bruno@clisp.org>
13780
13781         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
13782         for mingw.
13783
13784 2006-10-19  Bruno Haible  <bruno@clisp.org>
13785
13786         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
13787         Needed for mingw.
13788
13789 2006-10-19  Bruno Haible  <bruno@clisp.org>
13790
13791         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
13792
13793 2006-10-19  Bruno Haible  <bruno@clisp.org>
13794
13795         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
13796         it.
13797
13798 2006-10-19  Bruno Haible  <bruno@clisp.org>
13799
13800         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
13801         invocation.
13802
13803 2006-10-19  Bruno Haible  <bruno@clisp.org>
13804
13805         * gnulib-tool (func_create_testdir): Don't include ftruncate and
13806         mountlist by default.
13807
13808 2006-10-16  Bruno Haible  <bruno@clisp.org>
13809
13810         * lib/c-strstr.c: Include c-strstr.h.
13811
13812 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
13813
13814         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
13815         in a slash.
13816
13817 2006-10-18  Bruno Haible  <bruno@clisp.org>
13818
13819         * lib/lock.h [C++]: Wrap definitions in extern "C".
13820
13821 2006-10-18  Bruno Haible  <bruno@clisp.org>
13822
13823         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
13824         gl_LIBOBJS list.
13825
13826 2006-10-18  Bruno Haible  <bruno@clisp.org>
13827
13828         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
13829
13830 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
13831
13832         * lib/xstrtol.h: Include gettext.h.
13833         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
13834         Problem reported by Eric Blake.
13835         * modules/xstrtol (Depends-on): Add gettext-h.
13836
13837 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
13838
13839         * lib/strftime.c (advance): New macro.
13840         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
13841         incomplete type, so you can't add 0 to it.  Problem and patch
13842         reported by Eelco Dolstra for dietlibc.
13843
13844 2006-10-18  Jim Meyering  <jim@meyering.net>
13845
13846         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
13847         type for a local, and rename it: s/up/user_proc/.
13848
13849 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
13850
13851         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
13852         READ_UTMP_USER_PROCESS.
13853         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
13854
13855 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
13856
13857         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
13858         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
13859
13860 2006-10-17  Eric Blake  <ebb9@byu.net>
13861
13862         * lib/sigprocmask.c (sigprocmask): Fix typo.
13863
13864         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
13865
13866         * modules/clean-temp (Makefile.am): Don't add to make output...
13867         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
13868         config.h.
13869
13870 2006-10-17  Bruno Haible  <bruno@clisp.org>
13871
13872         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
13873         differently if DEFAULT_TEXT_DOMAIN is set.
13874
13875 2006-10-16  Bruno Haible  <bruno@clisp.org>
13876
13877         * lib/clean-temp.c: Include fwriteerror.h.
13878
13879 2006-10-16  Bruno Haible  <bruno@clisp.org>
13880
13881         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
13882
13883 2006-10-16  Bruno Haible  <bruno@clisp.org>
13884
13885         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
13886         * lib/sigprocmask.h: Include <sys/types.h>.
13887         (sigset_t): Use the system's definition if present.
13888
13889 2006-10-17  Eric Blake  <ebb9@byu.net>
13890
13891         * lib/xvasprintf.c (includes): Assume config.h.
13892         * lib/xasprintf.c (includes): Likewise.
13893
13894 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
13895
13896         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
13897         at least as wide as intmax_t.
13898
13899 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
13900
13901         (Imported from Automake.)
13902         * build-aux/gnupload: Update to version 1.1 of directive file.
13903
13904 2006-10-16  Eric Blake  <ebb9@byu.net>
13905
13906         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
13907         match Automake 1.10a.
13908
13909 2006-10-14  Bruno Haible  <bruno@clisp.org>
13910
13911         * modules/sigprocmask: New file.
13912         * lib/sigprocmask.h: New file.
13913         * lib/sigprocmask.c: New file.
13914         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
13915         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
13916         request sigprocmask.o.
13917         (gl_PREREQ_SIGPROCMASK): New macro.
13918         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
13919         (Depends-on): Add sigprocmask.
13920         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
13921         gt_SIGNALBLOCKING. Test for 'raise' only once.
13922         * lib/fatal-signal.c: Include sigprocmask.h.
13923         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
13924         unblock_fatal_signals): Define always.
13925         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
13926         sigprocmask.
13927
13928 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
13929
13930         Sync from Automake.
13931         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
13932         which incorrectly sets the mode of an existing destination
13933         directory.  In some cases the unpatched install-sh could do the
13934         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
13935         system.  We hope this is rare in practice, but it's clearly worth
13936         fixing.  Problem reported by Alex Unleashed in
13937         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
13938         Also, don't bother to check for -m bugs unless we're using -m;
13939         suggested by Stepan Kasal.
13940
13941 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13942
13943         Sync from Automake.
13944         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
13945         `-c' flag, so they appear at the same position as in %FASTDEP%
13946         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
13947         which ignores unknown options only after the first non-option.
13948         Bug report against M4 by Nelson H. F. Beebe.
13949
13950 2006-10-13  Jim Meyering  <jim@meyering.net>
13951
13952         Fix a bug in yesterday's change.
13953         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
13954         p->fts_statp->st_dev would be used uninitialized.
13955         Ensures that we always call fts_stat on the very first entry.
13956         Miklos Szeredi reported that find -xdev stopped working.
13957
13958 2006-10-12  Bruno Haible  <bruno@clisp.org>
13959
13960         * gnulib-tool (func_get_automake_snippet): Append an automatically
13961         computed EXTRA_DIST augmentation.
13962         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
13963         * modules/alloca-opt (Makefile.am): Likewise.
13964         * modules/allocsa (Makefile.am): Likewise.
13965         * modules/arcfour (Makefile.am): Likewise.
13966         * modules/arctwo (Makefile.am): Likewise.
13967         * modules/argmatch (Makefile.am): Likewise.
13968         * modules/argz (Makefile.am): Likewise.
13969         * modules/atexit (Makefile.am): Likewise.
13970         * modules/backupfile (Makefile.am): Likewise.
13971         * modules/byteswap (Makefile.am): Likewise.
13972         * modules/c-strtod (Makefile.am): Likewise.
13973         * modules/c-strtold (Makefile.am): Likewise.
13974         * modules/calloc (Makefile.am): Likewise.
13975         * modules/canon-host (Makefile.am): Likewise.
13976         * modules/canonicalize (Makefile.am): Likewise.
13977         * modules/chdir-long (Makefile.am): Likewise.
13978         * modules/chdir-safer (Makefile.am): Likewise.
13979         * modules/check-version (Makefile.am): Likewise.
13980         * modules/chown (Makefile.am): Likewise.
13981         * modules/cloexec (Makefile.am): Likewise.
13982         * modules/close-stream (Makefile.am): Likewise.
13983         * modules/closeout (Makefile.am): Likewise.
13984         * modules/crc (Makefile.am): Likewise.
13985         * modules/csharpexec (Makefile.am): Likewise.
13986         * modules/cycle-check (Makefile.am): Likewise.
13987         * modules/des (Makefile.am): Likewise.
13988         * modules/dev-ino (Makefile.am): Likewise.
13989         * modules/dirfd (Makefile.am): Likewise.
13990         * modules/dirname (Makefile.am): Likewise.
13991         * modules/dup2 (Makefile.am): Likewise.
13992         * modules/eealloc (Makefile.am): Likewise.
13993         * modules/error (Makefile.am): Likewise.
13994         * modules/euidaccess (Makefile.am): Likewise.
13995         * modules/exclude (Makefile.am): Likewise.
13996         * modules/exitfail (Makefile.am): Likewise.
13997         * modules/fcntl-safer (Makefile.am): Likewise.
13998         * modules/fcntl (Makefile.am): Likewise.
13999         * modules/file-type (Makefile.am): Likewise.
14000         * modules/fileblocks (Makefile.am): Likewise.
14001         * modules/filemode (Makefile.am): Likewise.
14002         * modules/filenamecat (Makefile.am): Likewise.
14003         * modules/fnmatch (Makefile.am): Likewise.
14004         * modules/fopen-safer (Makefile.am): Likewise.
14005         * modules/fpending (Makefile.am): Likewise.
14006         * modules/fprintftime (Makefile.am): Likewise.
14007         * modules/free (Makefile.am): Likewise.
14008         * modules/fsusage (Makefile.am): Likewise.
14009         * modules/ftruncate (Makefile.am): Likewise.
14010         * modules/fts (Makefile.am): Likewise.
14011         * modules/gc-arcfour (Makefile.am): Likewise.
14012         * modules/gc-des (Makefile.am): Likewise.
14013         * modules/gc-hmac-md5 (Makefile.am): Likewise.
14014         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
14015         * modules/gc-md4 (Makefile.am): Likewise.
14016         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
14017         * modules/gc-sha1 (Makefile.am): Likewise.
14018         * modules/gc (Makefile.am): Likewise.
14019         * modules/getaddrinfo (Makefile.am): Likewise.
14020         * modules/getcwd (Makefile.am): Likewise.
14021         * modules/getdelim (Makefile.am): Likewise.
14022         * modules/getdomainname (Makefile.am): Likewise.
14023         * modules/getgroups (Makefile.am): Likewise.
14024         * modules/gethostname (Makefile.am): Likewise.
14025         * modules/gethrxtime (Makefile.am): Likewise.
14026         * modules/getline (Makefile.am): Likewise.
14027         * modules/getloadavg (Makefile.am): Likewise.
14028         * modules/getlogin_r (Makefile.am): Likewise.
14029         * modules/getndelim2 (Makefile.am): Likewise.
14030         * modules/getopt (Makefile.am): Likewise.
14031         * modules/getpagesize (Makefile.am): Likewise.
14032         * modules/getpass-gnu (Makefile.am): Likewise.
14033         * modules/getpass (Makefile.am): Likewise.
14034         * modules/getsubopt (Makefile.am): Likewise.
14035         * modules/gettime (Makefile.am): Likewise.
14036         * modules/gettimeofday (Makefile.am): Likewise.
14037         * modules/getugroups (Makefile.am): Likewise.
14038         * modules/getusershell (Makefile.am): Likewise.
14039         * modules/glob (Makefile.am): Likewise.
14040         * modules/group-member (Makefile.am): Likewise.
14041         * modules/hard-locale (Makefile.am): Likewise.
14042         * modules/hash (Makefile.am): Likewise.
14043         * modules/hmac-md5 (Makefile.am): Likewise.
14044         * modules/hmac-sha1 (Makefile.am): Likewise.
14045         * modules/human (Makefile.am): Likewise.
14046         * modules/idcache (Makefile.am): Likewise.
14047         * modules/imaxabs (Makefile.am): Likewise.
14048         * modules/imaxdiv (Makefile.am): Likewise.
14049         * modules/inet_ntop (Makefile.am): Likewise.
14050         * modules/inet_pton (Makefile.am): Likewise.
14051         * modules/intprops (Makefile.am): Likewise.
14052         * modules/inttostr (Makefile.am): Likewise.
14053         * modules/inttypes (Makefile.am): Likewise.
14054         * modules/isapipe (Makefile.am): Likewise.
14055         * modules/javaversion (Makefile.am): Likewise.
14056         * modules/lchmod (Makefile.am): Likewise.
14057         * modules/lchown (Makefile.am): Likewise.
14058         * modules/localcharset (Makefile.am): Likewise.
14059         * modules/long-options (Makefile.am): Likewise.
14060         * modules/lstat (Makefile.am): Likewise.
14061         * modules/malloc (Makefile.am): Likewise.
14062         * modules/mathl (Makefile.am): Likewise.
14063         * modules/mbchar (Makefile.am): Likewise.
14064         * modules/md2 (Makefile.am): Likewise.
14065         * modules/md4 (Makefile.am): Likewise.
14066         * modules/md5 (Makefile.am): Likewise.
14067         * modules/memcasecmp (Makefile.am): Likewise.
14068         * modules/memchr (Makefile.am): Likewise.
14069         * modules/memcmp (Makefile.am): Likewise.
14070         * modules/memcoll (Makefile.am): Likewise.
14071         * modules/memcpy (Makefile.am): Likewise.
14072         * modules/memmem (Makefile.am): Likewise.
14073         * modules/memmove (Makefile.am): Likewise.
14074         * modules/mempcpy (Makefile.am): Likewise.
14075         * modules/memrchr (Makefile.am): Likewise.
14076         * modules/memset (Makefile.am): Likewise.
14077         * modules/memxor (Makefile.am): Likewise.
14078         * modules/mkancesdirs (Makefile.am): Likewise.
14079         * modules/mkdir-p (Makefile.am): Likewise.
14080         * modules/mkdir (Makefile.am): Likewise.
14081         * modules/mkdtemp (Makefile.am): Likewise.
14082         * modules/mkstemp (Makefile.am): Likewise.
14083         * modules/mktime (Makefile.am): Likewise.
14084         * modules/modechange (Makefile.am): Likewise.
14085         * modules/mountlist (Makefile.am): Likewise.
14086         * modules/nanosleep (Makefile.am): Likewise.
14087         * modules/obstack (Makefile.am): Likewise.
14088         * modules/openat (Makefile.am): Likewise.
14089         * modules/pagealign_alloc (Makefile.am): Likewise.
14090         * modules/pathmax (Makefile.am): Likewise.
14091         * modules/physmem (Makefile.am): Likewise.
14092         * modules/poll (Makefile.am): Likewise.
14093         * modules/posixtm (Makefile.am): Likewise.
14094         * modules/posixver (Makefile.am): Likewise.
14095         * modules/putenv (Makefile.am): Likewise.
14096         * modules/quote (Makefile.am): Likewise.
14097         * modules/quotearg (Makefile.am): Likewise.
14098         * modules/raise (Makefile.am): Likewise.
14099         * modules/read-file (Makefile.am): Likewise.
14100         * modules/readline (Makefile.am): Likewise.
14101         * modules/readlink (Makefile.am): Likewise.
14102         * modules/readtokens (Makefile.am): Likewise.
14103         * modules/readutmp (Makefile.am): Likewise.
14104         * modules/realloc (Makefile.am): Likewise.
14105         * modules/regex (Makefile.am): Likewise.
14106         * modules/rename-dest-slash (Makefile.am): Likewise.
14107         * modules/rename (Makefile.am): Likewise.
14108         * modules/rijndael (Makefile.am): Likewise.
14109         * modules/rmdir (Makefile.am): Likewise.
14110         * modules/rpmatch (Makefile.am): Likewise.
14111         * modules/safe-read (Makefile.am): Likewise.
14112         * modules/safe-write (Makefile.am): Likewise.
14113         * modules/same-inode (Makefile.am): Likewise.
14114         * modules/same (Makefile.am): Likewise.
14115         * modules/save-cwd (Makefile.am): Likewise.
14116         * modules/savedir (Makefile.am): Likewise.
14117         * modules/setenv (Makefile.am): Likewise.
14118         * modules/settime (Makefile.am): Likewise.
14119         * modules/sha1 (Makefile.am): Likewise.
14120         * modules/sig2str (Makefile.am): Likewise.
14121         * modules/snprintf (Makefile.am): Likewise.
14122         * modules/stat-macros (Makefile.am): Likewise.
14123         * modules/stat-time (Makefile.am): Likewise.
14124         * modules/stdbool (Makefile.am): Likewise.
14125         * modules/stdint (Makefile.am): Likewise.
14126         * modules/stdlib-safer (Makefile.am): Likewise.
14127         * modules/stpcpy (Makefile.am): Likewise.
14128         * modules/stpncpy (Makefile.am): Likewise.
14129         * modules/strcase (Makefile.am): Likewise.
14130         * modules/strcasestr (Makefile.am): Likewise.
14131         * modules/strchrnul (Makefile.am): Likewise.
14132         * modules/strcspn (Makefile.am): Likewise.
14133         * modules/strdup (Makefile.am): Likewise.
14134         * modules/strerror (Makefile.am): Likewise.
14135         * modules/strftime (Makefile.am): Likewise.
14136         * modules/strndup (Makefile.am): Likewise.
14137         * modules/strnlen (Makefile.am): Likewise.
14138         * modules/strpbrk (Makefile.am): Likewise.
14139         * modules/strsep (Makefile.am): Likewise.
14140         * modules/strstr (Makefile.am): Likewise.
14141         * modules/strtod (Makefile.am): Likewise.
14142         * modules/strtoimax (Makefile.am): Likewise.
14143         * modules/strtok_r (Makefile.am): Likewise.
14144         * modules/strtol (Makefile.am): Likewise.
14145         * modules/strtoll (Makefile.am): Likewise.
14146         * modules/strtoul (Makefile.am): Likewise.
14147         * modules/strtoull (Makefile.am): Likewise.
14148         * modules/strtoumax (Makefile.am): Likewise.
14149         * modules/strverscmp (Makefile.am): Likewise.
14150         * modules/sys_socket (Makefile.am): Likewise.
14151         * modules/sys_stat (Makefile.am): Likewise.
14152         * modules/sysexits (Makefile.am): Likewise.
14153         * modules/time_r (Makefile.am): Likewise.
14154         * modules/timegm (Makefile.am): Likewise.
14155         * modules/timespec (Makefile.am): Likewise.
14156         * modules/tmpfile-safer (Makefile.am): Likewise.
14157         * modules/trim (Makefile.am): Likewise.
14158         * modules/unistd-safer (Makefile.am): Likewise.
14159         * modules/unlinkdir (Makefile.am): Likewise.
14160         * modules/unlocked-io (Makefile.am): Likewise.
14161         * modules/userspec (Makefile.am): Likewise.
14162         * modules/utime (Makefile.am): Likewise.
14163         * modules/utimecmp (Makefile.am): Likewise.
14164         * modules/utimens (Makefile.am): Likewise.
14165         * modules/vasnprintf (Makefile.am): Likewise.
14166         * modules/vasprintf (Makefile.am): Likewise.
14167         * modules/vsnprintf (Makefile.am): Likewise.
14168         * modules/xalloc (Makefile.am): Likewise.
14169         * modules/xgetcwd (Makefile.am): Likewise.
14170         * modules/xnanosleep (Makefile.am): Likewise.
14171         * modules/xreadlink (Makefile.am): Likewise.
14172         * modules/xstrtod (Makefile.am): Likewise.
14173         * modules/xstrtol (Makefile.am): Likewise.
14174         * modules/xstrtold (Makefile.am): Likewise.
14175         * modules/yesno (Makefile.am): Likewise.
14176         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
14177
14178 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
14179
14180         * modules/error (Makefile.am): Distribute files through
14181         EXTRA_DIST, not lib_SOURCES.
14182
14183 2006-10-12  Eric Blake  <ebb9@byu.net>
14184
14185         * modules/error (Makefile.am): Distribute files in /lib.
14186         * modules/obstack (Makefile.am): Likewise.
14187
14188 2006-10-12  Bruno Haible  <bruno@clisp.org>
14189
14190         * modules/acl (Makefile.am): Distribute all files in lib/ through
14191         EXTRA_DIST.
14192         * modules/arcfour (Makefile.am): Likewise.
14193         * modules/arctwo (Makefile.am): Likewise.
14194         * modules/argmatch (Makefile.am): Likewise.
14195         * modules/argz (Makefile.am): Likewise.
14196         * modules/atexit (Makefile.am): Likewise.
14197         * modules/backupfile (Makefile.am): Likewise.
14198         * modules/c-strtod (Makefile.am): Likewise.
14199         * modules/c-strtold (Makefile.am): Likewise.
14200         * modules/calloc (Makefile.am): Likewise.
14201         * modules/canon-host (Makefile.am): Likewise.
14202         * modules/canonicalize (Makefile.am): Likewise.
14203         * modules/chdir-long (Makefile.am): Likewise.
14204         * modules/chdir-safer (Makefile.am): Likewise.
14205         * modules/check-version (Makefile.am): Likewise.
14206         * modules/chown (Makefile.am): Likewise.
14207         * modules/cloexec (Makefile.am): Likewise.
14208         * modules/close-stream (Makefile.am): Likewise.
14209         * modules/closeout (Makefile.am): Likewise.
14210         * modules/crc (Makefile.am): Likewise.
14211         * modules/cycle-check (Makefile.am): Likewise.
14212         * modules/des (Makefile.am): Likewise.
14213         * modules/dirfd (Makefile.am): Likewise.
14214         * modules/dirname (Makefile.am): Likewise.
14215         * modules/dup2 (Makefile.am): Likewise.
14216         * modules/euidaccess (Makefile.am): Likewise.
14217         * modules/exclude (Makefile.am): Likewise.
14218         * modules/exitfail (Makefile.am): Likewise.
14219         * modules/fcntl-safer (Makefile.am): Likewise.
14220         * modules/file-type (Makefile.am): Likewise.
14221         * modules/fileblocks (Makefile.am): Likewise.
14222         * modules/filemode (Makefile.am): Likewise.
14223         * modules/filenamecat (Makefile.am): Likewise.
14224         * modules/fnmatch (Makefile.am): Likewise.
14225         * modules/fopen-safer (Makefile.am): Likewise.
14226         * modules/fpending (Makefile.am): Likewise.
14227         * modules/fprintftime (Makefile.am): Likewise.
14228         * modules/free (Makefile.am): Likewise.
14229         * modules/fsusage (Makefile.am): Likewise.
14230         * modules/ftruncate (Makefile.am): Likewise.
14231         * modules/fts (Makefile.am): Likewise.
14232         * modules/gc (Makefile.am): Likewise.
14233         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
14234         * modules/getaddrinfo (Makefile.am): Likewise.
14235         * modules/getcwd (Makefile.am): Likewise.
14236         * modules/getdelim (Makefile.am): Likewise.
14237         * modules/getdomainname (Makefile.am): Likewise.
14238         * modules/getgroups (Makefile.am): Likewise.
14239         * modules/gethostname (Makefile.am): Likewise.
14240         * modules/gethrxtime (Makefile.am): Likewise.
14241         * modules/getline (Makefile.am): Likewise.
14242         * modules/getloadavg (Makefile.am): Likewise.
14243         * modules/getlogin_r (Makefile.am): Likewise.
14244         * modules/getopt (Makefile.am): Likewise.
14245         * modules/getpass (Makefile.am): Likewise.
14246         * modules/getpass-gnu (Makefile.am): Likewise.
14247         * modules/getsubopt (Makefile.am): Likewise.
14248         * modules/gettime (Makefile.am): Likewise.
14249         * modules/gettimeofday (Makefile.am): Likewise.
14250         * modules/getugroups (Makefile.am): Likewise.
14251         * modules/getusershell (Makefile.am): Likewise.
14252         * modules/glob (Makefile.am): Likewise.
14253         * modules/group-member (Makefile.am): Likewise.
14254         * modules/hard-locale (Makefile.am): Likewise.
14255         * modules/hash (Makefile.am): Likewise.
14256         * modules/hmac-md5 (Makefile.am): Likewise.
14257         * modules/hmac-sha1 (Makefile.am): Likewise.
14258         * modules/human (Makefile.am): Likewise.
14259         * modules/idcache (Makefile.am): Likewise.
14260         * modules/imaxabs (Makefile.am): Likewise.
14261         * modules/imaxdiv (Makefile.am): Likewise.
14262         * modules/inet_ntop (Makefile.am): Likewise.
14263         * modules/inet_pton (Makefile.am): Likewise.
14264         * modules/inttostr (Makefile.am): Likewise.
14265         * modules/isapipe (Makefile.am): Likewise.
14266         * modules/lchown (Makefile.am): Likewise.
14267         * modules/long-options (Makefile.am): Likewise.
14268         * modules/lstat (Makefile.am): Likewise.
14269         * modules/malloc (Makefile.am): Likewise.
14270         * modules/mathl (Makefile.am): Likewise.
14271         * modules/mbchar (Makefile.am): Likewise.
14272         * modules/md2 (Makefile.am): Likewise.
14273         * modules/md4 (Makefile.am): Likewise.
14274         * modules/md5 (Makefile.am): Likewise.
14275         * modules/memcasecmp (Makefile.am): Likewise.
14276         * modules/memchr (Makefile.am): Likewise.
14277         * modules/memcmp (Makefile.am): Likewise.
14278         * modules/memcoll (Makefile.am): Likewise.
14279         * modules/memcpy (Makefile.am): Likewise.
14280         * modules/memmem (Makefile.am): Likewise.
14281         * modules/memmove (Makefile.am): Likewise.
14282         * modules/mempcpy (Makefile.am): Likewise.
14283         * modules/memrchr (Makefile.am): Likewise.
14284         * modules/memset (Makefile.am): Likewise.
14285         * modules/memxor (Makefile.am): Likewise.
14286         * modules/mkancesdirs (Makefile.am): Likewise.
14287         * modules/mkdir (Makefile.am): Likewise.
14288         * modules/mkdir-p (Makefile.am): Likewise.
14289         * modules/mkdtemp (Makefile.am): Likewise.
14290         * modules/mkstemp (Makefile.am): Likewise.
14291         * modules/mktime (Makefile.am): Likewise.
14292         * modules/modechange (Makefile.am): Likewise.
14293         * modules/mountlist (Makefile.am): Likewise.
14294         * modules/nanosleep (Makefile.am): Likewise.
14295         * modules/openat (Makefile.am): Likewise.
14296         * modules/pagealign_alloc (Makefile.am): Likewise.
14297         * modules/physmem (Makefile.am): Likewise.
14298         * modules/poll (Makefile.am): Likewise.
14299         * modules/posixtm (Makefile.am): Likewise.
14300         * modules/posixver (Makefile.am): Likewise.
14301         * modules/putenv (Makefile.am): Likewise.
14302         * modules/quote (Makefile.am): Likewise.
14303         * modules/quotearg (Makefile.am): Likewise.
14304         * modules/raise (Makefile.am): Likewise.
14305         * modules/read-file (Makefile.am): Likewise.
14306         * modules/readline (Makefile.am): Likewise.
14307         * modules/readlink (Makefile.am): Likewise.
14308         * modules/readtokens (Makefile.am): Likewise.
14309         * modules/readutmp (Makefile.am): Likewise.
14310         * modules/realloc (Makefile.am): Likewise.
14311         * modules/regex (Makefile.am): Likewise.
14312         * modules/rename (Makefile.am): Likewise.
14313         * modules/rename-dest-slash (Makefile.am): Likewise.
14314         * modules/rijndael (Makefile.am): Likewise.
14315         * modules/rmdir (Makefile.am): Likewise.
14316         * modules/rpmatch (Makefile.am): Likewise.
14317         * modules/safe-read (Makefile.am): Likewise.
14318         * modules/safe-write (Makefile.am): Likewise.
14319         * modules/same (Makefile.am): Likewise.
14320         * modules/save-cwd (Makefile.am): Likewise.
14321         * modules/savedir (Makefile.am): Likewise.
14322         * modules/setenv (Makefile.am): Likewise.
14323         * modules/settime (Makefile.am): Likewise.
14324         * modules/sha1 (Makefile.am): Likewise.
14325         * modules/sig2str (Makefile.am): Likewise.
14326         * modules/snprintf (Makefile.am): Likewise.
14327         * modules/stdlib-safer (Makefile.am): Likewise.
14328         * modules/stpcpy (Makefile.am): Likewise.
14329         * modules/stpncpy (Makefile.am): Likewise.
14330         * modules/strcase (Makefile.am): Likewise.
14331         * modules/strcasestr (Makefile.am): Likewise.
14332         * modules/strchrnul (Makefile.am): Likewise.
14333         * modules/strcspn (Makefile.am): Likewise.
14334         * modules/strdup (Makefile.am): Likewise.
14335         * modules/strerror (Makefile.am): Likewise.
14336         * modules/strftime (Makefile.am): Likewise.
14337         * modules/strndup (Makefile.am): Likewise.
14338         * modules/strnlen (Makefile.am): Likewise.
14339         * modules/strpbrk (Makefile.am): Likewise.
14340         * modules/strsep (Makefile.am): Likewise.
14341         * modules/strstr (Makefile.am): Likewise.
14342         * modules/strtod (Makefile.am): Likewise.
14343         * modules/strtoimax (Makefile.am): Likewise.
14344         * modules/strtok_r (Makefile.am): Likewise.
14345         * modules/strtol (Makefile.am): Likewise.
14346         * modules/strtoll (Makefile.am): Likewise.
14347         * modules/strtoul (Makefile.am): Likewise.
14348         * modules/strtoull (Makefile.am): Likewise.
14349         * modules/strtoumax (Makefile.am): Likewise.
14350         * modules/strverscmp (Makefile.am): Likewise.
14351         * modules/time_r (Makefile.am): Likewise.
14352         * modules/timegm (Makefile.am): Likewise.
14353         * modules/tmpfile-safer (Makefile.am): Likewise.
14354         * modules/unistd-safer (Makefile.am): Likewise.
14355         * modules/unlinkdir (Makefile.am): Likewise.
14356         * modules/userspec (Makefile.am): Likewise.
14357         * modules/utime (Makefile.am): Likewise.
14358         * modules/utimecmp (Makefile.am): Likewise.
14359         * modules/utimens (Makefile.am): Likewise.
14360         * modules/vasnprintf (Makefile.am): Likewise.
14361         * modules/vasprintf (Makefile.am): Likewise.
14362         * modules/vsnprintf (Makefile.am): Likewise.
14363         * modules/xalloc (Makefile.am): Likewise.
14364         * modules/xgetcwd (Makefile.am): Likewise.
14365         * modules/xnanosleep (Makefile.am): Likewise.
14366         * modules/xreadlink (Makefile.am): Likewise.
14367         * modules/xstrtod (Makefile.am): Likewise.
14368         * modules/xstrtol (Makefile.am): Likewise.
14369         * modules/xstrtold (Makefile.am): Likewise.
14370         * modules/yesno (Makefile.am): Likewise.
14371
14372 2006-10-12  Jim Meyering  <jim@meyering.net>
14373
14374         * m4/getloadavg.m4: Revert the change below.
14375
14376         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
14377         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
14378         fail with a symlink, which is what coreutils' ./bootstrap now
14379         creates by default.
14380
14381 2006-10-12  Bruno Haible  <bruno@clisp.org>
14382
14383         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
14384         mingw.
14385         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
14386         MSVC and mingw explicitly.
14387
14388 2006-10-11  Simon Josefsson  <jas@extundo.com>
14389             Bruno Haible  <bruno@clisp.org>
14390
14391         Add support for multiple gnulib-tool invocations in the scope of a
14392         single configure.ac file.
14393         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
14394         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
14395         with the same contents as the _LIBADD variable.
14396         (func_emit_initmacro_start, func_emit_initmacro_end,
14397         func_emit_initmacro_done): New functions.
14398         (func_import, func_create_testdir): Invoke them. Allow the identifiers
14399         gl_LIBOBJS and gl_LTLIBOBJS.
14400
14401 2006-10-11  Bruno Haible  <bruno@clisp.org>
14402
14403         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
14404         (func_create_testdir): Don't create po/Makefile.am, don't invoke
14405         autoreconf. Instead, invoke autopoint explicitly but move back the
14406         *.m4 files from gnulib.
14407
14408 2006-10-11  Bruno Haible  <bruno@clisp.org>
14409
14410         * gnulib-tool (func_usage): Make module names after --create-testdir
14411         optional.
14412         (func_create_testdir): If no module was specified, use nearly all
14413         modules.
14414
14415 2006-10-12  Jim Meyering  <jim@meyering.net>
14416
14417         Big performance improvement for fts-based tools that use FTS_NOSTAT.
14418         Avoid spurious inode-mismatch problems on non-POSIX file systems.
14419         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
14420         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
14421         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
14422         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
14423         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
14424         (fts_set_stat_required): New function.
14425         (fts_open): Defer the calls to fts_stat, if possible or requested.
14426         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
14427         into fts_stat itself.
14428         (fts_read): Perform any required (deferred) fts_stat call.
14429         (fts_build): Likewise, for the directory we're about to open and read.
14430         In the readdir loop, carefully decide whether each entry will require
14431         an eventual call to fts_stat, using dirent.d_type info if available.
14432         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
14433         a command line argument into this function.  Update all callers.
14434         Map a return value of FTS_DOT to FTS_D for a command line argument.
14435         * modules/fts (Depends-on): Add d-type.  Alphabetize.
14436         Thanks to Miklos Szeredi for his tenacity and for the initial
14437         bug report about "find" failing on a FUSE-based file system.
14438
14439         * lib/fts.c (fts_open): Use consistent indentation.
14440
14441 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
14442
14443         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
14444         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
14445         reported by Jim Meyering.  All uses of cache variables renamed
14446         to match Autoconf's.
14447         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
14448         the other one.
14449
14450         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
14451         Fix misspelling in diagnostic.
14452
14453 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
14454
14455         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
14456         defined.  Problem reported by Matthew Woehlke.
14457
14458         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
14459         Add support for Tandem NonStop R series.
14460         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
14461         Use new macro.
14462
14463         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
14464         (has_trailing_slash): Omit size arg; all callers changed.
14465         Omit 'inline', since it doesn't help performance and we'd
14466         need to configure it.
14467         Don't count //, ///, etc. as having a trailing slash.
14468         As a side effect, this removes a C99ism reported by Matthew Woehlke.
14469         (rpl_rename_dest_slash): On failure, use rename's errno rather
14470         than (in some cases) an incorrect or junk errno.
14471         Simplify code by removing need to compute length; this does
14472         cause it to make two passes instead of one over the file name,
14473         but it's worth it.
14474
14475         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
14476         change, since Autoconf's version may no longer be appropriate now
14477         that we are using CVS Autoconf's version.  Add support for Tandem.
14478
14479 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
14480             Bruno Haible  <bruno@clisp.org>
14481
14482         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
14483         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
14484         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
14485         gl_AC_TYPE_LONG_LONG.
14486
14487         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
14488         instead of HAVE_LONG_LONG.
14489         * lib/printf-args.c (printf_fetchargs): Likewise.
14490         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
14491         * lib/vasnprintf.c (VASNPRINTF): Likewise.
14492         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
14493         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
14494         gl_AC_TYPE_LONG_LONG.
14495
14496 2006-10-11  Bruno Haible  <bruno@clisp.org>
14497
14498         * m4/longlong.m4: Add comments.
14499         * m4/ulonglong.m4: Likewise.
14500
14501 2006-10-10  Bruno Haible  <bruno@clisp.org>
14502
14503         Make it possible to #define stpcpy, strdup to aliases.
14504         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
14505         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
14506
14507 2006-10-10  Bruno Haible  <bruno@clisp.org>
14508
14509         Make it possible to #define gcd to an alias.
14510         * lib/gcd.c: Include config.h.
14511
14512 2006-10-10  Bruno Haible  <bruno@clisp.org>
14513
14514         Make it possible to #define c_isascii to an alias.
14515         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
14516         defined. Undefine the macros before defining them, to avoid gcc
14517         warnings.
14518         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
14519         define NO_C_CTYPE_MACROS early.
14520
14521 2006-10-10  Bruno Haible  <bruno@clisp.org>
14522
14523         Make it possible to #define set_program_name to an alias.
14524         * lib/progname.c: Don't undefine set_program_name; instead, undefine
14525         ENABLE_RELOCATABLE early.
14526
14527 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
14528
14529         Port to Tandem NSK OSS, which has 64-bit signed int but at most
14530         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
14531         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
14532         More generally, don't assume that 64-bit signed int is available
14533         if unsigned int is, and vice versa.
14534         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
14535         unsigned symbols, not on their signed counterparts.
14536         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
14537         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
14538         (UINT64_C, UINTMAX_C):
14539         Likewise.
14540         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
14541         unsigned counterparts.
14542         (Have_long_long, Unsigned): New macros.
14543         (Int): Renamed from INT.
14544         (strtoimax): Use the new macros.
14545         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
14546         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
14547         * modules/inttypes (inttypes.h): Substitute
14548         HAVE_UNSIGNED_LONG_LONG_INT.
14549         * modules/stdint (stdint.h): Likewise.
14550         (Files): Add m4/ulonglong.m4.
14551
14552 2006-10-10  Bruno Haible  <bruno@clisp.org>
14553
14554         Fix a gcc -Wshadow warning.
14555         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
14556         to 'bucket'.
14557         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
14558         gl_linked_indexof_from_to): Likewise.
14559         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
14560         Likewise.
14561         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
14562         Likewise.
14563         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
14564         Reported by Eric Blake.
14565
14566 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
14567
14568         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
14569         for NetBSD.  Problem reported by Bruno Haible.
14570
14571 2006-10-09  Jim Meyering  <jim@meyering.net>
14572
14573         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
14574         Patch from Bruno Haible.
14575
14576 2006-10-09  Jim Meyering  <jim@meyering.net>
14577
14578         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
14579         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
14580         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
14581
14582 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
14583
14584         Don't include <config.h> twice; this doesn't work in some cases,
14585         e.g., when config.h has "#define intmax_t long long int" and
14586         we include <config.h>, <inttypes.h>, <config.h> in that order.
14587         Problem reported by Matthew Woehlke in:
14588         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
14589         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
14590         * lib/fts-cycle.c: Don't include config.h.
14591         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
14592         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
14593         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
14594         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
14595         inttypes.h.
14596         * lib/xstrtoumax.c: Likewise.
14597         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
14598         __strtol and the like, so that this module is more like its siblings.
14599         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
14600         Remove; no longer needed now that we assume gnulib inttypes.h.
14601
14602 2006-10-08  Bruno Haible  <bruno@clisp.org>
14603
14604         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
14605         option.
14606
14607 2006-10-07  Jim Meyering  <jim@meyering.net>
14608
14609         * modules/inttypes (inttypes.h): Revert what seems to have been
14610         an inadvertent part of today's change: use "|", not "/" in the
14611         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
14612
14613 2006-10-07  Bruno Haible  <bruno@clisp.org>
14614
14615         * modules/sublist: New file.
14616
14617 2006-10-07  Bruno Haible  <bruno@clisp.org>
14618
14619         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
14620         * modules/argz (argz.h): Likewise.
14621         * modules/arpa_inet (arpa/inet.h): Likewise.
14622         * modules/byteswap (byteswap.h): Likewise.
14623         * modules/configmake (configmake.h): Likewise.
14624         * modules/fcntl (fcntl.h): Likewise.
14625         * modules/fnmatch (fnmatch.h): Likewise.
14626         * modules/getopt (getopt.h): Likewise.
14627         * modules/glob (glob.h): Likewise.
14628         * modules/inttypes (inttypes.h): Likewise.
14629         * modules/netinet_in (netinet/in.h): Likewise.
14630         * modules/poll (poll.h): Likewise.
14631         * modules/stdbool (stdbool.h): Likewise.
14632         * modules/stdint (stdint.h): Likewise.
14633         * modules/sys_select (sys/select.h): Likewise.
14634         * modules/sys_socket (sys/socket.h): Likewise.
14635         * modules/sys_stat (sys/stat.h): Likewise.
14636         * modules/sysexits (sysexits.h): Likewise.
14637         * modules/unistd (unistd.h): Likewise.
14638         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14639         Add a "DO NOT EDIT" comment to the generated file.
14640         (func_import): Likewise for gnulib-comp.m4.
14641
14642 2006-10-07  Bruno Haible  <bruno@clisp.org>
14643
14644         * lib/gl_sublist.h: New file.
14645         * lib/gl_sublist.c: New file.
14646
14647 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
14648
14649         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
14650         name (relative to the original working directory) and the file
14651         name component (relative to the temporary working directory).  All
14652         callers changed.
14653         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
14654         * lib/mkdir-p.c (make_dir_parents): Likewise.
14655         * lib/mkdir-p.h (make_dir_parents): Likewise.
14656
14657 2006-10-06  Eric Blake  <ebb9@byu.net>
14658
14659         Define several macros for use by the clean-temp module.
14660         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
14661         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
14662         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
14663
14664         * lib/clean-temp.h (close_stream_temp): New declaration.
14665         * lib/clean-temp.c (includes): Pull in headers according to what
14666         other modules are in use.
14667         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
14668
14669 2006-10-06  Bruno Haible  <bruno@clisp.org>
14670
14671         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
14672         instead of fopen, fwriteerror.
14673
14674 2006-10-06  Bruno Haible  <bruno@clisp.org>
14675
14676         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
14677         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
14678         int.
14679         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
14680         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
14681         Return an error indicator.
14682         Suggested by Eric Blake.
14683
14684 2006-10-06  Bruno Haible  <bruno@clisp.org>
14685
14686         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
14687         Reported by Eric Blake.
14688
14689 2006-10-06  Bruno Haible  <bruno@clisp.org>
14690
14691         * modules/closeout (Description): Mention stderr too.
14692
14693 2006-10-06  Bruno Haible  <bruno@clisp.org>
14694         and Paul Eggert  <eggert@cs.ucla.edu>
14695
14696         * lib/closeout.c (close_stdout): Also close stderr.
14697         * lib/closeout.h: Update comment.
14698
14699 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
14700
14701         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
14702         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
14703         * lib/dirchownmod.c: Include lchown.h.
14704         * lib/lchown.c: Don't include files that lchown.h now includes.
14705         Don't declare chown, since lchown.h now does that.
14706         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
14707         (lchown): Define to rpl_chown if lchown is declared but
14708         does not exist.  Declare using a prototype if lchown is not
14709         declared.  Add a copyright notice.
14710         * lib/mkstemp.h: Include <unistd.h>.
14711         * lib/openat.c: Include lchown.h.
14712
14713         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
14714         we now test for that separately.
14715         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
14716         rather than O_NOFOLLOW, when testing whether it's possible to
14717         avoid a race condition reliably.
14718         * lib/savewd.c (savewd_chdir): Likewise.
14719
14720         Remove macros that are no longer needed now that stdint.h is
14721         reliable.
14722         * lib/fsusage.c (UINTMAX_MAX): Remove.
14723         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
14724         * lib/utimecmp.c (SIZE_MAX): Remove.
14725
14726         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
14727
14728         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
14729         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
14730         O_NOATIME works.
14731
14732 2006-10-05  Bruno Haible  <bruno@clisp.org>
14733
14734         * lib/gl_list.h (gl_sortedlist_search_from_to,
14735         gl_sortedlist_indexof_from_to): New declarations.
14736         (gl_list_implementation): New fields sortedlist_search_from_to,
14737         sortedlist_indexof_from_to.
14738         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
14739         inline functions.
14740         * lib/gl_list.c (gl_sortedlist_search_from_to,
14741         gl_sortedlist_indexof_from_to): New functions.
14742         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
14743         function.
14744         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
14745         (gl_array_sortedlist_search_from_to): New function.
14746         (gl_array_list_implementation): Update.
14747         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
14748         function.
14749         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
14750         (gl_carray_sortedlist_search_from_to): New function.
14751         (gl_carray_list_implementation): Update.
14752         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
14753         gl_linked_sortedlist_indexof_from_to): New functions.
14754         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
14755         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
14756         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
14757         gl_tree_sortedlist_indexof_from_to): New functions.
14758         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
14759         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
14760         Update.
14761         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
14762         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
14763         Update.
14764
14765 2006-10-05  Bruno Haible  <bruno@clisp.org>
14766
14767         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
14768         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
14769         (struct gl_list_implementation): Add fields search_from_to,
14770         indexof_from_to. Remove fields search, indexof.
14771         (gl_list_search): Use the search_from_to method.
14772         (gl_list_search_from, gl_list_search_from_to): New functions.
14773         (gl_list_indexof): Use the indexof_from_to method.
14774         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
14775         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
14776         (gl_list_search_from, gl_list_search_from_to): New functions.
14777         (gl_list_indexof): Use the indexof_from_to method.
14778         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
14779         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
14780         gl_array_indexof. Add start_index, end_index arguments.
14781         (gl_array_search_from_to): Renamed from gl_array_search. Add
14782         start_index, end_index arguments.
14783         (gl_array_remove, gl_array_list_implementation): Update.
14784         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
14785         gl_carray_indexof. Add start_index, end_index arguments.
14786         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
14787         start_index, end_index arguments.
14788         (gl_carray_remove, gl_carray_list_implementation): Update.
14789         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
14790         gl_linked_search. Add start_index, end_index arguments.
14791         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
14792         start_index, end_index arguments.
14793         (gl_linked_remove): Update.
14794         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
14795         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
14796         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
14797         field to 'size_t'.
14798         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
14799         gl_tree_search. Add start_index, end_index arguments.
14800         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
14801         start_index, end_index arguments.
14802         (gl_tree_remove): Update.
14803         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
14804         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
14805         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
14806         function.
14807         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
14808         gl_tree_search. Add start_index, end_index arguments.
14809         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
14810         start_index, end_index arguments.
14811         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
14812         Update.
14813         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
14814
14815 2006-10-05  Bruno Haible  <bruno@clisp.org>
14816
14817         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
14818
14819         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
14820         fwriteerror_temp): New declarations.
14821         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
14822         (descriptors): New variable.
14823         (cleanup): First, close the descriptors.
14824         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
14825         fclose_temp, fwriteerror_temp): New functions.
14826
14827 2006-10-04  Jim Meyering  <jim@meyering.net>
14828
14829         * lib/fts.c (fts_open): Tiny comment change.
14830
14831 2006-10-04  Bruno Haible  <bruno@clisp.org>
14832
14833         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
14834         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
14835         gl_LOCK_BODY.
14836         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
14837         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
14838         gl_LOCK_EARLY_BODY.
14839         (gl_LOCK): Require gl_LOCK_BODY.
14840
14841 2006-10-04  Bruno Haible  <bruno@clisp.org>
14842
14843         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
14844         (gl_oset_search_atleast): New declaration.
14845         (struct gl_oset_implementation): Add field 'search_atleast'.
14846         (gl_oset_search_atleast): New inline function.
14847         * lib/gl_oset.c (gl_oset_search_atleast): New function.
14848         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
14849         (gl_array_oset_implementation): Update.
14850         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
14851         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
14852         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
14853
14854 2006-10-04  Bruno Haible  <bruno@clisp.org>
14855
14856         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
14857
14858 2006-10-03  Bruno Haible  <bruno@clisp.org>
14859
14860         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
14861         from gl_avltreehash_list_implementation.
14862
14863 2006-10-03  Bruno Haible  <bruno@clisp.org>
14864
14865         * lib/gl_oset.c (gl_oset_add): Fix return type.
14866
14867 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
14868
14869         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
14870
14871 2006-10-02  Eric Blake  <ebb9@byu.net>
14872
14873         * modules/strnlen (Depends-on): Add extensions.
14874
14875 2006-10-02  Eric Blake  <ebb9@byu.net>
14876
14877         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
14878         definition in 2.60+.
14879
14880 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
14881
14882         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
14883         checks.
14884
14885 2006-10-02  Bruno Haible  <bruno@clisp.org>
14886
14887         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
14888         to the AUTOMAKE_OPTIONS.
14889         Reported by Jim Meyering.
14890
14891 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
14892
14893         Work around bug in Solaris 10 /proc file system:
14894         /proc/self/fd/NNN/.. isn't the parent directory of
14895         the directory whose file descriptor is NNN.  This needs to
14896         be worked around at run time, not compile time, since a
14897         program might be built on Solaris 8, where things work, and
14898         run on Solaris 10.
14899         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
14900         to use the following interface instead:
14901         (OPENAT_BUFFER_SIZE): New macro.
14902         (openat_proc_name): New function.
14903         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
14904         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
14905         Likewise.
14906         * lib/openat-proc.c: New file.
14907         * modules/openat (Files): Add lib/openat-proc.c.
14908         (Depends-on): Add same-inode, stdbool.
14909         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
14910
14911 2006-09-29  Bruno Haible  <bruno@clisp.org>
14912
14913         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
14914         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
14915         argument. Set stdout_closed before testing for ferror, not after.
14916         (fwriteerror, fwriteerror_no_ebadf): New functions.
14917
14918 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14919
14920         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
14921
14922 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
14923
14924         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
14925         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
14926
14927 2006-09-28  Jim Meyering  <jim@meyering.net>
14928
14929         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
14930         Include <unistd.h>.
14931
14932 2006-09-28  Bruno Haible  <bruno@clisp.org>
14933
14934         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
14935         * modules/linkedhash-list (Depends-on): Likewise.
14936         * modules/rbtreehash-list (Depends-on): Likewise.
14937
14938 2006-09-28  Bruno Haible  <bruno@clisp.org>
14939
14940         * lib/strndup.h: Simplify the redefinition of strndup.
14941         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
14942         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
14943
14944 2006-09-28  Bruno Haible  <bruno@clisp.org>
14945
14946         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
14947         * lib/gl_linkedhash_list.c: Likewise.
14948         * lib/gl_rbtreehash_list.c: Likewise.
14949
14950 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
14951
14952         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
14953         getaddrinfo.
14954
14955         * lib/__fpending.h: Don't include <stdio_ext.h> unless
14956         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
14957         it causes <stdio_ext.h> to cause a compile-time error.
14958         Problem reported by Nelson H. F. Beebe.
14959         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
14960         of HAVE_DECL___PENDING.
14961
14962         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
14963         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
14964         declaration.
14965
14966 2006-09-27  Jim Meyering  <jim@meyering.net>
14967
14968         This file could end up with a definition for a function
14969         named __strndup, rather than rpl_strndup on a system with
14970         incomplete weak_alias support.
14971         * lib/strndup.c (strndup): Rename from __strndup.
14972         Remove #defines that used to map __strndup to strndup.
14973         Don't use K&R prototypes.
14974         Remove LIBC-related code, since this file is not sync'd with glibc.
14975         * lib/strndup.h: Revamp, accordingly.
14976         * m4/strndup.m4: Modernize.
14977
14978 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
14979
14980         * modules/savewd (Depends-on): Add 'raise'.
14981         * lib/savewd.c: Include <signal.h>, for 'raise'.
14982
14983 2006-09-26  Jim Meyering  <jim@meyering.net>
14984
14985         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
14986         when we detect Darwin 8.7.0's acl_get_file bug.
14987         Rearrange to perform the new (below) run-test while $LIBS
14988         contains any acl-related library.  Set USE_ACL at the end.
14989         (gl_ACL_GET_FILE): New function.
14990
14991 2006-09-26  Eric Blake  <ebb9@byu.net>
14992
14993         * lib/verror.c: Include <config.h> unconditionally.
14994
14995 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
14996
14997         * modules/clock-time (Maintainer): Add self.
14998         * modules/getlogin_r (Depends-on): Add extensions.
14999
15000 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15001
15002         * modules/clock-time: New module.
15003         * modules/nanosleep (Depends-on): Add clock-time.
15004         * modules/gethrxtime (Depends-on): Likewise.
15005         * modules/gettime (Depends-on): Likewise.
15006         * modules/settime (Depends-on): Likewise.
15007
15008         * modules/fts-lgpl: Depend on openat.
15009         * modules/mkancesdirs: Depend on savewd.
15010         * modules/mkdir-p: Likewise.
15011
15012 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15013
15014         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
15015
15016         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
15017         `gl_have_arbitrary_file_name_length_limit' to
15018         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
15019         actually works between configure runs.
15020
15021 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15022             Bruno Haible  <bruno@clisp.org>
15023
15024         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
15025
15026 2006-09-25  Jim Meyering  <jim@meyering.net>
15027
15028         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
15029         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
15030
15031 2006-09-25  Eric Blake  <ebb9@byu.net>
15032
15033         * gnulib-tool (func_import, func_create_testdir): Fix typos in
15034         exec's in 2006-09-18 patch when shuffling fds.
15035
15036 2006-09-25  Bruno Haible  <bruno@clisp.org>
15037
15038         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
15039         Reported by Jim Meyering.
15040
15041 2006-09-24  Jim Meyering  <jim@meyering.net>
15042
15043         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
15044         compare a pointer against a literal "0".  That caused failures with
15045         at least HP-UX's hpcc.
15046
15047 2006-09-22  Simon Josefsson  <jas@extundo.com>
15048
15049         * modules/gc-sha1:
15050         * modules/gc-md4:
15051         * modules/gc-hmac-sha1:
15052         * modules/gc-hmac-md5:
15053         * modules/gc-des:
15054         * modules/gc-arcfour: Distribute more files.
15055
15056 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15057
15058         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
15059         (gl_linked_iterator_from_to): Initialize struct completely.
15060         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
15061         (gl_tree_iterator_from_to): Likewise
15062         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
15063         * lib/gl_array_list.c [lint] (gl_array_iterator)
15064         (gl_array_iterator_from_to): Likewise.
15065         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
15066         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
15067         (gl_carray_iterator_from_to): Likewise.
15068
15069         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
15070         * lib/md4.c (md4_process_block): Remove unused variable.
15071         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
15072         parentheses for clarity.
15073
15074 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15075
15076         * modules/bison-i18n (Depends-on): Add gettext.
15077
15078 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15079
15080         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
15081         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
15082         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
15083         also add missing comma that caused broken test.
15084         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
15085         stdlib.h, for `abort'.
15086         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
15087         variables.
15088         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
15089         include unistd.h if present, for `rmdir'.
15090         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
15091         variables.
15092         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
15093         in the process include standard headers for prototypes.
15094         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
15095         gets declared on GNU/Linux.
15096         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
15097         unistd.h, for `rmdir'.
15098         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
15099
15100         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
15101         always true.
15102         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
15103
15104         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
15105
15106 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15107
15108         * gnulib-tool (func_version): Create output all at once.  This
15109         may help avoid triggering unnecessary SIGPIPEs, and at any
15110         rate it doesn't hurt.
15111
15112 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15113             Bruno Haible  <bruno@clisp.org>
15114
15115         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
15116         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
15117         * m4/signed.m4 (bh_C_SIGNED): Likewise.
15118
15119         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
15120         (gl_FUNC_VASPRINTF): Invoke it.
15121
15122 2006-09-22  Bruno Haible  <bruno@clisp.org>
15123
15124         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
15125         getloadavg.c as first argument.
15126
15127 2006-09-22  Bruno Haible  <bruno@clisp.org>
15128
15129         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
15130         at the beginning of the gl_INIT macro.
15131         * modules/getloadavg (configure.ac): Pass $gl_source_base to
15132         gl_GETLOADAVG.
15133
15134 2006-09-22  Bruno Haible  <bruno@clisp.org>
15135
15136         * gnulib-tool (func_create_megatestdir): Don't include the config-h
15137         module.
15138         Suggested by Ralf Wildenhues.
15139
15140 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
15141
15142         Import this patch from libc:
15143
15144         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
15145
15146         * lib/regex_internal.c (re_string_reconstruct): Handle
15147         offset < pstr->valid_raw_len && pstr->offsets_needed case.
15148         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
15149         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
15150         re_string_context_at.
15151
15152         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
15153         now requires it.
15154         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
15155         gl_REGEX now does it for us.
15156         (gl_REGEX): Add test taken from
15157         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
15158
15159         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
15160         Check that large offsets work.  Modernize Autoconf usages.
15161         Prefer "yes" to mean a good thing rather than a bad.
15162         Don't put "#define mkstemp" in config.h, as this might interfere
15163         with standard system headers that "#define mkstemp mkstemp64".
15164
15165         * modules/mkstemp (Depends-on): Add extensions, so that
15166         mkstemp is visible on some platforms.
15167         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
15168         (Include): Change to "mkstemp.h" from <stdlib.h>.
15169         (Files): Add mkstemp.h.
15170
15171         * lib/mkstemp.h: New file, since some standard headers
15172         #define mkstemp.
15173         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
15174         Include "mkstemp.h".
15175         Make the _LIBC code resemble glibc original more,
15176         e.g., use K&R style.
15177         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
15178         (mkstemp): Remove, since mkstemp.h does this for us.
15179         * lib/stdlib--.h: Include mkstemp.h.
15180
15181         Import this patch from libc:
15182
15183         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
15184
15185         * lib/tempname.c (__gen_tempname): Change attempts_min
15186         into a macro.  Use preprocessor to decide how to initialize
15187         attempts [Coverity CID 67].
15188
15189 2006-09-20  Bruno Haible  <bruno@clisp.org>
15190
15191         * lib/mkdtemp.c: Import from libc.
15192         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
15193                 * sysdeps/posix/tempname.c (__gen_tempname): Change
15194                 attempts_min into a macro.  Use preprocessor to decide how to
15195                 initialize attempts [Coverity CID 67].
15196         2001-11-27  Paul Eggert  <eggert@twinsun.com>
15197                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
15198                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
15199
15200 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15201
15202         * gnulib-tool (func_exit): New function, to allow to pass the
15203         exit status portably through the trap.  Use everywhere.
15204         (--help, --version): Signal a write error.
15205         (trap): catch SIGPIPE, for write errors.
15206         Exit at the end of the trap, with the correct exit status.
15207
15208 2006-09-19  Karl Berry  <karl@gnu.org>
15209
15210         * doc/gnulib.texi: note about the license texinfo files.
15211
15212 2006-09-19  Eric Blake  <ebb9@byu.net>
15213
15214         * gnulib-tool: Avoid space-tab.
15215
15216 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
15217
15218         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
15219         that prevented coreutils 6.1 from building.  Problem reported
15220         by Petter Reinholdtsen.
15221
15222 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
15223
15224         * gnulib-tool (avoidlist): Fix typo that broke options like
15225         --avoid=lock that are used by coreutils bootstrap.
15226
15227 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
15228
15229         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
15230         more systematically.
15231
15232 2006-09-18  Jim Meyering  <jim@meyering.net>
15233
15234         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
15235
15236 2006-09-18  Bruno Haible  <bruno@clisp.org>
15237
15238         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
15239
15240 2006-09-18  Bruno Haible  <bruno@clisp.org>
15241
15242         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
15243         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
15244         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
15245         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
15246         * m4/gettext.m4: Require autoconf >= 2.52.
15247         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
15248         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
15249         of gl_cv_header_inttypes_h.
15250
15251 2006-09-18  Bruno Haible  <bruno@clisp.org>
15252
15253         * lib/javaversion.c: Include configmake.h.
15254
15255 2006-09-18  Bruno Haible  <bruno@clisp.org>
15256
15257         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
15258         avoid that the while loops be executed in a subshell.
15259
15260 2006-09-18  Bruno Haible  <bruno@clisp.org>
15261
15262         * MODULES.html.sh (func_module): Break long lines.
15263         Suggested by Bruce Korb <bkorb@gnu.org>.
15264
15265 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15266
15267         Speed up by a factor of 1.12.
15268         * gnulib-tool (nl): New variable.
15269         (func_import): Rewrite include directive extraction to only read each
15270         directive once.
15271
15272 2006-09-17  Bruno Haible  <bruno@clisp.org>
15273
15274         * modules/javaversion (Makefile.am): Remove DEFS setting.
15275         (Depends-on): Add configmake, for PKGDATADIR definition.
15276
15277 2006-09-17  Bruno Haible  <bruno@clisp.org>
15278
15279         * gnulib-tool (func_create_testdir): Rewrite all files at once.
15280
15281 2006-09-17  Bruno Haible  <bruno@clisp.org>
15282
15283         * gnulib-tool (func_append): New function, stolen from libtool.m4.
15284         (func_modules_transitive_closure, func_modules_add_dummy,
15285         func_modules_to_filelist, func_import, func_create_testdir,
15286         func_create_megatestdir, ...): Use it wherever possible.
15287         Suggested by Ralf Wildenhues.
15288
15289 2006-09-16  Karl Berry  <karl@gnu.org>
15290
15291         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
15292         to avoid sectioning errors.
15293         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
15294         [ifinfo]: blank line after @center-ed titles.
15295         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
15296         Spell FSF address consistently with others.
15297         (These changes approved by rms.)
15298
15299 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15300
15301         Speed up by a factor of 1.61.
15302         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
15303         already checked module names again.
15304
15305 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15306
15307         Speed up by a factor of 1.13.
15308         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
15309         for new_files, and the input to func_add_or_update.
15310
15311 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15312
15313         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
15314         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
15315
15316 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15317
15318         * modules/mkancesdirs (Depends-on): Add fcntl.
15319         * modules/savewd: New file.
15320         * MODULES.html.sh (File system functions): Add savewd.
15321
15322         * modules/configmake (Makefile.am): Add support for the
15323         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
15324
15325 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15326
15327         * m4/savewd.m4: New file.
15328
15329 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
15330
15331         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
15332         (dirchownmod): New arg FD.  All callers changed.
15333         Use FD rather than opening the directory ourself, as opening is
15334         now the caller's responsibility.
15335         * lib/dirchownmod.h: Likewise.
15336         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
15337         hosts that require <sys/types.h> before <sys/stat.h>.  Include
15338         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
15339         (test_dir): Remove.
15340         (mkancesdirs): Return length of prefix of FILE that has already
15341         been made, or -2 if there is a child doing the work.  Redo
15342         algorithm so that it is O(N) rather than O(N**2).  Optimize away
15343         ".", and treat ".." specially since it might stray back into
15344         already-created areas.  Use a subprocess if necessary.  New arg
15345         WD; all users changed.  MAKE_DIR function should now return 1
15346         if it creates a directory that is not readable.  Return -2 if
15347         a child process is spun off.
15348         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
15349         Adjust signature to match code.
15350         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
15351         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
15352         all users changed.
15353         * lib/savewd.c, lib/savewd.h: New files.
15354
15355 2006-09-15  Jim Meyering  <jim@meyering.net>
15356
15357         * modules/rename-dest-slash: New module.
15358         * MODULES.html.sh (posix_compat): Add it here.
15359
15360         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
15361
15362 2006-09-15  Jim Meyering  <jim@meyering.net>
15363
15364         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
15365         file.
15366
15367         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
15368
15369 2006-09-15  Jim Meyering  <jim@meyering.net>
15370
15371         * lib/rename-dest-slash.c (has_trailing_slash): Use
15372         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
15373         (rpl_rename_dest_slash): Perform the cheaper trailing slash
15374         test before testing whether SRC is a directory.
15375         Suggestions from Bruno Haible.
15376
15377         Avoid a warning about an unused variable.
15378         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
15379         into the #ifdef block where it's used.
15380
15381         * lib/rename-dest-slash.c: New file.
15382
15383 2006-09-14  Bruno Haible  <bruno@clisp.org>
15384
15385         * lib/allocsa.c: Include <config.h> unconditionally.
15386         * lib/asnprintf.c: Likewise.
15387         * lib/asprintf.c: Likewise.
15388         * lib/c-strcasecmp.c: Likewise.
15389         * lib/c-strcasestr.c: Likewise.
15390         * lib/c-strncasecmp.c: Likewise.
15391         * lib/c-strstr.c: Likewise.
15392         * lib/classpath.c: Likewise.
15393         * lib/clean-temp.c: Likewise.
15394         * lib/concatpath.c: Likewise.
15395         * lib/copy-file.c: Likewise.
15396         * lib/csharpcomp.c: Likewise.
15397         * lib/csharpexec.c: Likewise.
15398         * lib/execute.c: Likewise.
15399         * lib/fatal-signal.c: Likewise.
15400         * lib/findprog.c: Likewise.
15401         * lib/fwriteerror.c: Likewise.
15402         * lib/gl_array_list.c: Likewise.
15403         * lib/gl_array_oset.c: Likewise.
15404         * lib/gl_avltree_list.c: Likewise.
15405         * lib/gl_avltree_oset.c: Likewise.
15406         * lib/gl_avltreehash_list.c: Likewise.
15407         * lib/gl_carray_list.c: Likewise.
15408         * lib/gl_linked_list.c: Likewise.
15409         * lib/gl_linkedhash_list.c: Likewise.
15410         * lib/gl_list.c: Likewise.
15411         * lib/gl_oset.c: Likewise.
15412         * lib/gl_rbtree_list.c: Likewise.
15413         * lib/gl_rbtree_oset.c: Likewise.
15414         * lib/gl_rbtreehash_list.c: Likewise.
15415         * lib/imaxabs.c: Likewise.
15416         * lib/imaxdiv.c: Likewise.
15417         * lib/javacomp.c: Likewise.
15418         * lib/javaexec.c: Likewise.
15419         * lib/javaversion.c: Likewise.
15420         * lib/linebreak.c: Likewise.
15421         * lib/localcharset.c: Likewise.
15422         * lib/lock.c: Likewise.
15423         * lib/mbchar.c: Likewise.
15424         * lib/mbswidth.c: Likewise.
15425         * lib/mkdtemp.c: Likewise.
15426         * lib/pipe.c: Likewise.
15427         * lib/printf-args.c: Likewise.
15428         * lib/printf-parse.c: Likewise.
15429         * lib/progname.c: Likewise.
15430         * lib/progreloc.c: Likewise.
15431         * lib/readlink.c: Likewise.
15432         * lib/sh-quote.c: Likewise.
15433         * lib/stpcpy.c: Likewise.
15434         * lib/stpncpy.c: Likewise.
15435         * lib/strcasecmp.c: Likewise.
15436         * lib/strcasestr.c: Likewise.
15437         * lib/strcspn.c: Likewise.
15438         * lib/striconv.c: Likewise.
15439         * lib/strncasecmp.c: Likewise.
15440         * lib/strnlen1.c: Likewise.
15441         * lib/strstr.c: Likewise.
15442         * lib/strtok_r.c: Likewise.
15443         * lib/tls.c: Likewise.
15444         * lib/tmpdir.c: Likewise.
15445         * lib/unicodeio.c: Likewise.
15446         * lib/unsetenv.c: Likewise.
15447         * lib/vasnprintf.c: Likewise.
15448         * lib/vasprintf.c: Likewise.
15449         * lib/wait-process.c: Likewise.
15450         * lib/xallocsa.c: Likewise.
15451         * lib/xsetenv.c: Likewise.
15452         * lib/xstriconv.c: Likewise.
15453
15454 2006-09-13  Simon Josefsson  <jas@extundo.com>
15455
15456         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
15457         that internally, suggested by Ralf Wildenhues
15458         <Ralf.Wildenhues@gmx.de>.
15459
15460 2006-09-13  Simon Josefsson  <jas@extundo.com>
15461
15462         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
15463         @LIBOBJS@.
15464         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15465
15466 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
15467
15468         * lib/_fpending.c: Include <config.h> unconditionally, since we no
15469         longer worry about uses that don't define HAVE_CONFIG_H.
15470         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
15471         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
15472         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
15473         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
15474         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
15475         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
15476         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
15477         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
15478         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
15479         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
15480         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
15481         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
15482         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
15483         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
15484         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
15485         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
15486         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
15487         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
15488         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
15489         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
15490         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
15491         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
15492         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
15493         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
15494         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
15495         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
15496         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
15497         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
15498         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
15499         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
15500         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
15501         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
15502         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
15503         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
15504         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
15505         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
15506         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
15507         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
15508         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
15509         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
15510         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
15511         Likewise.
15512
15513 2006-09-13  Eric Blake  <ebb9@byu.net>
15514
15515         * lib/getopt.c: Fix typo in last commit.
15516
15517 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
15518
15519         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
15520         dgettext.
15521
15522 2006-09-12  Jim Meyering  <jim@meyering.net>
15523
15524         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
15525         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
15526         Reported by Nelson H. F. Beebe.
15527
15528 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
15529
15530         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
15531         program_invocation_name and program_invocation_short_name are
15532         initialized.
15533         * lib/argp-namefrob.h: Move declarations of program_invocation_name
15534         and program_invocation_short_name to argp.h, so they are visible
15535         to user programs.
15536         * lib/argp.h: Likewise
15537
15538 2006-09-10  Bruno Haible  <bruno@clisp.org>
15539
15540         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
15541         m4/inttypes_h.m4, m4/uintmax_t.m4.
15542
15543 2006-09-10  Bruno Haible  <bruno@clisp.org>
15544
15545         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
15546         gl_AC_TYPE_UINTMAX_T.
15547
15548 2006-09-10  Bruno Haible  <bruno@clisp.org>
15549
15550         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
15551
15552 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
15553
15554         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
15555         convention.  Text proposed by Bruno Haible.
15556         (struct argp_option): Document the use of N_() wrappers.
15557
15558         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
15559         '\v', and translate the two parts separately, instead of feeding
15560         the whole string to gettext.  This allows to exclude
15561         '\v' from the strings visible to the translator by writing doc
15562         strings as N_("..") "\v" N_("..").
15563
15564 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
15565
15566         * config/srclist.txt: Undo latest change; the bug was fixed.
15567
15568 2006-09-09  Bruno Haible  <bruno@clisp.org>
15569
15570         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
15571         assignments if building a library without libtool.
15572         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
15573         in func_emit_lib_Makefile_am.
15574         (func_import): When building a static library libfoo.a, arrange to
15575         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
15576         (func_create_testdir): Likewise.
15577         * modules/gc (configure.ac, Makefile.am): If building statically,
15578         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
15579         * modules/iconvme (configure.ac, Makefile.am): Likewise.
15580         * modules/striconv (configure.ac, Makefile.am): Likewise.
15581         Based on a suggestion by Ralf Wildenhues.
15582
15583 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
15584
15585         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
15586         Check for unistd.h too, since Autoconf doesn't assume POSIX.
15587         Also:
15588
15589         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
15590         Add year_2050_test to catch glibc bug 2821
15591         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
15592
15593         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
15594         Prefer #ifdef to #if.
15595
15596         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
15597         Return from 'main' instead of calling 'exit'.
15598
15599 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
15600
15601         * lib/mktime.c (guess_time_tm): Fix bug where mktime
15602         returned the maximum time_t value rather than (time_t) -1.
15603         Problem originally reported by William Bardwell
15604         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
15605
15606         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
15607         Moved to here ...
15608         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
15609         ... from here.
15610
15611 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
15612
15613         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
15614         2821 is fixed.
15615
15616 2006-09-08  Jim Meyering  <jim@meyering.net>
15617
15618         Don't make generated files read-only.  That would bother too many
15619         people.  However, do retain the ability to work when targets are
15620         read-only: remove the destination and temporary files before writing
15621         them (when generated via sed or echo), or by using the -f option for
15622         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
15623         * modules/alloca-opt, modules/argz, modules/arpa_inet:
15624         * modules/byteswap, modules/configmake, modules/fcntl:
15625         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
15626         * modules/localcharset, modules/netinet_in, modules/poll:
15627         * modules/stdbool, modules/stdint, modules/sys_select:
15628         * modules/sys_socket, modules/sys_stat, modules/sysexits:
15629
15630 2006-09-08  Jim Meyering  <jim@meyering.net>
15631
15632         Avoid new build failure on FreeBSD 6.0.
15633         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
15634         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
15635         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
15636
15637 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15638
15639         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
15640
15641 2006-09-07  Jim Meyering  <jim@meyering.net>
15642
15643         Fix global typo in last change: use chmod u-w, not chmod u-x.
15644         Spotted by Paul Eggert and Bruce Korb.
15645         * modules/alloca-opt, modules/argz, modules/arpa_inet:
15646         * modules/byteswap, modules/configmake, modules/fcntl:
15647         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
15648         * modules/localcharset, modules/netinet_in, modules/poll:
15649         * modules/stdbool, modules/stdint, modules/sys_select:
15650         * modules/sys_socket, modules/sys_stat, modules/sysexits:
15651
15652 2006-09-06  Jim Meyering  <jim@meyering.net>
15653
15654         Make generated files be read-only.
15655         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
15656         Ensure that each generated file is now read-only.
15657         * modules/argz: Likewise.
15658         * modules/arpa_inet: Likewise.
15659         * modules/byteswap: Likewise.
15660         * modules/configmake: Likewise.
15661         * modules/fcntl: Likewise.
15662         * modules/fnmatch: Likewise.
15663         * modules/getopt: Likewise.
15664         * modules/glob: Likewise.
15665         * modules/inttypes: Likewise.
15666         * modules/netinet_in: Likewise.
15667         * modules/poll: Likewise.
15668         * modules/stdbool: Likewise.
15669         * modules/stdint: Likewise.
15670         * modules/sys_select: Likewise.
15671         * modules/sys_socket: Likewise.
15672         * modules/sys_stat: Likewise.
15673         * modules/sysexits: Likewise.
15674         * modules/localcharset: Same as above, but continue using temporary
15675         file named "t-$@" (why different?) rather than the "$@-t" used
15676         everywhere else.
15677
15678         * modules/sysexits (Makefile.am): Replace literal occurrences
15679         of "sysexit.h" more readable, and more consistent, "$@".
15680
15681 2006-09-06  Bruno Haible  <bruno@clisp.org>
15682
15683         * modules/striconv: New file.
15684         * modules/xstriconv: New file.
15685         * MODULES.html.sh (Internationalization functions): Add striconv,
15686         xstriconv.
15687
15688 2006-09-06  Bruno Haible  <bruno@clisp.org>
15689
15690         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
15691         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
15692         not using libtool correctly.
15693
15694 2006-09-06  Bruno Haible  <bruno@clisp.org>
15695
15696         * lib/striconv.h: New file.
15697         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
15698         iconvstring.c.
15699         * lib/xstriconv.h: New file.
15700         * lib/xstriconv.c: New file.
15701
15702 2006-09-06  Bruno Haible  <bruno@clisp.org>
15703
15704         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
15705         lib_..._LDFLAGS.
15706
15707 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15708
15709         * lib/argz_.h: Sync from Libtool.
15710
15711         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
15712                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15713
15714         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
15715
15716 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
15717
15718         * modules/trim: New file.
15719
15720 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
15721
15722         * lib/trim.h: New file.
15723         * lib/trim.c: New file.
15724
15725 2006-09-05  Bruno Haible  <bruno@clisp.org>
15726
15727         * MODULES.html.sh (String handling): Add trim.
15728
15729 2006-09-04  Karl Berry  <karl@gnu.org>
15730
15731         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
15732         until next release.
15733
15734 2006-09-03  Bruno Haible  <bruno@clisp.org>
15735
15736         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
15737         correctly.
15738
15739 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
15740
15741         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
15742         not gl_GETLOADAVG.  Omit unneeded semicolons.
15743         Problems reported by Ralf Wildenhues in
15744         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
15745         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
15746         at the end, which is the usual gnulib style.
15747
15748         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
15749         of doing all the work ourselves.
15750         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
15751         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
15752
15753 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
15754
15755         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
15756         Problem reported by Ralf Wildenhues in
15757         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
15758
15759         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
15760         HAVE_STRUCT_STATFS_F_FSTYPENAME.
15761
15762 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
15763
15764         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
15765         yesterday's patch by changing test -n to test -z.
15766
15767 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
15768
15769         * modules/getloadavg (Files): Add m4/getloadavg.m4.
15770         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
15771         the former is now obsolescent.
15772
15773         * modules/chdir-long (Depends-on): Add fcntl.
15774
15775 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
15776
15777         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
15778         obsolescent, and programs should use gnulib instead.
15779         * m4/getloadavg.m4: New file, with contents taken from Autoconf
15780         but with prefixes changed.
15781
15782 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
15783
15784         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
15785         or stdbool.h, because they might not exist while configuring.
15786
15787         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
15788         Don't include unistd.h or limits.h; not needed, since chdir-long.h
15789         does that for us.
15790         (O_DIRECTORY): Remove.
15791
15792 2006-08-31  Eric Blake  <ebb9@byu.net>
15793
15794         * gnulib-tool: Don't let emacs change spaces to TAB.
15795
15796 2006-08-31  Bruno Haible  <bruno@clisp.org>
15797
15798         * gnulib-tool: When calling func_import more than once, do it in a
15799         subshell.
15800         Reported by Eric Blake <ebb9@byu.net>.
15801
15802 2006-08-31  Bruno Haible  <bruno@clisp.org>
15803
15804         * gnulib-tool (nl): Remove variable.
15805         (sed_transform_lib_file): Use more robust test for config-h module.
15806         (func_import): Fix typo in 2006-08-25 patch.
15807
15808 2006-08-31  Bruno Haible  <bruno@clisp.org>
15809
15810         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
15811         specified, augment Makefile.am variables instead of assigning them.
15812
15813 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
15814
15815         Work around a bug in both the Linux and SunOS 64-bit kernels:
15816         nanosleep mishandles sleeps for longer than 2**31 seconds.
15817         Problem reported by Frank v Waveren in
15818         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
15819         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
15820         Check for nanosleep bug.
15821         (LIB_NANOSLEEP): Append clock_gettime library if needed.
15822
15823 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
15824
15825         Work around a bug in both the Linux and SunOS 64-bit kernels:
15826         nanosleep mishandles sleeps for longer than 2**31 seconds.
15827         Problem reported by Frank v Waveren in
15828         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
15829         * lib/nanosleep.c (BILLION): New constant.
15830         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
15831         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
15832         implementation.
15833
15834 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
15835
15836         * modules/nanosleep (Depends-on): Add gettime.
15837
15838 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
15839         and Simon Josefsson  <jas@extundo.com>
15840         and Oskar Liljeblad  <oskar@osk.mine.nu>
15841
15842         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
15843         * gnulib-tool (func_import): New license type 'unmodifiable license
15844         text'.
15845         * modules/fdl: Use it.  Longer description.
15846         * module/gpl, module/lgpl: New files.
15847
15848 2006-08-30  Jim Meyering  <jim@meyering.net>
15849
15850         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
15851         shadowing the parameter.
15852
15853 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15854
15855         Sync from Libtool:
15856
15857         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15858
15859         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
15860         sharing with gnulib.  Report by Eric Blake.
15861
15862 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
15863
15864         * modules/isapipe: New file.
15865         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
15866
15867 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
15868
15869         * modules/configmake (Makefile.am): Add a comment, and omit
15870         the CONFIGMAKE_ prefix from generated macro names.  Suggested
15871         by Bruno Haible.
15872
15873 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
15874
15875         * m4/isapipe.m4: New file.
15876
15877 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
15878
15879         * lib/isapipe.c, lib/isapipe.h: New files.
15880
15881 2006-08-29  Jim Meyering  <jim@meyering.net>
15882
15883         * modules/configmake (Makefile.am): Make configmake.h depend on
15884         Makefile.  Otherwise, a stale configmake.h could hang around.
15885
15886 2006-08-29  Eric Blake  <ebb9@byu.net>
15887
15888         * lib/error.c (error_at_line, print_errno_message): Match libc, after
15889         resolution of upstream bug 3044.
15890
15891 2006-08-29  Bruno Haible  <bruno@clisp.org>
15892
15893         * modules/localcharset (Depends-on): Add configmake.
15894         (Makefile.am): Remove setting of LIBDIR through DEFS.
15895
15896 2006-08-29  Bruno Haible  <bruno@clisp.org>
15897
15898         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
15899         defined.
15900
15901 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
15902
15903         * modules/fcntl: New file.
15904         * modules/chdir-safer (Depends-on): Add fcntl.
15905         * modules/fts: Likewise.
15906         * modules/mkdir-p: Likewise.
15907
15908         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
15909         This undoes the most recent change, since we're now addressing the
15910         problem in a different way.
15911
15912         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
15913         into output, since the output might be called Makefile.am even
15914         if $makefile_name is something different.
15915         (func_import): Use $makefile_am rather than
15916         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
15917         empty.
15918
15919         * modules/inttypes (Files): Add m4/inttypes-h.m4.
15920
15921 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
15922
15923         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
15924         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
15925         recent change to stdint.m4, since we're now addressing the problem in a
15926         different way.
15927
15928 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
15929
15930         * m4/fcntl_h.m4: New file.
15931
15932 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
15933
15934         * lib/fcntl_.h: New file.
15935         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
15936         the fcntl module.
15937         * lib/dirchownmod.c: Likewise.
15938         * lib/fts.c: Likewise.
15939
15940         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
15941         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
15942         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
15943         just before including <inttypes.h>, to avoid circular inclusion.
15944
15945 2006-08-28  Jim Meyering  <jim@meyering.net>
15946
15947         * doc/visibility.texi: Actually read and correct the grammar of the
15948         sentence affected by yesterday's change.
15949
15950 2006-08-28  Eric Blake  <ebb9@byu.net>
15951
15952         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
15953         needs wrapper.
15954
15955 2006-08-28  Eric Blake  <ebb9@byu.net>
15956
15957         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
15958
15959 2006-08-28  Eric Blake  <ebb9@byu.net>
15960
15961         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
15962
15963 2006-08-28  Bruno Haible  <bruno@clisp.org>
15964
15965         * modules/c-strstr: New file, from GNU gettext.
15966         * MODULES.html.sh (String handling): Add c-strstr.
15967
15968 2006-08-28  Bruno Haible  <bruno@clisp.org>
15969
15970         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
15971         macros.
15972         Reported by Eric Blake.
15973
15974 2006-08-28  Bruno Haible  <bruno@clisp.org>
15975
15976         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
15977         (VASNPRINTF): Return a string of length > INT_MAX without failing.
15978         * lib/vasprintf.c: Include errno.h, limits.h.
15979         (EOVERFLOW): New fallback definition.
15980         (vasprintf): Test here whether the string length is > INT_MAX.
15981         * lib/vsnprintf.c: Include errno.h, limits.h.
15982         (EOVERFLOW): New fallback definition.
15983         (vsnprintf): Fix bug when generated string was too long for the buffer.
15984         Test here whether the string length is > INT_MAX.
15985
15986 2006-08-28  Bruno Haible  <bruno@clisp.org>
15987
15988         * lib/inttypes_.h (SCNX*): Remove definitions.
15989         Reported by Eric Blake.
15990
15991 2006-08-28  Bruno Haible  <bruno@clisp.org>
15992
15993         * lib/c-strstr.h: New file, from GNU gettext.
15994         * lib/c-strstr.c: New file, from GNU gettext.
15995
15996 2006-08-28  Bruno Haible  <bruno@clisp.org>
15997
15998         * gnulib-tool: Reorder some statements.
15999
16000 2006-08-28  Bruno Haible  <bruno@clisp.org>
16001
16002         * gnulib-tool: New option --makefile-name.
16003         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
16004         $makefile_name.
16005         (func_import): Write $makefile_name to the cache file, and read it from
16006         there unless explicitly specified. Use $makefile_name as file name
16007         instead of Makefile.am. Adjust the recommendations accordingly.
16008
16009 2006-08-28  Bruno Haible  <bruno@clisp.org>
16010
16011         * gnulib-tool (func_verify_module): Check against misapplying patch.
16012
16013 2006-08-28  Bruno Haible  <bruno@clisp.org>
16014
16015         * gnulib-tool (func_relativize, func_relconcat): New functions.
16016         Give an error if --local-dir is given with --update.
16017         Remove trailing slashes from $local_gnulib_dir.
16018         (func_import): Store the relativized $local_gnulib_dir in
16019         gnulib-cache.m4, and read it from there if not specified explicitly.
16020
16021 2006-08-28  Bruno Haible  <bruno@clisp.org>
16022
16023         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
16024         is the current directory. Respect also $local_gnulib_dir.
16025
16026 2006-08-28  Bruno Haible  <bruno@clisp.org>
16027             Simon Josefsson  <jas@extundo.com>
16028
16029         BeOS portability.
16030         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
16031
16032 2006-08-27  Jim Meyering  <jim@meyering.net>
16033
16034         * doc/visibility.texi: Remove duplicate word: "pointer".
16035
16036 2006-08-26  Bruno Haible  <bruno@clisp.org>
16037
16038         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
16039         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
16040         (Makefile.am): Create inttypes.h from inttypes_.h.
16041         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
16042
16043         * modules/imaxabs: New file.
16044
16045         * modules/imaxdiv: New file.
16046
16047 2006-08-26  Bruno Haible  <bruno@clisp.org>
16048
16049         * m4/inttypes.m4: New file.
16050         * m4/_inttypes_h.m4: Remove file.
16051         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
16052         PRI_MACROS_BROKEN.
16053         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
16054
16055         * m4/imaxabs.m4: New file.
16056
16057         * m4/imaxdiv.m4: New file.
16058
16059 2006-08-26  Bruno Haible  <bruno@clisp.org>
16060
16061         * lib/inttypes_.h: New file.
16062         * lib/inttypes.h: Remove file.
16063         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
16064
16065         * lib/imaxabs.c: New file.
16066
16067         * lib/imaxdiv.c: New file.
16068
16069 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
16070
16071         New config-h module, so that "make" output needn't be cluttered
16072         by -DHAVE_CONFIG_H.
16073         * MODULES.html.sh (Support for building libraries and executables):
16074         Add config-h.
16075         * modules/config-h: New file.
16076         * gnulib-tool (nl, sed_transform_lib_file): New vars.
16077         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
16078         the config-h module is used.
16079
16080         New configmake module, so that "make" output needn't be cluttered
16081         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
16082         * MODULES.html.sh (Support for building libraries and executables):
16083         Add configmake.
16084         * modules/configmake: New file.
16085
16086 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
16087
16088         * m4/config-h.m4: New file.
16089
16090 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
16091
16092         * config/srclist.txt: Add elisp-comp.
16093
16094 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
16095
16096         * MODULES.html.sh (Support for building libraries and executables):
16097         Add elisp-comp.
16098         * build-aux/elisp-comp: New file.
16099         * modules/elisp-comp: New file.
16100
16101 2006-08-24  Bruno Haible  <bruno@clisp.org>
16102
16103         * gnulib-tool (func_create_testdir): Use non-default values of
16104         sourcebase and m4base.
16105
16106 2006-08-24  Bruno Haible  <bruno@clisp.org>
16107
16108         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
16109         HTML structure.
16110
16111 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
16112
16113         * modules/openat (Depends-on): Add lchown.
16114
16115 2006-08-23  Bruno Haible  <bruno@clisp.org>
16116
16117         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
16118         of gl_LOCK_EARLY instead of gl_LOCK.
16119
16120 2006-08-23  Bruno Haible  <bruno@clisp.org>
16121
16122         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
16123         on OSF/1 to no.
16124         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
16125
16126 2006-08-23  Bruno Haible  <bruno@clisp.org>
16127
16128         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
16129         as unusable.
16130
16131         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
16132         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
16133         (gl_LOCK): New macro.
16134
16135 2006-08-22  Simon Josefsson  <jas@extundo.com>
16136
16137         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
16138         to md5 module.
16139
16140 2006-08-22  Simon Josefsson  <jas@extundo.com>
16141
16142         * MODULES.html.sh: Add "Support for maintaining and release
16143         projects".
16144
16145         * build-aux/gnupload: New file, from coreutils.
16146
16147 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
16148
16149         Avoid the need for AC_LIBSOURCES in m4 macros.
16150         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
16151         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
16152         * modules/check-version (EXTRA_DIST): Add check-version.h.
16153         * modules/crc (EXTRA_DIST): Add crc.h.
16154         * modules/des (EXTRA_DIST): Add des.h.
16155         * modules/gc (EXTRA_DIST): Add gc.h.
16156         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
16157         * modules/getline (EXTRA_DIST): Add getline.h.
16158         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
16159         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
16160         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
16161         * modules/md2 (EXTRA_DIST): Add md2.h.
16162         * modules/md4 (EXTRA_DIST): Add md4.h.
16163         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
16164         * modules/read-file (EXTRA_DIST): Add read-file.h.
16165         * modules/readline (EXTRA_DIST): Add readline.h.
16166         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
16167         rijndael-api-fst.h.
16168
16169 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
16170
16171         * m4/rijndael.m4 (gl_ARCFOUR):
16172         * m4/arctwo.m4 (gl_ARCTWO):
16173         * m4/check-version.m4 (gl_CHECK_VERSION):
16174         * m4/crc.m4 (gl_CRC):
16175         * m4/des.m4 (gl_DES):
16176         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
16177         * m4/gc.m4 (gl_GC):
16178         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
16179         * m4/getline.m4 (gl_FUNC_GETLINE):
16180         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
16181         * m4/hmac-md5.m4 (gl_HMAC_MD5):
16182         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
16183         * m4/md2.m4 (gl_MD2):
16184         * m4/md4.m4 (gl_MD4):
16185         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
16186         * m4/read-file.m4 (gl_FUNC_READ_FILE):
16187         * m4/readline.m4 (gl_FUNC_READLINE):
16188         * m4/rijndael.m4 (gl_RIJNDAEL):
16189         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
16190         to get the necessary .h files and whatnot.
16191
16192 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
16193
16194         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
16195         gnulib rather than the other way around.
16196         * config/srclistvars.sh (COREUTILS): Remove.
16197
16198 2006-08-22  Jim Meyering  <jim@meyering.net>
16199
16200         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
16201
16202         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
16203
16204 2006-08-22  Eric Blake  <ebb9@byu.net>
16205
16206         * modules/regexprops-generic: New file.
16207         * MODULES.html.sh (Support for building documentation): List it.
16208
16209 2006-08-22  Eric Blake  <ebb9@byu.net>
16210
16211         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
16212         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
16213         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
16214         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
16215
16216 2006-08-22  Bruno Haible  <bruno@clisp.org>
16217
16218         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
16219         and lib_LTLIBRARIES like the other lib_* variables.
16220
16221 2006-08-22  Bruno Haible  <bruno@clisp.org>
16222
16223         * build-aux/x-to-1.in: New file, from GNU gettext.
16224
16225 2006-08-22  Bruno Haible  <bruno@clisp.org>
16226
16227         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
16228         <utmpx.h> exists.
16229
16230 2006-08-22  Bruno Haible  <bruno@clisp.org>
16231
16232         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
16233         <utmpx.h> exists.
16234
16235 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
16236
16237         BeOS portability.
16238         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
16239         exist.
16240         Problem reported by Bruno Haible.
16241
16242 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
16243
16244         Avoid the need for AC_LIBSOURCES in m4 macros.
16245         * modules/acl (EXTRA_DIST): Add acl.h.
16246         * modules/argmatch (Files): Add m4/argmatch.m4.
16247         (configure.ac): Add gl_ARGMATCH.
16248         (EXTRA_DIST): Renamed from lib_SOURCES, for
16249         consistency with the other modules.  Remove argmatch.c.
16250         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
16251         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
16252         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
16253         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
16254         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
16255         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
16256         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
16257         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
16258         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
16259         * modules/closeout (EXTRA_DIST): Add closeout.h.
16260         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
16261         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
16262         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
16263         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
16264         dirname.h; remove basename.c and stripslash.c.
16265         * modules/exclude (EXTRA_DIST): Add exclude.h.
16266         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
16267         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
16268         * modules/file-type (EXTRA_DIST): Add file-type.h.
16269         * modules/filemode (EXTRA_DIST): Add filemode.h.
16270         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
16271         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
16272         * modules/fpending (EXTRA_DIST): Add __fpending.h.
16273         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
16274         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
16275         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
16276         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
16277         * modules/getdate (EXTRA_DIST): Add getdate.c.
16278         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
16279         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
16280         * modules/getpass (EXTRA_DIST): Add getpass.h.
16281         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
16282         * modules/group-member (EXTRA_DIST): Add group-member.h.
16283         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
16284         * modules/hash (EXTRA_DIST): Add hash.h.
16285         * modules/human (EXTRA_DIST): Add human.h.
16286         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
16287         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
16288         * modules/lchown (EXTRA_DIST): Add lchown.h.
16289         * modules/long-options (EXTRA_DIST): Add long-options.h.
16290         * modules/lstat (EXTRA_DIST): Add lstat.h.
16291         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
16292         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
16293         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
16294         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
16295         * modules/memxor (EXTRA_DIST): Add memxor.h.
16296         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
16297         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
16298         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
16299         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
16300         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
16301         * modules/physmem (EXTRA_DIST): Add physmem.h.
16302         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
16303         * modules/posixver (EXTRA_DIST): Add posixver.h.
16304         * modules/quote (EXTRA_DIST): Add quote.h.
16305         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
16306         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
16307         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
16308         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
16309         regex_internal.h regexec.c.
16310         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
16311         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
16312         * modules/same (EXTRA_DIST): Add same.h.
16313         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
16314         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
16315         * modules/savedir (EXTRA_DIST): Add savedir.h.
16316         * modules/sha1 (EXTRA_DIST): Add sha1.h.
16317         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
16318         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
16319         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
16320         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
16321         * modules/strdup (EXTRA_DIST): Add strdup.h.
16322         * modules/strftime (EXTRA_DIST): Add strftime.h.
16323         * modules/strndup (EXTRA_DIST): Add strndup.h.
16324         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
16325         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
16326         * modules/time_r (EXTRA_DIST): Add time_r.h.
16327         * modules/timespec (EXTRA_DIST): Add timespec.h.
16328         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
16329         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
16330         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
16331         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
16332         * modules/userspec (EXTRA_DIST): Add userspec.h.
16333         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
16334         * modules/utimens (EXTRA_DIST): Add utimens.h.
16335         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
16336         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
16337         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
16338         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
16339         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
16340         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
16341         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
16342         * modules/yesno (EXTRA_DIST): Add yesno.h.
16343
16344 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
16345
16346         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
16347
16348         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
16349         * m4/dev-ino.m4, same-inode.m4: Remove.
16350
16351         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
16352         * m4/acl.m4 (AC_FUNC_ACL):
16353         * m4/backupfile.m4 (gl_BACKUPFILE):
16354         * m4/c-strtod.m4 (gl_C99_STRTOLD):
16355         * m4/canon-host.m4 (gl_CANON_HOST):
16356         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
16357         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
16358         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
16359         * m4/cloexec.m4 (gl_CLOEXEC):
16360         * m4/close-stream.m4 (gl_CLOSE_STREAM):
16361         * m4/closeout.m4 (gl_CLOSEOUT):
16362         * m4/dirfd.m4 (gl_FUNC_DIRFD):
16363         * m4/dirname.m4 (gl_DIRNAME):
16364         * m4/exclude.m4 (gl_EXCLUDE):
16365         * m4/exitfail.m4 (gl_EXITFAIL):
16366         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
16367         * m4/file-type.m4 (gl_FILE_TYPE):
16368         * m4/filemode.m4 (gl_FILEMODE):
16369         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
16370         * m4/fpending.m4 (gl_FUNC_FPENDING):
16371         * m4/fprintftime.m4 (gl_FPRINTFTIME):
16372         * m4/fts.m4 (gl_FUNC_FTS):
16373         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
16374         * m4/getdate.m4 (gl_GETDATE):
16375         * m4/gethrxtime.m4 (gl_GETHRXTIME):
16376         * m4/getpagesize.m4 (gl_GETPAGESIZE):
16377         * m4/getpass.m4 (gl_FUNC_GETPASS):
16378         * m4/gettime.m4 (gl_GETTIME):
16379         * m4/getugroups.m4 (gl_GETUGROUPS):
16380         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
16381         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
16382         * m4/hard-locale.m4 (gl_HARD_LOCALE):
16383         * m4/hash.m4 (gl_HASH):
16384         * m4/idcache.m4 (gl_IDCACHE):
16385         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
16386         * m4/lchown.m4 (gl_FUNC_LCHOWN):
16387         * m4/long-options.m4 (gl_LONG_OPTIONS):
16388         * m4/lstat.m4 (gl_FUNC_LSTAT):
16389         * m4/md5.m4 (gl_MD5):
16390         * m4/memcasecmp.m4 (gl_MEMCASECMP):
16391         * m4/memcoll.m4 (gl_MEMCOLL):
16392         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
16393         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
16394         * m4/memxor.m4 (gl_MEMXOR):
16395         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
16396         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
16397         * m4/modechange.m4 (gl_MODECHANGE):
16398         * m4/mountlist.m4 (gl_MOUNTLIST):
16399         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
16400         * m4/openat.m4 (gl_FUNC_OPENAT):
16401         * m4/pathmax.m4 (gl_PATHMAX):
16402         * m4/physmem.m4 (gl_PHYSMEM):
16403         * m4/posixtm.m4 (gl_POSIXTM):
16404         * m4/posixver.m4 (gl_POSIXVER):
16405         * m4/quote.m4 (gl_QUOTE):
16406         * m4/quotearg.m4 (gl_QUOTEARG):
16407         * m4/readtokens.m4 (gl_READTOKENS):
16408         * m4/readutmp.m4 (gl_READUTMP):
16409         * m4/regex.m4 (gl_REGEX):
16410         * m4/safe-read.m4 (gl_SAFE_READ):
16411         * m4/safe-write.m4 (gl_SAFE_WRITE):
16412         * m4/same.m4 (gl_SAME):
16413         * m4/save-cwd.m4 (gl_SAVE_CWD):
16414         * m4/savedir.m4 (gl_SAVEDIR):
16415         * m4/settime.m4 (gl_SETTIME):
16416         * m4/sha1.m4 (gl_SHA1):
16417         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
16418         * m4/stat-macros.m4 (gl_STAT_MACROS):
16419         * m4/stat-time.m4 (gl_STAT_TIME):
16420         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
16421         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
16422         * m4/strdup.m4 (gl_FUNC_STRDUP):
16423         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
16424         * m4/strndup.m4 (gl_FUNC_STRNDUP):
16425         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
16426         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
16427         * m4/time_r.m4 (gl_TIME_R):
16428         * m4/timespec.m4 (gl_TIMESPEC):
16429         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
16430         * m4/unlinkdir.m4 (gl_UNLINKDIR):
16431         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
16432         * m4/userspec.m4 (gl_USERSPEC):
16433         * m4/utimecmp.m4 (gl_UTIMECMP):
16434         * m4/utimens.m4 (gl_UTIMENS):
16435         * m4/xalloc.m4 (gl_XALLOC):
16436         * m4/xgetcwd.m4 (gl_XGETCWD):
16437         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
16438         * m4/xreadlink.m4 (gl_XREADLINK):
16439         * m4/xstrtod.m4 (gl_XSTRTOD):
16440         * m4/yesno.m4 (gl_YESNO):
16441         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
16442         to get the necessary .h files and whatnot.
16443
16444 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
16445             Bruno Haible  <bruno@clisp.org>
16446
16447         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
16448         /bin/sh understanding of '!' conditional negation.
16449
16450 2006-08-21  Jim Meyering  <jim@meyering.net>
16451
16452         * modules/openat (Depends-on): Really alphabetize.
16453
16454         * modules/acl (Depends-on): Add error and quote.
16455
16456         * check-module (find_included_lib_files): Add at-func.c to the
16457         ok-to-include-more-than-once white list.
16458
16459         * modules/openat (Depends-on): Add lstat.  Alphabetize.
16460
16461 2006-08-21  Bruno Haible  <bruno@clisp.org>
16462
16463         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
16464         Emit a pkgdata_DATA variable only if some snippets add contents to it.
16465         Reported by Martin Lambers <marlam@marlam.de>.
16466
16467 2006-08-21  Bruno Haible  <bruno@clisp.org>
16468
16469         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
16470         specify an installation location, don't emit a noinst_LIBRARIES or
16471         noinst_LTLIBRARIES assignment.
16472
16473 2006-08-21  Bruno Haible  <bruno@clisp.org>
16474
16475         BeOS portability.
16476         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
16477         BeOS has mbrtowc() but no <wctype.h>.
16478
16479 2006-08-21  Bruno Haible  <bruno@clisp.org>
16480
16481         BeOS portability.
16482         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
16483         exist.
16484
16485 2006-08-21  Bruno Haible  <bruno@clisp.org>
16486
16487         BeOS portability.
16488         * lib/mbchar.h: Include <wctype.h> only if it exists.
16489
16490 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
16491
16492         Remove files that are no longer needed by their respective modules.
16493         * m4/obstack.m4: Remove.
16494         * m4/strerror_r.m4: Remove.
16495         * m4/uint32_t.m4: Remove.
16496         * m4/uintptr_t.m4: Remove.
16497         * m4/ullong_max.m4: Remove.
16498         * m4/xstrtoimax.m4: Remove.
16499         * m4/xstrtoumax.m4: Remove.
16500
16501         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
16502         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
16503         dependencies now capture this.
16504
16505         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
16506         Do not use AC_LIBSOURCES, since gnulib modules now do this.
16507         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
16508         * m4/human.m4 (gl_HUMAN): Likewise.
16509         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
16510         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
16511
16512         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
16513
16514         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
16515         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
16516         stdint.
16517         * m4/human.m4 (gl_HUMAN): Likewise.
16518         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
16519         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
16520         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
16521         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
16522         * m4/xstrtol (gl_XSTRTOL): Likewise.
16523
16524         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
16525         AC_TYPE_LONG_LONG_INT.
16526         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
16527         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
16528         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
16529         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
16530
16531         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
16532         on stdbool.
16533
16534         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
16535         (gl_PREREQ_XSTRTOUL): Remove.
16536
16537         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
16538
16539         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
16540         mode.
16541
16542 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
16543
16544         Add and change modules to make it easier for coreutils to use
16545         gnulib-tool.
16546         * modules/backupfile (Files): Remove m4/d-ino.m4.
16547         (Depends-on): Add d-ino.
16548         * modules/cycle-check (Depends-on): Add stdint.
16549         (lib_SOURCES): Add cycle-check.h.
16550         * modules/d-ino: New module.
16551         * modules/d-type: New module.
16552         * modules/error (Files): Remove m4/strerror_r.m4.
16553         * modules/filemode (Files): Add m4/st_dm_mode.m4.
16554         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
16555         m4/inttypes_h.m4, m4/uintmax_t.m4.
16556         (Depends-on): Add stdint.
16557         (lib_SOURCES): Add fsusage.h.
16558         * modules/getcwd (Files): Remove d-ino.m4.
16559         (Depends-on): Add d-ino.
16560         * modules/getndelim2 (Depends-on): Add stdint.
16561         * modules/glob (Files): Remove m4/d-type.m4.
16562         (Depends-on): Add d-type.
16563         * modules/host-os: New module.
16564         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
16565         m4/inttypes_h.m4, m4/uintmax_t.m4.
16566         * Depends-on: Add stdint.
16567         (lib_SOURCES): Add human.h.
16568         * modules/inttostr (Files): Remove m4/intmax_t.m4,
16569         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
16570         m4/uintmax_t.m4, m4/ulonglong.m4.
16571         (Depends-on): Add stdint.
16572         (EXTRA_DIST): Add inttostr.h.
16573         * modules/lchmod: New module.
16574         * modules/link-follow: New module.
16575         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
16576         (Depends-on): Add lchmod.
16577         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
16578         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
16579         (Depends-on): Add stdint.
16580         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
16581         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
16582         (Depends-on): Add stdint.
16583         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
16584         * modules/perl: New module.
16585         * modules/regex (Depends-on): Add stdint.
16586         * modules/rmdir-errno: New module.
16587         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
16588         m4/intmax_t.m4.
16589         (Depends-on): Add stdint.
16590         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
16591         m4/uintmax_t.m4.
16592         (Depends-on): Add stdint.
16593         * modules/unlink-busy: New module.
16594         * modules/utimecmp (Depends-on): Add stdint.
16595         * modules/uptime: New module.
16596         * modules/winsz-ioctl: New module.
16597         * modules/winsz-termios: New module.
16598         * modules/xnanosleep (Depends-on): Add nanosleep.
16599         * modules/ullong_max: Remove.
16600         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
16601         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
16602         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
16603         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
16604         (Depends-on): Add inttypes.
16605         (lib_SOURCES): Add xstrtol.h.
16606         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
16607         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
16608         * MODULES.html.sh: Move 'assert' into the assert section.
16609         Move 'dummy' into the linking section.
16610         Remove ullong_max.
16611         Add section for compatibility checks for POSIX:2001 functions,
16612         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
16613         winsz-ioctl, and winsz-termios into it.
16614         Add lchmod.
16615         Add top-level Misc section and put host-os, perl, and uptime
16616         into it.
16617
16618 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
16619
16620         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
16621         now assume the stdint module.  Do not include inttypes.h.
16622         * lib/fsusage.h: Likewise.
16623         * lib/getndelim2.c: Likewise.
16624         * lib/human.h: Likewise.
16625         * lib/inttostr.h: Likewise.
16626         * lib/obstack.c: Likewise.
16627         * lib/regex_internal.h: Likewise.
16628         * lib/tempname.c: Likewise.
16629         * lib/utimecmp.c: Likewise.
16630         * lib/xstrtol.h: Likewise.
16631
16632         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
16633
16634         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
16635         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
16636         * lib/xtime.h: Likewise.
16637
16638 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
16639
16640         * modules/openat (Files): Add lib/fchmodat.c.
16641         Fixes problem reported by Jay Youngman.
16642
16643 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
16644
16645         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
16646         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
16647
16648 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
16649             Bruno Haible  <bruno@clisp.org>
16650
16651         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
16652         and is a script that invokes bison. Tighten the code. Add comments.
16653
16654 2006-08-18  Jim Meyering  <jim@meyering.net>
16655
16656         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
16657         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
16658         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
16659         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
16660
16661 2006-08-18  Bruno Haible  <bruno@clisp.org>
16662
16663         * modules/bison-i18n: New file.
16664         * MODULES.html.sh (Internationalization functions): Add it.
16665
16666 2006-08-18  Bruno Haible  <bruno@clisp.org>
16667
16668         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
16669         sys/statvfs.h. When getmntinfo was found, check its declaration and
16670         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
16671
16672 2006-08-18  Bruno Haible  <bruno@clisp.org>
16673
16674         * m4/bison-i18n.m4: New file, from bison.
16675
16676 2006-08-18  Bruno Haible  <bruno@clisp.org>
16677
16678         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
16679         (ME_DUMMY): Treat "kernfs" as a dummy.
16680         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
16681
16682 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
16683
16684         Update from coreutils.
16685
16686         2006-08-15  Jim Meyering  <jim@meyering.net>
16687
16688         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
16689
16690         2006-01-17  Jim Meyering  <jim@meyering.net>
16691
16692         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
16693
16694         2006-01-11  Jim Meyering  <jim@meyering.net>
16695
16696         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
16697         Check for the lchmod function.
16698
16699 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
16700
16701         Update from coreutils.
16702
16703         * lib/__fpending.h: Add copyright notice.
16704         * lib/fprintftime.h: Likewise.
16705         * lib/savedir.c: Use (C) in copyright notice.
16706         * lib/savedir.h: Likewise.
16707
16708         2006-08-15  Jim Meyering  <jim@meyering.net>
16709
16710         * lib/at-func.c: New file, with the logic of all emulated at-functions.
16711         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
16712         in support of the EXPECTED_ERRNO macro.
16713         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
16714         definitions.  Instead, define the appropriate symbols and include
16715         "at-func.c".
16716         * lib/mkdirat.c (mkdirat): Likewise.
16717         * lib/fchmodat.c (fchmodat): Likewise.
16718         (ENOSYS): Remove definition.
16719         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
16720         it.  Don't include "unistd--.h" -- it wasn't ever used.
16721
16722         2006-01-17  Jim Meyering  <jim@meyering.net>
16723
16724         Rewrite fts.c not to change the current working directory,
16725         by using openat, fstatat, fdopendir, etc..
16726
16727         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
16728         (HAVE_OPENAT_SUPPORT): Define.
16729         [_LIBC] (fchdir): Don't undef or define; no longer used.
16730         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
16731         Now, this `function' always succeeds, and consumes its file descriptor
16732         parameter -- so callers must not close such FDs.  Update callers.
16733         (diropen_fd, opendirat, cwd_advance_fd): New functions.
16734         (diropen): Add parameter, SP.  Adjust all callers.
16735         Implement using diropen_fd, rather than open.
16736         (fts_open): Initialize new member, fts_cwd_fd.
16737         Remove fts_rft-setting code.
16738         (fts_close): Close fts_cwd_fd, if necessary.
16739         (__opendir2): Define in terms of opendir or opendirat,
16740         depending on whether the FST_NOCHDIR flag is set.
16741         (fts_build): Since fts_safe_changedir consumes its FD, and since
16742         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
16743         and close the dup'd file descriptor upon failure.
16744         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
16745         (fts_safe_changedir): Tweak semantics to reflect that this function
16746         now calls cwd_advance_fd and hence consumes its FD argument.
16747         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
16748         [struct FTS] (fts_rft): Remove now-unused member.
16749         [struct FTS] (fts_cycle.state): Improve comment.
16750
16751         * lib/openat.c (openat_needs_fchdir): New function.
16752         * lib/openat.h (openat_needs_fchdir): Declare it.
16753
16754 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
16755
16756         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
16757         Problem and fix reported by Pádraig Brady in
16758         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
16759
16760 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
16761
16762         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
16763
16764 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
16765
16766         * lib/memcoll.c (memcoll): Optimize for the common case where the
16767         arguments are bytewise equal.
16768
16769 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
16770
16771         * doc/regexprops-generic.texi: Add a copyright notice.
16772
16773 2006-08-15  Bruno Haible  <bruno@clisp.org>
16774
16775         * modules/tmpdir (License): Change to LGPL.
16776
16777 2006-08-15  Bruno Haible  <bruno@clisp.org>
16778
16779         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
16780         module.
16781
16782 2006-08-14  Simon Josefsson  <jas@extundo.com>
16783
16784         * config/srclist.txt: Add gnupload.
16785
16786 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
16787
16788         Change copyright notice from LGPL 2 to GPL 2, since that's the
16789         standard form used in the gnulib repository.
16790         * tests/test-lock.c: Likewise.
16791         * tests/test-stdint.c: Likewise.
16792         * tests/test-tls.c: Likewise.
16793
16794         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
16795         prelude-manager.  User shorter URLs for GNU projects, without '?'.
16796         Add copyright notice.
16797
16798         * check-module: Add copyright notice.  Output a copyright
16799         notice if "--version" is specified.
16800         * modules/COPYING: New file.
16801         * tests/test-getaddrinfo.c: Add copyright notice.
16802         * tests/test-verify.c: Likewise.
16803
16804 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
16805
16806         Change copyright notice from LGPL 2 to GPL 2, since that's the
16807         standard form used in the gnulib repository.
16808         * lib/lock.c: LGPL -> GPL.
16809         * lib/lock.h: Likewise.
16810         * lib/strnlen1.c: Likewise.
16811         * lib/strnlen1.h: Likewise.
16812         * lib/tls.c: Likewise.
16813         * lib/tls.h: Likewise.
16814         * lib/tmpdir.c: Likewise.
16815
16816         * lib/TODO: Remove; this belongs only in coreutils.
16817
16818 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
16819
16820         Add copyright notices to long-enough files that lack them, since
16821         otherwise the files aren't clearly free.  Use the same notice that
16822         getdate.texi already uses.
16823         * doc/alloca-opt.texi: Add copyright notice.
16824         * doc/alloca.texi: Likewise.
16825         * doc/ctime.texi: Likewise.
16826         * doc/functions.texi: Likewise.
16827         * doc/gcd.texi: Likewise.
16828         * doc/gnulib-tool.texi: Likewise.
16829         * doc/inet_ntoa.texi: Likewise.
16830         * doc/visibility.texi: Likewise.
16831
16832         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
16833         * doc/quote.texi: Add copyright notice.
16834
16835         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
16836         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
16837         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
16838         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
16839         is now obsolete, and give a pointer to the Sun list.
16840         Add copyright notice.
16841
16842 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
16843
16844         * config/srclistvars.sh: Add copyright notice.
16845
16846 2006-08-14  Eric Blake  <ebb9@byu.net>
16847
16848         Import the following change from libc:
16849
16850         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
16851
16852         Upstream bug 2997.
16853         * lib/misc/error.c: Add space between program name and message if file
16854         name is missing.
16855
16856 2006-08-12  Karl Berry  <karl@gnu.org>
16857
16858         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
16859         remove, these originate in gnulib now.
16860
16861 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16862
16863         * doc/Makefile (standards.info standards.html standards.dvi):
16864         Also depend on make-stds.texi.
16865
16866 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
16867
16868         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
16869         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
16870
16871         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
16872         in wchar_t.  Problem reported by Eric Blake.
16873
16874         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
16875         LEN is smaller than SIZE.  Suggested by Bruno Haible.
16876         Also, help the compiler to keep LEN in a register.
16877
16878 2006-08-11  Eric Blake  <ebb9@byu.net>
16879
16880         * users.txt: Sort.  Add tar.
16881
16882 2006-08-11  Bruno Haible  <bruno@clisp.org>
16883
16884         * users.txt: New file.
16885
16886 2006-08-11  Bruno Haible  <bruno@clisp.org>
16887
16888         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
16889         before <wchar.h>. Needed for OSF/1 and BSD/OS.
16890
16891 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
16892
16893         * modules/snprintf (Depends-on): Remove minmax.
16894         (Maintainer): Add self and Bruno.
16895
16896 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
16897
16898         * lib/.cppi-disable: Add snprintf.h, socket_.h.
16899         * lib/snprintf.c: Include <errno.h> and <limits.h>.
16900         (EOVERFLOW): Define if the system does not.
16901         Do not include "minmax.h"; it wasn't used.
16902         (snprintf): Don't assume size_t promotes to an unsigned type.
16903         Fix bug when generated string was too long for the buffer: the
16904         buffer's contents are supposed to be the initial prefix of the
16905         output.  Don't assume vasnprintf returns EOVERFLOW if the size
16906         exceeds INT_MAX; do the check ourselves.
16907
16908         Import the following changes from libc:
16909
16910         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
16911
16912         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
16913         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
16914         set wc to the byte which couldn't be converted.
16915         (re_string_reconstruct): Don't clear valid_raw_len before calling
16916         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
16917         tip_context using re_string_context_at.
16918
16919         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
16920
16921         * lib/posix/regex.h: g++ still cannot handled [restrict].
16922
16923         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
16924
16925         * lib/posix/regex.h: Remove special handling for VMS.
16926
16927 2006-08-10  Jim Meyering  <jim@meyering.net>
16928
16929         * modules/same-inode: New module.
16930         * modules/dev-ino: New module.
16931         * modules/cycle-check: Depend on these modules, rather than simply
16932         including their .h files.
16933         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
16934         required via m4/cycle-check.m4.
16935         * modules/same: Depend on new same-inode module, rather than
16936         including same-inode.h.
16937         * modules/chdir-safer: New file.
16938
16939         * modules/chown (Depends-on): Add stat-macros.
16940
16941 2006-08-10  Jim Meyering  <jim@meyering.net>
16942
16943         * m4/cycle-check.m4: New file.
16944         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
16945         * m4/dev-ino.m4, m4/same-inode.m4: New files.
16946
16947 2006-08-10  Eric Blake  <ebb9@byu.net>
16948
16949         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
16950         in from original proposal.
16951
16952 2006-08-10  Eric Blake  <ebb9@byu.net>
16953         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16954
16955         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
16956         namespace.
16957
16958 2006-08-10  Bruno Haible  <bruno@clisp.org>
16959
16960         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
16961         as well.
16962
16963 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
16964
16965         Sync from coreutils.
16966
16967         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
16968
16969         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
16970         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
16971
16972 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
16973
16974         * modules/restrict: Remove; no longer needed now that we assume
16975         Autoconf 2.59 or later.
16976         * MODULES.html.sh: Remove 'restrict'.
16977         * modules/argp (Depends-on): Remove 'restrict'.
16978         * modules/base64 (Depends-on): Likewise.
16979         * modules/gc (Depends-on): Likewise.
16980         * modules/getaddrinfo (Depends-on): Likewise.
16981         * modules/glob (Depends-on): Likewise.
16982         * modules/inet_ntop (Depends-on): Likewise.
16983         * modules/inet_pton (Depends-on): Likewise.
16984         * modules/memxor (Depends-on): Likewise.
16985         * modules/regex (Depends-on): Likewise.
16986         * modules/strtok_r (Depends-on): Likewise.
16987         * modules/time_r (Depends-on): Likewise.
16988
16989 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
16990
16991         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
16992         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
16993         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
16994         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
16995         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
16996         * m4/memxor.m4 (gl_MEMXOR): Likewise.
16997         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
16998         gl_C_RESTRICT replaced by AC_C_RESTRICT.
16999
17000         Merge from coreutils.
17001         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
17002         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
17003         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
17004         * m4/time_r.m4 (gl_TIME_R): Likewise.
17005
17006 2006-08-09  Karl Berry  <karl@gnu.org>
17007
17008         * config/srclist.txt: no more gettext-tools, per Bruno.
17009
17010 2006-08-08  Eric Blake  <ebb9@byu.net>
17011
17012         * modules/verror: New module.
17013         * MODULES.html.sh: Document it.
17014
17015 2006-08-08  Eric Blake  <ebb9@byu.net>
17016
17017         * lib/verror.h, lib/verror.c: New files.
17018
17019 2006-08-08  Eric Blake  <ebb9@byu.net>
17020
17021         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
17022         verror_at_line output complies with GNU Coding Standards even when
17023         file is NULL.
17024
17025 2006-08-07  Bruno Haible  <bruno@clisp.org>
17026
17027         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
17028         versions of AIX.
17029         Reported by Ralf Wildenhues.
17030
17031 2006-08-07  Bruno Haible  <bruno@clisp.org>
17032
17033         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
17034         in an AC_DEFUN. Needed so that the autoconf snippets can use
17035         AC_REQUIRE.
17036
17037 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17038
17039         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17040         Initialize pkgdata_DATA.
17041         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
17042         overriding it.
17043
17044 2006-08-06  Eric Blake  <ebb9@byu.net>
17045
17046         * lib/error.h: Fold in some upstream changes from glibc.
17047         * lib/error.c: Likewise.
17048
17049 2006-08-04  Bruno Haible  <bruno@clisp.org>
17050
17051         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17052         Make the mostlyclean-local rule depend on mostlyclean-generic.
17053         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
17054
17055 2006-07-31  Bruno Haible  <bruno@clisp.org>
17056
17057         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
17058         <stdlib.h>, <string.h>.
17059
17060 2006-07-30  Bruno Haible  <bruno@clisp.org>
17061
17062         * modules/readlink (License): Change to LGPL.
17063
17064 2006-07-30  Bruno Haible  <bruno@clisp.org>
17065
17066         * modules/javaversion (Makefile.am): Distribute javaversion.java and
17067         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
17068         set PKGDATADIR to point to it.
17069
17070 2006-07-30  Bruno Haible  <bruno@clisp.org>
17071
17072         * modules/csharpexec (configure.ac): Comment out macro invocation.
17073         * modules/javaexec (configure.ac): Likewise.
17074         * modules/javacomp-script (configure.ac): Likewise.
17075
17076         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
17077
17078 2006-07-30  Bruno Haible  <bruno@clisp.org>
17079
17080         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
17081         linked-list.
17082
17083 2006-07-30  Bruno Haible  <bruno@clisp.org>
17084
17085         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
17086
17087 2006-07-30  Bruno Haible  <bruno@clisp.org>
17088
17089         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17090         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
17091         get removed.
17092
17093 2006-07-29  Bruno Haible  <bruno@clisp.org>
17094
17095         Make it possible for gnulib-tool to work with locally modified or
17096         augmented gnulib repositories.
17097         * gnulib-tool (func_usage): Document --local-dir option.
17098         (local_gnulib_dir): New variable.
17099         Handle --local-dir option.
17100         (func_lookup_file): New function.
17101         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
17102         (func_get_description, func_get_filelist, func_get_description,
17103         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
17104         func_get_automake_snippet, func_get_include_directive,
17105         func_get_license, func_get_maintainer): Use func_lookup_file.
17106         (func_import, func_create_testdir): Use func_lookup_file.
17107
17108 2006-07-29  Bruno Haible  <bruno@clisp.org>
17109
17110         * modules/setenv (Depends-on): Add unistd.
17111
17112 2006-07-29  Bruno Haible  <bruno@clisp.org>
17113
17114         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
17115
17116 2006-07-29  Bruno Haible  <bruno@clisp.org>
17117
17118         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
17119
17120 2006-07-29  Bruno Haible  <bruno@clisp.org>
17121
17122         * gnulib-tool (import, update): If there is no Makefile.am, look at
17123         aclocal.m4, instead of bailing out.
17124
17125 2006-07-29  Bruno Haible  <bruno@clisp.org>
17126
17127         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
17128         Categorize the options by when they are useful.
17129
17130 2006-07-29  Bruno Haible  <bruno@clisp.org>
17131
17132         * gnulib-tool (func_usage): Document option --no-libtool.
17133         Handle option --no-libtool.
17134         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
17135         for changed semantics of $libtool variable.
17136         (func_import): Likewise. If libtool is not used, show this through
17137         an option --no-libtool.
17138         (func_create_testdir): Update.
17139
17140 2006-07-29  Bruno Haible  <bruno@clisp.org>
17141
17142         * gnulib-tool (func_import): Extend error message about missing
17143         --doc-base.
17144
17145 2006-07-29  Bruno Haible  <bruno@clisp.org>
17146
17147         * gnulib-tool (func_import): Don't create the $docbase directory if
17148         there is no file to store there.
17149
17150 2006-07-29  Bruno Haible  <bruno@clisp.org>
17151
17152         * gnulib-tool (autoconf_minversion): If a --dir option is given and
17153         relevant, look for configure.ac there, not in the current directory.
17154         Also use a simple search for AC_PREREQ, not "autoconf --trace".
17155
17156 2006-07-29  Bruno Haible  <bruno@clisp.org>
17157
17158         * gnulib-tool (SORT): New variable.
17159         (func_usage): Undocument --assume-autoconf option.
17160         Remove --assume-autoconf option handling.
17161         (autoconf_minversion): Determine from the contents of configure.ac.
17162         (func_import): Remove autoconf_minversion handling.
17163         Suggested by Eric Blake.
17164
17165 2006-07-29  Bruno Haible  <bruno@clisp.org>
17166
17167         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
17168
17169 2006-07-29  Bruno Haible  <bruno@clisp.org>
17170
17171         * config/srclist.txt (*setenv.[ch]): Remove rules.
17172
17173 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17174
17175         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
17176
17177 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17178
17179         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
17180         arpa/inet.h.
17181
17182 2006-07-28  Simon Josefsson  <jas@extundo.com>
17183
17184         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
17185         * modules/inet_pton (Depends-on): Likewise.
17186
17187 2006-07-28  Simon Josefsson  <jas@extundo.com>
17188
17189         * m4/netinet_in_h.m4: New file.
17190
17191 2006-07-28  Simon Josefsson  <jas@extundo.com>
17192
17193         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
17194         #include's.
17195
17196 2006-07-28  Simon Josefsson  <jas@extundo.com>
17197
17198         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
17199         #include's.
17200
17201 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
17202
17203         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
17204         setgid on directories only if they set these bits.
17205         * lib/modechange.h: Remove obsolete comment about masks.
17206
17207 2006-07-28  Eric Blake  <ebb9@byu.net>
17208
17209         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
17210         macro expansion.
17211
17212 2006-07-28  Bruno Haible  <bruno@clisp.org>
17213
17214         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
17215
17216 2006-07-28  Bruno Haible  <bruno@clisp.org>
17217
17218         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
17219
17220 2006-07-28  Bruno Haible  <bruno@clisp.org>
17221
17222         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
17223         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
17224         Define fallbacks.
17225         Avoids link error on FreeBSD 4.x.
17226         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
17227
17228         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
17229         encoding.
17230         * lib/mbswidth.c (iswcntrl): Likewise.
17231
17232 2006-07-27  Bruno Haible  <bruno@clisp.org>
17233
17234         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
17235         test.
17236
17237 2006-07-27  Bruno Haible  <bruno@clisp.org>
17238
17239         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
17240         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
17241         defined.
17242
17243 2006-07-26  Eric Blake  <ebb9@byu.net>
17244
17245         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
17246
17247 2006-07-26  Eric Blake  <ebb9@byu.net>
17248
17249         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
17250         like mingw that lack mkstemp.
17251         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
17252         avoid compilation warning on mingw.
17253
17254 2006-07-26  Bruno Haible  <bruno@clisp.org>
17255
17256         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
17257         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
17258         INT_FAST*_MIN, INTPTR_MIN.
17259
17260 2006-07-25  Bruno Haible  <bruno@clisp.org>
17261
17262         * modules/version-etc (Depends-on): Add stdarg.
17263
17264 2006-07-25  Bruno Haible  <bruno@clisp.org>
17265
17266         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
17267         complex commands.
17268
17269 2006-07-25  Bruno Haible  <bruno@clisp.org>
17270
17271         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
17272         defined in <stdarg.h> or config.h.
17273
17274 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
17275
17276         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
17277         (gl_STDIO_SAFER): Remove.
17278
17279 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
17280
17281         * MODULES.html.sh (File stream based Input/Output):
17282         Add fopen-safer, tmpfile-safer; remove stdio-safer.
17283         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
17284         * modules/fopen-safer, modules/tmpfile-safer: New files.
17285         * modules/stdio-safer: Remove.
17286
17287 2006-07-24  Bruno Haible  <bruno@clisp.org>
17288
17289         * modules/tmpdir: New file.
17290         * MODULES.html.sh (File system functions): Add it.
17291
17292 2006-07-24  Bruno Haible  <bruno@clisp.org>
17293
17294         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
17295         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
17296
17297 2006-07-24  Bruno Haible  <bruno@clisp.org>
17298
17299         * modules/clean-temp: New file.
17300
17301 2006-07-24  Bruno Haible  <bruno@clisp.org>
17302
17303         * m4/tmpdir.m4: New file, from GNU gettext.
17304
17305 2006-07-24  Bruno Haible  <bruno@clisp.org>
17306
17307         * lib/tmpdir.h: New file, from GNU gettext.
17308         * lib/tmpdir.c: New file, from GNU gettext.
17309
17310 2006-07-24  Bruno Haible  <bruno@clisp.org>
17311
17312         * lib/clean-temp.h: New file, from GNU gettext.
17313         * lib/clean-temp.c: New file, from GNU gettext.
17314
17315 2006-07-23  Eric Blake  <ebb9@byu.net>
17316
17317         * modules/stdio-safer (Files): Add tmpfile-safer.c.
17318         (Depends-on): Add binary-io.
17319
17320 2006-07-23  Eric Blake  <ebb9@byu.net>
17321
17322         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
17323
17324 2006-07-23  Eric Blake  <ebb9@byu.net>
17325
17326         * lib/tmpfile-safer.c: New file.
17327         * lib/stdio-safer.h (fopen_safer): Add prototype.
17328         * lib/stdio--.h (tmpfile): Make safer.
17329
17330 2006-07-23  Bruno Haible  <bruno@clisp.org>
17331
17332         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
17333         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
17334         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
17335         gl_linked_remove_at): Use it.
17336
17337 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17338         and Simon Josefsson <jas@extundo.com>
17339
17340         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
17341
17342         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
17343
17344 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
17345
17346         * modules/close-stream: New file.
17347         * modules/closeout (Description): Make it clear that it exits
17348         with a diagnostic on error.
17349         (Depends-on): Add close-stream.  Remove fpending, stdbool.
17350         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
17351
17352 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
17353
17354         * m4/close-stream.m4: New file.
17355
17356 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
17357
17358         * lib/close-stream.c, lib/close-stream.h: New files.
17359
17360 2006-07-22  Bruno Haible  <bruno@clisp.org>
17361
17362         Merge from GNU gettext 0.15.
17363
17364         2006-05-01  Bruno Haible  <bruno@clisp.org>
17365
17366                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
17367
17368         2006-07-22  Bruno Haible  <bruno@clisp.org>
17369
17370                 * modules/javaversion: New file.
17371                 * MODULES.html.sh (Java): Add javaversion.
17372
17373         2006-03-12  Bruno Haible  <bruno@clisp.org>
17374
17375                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
17376
17377         2005-12-04  Bruno Haible  <bruno@clisp.org>
17378
17379                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
17380                 (untested).
17381
17382         2006-06-21  Bruno Haible  <bruno@clisp.org>
17383
17384                 Avoid warnings from recent versions of mcs.
17385                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
17386                 -o, -L, -r any more. Use options documented since mcs-1.0
17387                 instead. Similarly for -g.
17388
17389         2005-12-04  Bruno Haible  <bruno@clisp.org>
17390
17391                 * build-aux/csharpcomp.sh.in: Suffix for resources is
17392                 .resources, not .resource.
17393
17394         2005-07-09  Bruno Haible  <bruno@clisp.org>
17395
17396                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
17397                 add a .dll suffix.
17398                 Reported by Mark Junker <mjscod@gmx.de>.
17399
17400         2006-07-22  Bruno Haible  <bruno@clisp.org>
17401
17402                 * modules/gettext: Upgrade to gettext-0.15.
17403                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
17404                 m4/visibility.m4.
17405                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
17406
17407 2006-07-22  Bruno Haible  <bruno@clisp.org>
17408
17409         Merge from GNU gettext 0.15.
17410
17411         2006-03-25  Bruno Haible  <bruno@clisp.org>
17412
17413                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
17414
17415         2006-07-21  Bruno Haible  <bruno@clisp.org>
17416
17417                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
17418                 "1.1".
17419
17420         2006-05-09  Bruno Haible  <bruno@clisp.org>
17421
17422                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
17423                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
17424                 for the conftestver execution.
17425
17426         2006-05-01  Bruno Haible  <bruno@clisp.org>
17427
17428                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
17429                 optional target-version argument. Verify that the compiler
17430                 groks source of the specified source-version, or add -source
17431                 option as necessary. Verify that the compiler produces
17432                 bytecode in the specified target-version, or add -target and
17433                 -source options as necessary. Make the result of the test
17434                 available as variable CONF_JAVAC. Also log error output in
17435                 config.log.
17436
17437         2006-03-11  Bruno Haible  <bruno@clisp.org>
17438
17439                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
17440
17441         2006-05-09  Bruno Haible  <bruno@clisp.org>
17442
17443                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
17444                 CLASSPATH_SEPARATOR to a semicolon.
17445
17446         2006-03-12  Bruno Haible  <bruno@clisp.org>
17447
17448                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
17449                 available as variable CONF_JAVA, for subsequent autoconf
17450                 tests. Also log error output in config.log.
17451
17452         2006-07-19  Bruno Haible  <bruno@clisp.org>
17453
17454                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
17455                 that getline works on glibc2 systems. Needed to avoid trouble
17456                 in relocatable.c.
17457                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
17458
17459         2005-12-04  Bruno Haible  <bruno@clisp.org>
17460
17461                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
17462                 launcher (untested).
17463
17464         2005-12-04  Bruno Haible  <bruno@clisp.org>
17465
17466                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
17467
17468         2006-07-22  Bruno Haible  <bruno@clisp.org>
17469
17470                 * gettext.m4: Update from GNU gettext-0.15.
17471                 * nls.m4: Likewise.
17472                 * po.m4: Likewise.
17473                 * inttypes-pri.m4: Likewise.
17474                 * inttypes-h.m4: Renamed from inttypes.m4.
17475                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
17476
17477 2006-07-22  Bruno Haible  <bruno@clisp.org>
17478
17479         Merge from GNU gettext 0.15.
17480
17481         2005-07-05  Bruno Haible  <bruno@clisp.org>
17482
17483                 * printf-args.c (printf_fetchargs): Work around broken
17484                 definition of wint_t on mingw.
17485
17486         2005-02-12  Bruno Haible  <bruno@clisp.org>
17487
17488                 * xallocsa.h: Add extern "C" for C++.
17489
17490         2006-05-17  Bruno Haible  <bruno@clisp.org>
17491
17492                 Cygwin portability.
17493                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
17494
17495         2006-04-30  Bruno Haible  <bruno@clisp.org>
17496
17497                 * progreloc.c: Include <mach-o/dyld.h> if available.
17498                 (find_executable): Use _NSGetExecutablePath when possible.
17499
17500         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
17501
17502                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
17503                 function.
17504
17505         2005-12-29  Bruno Haible  <bruno@clisp.org>
17506
17507                 * progreloc.c (set_program_name_and_installdir): Fix
17508                 compilation error.
17509
17510         2005-12-04  Bruno Haible  <bruno@clisp.org>
17511
17512                 Cygwin portability.
17513                 * progreloc.c: Include <windows.h> also on Cygwin.
17514                 (find_executable): Add support for Cygwin.
17515                 (set_program_name_and_installdir): Handle also platforms with
17516                 nonempty EXEEXT.
17517
17518         2006-07-11  Bruno Haible  <bruno@clisp.org>
17519
17520                 * javacomp.c: Fix a comment.
17521                 Reported by Jim Meyering.
17522
17523         2006-04-30  Bruno Haible  <bruno@clisp.org>
17524
17525                 * javacomp.h (compile_java_class): Add source_version,
17526                 target_version arguments.
17527                 * javacomp.c: Rewritten to choose only a compiler that
17528                 respects the specified source_version and target_version.
17529
17530         2006-06-27  Bruno Haible  <bruno@clisp.org>
17531
17532                 Assume correct S_ISDIR macro.
17533                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
17534
17535         2006-07-22  Bruno Haible  <bruno@clisp.org>
17536
17537                 * javaversion.h: New file, from GNU gettext.
17538                 * javaversion.c: New file, from GNU gettext.
17539                 * javaversion.java: New file, from GNU gettext.
17540                 * javaversion.class: New file, from GNU gettext.
17541
17542         2006-05-17  Bruno Haible  <bruno@clisp.org>
17543
17544                 Cygwin portability.
17545                 * javaexec.c (execute_java_class): Test for jview program
17546                 also on Cygwin.
17547
17548         2006-04-09  Bruno Haible  <bruno@clisp.org>
17549
17550                 * fatal-signal.c: Don't include string.h.
17551                 (at_fatal_signal): Use a copying loop instead of memcpy.
17552
17553         2005-12-04  Bruno Haible  <bruno@clisp.org>
17554
17555                 * csharpexec.c: Add support for 'clix' launcher (untested).
17556                 (execute_csharp_using_sscli): New function.
17557                 (execute_csharp_program): Call it.
17558
17559         2006-06-21  Bruno Haible  <bruno@clisp.org>
17560
17561                 Avoid warnings from recent versions of mcs.
17562                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
17563                 -o, -L, -r any more. Use options documented since mcs-1.0
17564                 instead. Similarly for -g.
17565
17566         2005-07-09  Bruno Haible  <bruno@clisp.org>
17567
17568                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
17569                 add a .dll suffix.
17570                 Reported by Mark Junker <mjscod@gmx.de>.
17571
17572         2006-06-17  Bruno Haible  <bruno@clisp.org>
17573
17574                 * config.charset: Update for NetBSD 3.0.
17575
17576         2006-05-17  Bruno Haible  <bruno@clisp.org>
17577
17578                 Cygwin portability.
17579                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
17580
17581         2006-05-16  Bruno Haible  <bruno@clisp.org>
17582
17583                 * localcharset.c [CYGWIN]: Include <windows.h>.
17584                 (get_charset_aliases): For Cygwin, return the same CPxxx
17585                 aliases list as under WIN32.
17586                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
17587                 the environment variables. Fall back to GetACP().
17588
17589         2006-04-05  Bruno Haible  <bruno@clisp.org>
17590
17591                 * config.charset: Update Juan Manuel Guerrero's address.
17592
17593         2005-02-12  Bruno Haible  <bruno@clisp.org>
17594
17595                 * allocsa.h: Add extern "C" for C++.
17596
17597         2005-02-10  Bruno Haible  <bruno@clisp.org>
17598
17599                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
17600                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
17601
17602         2006-07-22  Bruno Haible  <bruno@clisp.org>
17603
17604                 * gettext.h: Update to GNU gettext-0.15.
17605
17606 2006-07-22  Bruno Haible  <bruno@clisp.org>
17607
17608         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
17609         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
17610         lib-prefix.m4, longdouble.m4, ssize_t.m4.
17611
17612 2006-07-21  Eric Blake  <ebb9@byu.net>
17613
17614         * modules/stdlib-safer: New file.
17615         * MODULES.html.sh (File stream based Input/Output): Add
17616         stdlib-safer.
17617
17618 2006-07-21  Eric Blake  <ebb9@byu.net>
17619
17620         * lib/stdlib-safer.h: New file from coreutils, required by
17621         stdlib--.h.
17622
17623 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
17624
17625         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
17626
17627 2006-07-20  Bruno Haible  <bruno@clisp.org>
17628
17629         * gnulib-tool: Recognize new option --assume-autoconf.
17630         (autoconf_minversion): New variable.
17631         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
17632
17633 2006-07-20  Bruno Haible  <bruno@clisp.org>
17634
17635         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
17636
17637 2006-07-19  Derek R. Price  <derek@ximbiot.com>
17638
17639         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
17640         Reindent and repaginate.
17641
17642 2006-07-19  Derek Price  <derek@ximbiot.com>
17643
17644         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
17645         Correct grammar.
17646
17647 2006-07-17  Bruno Haible  <bruno@clisp.org>
17648
17649         * modules/list: New file.
17650         * modules/array-list: New file.
17651         * modules/carray-list, modules/carray-list-tests: New files.
17652         * modules/linked-list, modules/linked-list-tests: New files.
17653         * modules/avltree-list, modules/avltree-list-tests: New files.
17654         * modules/rbtree-list, modules/rbtree-list-tests: New files.
17655         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
17656         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
17657         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
17658         * modules/oset: New file.
17659         * modules/array-oset: New file.
17660         * modules/avltree-oset, modules/avltree-oset-tests: New files.
17661         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
17662         * tests/test-carray_list.c: New file.
17663         * tests/test-linked_list.c: New file.
17664         * tests/test-avltree_list.c: New file.
17665         * tests/test-rbtree_list.c: New file.
17666         * tests/test-linkedhash_list.c: New file.
17667         * tests/test-avltreehash_list.c: New file.
17668         * tests/test-rbtreehash_list.c: New file.
17669         * tests/test-avltree_oset.c: New file.
17670         * tests/test-rbtree_oset.c: New file.
17671         * MODULES.html.sh (Container data structures): New section.
17672
17673 2006-07-17  Bruno Haible  <bruno@clisp.org>
17674
17675         * m4/gl_list.m4: New file.
17676
17677 2006-07-17  Bruno Haible  <bruno@clisp.org>
17678
17679         * lib/gl_list.h: New file.
17680         * lib/gl_list.c: New file.
17681         * lib/gl_array_list.h: New file.
17682         * lib/gl_array_list.c: New file.
17683         * lib/gl_carray_list.h: New file.
17684         * lib/gl_carray_list.c: New file.
17685         * lib/gl_linked_list.h: New file.
17686         * lib/gl_linked_list.c: New file.
17687         * lib/gl_anylinked_list1.h: New file.
17688         * lib/gl_anylinked_list2.h: New file.
17689         * lib/gl_avltree_list.h: New file.
17690         * lib/gl_avltree_list.c: New file.
17691         * lib/gl_anyavltree_list1.h: New file.
17692         * lib/gl_anyavltree_list2.h: New file.
17693         * lib/gl_rbtree_list.h: New file.
17694         * lib/gl_rbtree_list.c: New file.
17695         * lib/gl_anyrbtree_list1.h: New file.
17696         * lib/gl_anyrbtree_list2.h: New file.
17697         * lib/gl_anytree_list1.h: New file.
17698         * lib/gl_anytree_list2.h: New file.
17699         * lib/gl_linkedhash_list.h: New file.
17700         * lib/gl_linkedhash_list.c: New file.
17701         * lib/gl_anyhash_list1.h: New file.
17702         * lib/gl_anyhash_list2.h: New file.
17703         * lib/gl_avltreehash_list.h: New file.
17704         * lib/gl_avltreehash_list.c: New file.
17705         * lib/gl_rbtreehash_list.h: New file.
17706         * lib/gl_rbtreehash_list.c: New file.
17707         * lib/gl_anytreehash_list1.h: New file.
17708         * lib/gl_anytreehash_list2.h: New file.
17709
17710         * lib/gl_oset.h: New file.
17711         * lib/gl_oset.c: New file.
17712         * lib/gl_array_oset.h: New file.
17713         * lib/gl_array_oset.c: New file.
17714         * lib/gl_avltree_oset.h: New file.
17715         * lib/gl_avltree_oset.c: New file.
17716         * lib/gl_rbtree_oset.h: New file.
17717         * lib/gl_rbtree_oset.c: New file.
17718         * lib/gl_anytree_oset.h: New file.
17719
17720 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
17721
17722         * m4/mkancesdirs.m4: New file.
17723         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
17724         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
17725         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
17726         it.
17727
17728 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
17729
17730         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
17731         * lib/mkancesdirs.h: New files.
17732         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
17733         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
17734         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
17735         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
17736         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
17737         callers changed.  Revamp internals significantly, by not
17738         attempting to create directories that are temporarily more
17739         permissive than the final results.  Do not attempt to use
17740         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
17741         This removes some race conditions, fixes some bugs, and simplifies
17742         things.  Use new dirchownmod function to do owner and mode changes.
17743         * lib/mkdir-p.h: Likewise.
17744         * lib/modechange.c (octal_to_mode): New function.
17745         (struct mode_change): New member mentioned.
17746         (make_node_op_equals): New arg mentioned.  All callers changed.
17747         (mode_compile): Keep track of which mode bits the user has explicitly
17748         mentioned.
17749         (mode_adjust): New arg DIR, so that we implement the X op correctly.
17750         New arg PMODE_BITS, to keep track of which mode bits the user
17751         mentioned; it treats S_ISUID and S_ISGID speciall.
17752         All callers changed.
17753         * lib/modechange.h: Likewise.
17754
17755 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
17756
17757         * MODULES.html.sh: Add mkancestors.
17758         * modules/mkancesdirs: New module.
17759         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
17760         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
17761         The chdir-safer and afs files are now orphans; I'll remove them
17762         unless someone speaks up.
17763         Add lib/dirchownmod.c, lib/dirchownmod.h.
17764         (Depends-on): Remove alloca, chown, save-cwd, dirname.
17765         Add lchown, mkancesdirs.
17766         (Maintainer): Add self.
17767
17768 2006-07-15  Karl Berry  <karl@gnu.org>
17769
17770         * gnulib-tool: help message wording/arrangement.
17771
17772 2006-07-14  Simon Josefsson  <jas@extundo.com>
17773
17774         * doc/gnulib.texi (Libtool and Windows): New section.
17775
17776 2006-07-12  Simon Josefsson  <jas@extundo.com>
17777
17778         * modules/gendocs (License): Fix license, approved by Karl.
17779
17780 2006-07-12  Eric Blake  <ebb9@byu.net>
17781
17782         * MODULES.html.sh: Add gendocs.
17783
17784 2006-07-11  Eric Blake  <ebb9@byu.net>
17785
17786         * modules/fdl: New module, to install doc/fdl.texi.
17787         * MODULES.html.sh: Add new section for documentation modules.
17788         * gnulib-tool: Avoid space-tab.
17789         (--doc-base): New option, to manage files from doc.
17790
17791 2006-07-11  Eric Blake  <ebb9@byu.net>
17792
17793         * m4/absolute-header.m4: Fix comments to match recent change.
17794
17795 2006-07-11  Eric Blake  <ebb9@byu.net>
17796
17797         * gnulib-tool: List --doc-base before --tests-base.
17798
17799 2006-07-11  Derek R. Price  <derek@ximbiot.com>
17800
17801         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
17802
17803 2006-07-11  Bruno Haible  <bruno@clisp.org>
17804
17805         * README: Mention where to put documentation.
17806
17807 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17808
17809         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
17810
17811 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
17812
17813         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
17814         to stdint.m4.
17815
17816 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
17817
17818         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
17819         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
17820         "no/such/file/stdint.h" when there is no such file, so that
17821         the resulting C code can be parsed by dodgy compilers.
17822         Problems reported by Bob Proulx.
17823
17824 2006-07-10  Derek R. Price  <derek@ximbiot.com>
17825
17826         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
17827         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
17828         macros into the GNU _D_EXACT_NAMLEN.
17829         * lib/savedir.c:  Likewise.
17830         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
17831
17832 2006-07-10  Derek R. Price  <derek@ximbiot.com>
17833         and Paul Eggert  <eggert@cs.ucla.edu>
17834
17835         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
17836         * m4/savedir.m4:
17837         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
17838         macros into the GNU _D_EXACT_NAMLEN.
17839
17840 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
17841
17842         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
17843         around the absolute name, to work around a problem with the HP-UX
17844         11.23 native C compiler, reported by Bob Proulx.
17845
17846 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
17847
17848         * doc/maintain.texi, make-stds.texi: Sync from
17849         <http://savannah.gnu.org/projects/gnustandards>.
17850
17851 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
17852
17853         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
17854
17855 2006-07-09  Jim Meyering  <jim@meyering.net>
17856
17857         * m4/glob.m4: Remove a doubled word in a comment.
17858
17859 2006-07-09  Jim Meyering  <jim@meyering.net>
17860
17861         * lib/argp-pv.c: Remove a doubled word in a comment.
17862         * lib/check-version.c (check_version): Likewise.
17863         * lib/javacomp.c (compile_java_class): Likewise.
17864
17865 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
17866
17867         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
17868         for the benefit of people using Autoconf 2.60.  If you want to
17869         support older Autoconf versions you can copy m4/onceonly_2_57.m4
17870         (or m4/onceonly.m4, if pre-2.57) manually.
17871
17872 2006-07-08  Jim Meyering  <jim@meyering.net>
17873
17874         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
17875         comment.
17876         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
17877         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
17878         comment.
17879
17880 2006-07-08  Jim Meyering  <jim@meyering.net>
17881
17882         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
17883
17884 2006-07-07  Simon Josefsson  <jas@extundo.com>
17885
17886         * tests/test-crc.c: Change expected crc value, the test vector
17887         were probably computed using the old broken crc.c?
17888
17889 2006-07-06  Simon Josefsson  <jas@extundo.com>
17890
17891         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
17892         now the canonical place for the M4 file).
17893
17894         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
17895         from the sys_socket dependency now.
17896
17897         * modules/inet_pton (Files): Ditto.
17898
17899         * modules/inet_ntop (Files): Ditto.
17900
17901 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
17902
17903         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
17904         not gl_PREREQ_GETUSERSHELL.
17905
17906 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17907
17908         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
17909         with only one argument, for Autoconf 2.60.
17910         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
17911         expand to nothing, so add a shell command to avoid syntax error.
17912         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
17913
17914 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17915
17916         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
17917
17918 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
17919
17920         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
17921         no longer needed.  Check for isblank decl.
17922         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
17923         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
17924         of existence.
17925
17926 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
17927
17928         * lib/getloadavg.c: Use __VMS, not VMS.
17929         * lib/getopt.c: Likewise.
17930         * lib/getpagesize.h: Likewise.
17931         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
17932         and probably does not work.
17933
17934 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
17935
17936         * lib/.cppi-disable: Add wcwidth.
17937         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
17938         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
17939         (ISGRAPH): Remove.  All uses changed to isgraph.
17940         (FOLD) [!defined _LIBC]: Remove special case.
17941         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
17942         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
17943         HAVE_ISBLANK.
17944         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
17945         case.
17946
17947 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
17948
17949         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
17950         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
17951         brackets.  Other minor changes to suppress some compiler
17952         warnings.
17953
17954 2006-07-06  Derek R. Price  <derek@ximbiot.com>
17955         and Paul Eggert  <eggert@cs.ucla.edu>
17956
17957         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
17958         of invoking obsolescent AC_HEADER_DIRENT macro.
17959         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
17960         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
17961         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
17962         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
17963         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
17964         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
17965         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
17966         * m4/readdir.m4: Remove; no longer needed.
17967
17968 2006-07-06  Derek R. Price  <derek@ximbiot.com>
17969         and Paul Eggert  <eggert@cs.ucla.edu>
17970
17971         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
17972         Don't worry about this obsolete case any more.
17973         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
17974         directories.
17975         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
17976         worry about this obsolete case any more.
17977         * lib/fts.c: Likewise.
17978         * lib/getcwd.c: Likewise.
17979         * lib/glob.h: Likewise.
17980         * lib/savedir.c: Likewise.
17981
17982 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
17983
17984         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
17985         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
17986         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
17987         needed.
17988         All uses removed.
17989         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
17990         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
17991         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
17992         needed.
17993         * m4/getdate.m4 (gl_GETDATE): Likewise.
17994         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
17995         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
17996         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
17997         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
17998         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
17999         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
18000         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
18001         needed.
18002
18003 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
18004
18005         * lib/memcasecmp.c: Include <limits.h>.
18006         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
18007         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
18008         Don't assume isdigit succeeds only on '0' through '9'.
18009
18010 2006-07-05  Eric Blake  <ebb9@byu.net>
18011
18012         * modules/getaddrinfo (Depends-on): Add snprintf.
18013
18014 2006-07-05  Eric Blake  <ebb9@byu.net>
18015
18016         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
18017         to avoid 'header present but could not be compiled' on cygwin.
18018
18019 2006-07-05  Eric Blake  <ebb9@byu.net>
18020
18021         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
18022         missing from netdb.h.
18023         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
18024
18025 2006-07-05  Derek R. Price  <derek@ximbiot.com>
18026
18027         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
18028         no longer needed.
18029         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
18030         * m4/getdate.m4 (gl_GETDATE): Likewise.
18031         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
18032         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
18033         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
18034         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
18035         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
18036
18037 2006-07-05  Derek R. Price  <derek@ximbiot.com>
18038
18039         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
18040         All uses of is_space replaced by isspace.
18041         * lib/exit.h: Don't talk about STDC_HEADERS.
18042         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
18043         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
18044         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
18045         replaced by isprint etc.
18046         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
18047         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
18048         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
18049         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
18050         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
18051         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
18052
18053 2006-07-05  Bruno Haible  <bruno@clisp.org>
18054
18055         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
18056         the function exists, before testing against AIX.
18057         Reported by Martin Lambers <marlam@marlam.de>.
18058
18059 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
18060
18061         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
18062         From Mark D. Baushke.
18063
18064 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
18065
18066         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
18067         to the absolute name, not just one, to bypass Sun C 5.8's
18068         "warning: #include of /usr/include/... may be non-portable".
18069
18070 2006-07-04  Eric Blake  <ebb9@byu.net>
18071
18072         * modules/dirname-tests: New test module.
18073         * tests/test-dirname.c: New file, replacing dirname.c
18074         TEST_DIRNAME section that was recently deleted.
18075
18076 2006-07-04  Bruno Haible  <bruno@clisp.org>
18077
18078         Assume ANSI C header files and <ctype.h> functions.
18079         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
18080         (mbsnwidth): Use isprint, iscntrl instead.
18081
18082 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
18083
18084         Merge from coreutils.
18085         * MODULES.html.sh: Add xstrtold.
18086         * modules/xstrtold: New file.
18087         * modules/cycle-check (Files): Add lib/same-inode.h.
18088         * modules/dirname (Files): Add m4/double-slash-root.m4.
18089         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
18090         * modules/mkdir-p (Files): Add lib/same-inode.h.
18091         * modules/same (Files): Add lib/same-inode.h.
18092
18093 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
18094
18095         * m4/absolute-header.m4: Renamed from full-header-path.m4.
18096         This is to keep the terminology clean; POSIX talks about
18097         "absolute pathnames", not "full pathnames", but the GNU
18098         Coding Standards say to use "path" for something else;
18099         so use "absolute" to keep both sides happy.
18100         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
18101         Set gl_absolute_header, not gl_full_header_path.
18102         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
18103         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
18104         All uses changed.
18105
18106         Merge from coreutils.
18107
18108         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
18109
18110         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
18111         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
18112         want to require the building of c-strtod.o.
18113         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
18114         needs -lm directly.
18115         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
18116
18117         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
18118
18119         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
18120         --as-needed option if available.  Problem reported by Albert Chin in
18121         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
18122         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
18123         cc merely issues a bunch of annoying warnings for --as-needed
18124         (this problem was reported by Bob Proulx).  Also, try linking with
18125         -lm to detect a bug in binutils 2.16 (this problem was reported
18126         by Ralf Wildenhues).
18127
18128         2006-06-18  Jim Meyering  <jim@meyering.net>
18129
18130         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
18131         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
18132         macro.
18133         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
18134         also check for glibc-2.4's abort-inducing bug.
18135
18136         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
18137         Low-probability clean-up should be to use rmdir to get rid of
18138         the just-created directory, not unlink.
18139
18140         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
18141         configure fail, and request a bug report to inform us about it.
18142         Add a comment that, barring reports to the contrary, in 2007 we'll
18143         assume ftruncate is universally available.
18144
18145         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
18146
18147         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
18148
18149         2006-03-12  Jim Meyering  <jim@meyering.net>
18150
18151         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
18152         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
18153         * m4/same.m4 (gl_SAME): Likewise.
18154         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
18155
18156         2006-03-11  Eric Blake  <ebb9@byu.net>
18157
18158         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
18159         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
18160         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
18161         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
18162
18163 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
18164
18165         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
18166         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
18167         reported by Mark D. Baushke, one in
18168         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
18169
18170         Merge from coreutils.
18171
18172         * lib/.cppi-disable: Add stdint_.h.
18173         * lib/.cvsignore: Add stdint.h.
18174
18175         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
18176
18177         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
18178         both double and long double versions.
18179         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
18180         * lib/xstrtold.c: New file.
18181         * lib/xstrtod.h (xstrtold): New decl.
18182
18183         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
18184
18185         * lib/filemode.c (setst): Remove.
18186         (strmode): Rewrite to avoid setst.  This makes the code shorter,
18187         (arguably) clearer, and the generated code is a bit smaller on my
18188         Debian GNU/Linux stable x86 host.
18189
18190         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
18191
18192         * lib/filemode.c: Include "filemode.h" first, to test the interface.
18193         Assume that filemode.h includes sys/types.h and sys/stat.h.
18194         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
18195         (ftypelet): Reorder to put common cases first, for efficiency.
18196         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
18197         to do 'M'.
18198         (strmode): Renamed from mode_string, and now stores 12 bytes instead
18199         of 10, for compatibility with FreeBSD.  All callers changed.
18200         (filemodestring): Now stores 12 bytes instead of 10, and sets file
18201         types that can't be deduced solely from st_mode.  First arg is now a
18202         const pointer.
18203         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
18204         (strmode): Renamed from mode_string.
18205         (filemodestring): New decl.
18206         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
18207         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
18208         needed.
18209         (S_ISPORT, S_ISWHT): New macros, if not already defined.
18210
18211         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
18212
18213         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
18214         fsusage.h now does that.  Include fsusage.h first, to test interface.
18215         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
18216         at most one method (the old code could have generated decls that
18217         didn't conform to C89, not that this was ever exercised).
18218         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
18219
18220         2006-03-19  Jim Meyering  <jim@meyering.net>
18221
18222         Work even in a chroot where d_ino values for entries in "/"
18223         don't match the stat.st_ino values for the same names.
18224         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
18225         number, iterate through all entries again, using lstat instead.
18226         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
18227         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
18228
18229         * lib/getcwd.c (__getcwd): Clarify a comment.
18230         Use memcpy in place of a call to strcpy.
18231
18232         2006-03-12  Jim Meyering  <jim@meyering.net>
18233
18234         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
18235         matches that of the current directory (which we're about to chdir ".."
18236         out of), then save the dev-ino of the parent, instead.
18237
18238         * lib/same-inode.h (SAME_INODE): New file/macro.
18239         * lib/chdir-safer.c (SAME_INODE): Remove definition.
18240         Include "same-inode.h", instead.
18241         * lib/same.c: Likewise.
18242         * lib/cycle-check.h: Include "same-inode.h".
18243         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
18244         * lib/cycle-check.c (SAME_INODE): Remove definition.
18245         * lib/root-dev-ino.h: Include "same-inode.h".
18246
18247         2006-03-11  Eric Blake  <ebb9@byu.net>
18248
18249         * lib/same.c (same_name): s/base_name/last_component/
18250         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
18251         * lib/filenamecat.c (file_name_concat): Likewise.
18252
18253         2006-03-11  Eric Blake  <ebb9@byu.net>,
18254                     Paul Eggert  <eggert@cs.ucla.edu>
18255
18256         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
18257         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
18258         drive prefix.
18259         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
18260         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
18261         (last_component): New method.
18262         * lib/dirname.c (dir_len): Determine when drive letters need a
18263         subsequent slash.  Preserve // when it is special.
18264         (dir_name): Don't append dot when drive letter is absolute.
18265         [TEST_DIRNAME]: Move into a full-blown gnulib test.
18266         * lib/basename.c (base_name): New semantics - malloc the result.
18267         Preserve // when it is special.  Preserve relative files that look
18268         like drive letters.
18269         (base_len): Preserve // when it is special.
18270         (last_component): New method, similar to old base_name semantics.
18271         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
18272         base_name.  Strip redundant slashes from ///.
18273
18274 2006-07-03  Jim Meyering  <jim@meyering.net>
18275
18276         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
18277         macro is used before the first cycle_check call.
18278
18279 2006-07-03  Eric Blake  <ebb9@byu.net>
18280
18281         * modules/dirname (Depends-on): Add xstrndup.
18282
18283 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
18284
18285         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
18286         test cases, so that config.log is a bit easier to follow.
18287
18288 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
18289
18290         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
18291         both are 64 bits, since this seems to be the tradition, and this
18292         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
18293         we ever run into a host that prefers long long to long in this
18294         case, we'll need another configure-time test.  Problem reported by
18295         Jim Meyering.
18296
18297 2006-07-02  Eric Blake  <ebb9@byu.net>
18298
18299         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
18300
18301 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
18302
18303         * modules/inttypes (Depends-on): No longer depends on stdint.
18304         * modules/stdint (Description): Say more about assumptions.
18305         Say that the fast types might differ.  Say macros are used.
18306         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
18307         (Makefile.am): Revise list of substituted symbols to match
18308         new stdint.m4.
18309         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
18310         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
18311         * tests/test-stdint.c (verify_same_types)
18312         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
18313         the code conforms to C99/C89.
18314         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
18315         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
18316
18317 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
18318
18319         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
18320         but fix a bug, by requiring at least 64 bits.
18321         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
18322         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
18323         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
18324         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
18325
18326         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
18327         changes.  Make 2.59 a prerequisite.  Check and substitute for
18328         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
18329         inttypes.h.  Do not use special include files; just use the
18330         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
18331         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
18332         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
18333         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
18334         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
18335         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
18336         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
18337         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
18338         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
18339         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
18340         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
18341         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
18342         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
18343         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
18344         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
18345         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
18346         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
18347         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
18348         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
18349         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
18350         WINT_MAX.  Check for C99 conformance more strictly, by detecting
18351         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
18352         not check for things that C99 does not require, e.g., int8_t.  If
18353         a test isn't needed unless <stdint.h> isn't working, and is
18354         unlikely to be needed for any other reason, then don't do it
18355         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
18356         size_t, since we assume C89 freestanding at least.  Do not check
18357         for sig_atomic_t, wchar_t, or wint_t, since the code now does
18358         the right thing even if the types are not defined.  Instead use:
18359         (gl_STDINT_TYPE_PROPERTIES): New macro.
18360         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
18361         testing whether <sys/types.h> clashes, as Autoconf does this for
18362         us now.  All uses removed.
18363         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
18364         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
18365         (gl_CHECK_TYPE_SAME):
18366         Remove; no longer needed.
18367         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
18368         exists, since we'll return 0 anyway in that case.
18369         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
18370
18371 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
18372
18373         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
18374         possible collision with system files.
18375         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
18376         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
18377         WCHAR_MIN and WCHAR_MAX in this case.
18378         (<stddef.h>): Do not include; no longer needed.
18379         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
18380         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
18381         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
18382         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
18383         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
18384         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
18385         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
18386         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
18387         !defined(__c99))]: Include in this case too, since it's harmless
18388         now.
18389         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
18390         dangerous to do so.
18391         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
18392         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
18393         (_STDINT_MIN, _STDINT_MAX): New macros.
18394         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
18395         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
18396         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
18397         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
18398         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
18399         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
18400         macros, not typedefs; this simplifies things quite a bit.
18401         Use long int for all types narrower than int64_t.
18402         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
18403         Define in terms of long long int or int64_t or long int,
18404         not int64_t or int32_t.  This saves some compile-time testing.
18405         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
18406         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
18407         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
18408         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
18409         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
18410         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
18411         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
18412         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
18413         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
18414         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
18415         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
18416         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
18417         undef any previous version and define our own version, for
18418         simplicity and consistency with the new macros for types.
18419         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
18420         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
18421         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
18422         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
18423         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
18424         @WINT_T_SUFFIX@ to keep things simple here.
18425         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
18426         Simplify by assuming typical 8/16/32/64 host, since we're
18427         already doing that elsewhere anyway.
18428         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
18429         and assume long long int is 64 bits if available.  This
18430         speeds up 'configure'.
18431
18432 2006-07-01  Eric Blake  <ebb9@byu.net>
18433
18434         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
18435         Reported by Andreas Buening.
18436
18437 2006-07-01  Eric Blake  <ebb9@byu.net>
18438
18439         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
18440
18441 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
18442
18443         * lib/getaddrinfo.c: fixed typo
18444
18445 2006-06-29  Jim Meyering  <jim@meyering.net>
18446
18447         * modules/strftime (Maintainer): Add my name, since with the
18448         FPRINTFTIME changes strftime.c has forked from glibc.
18449
18450 2006-06-29  Eric Blake  <ebb9@byu.net>
18451
18452         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
18453
18454 2006-06-29  Eric Blake  <ebb9@byu.net>
18455
18456         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
18457
18458 2006-06-29  Eric Blake  <ebb9@byu.net>
18459
18460         * lib/stat_.h: New file.
18461
18462 2006-06-29  Eric Blake  <ebb9@byu.net>
18463
18464         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
18465         unused static function.
18466
18467 2006-06-29  Eric Blake  <ebb9@byu.net>
18468
18469         * doc/functions.texi (Function Portability): Document missing lstat
18470         on mingw.
18471
18472 2006-06-29  Eric Blake  <ebb9@byu.net>
18473
18474         * MODULES.html.sh: Add sys_stat.
18475         * modules/sys_stat: New module.
18476         * modules/mkstemp (Depends-on): Add sys_stat.
18477
18478 2006-06-29  Derek R. Price  <derek@ximbiot.com>
18479
18480         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
18481
18482 2006-06-29  Derek R. Price  <derek@ximbiot.com>
18483
18484         * m4/c-bs-a.m4: Removed.
18485
18486 2006-06-29  Derek R. Price  <derek@ximbiot.com>
18487
18488         * lib/strftime.c: Assume strftime() exists.
18489
18490 2006-06-29  Derek Price  <derek@ximbiot.com>
18491
18492         * modules/c-bs-a: Removed - \a is C89.
18493         * MODULES.html.sh: Remove c-bs-a.
18494
18495 2006-06-29  Bruno Haible  <bruno@clisp.org>
18496
18497         * modules/wcwidth (License): Change to LGPL.
18498
18499 2006-06-28  Simon Josefsson  <jas@extundo.com>
18500
18501         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
18502         on _WIN32.
18503
18504         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
18505         getnameinfo.
18506
18507 2006-06-28  Simon Josefsson  <jas@extundo.com>
18508
18509         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
18510
18511 2006-06-28  Simon Josefsson  <jas@extundo.com>
18512
18513         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
18514         functions there.  It will succeed on Windows XP, but on Windows
18515         2000 and (presumably) earlier, it will fail, and use the internal
18516         re-implementation.
18517         (use_win32_p): New function.
18518         (getaddrinfo): Use strtoul on servname, to support numeric ports.
18519         Support AI_NUMERICSERV to disable getservbyname.
18520         (getnameinfo): New function, only supports
18521         NI_NUMERICHOST|NI_NUMERICSERV for now.
18522
18523         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
18524         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
18525         getnameinfo.
18526
18527 2006-06-28  Eric Blake  <ebb9@byu.net>
18528
18529         * modules/wcwidth: New file.
18530         * modules/mbchar (Depends-on): Add wcwidth.
18531         * modules/mbswidth (Depends-on): Add wcwidth.
18532         * MODULES.html.sh: Add wcwidth.
18533
18534 2006-06-28  Eric Blake  <ebb9@byu.net>
18535
18536         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
18537         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
18538
18539 2006-06-28  Eric Blake  <ebb9@byu.net>
18540
18541         * lib/xvasprintf.h: Fix comments.
18542
18543 2006-06-28  Eric Blake  <ebb9@byu.net>
18544
18545         * lib/mbchar.h (wcwidth): Include wcwidth.h.
18546         * lib/mbswidth.c (wcwidth): Move from here...
18547         * lib/wcwidth.h: ...to this new file.
18548
18549 2006-06-28  Derek R. Price  <derek@ximbiot.com>
18550
18551         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
18552
18553         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
18554         it's obsolete.
18555         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
18556
18557 2006-06-28  Derek R. Price  <derek@ximbiot.com>
18558
18559         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
18560         Autoconf 2.60 says this stuff was obsolete.
18561
18562 2006-06-28  Bruno Haible  <bruno@clisp.org>
18563
18564         * modules/wcwidth (Files): Add m4/wchar_t.m4.
18565
18566 2006-06-28  Bruno Haible  <bruno@clisp.org>
18567
18568         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
18569         gt_TYPE_WCHAR_T.
18570
18571 2006-06-28  Bruno Haible  <bruno@clisp.org>
18572
18573         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
18574         declaration for wcwidth.
18575         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
18576
18577 2006-06-28  Bruno Haible  <bruno@clisp.org>
18578
18579         * lib/mkdtemp.c [MINGW]: Include <io.h>.
18580         (mkdir): Define using _mkdir.
18581
18582 2006-06-28  Bruno Haible  <bruno@clisp.org>
18583
18584         * lib/getaddrinfo.h: Fix POSIX URL.
18585         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
18586         _WIN32.
18587         (use_win32_p): Make static.
18588         (getaddrinfo): Reject service name if it is empty or does not consist
18589         solely of decimal digits, or if its value is > 65535.
18590         (getnameinfo): Remove useless casts.
18591
18592 2006-06-27  Simon Josefsson  <jas@extundo.com>
18593
18594         * modules/sys_select: New file, suggested by Bruno Haible, Paul
18595         Eggert and Martin Lambers.
18596
18597 2006-06-27  Simon Josefsson  <jas@extundo.com>
18598
18599         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
18600         Eggert and Martin Lambers.
18601
18602 2006-06-27  Bruno Haible  <bruno@clisp.org>
18603
18604         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
18605         result to 0, not to empty.
18606         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
18607
18608 2006-06-27  Bruno Haible  <bruno@clisp.org>
18609
18610         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
18611
18612 2006-06-26  Simon Josefsson  <jas@extundo.com>
18613
18614         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
18615         present.
18616
18617 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
18618
18619         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
18620         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
18621         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
18622
18623 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
18624
18625         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
18626
18627 2006-06-26  Bruno Haible  <bruno@clisp.org>
18628
18629         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
18630
18631 2006-06-26  Bruno Haible  <bruno@clisp.org>
18632
18633         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
18634
18635 2006-06-26  Bruno Haible  <bruno@clisp.org>
18636
18637         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
18638         SGI C compiler in pre-C99 mode.
18639         Suggested by Mark D. Baushke and Larry Jones.
18640
18641 2006-06-26  Bruno Haible  <bruno@clisp.org>
18642
18643         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
18644         WCHAR_MAX.
18645         Reported by Mark D. Baushke and Larry Jones.
18646
18647 2006-06-26  Bruno Haible  <bruno@clisp.org>
18648
18649         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
18650         in pre-C99 mode.
18651         Suggested by Mark D. Baushke and Larry Jones.
18652
18653 2006-06-23  Simon Josefsson  <jas@extundo.com>
18654             Bruno Haible  <bruno@clisp.org>
18655
18656         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
18657         Emit mostlyclean-local rule.
18658         (func_emit_tests_Makefile_am): Likewise.
18659         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
18660
18661 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
18662
18663         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
18664
18665 2006-06-23  Bruno Haible  <bruno@clisp.org>
18666
18667         * tests/test-stdint.c: Update to match ISO C 99 Technical
18668         Corrigendum 1.
18669
18670 2006-06-23  Bruno Haible  <bruno@clisp.org>
18671
18672         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
18673
18674 2006-06-23  Bruno Haible  <bruno@clisp.org>
18675
18676         * lib/stdint_.h: Treat IRIX like OpenBSD.
18677
18678 2006-06-23  Bruno Haible  <bruno@clisp.org>
18679
18680         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
18681         ISO C 99 Technical Corrigendum 1.
18682
18683 2006-06-22  Simon Josefsson  <jas@extundo.com>
18684
18685         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
18686         MinGW.
18687
18688 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
18689
18690         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
18691         needed.  Some compiler complained about some of them.  Problem reported
18692         by Larry Jones in
18693         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
18694
18695 2006-06-21  Simon Josefsson  <jas@extundo.com>
18696
18697         * tests/test-getaddrinfo.c: New file.
18698
18699         * modules/getaddrinfo-tests: New file.
18700
18701         * MODULES.html.sh: Add inet_pton.
18702
18703         * modules/inet_pton: New file.
18704
18705 2006-06-21  Simon Josefsson  <jas@extundo.com>
18706
18707         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
18708         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
18709         of using the (limited) gnulib implementation on Windows XP.
18710
18711         * m4/inet_pton.m4: New file.
18712
18713 2006-06-21  Simon Josefsson  <jas@extundo.com>
18714
18715         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
18716         variable.
18717
18718         * lib/socket_.h: Don't define WINVER.
18719
18720         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
18721         slightly modified to work in gnulib.
18722
18723 2006-06-21  Simon Josefsson  <jas@extundo.com>
18724
18725         * doc/gnulib.texi (Windows sockets): Add.
18726
18727 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
18728
18729         * lib/read-file.c (fread_file): Start with buffer allocation of
18730         0 bytes rather than 1 byte; this simplifies the code.
18731         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
18732         code to free buffer and save/restore errno.
18733         (internal_read_file): Remove unused local.
18734
18735 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
18736
18737         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
18738         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
18739         Problem reported by Denis Excoffier in
18740         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
18741
18742 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
18743
18744         * modules/sys_socket, modules/socklen: Include sys/types since
18745         FreeBSD 4.x's sys/socket.h needs it.
18746
18747 2006-06-19  Simon Josefsson  <jas@extundo.com>
18748
18749         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
18750
18751 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
18752
18753         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
18754
18755 2006-06-19  Bruno Haible  <bruno@clisp.org>
18756
18757         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
18758         and FULL_PATH_INTTYPES_H in angle brackets.
18759         Reported by Mark D. Baushke <mdb@gnu.org>.
18760
18761 2006-06-17  Eric Blake  <ebb9@byu.net>
18762
18763         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
18764         errno.
18765
18766 2006-06-17  Bruno Haible  <bruno@clisp.org>
18767
18768         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
18769         <sys/inttypes.h>.
18770
18771 2006-06-17  Bruno Haible  <bruno@clisp.org>
18772
18773         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
18774         whether errno is declared. Assume <errno.h> declares errno.
18775
18776 2006-06-17  Bruno Haible  <bruno@clisp.org>
18777
18778         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
18779
18780 2006-06-17  Bruno Haible  <bruno@clisp.org>
18781
18782         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
18783         problem on Solaris 2.5.1.
18784
18785 2006-06-16  Eric Blake  <ebb9@byu.net>
18786
18787         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
18788         * lib/unicodeio.c [!defined errno]: Likewise.
18789         * lib/strtol.c [!defined errno]: Likewise.
18790         * lib/strtod.c [!defined errno]: Likewise.
18791
18792 2006-06-15  Eric Blake  <ebb9@byu.net>
18793
18794         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
18795
18796 2006-06-15  Eric Blake  <ebb9@byu.net>
18797
18798         * config/srclist.txt (ssize_t.m4): Lose sync.
18799
18800 2006-06-15  Bruno Haible  <bruno@clisp.org>
18801
18802         * modules/stdint (Files): Include m4/full-header-path.m4,
18803         m4/size_max.m4, m4/wchar_t.m4.
18804         (Makefile.am): Many more substitutions.
18805         * modules/stdint-tests: New file.
18806         * tests/test-stdint.c: New file.
18807
18808 2006-06-15  Bruno Haible  <bruno@clisp.org>
18809
18810         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
18811         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
18812         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
18813         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
18814         gl_CHECK_TYPE_SAME): New macros.
18815
18816 2006-06-15  Bruno Haible  <bruno@clisp.org>
18817
18818         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
18819
18820 2006-06-15  Bruno Haible  <bruno@clisp.org>
18821
18822         * lib/stdint_.h: Rewritten to be fully auto-configured.
18823         Fixes bug on HP-UX/IA64.
18824
18825 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
18826
18827         * lib/getdate.y (__attribute__): Don't define if already defined.
18828         Problem reported by Larry Jones.
18829         * lib/utimens.c (__attribute__): Likewise.
18830
18831 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
18832
18833         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
18834         reported by Andreas Schwab.
18835
18836 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18837             Bruno Haible  <bruno@clisp.org>
18838
18839         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
18840         check for the declaration of strnlen and a run test that exposes the
18841         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
18842         rpl_strndup.
18843
18844 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18845             Bruno Haible  <bruno@clisp.org>
18846
18847         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
18848
18849 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18850
18851         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
18852         compile test, for Tru64 4.0D.
18853
18854 2006-05-28  Karl Berry  <karl@gnu.org>
18855
18856         * config/srclist.txt (printf-args.c): lose sync.
18857
18858 2006-05-26  Martin Lambers  <marlam@marlam.de>
18859
18860         * lib/getpass.c: Updates the test for the native W32 API, and adds
18861         missing includes, thus fixing compilation warnings.
18862
18863 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
18864
18865         * lib/exclude.c (exclude_fnmatch): New function.
18866         (excluded_file_name): Call exclude_fnmatch.
18867         * lib/exclude.h (excluded_file_name): New prototype
18868
18869 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
18870
18871         * lib/tempname.c (small_open, large_open): New macros.
18872         (__open, __open64) [!_LIBC]: Remove.
18873         (__gen_tempname): Use small_open and large_open instead of __open
18874         and __open64.  This fixes a portability bug on HP-UX 11.11i
18875         reported by Simon Wing-Tang in
18876         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
18877
18878 2006-05-24  Bruno Haible  <bruno@clisp.org>
18879
18880         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
18881         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
18882         Reported by Thorsten Maerz <torte@netztorte.de> via
18883         Aaron Stone <aaron@serendipity.cx>.
18884
18885 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
18886
18887         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
18888         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
18889         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
18890         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
18891         not really conditional on the cache.
18892         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
18893
18894 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
18895
18896         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
18897         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
18898         (my_usleep): Don't mishandle maximum value.
18899
18900 2006-05-19  Jim Meyering  <jim@meyering.net>
18901
18902         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
18903
18904 2006-05-17  Bruno Haible  <bruno@clisp.org>
18905
18906         Cygwin portability.
18907         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
18908
18909 2006-05-17  Bruno Haible  <bruno@clisp.org>
18910
18911         * lib/stdint_.h: Fix recognition of Cygwin.
18912
18913 2006-05-15  Bruno Haible  <bruno@clisp.org>
18914
18915         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
18916         on libtool patch by Ralf Wildenhues.
18917
18918 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
18919
18920         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
18921         test for C99 conformance; (bool) 0.5 is an integer constant
18922         expression, but (bool) -0.5 is not.  Problem reported by Fedor
18923         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
18924
18925 2006-05-11  Simon Josefsson  <jas@extundo.com>
18926
18927         * m4/xvasprintf.m4: Fix obvious typo.
18928
18929 2006-05-11  Jim Meyering  <jim@meyering.net>
18930
18931         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
18932         James Lemley.
18933
18934 2006-05-10  Simon Josefsson  <jas@extundo.com>
18935
18936         * lib/md4.c: Typo fix, update copyright years.
18937         (K1, K2): Don't use L because it turn computations into 64-bit on
18938         64-bit platforms.
18939
18940 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
18941
18942         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
18943         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
18944         unwanted sign propagation, e.g., on hosts with 64-bit int.
18945         There still are some problems with reeelly weird theoretical hosts
18946         (e.g., 33-bit int) but it's not worth worrying about now.
18947         * lib/sha1.c (rol): Likewise.
18948         (K1, K2, K3, K4): Remove unnecessary L suffix.
18949
18950 2006-05-10  Bruno Haible  <bruno@clisp.org>
18951
18952         * lib/des.c: Cast to avoid warnings.
18953
18954 2006-05-09  Bruno Haible  <bruno@clisp.org>
18955
18956         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
18957         (Depends-on): Depend also on xsize, stdarg.
18958         (configure.ac): Add gl_XVASPRINTF.
18959
18960 2006-05-09  Bruno Haible  <bruno@clisp.org>
18961
18962         * m4/xvasprintf.m4: New file.
18963
18964 2006-05-09  Bruno Haible  <bruno@clisp.org>
18965
18966         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
18967         (EOVERFLOW): Define fallback value.
18968         (xstrcat): New function.
18969         (xvasprintf): Recognize the special case of a string concatenation.
18970
18971 2006-05-08  Eric Blake  <ebb9@byu.net>
18972
18973         * gnulib-tool (func_version): Base copyright year on CVS date.
18974         (func_emit_copyright_notice): New function.
18975         (func_emit_lib_Makefile_am): Use it.
18976         (func_emit_tests_Makefile_am): Likewise.
18977         (func_import): Likewise.
18978
18979 2006-05-08  Bruno Haible  <bruno@clisp.org>
18980
18981         * modules/stdarg: New file.
18982         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
18983
18984 2006-05-08  Bruno Haible  <bruno@clisp.org>
18985
18986         * m4/stdarg.m4: New file, from GNU gettext.
18987
18988 2006-05-08  Bruno Haible  <bruno@clisp.org>
18989
18990         * config/srclist.txt (build-aux/config.rpath): different from latest
18991         release.
18992
18993 2006-05-08  Bruno Haible  <bruno@clisp.org>
18994
18995         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
18996
18997 2006-05-05  Jim Meyering  <jim@meyering.net>
18998
18999         * m4/warning.m4: New file, derived from bison's file by the same name.
19000
19001 2006-05-03  Bruno Haible  <bruno@clisp.org>
19002
19003         * lib/stdint_.h: Shorter URL.
19004         * lib/inttypes.h: Likewise.
19005
19006 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
19007
19008         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
19009
19010 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
19011
19012         * lib/verify.h: Document the internals better.  Most of this change
19013         was written by Bruno Haible.
19014
19015 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
19016
19017         * doc/verify.texi: New file, partly based on a proposal by
19018         Bruno Haible.
19019
19020 2006-05-02  Bruno Haible  <bruno@clisp.org>
19021
19022         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
19023         test from here...
19024         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
19025
19026 2006-04-29  Bruno Haible  <bruno@clisp.org>
19027
19028         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
19029         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
19030
19031 2006-04-29  Bruno Haible  <bruno@clisp.org>
19032
19033         * gnulib-tool: Make --update option actually work.
19034
19035 2006-04-29  Bruno Haible  <bruno@clisp.org>
19036
19037         * doc/gcd.texi: New file.
19038         * doc/gnulib.texi: Include it.
19039
19040 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
19041
19042         * lib/getdate.y (get_date): When adding relative date, start with the
19043         initial time, not with the result of the first mktime call.
19044
19045 2006-04-25  Bruno Haible  <bruno@clisp.org>
19046
19047         * gnulib-tool (func_import): Output the include directives in three
19048         blocks, sorted separately.
19049         Reported by Ben Pfaff <blp@cs.stanford.edu>.
19050
19051 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
19052
19053         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
19054         to define main with arguments, for C++.  Reported by Eric Blake.
19055         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
19056         Prefer 'int main ()' to 'int main (void)', for C++.
19057         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
19058         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
19059         for 'main', for C99 and C++.
19060
19061 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
19062
19063         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
19064         Don't assume that exit status -1 is valid.
19065         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
19066         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
19067         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
19068         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
19069         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
19070         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
19071         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
19072         functions can be used without declaring them, or that you can
19073         exit with status -1.
19074         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
19075
19076 2006-04-24  Karl Berry  <karl@gnu.org>
19077
19078         * config/srclist.txt (longdouble.m4): sync lost.
19079
19080 2006-04-24  Eric Blake  <ebb9@byu.net>
19081
19082         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
19083
19084 2006-04-24  Bruno Haible  <bruno@clisp.org>
19085
19086         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
19087         poll() implementation in AIX.
19088         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19089
19090 2006-04-24  Bruno Haible  <bruno@clisp.org>
19091
19092         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
19093         assigned exactly once.
19094
19095 2006-04-23  Claudio Fontana  <claudio@gnu.org>
19096             Bruno Haible  <bruno@clisp.org>
19097
19098         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
19099         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
19100         for AM_CPPFLAGS.
19101
19102 2006-04-23  Bruno Haible  <bruno@clisp.org>
19103
19104         * modules/copy-file: Depend on unistd.
19105         * modules/execute: Likewise.
19106         * modules/fatal-signal: Likewise.
19107         * modules/findprog: Likewise.
19108         * modules/mkdtemp : Likewise.
19109         * modules/pipe: Likewise.
19110         * modules/wait-process: Likewise.
19111
19112 2006-04-23  Bruno Haible  <bruno@clisp.org>
19113
19114         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
19115         condition was already detected.
19116         Reported by Ben Pfaff <blp@cs.stanford.edu>.
19117
19118 2006-04-23  Bruno Haible  <bruno@clisp.org>
19119
19120         * lib/copy-file.c: Include <unistd.h> unconditionally.
19121         * lib/execute.c: Likewise.
19122         * lib/fatal-signal.c: Likewise.
19123         * lib/findprog.c: Likewise.
19124         * lib/mkdtemp.c: Likewise.
19125         * lib/pipe.h: Likewise.
19126         * lib/pipe.c: Likewise.
19127         * lib/wait-process.h: Likewise.
19128
19129 2006-04-23  Bruno Haible  <bruno@clisp.org>
19130
19131         * gnulib-tool (func_usage): Fix --import description. Document
19132         --update.
19133         (func_import): Create temporary file in a temporary directory, if
19134         --dry-run is specified. Silence errors from 'grep' when there are no
19135         m4 files in $m4dir.
19136         (func_create_testdir): Silence errors from 'grep' when there are no
19137         m4 files in $m4dir.
19138         Reported by Karl Berry <karl@freefriends.org>.
19139
19140 2006-04-20  Bruno Haible  <bruno@clisp.org>
19141
19142         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
19143         one argument, so that the code will be portable to Autoconf 2.60.
19144         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
19145         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
19146         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
19147
19148 2006-04-19  Derek Price  <derek@ximbiot.com>
19149             Eric Blake  <ebb9@byu.net>
19150
19151         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
19152         rather than "/full/path.h".  Update comment to match.  Shorten &
19153         generalize m4_translit call via AS_TR_CPP.
19154
19155 2006-04-19  Derek Price  <derek@ximbiot.com>
19156             Eric Blake  <ebb9@byu.net>
19157
19158         * lib/inttypes.h: Correct grammar in comment.
19159
19160 2006-04-18  Derek Price  <derek@ximbiot.com>
19161             Paul Eggert  <eggert@cs.ucla.edu>
19162
19163         * modules/inttypes: New file.
19164         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
19165
19166 2006-04-18  Derek Price  <derek@ximbiot.com>
19167             Paul Eggert  <eggert@cs.ucla.edu>
19168
19169         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
19170         New files.
19171
19172 2006-04-18  Derek Price  <derek@ximbiot.com>
19173             Paul Eggert  <eggert@cs.ucla.edu>
19174
19175         * lib/inttypes.h: New file.
19176         * lib/strtoimax.c: Assume <inttypes.h>.
19177
19178 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
19179
19180         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
19181         isn't mounted.  Problem reported by Kir Kolyshkin.
19182
19183 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19184
19185         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
19186         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
19187         Derek R. Price.
19188         * lib/regex.h (RE_DUP_MAX): Update comment to match current
19189         implementation.
19190
19191 2006-04-12  Eric Blake  <ebb9@byu.net>
19192
19193         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
19194         is now done automatically by the corresponding Autoconf macro.
19195
19196 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19197
19198         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
19199         time_r.h.
19200
19201 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19202
19203         Merge regex changes from libc, removing some of our
19204         POSIX-conformance changes that were rejected and redoing them in a
19205         less-intrusive way.
19206
19207         * lib/regcomp.c (re_compile_internal, init_dfa):
19208         Length arg is now size_t, not Idx.  All uses changed.
19209         (peek_token): Forward decl now says internal_function.
19210         (__re_error_msgid, __re_error_msgid_idx):
19211         Now static rather than extern with attribute_hidden.
19212         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
19213         For some reason libc prefers K&R style defns for external functions.
19214         (regerror) [!defined _LIBC]: Likewise.
19215         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
19216         (seek_collating_symbol_entry, lookup_collation_sequence_value):
19217         (build_range_exp, build_collating_symbol):
19218         Use K&R-style defn.
19219         (re_compile_fastmap): Use '\0' to memset, not 0.
19220         (utf8_sb_map): Make the calculations more obvious.
19221         (init_dfa, parse_bracket_exp, build_charclass_op):
19222         Call calloc and cast result, as glibc does.
19223         (init_word_char, fetch_token, peek_token, peek_token_bracket):
19224         (build_range_exp, build_collating_symbol):
19225         Now internal functions.
19226
19227         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
19228
19229         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
19230         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
19231         Don't depend on VMS; depend on __VMS instead, for POSIX
19232         namespace cleanness.
19233         (regoff_t): Define to ssize_t, not long int.
19234
19235         Remove the REG_ macros named below.  Instead, make the old names
19236         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
19237         __USE_GNU_REGEX.
19238         (REG_BACKSLASH_ESCAPE_IN_LISTS):
19239         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
19240         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
19241         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
19242         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
19243         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
19244         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
19245         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
19246         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
19247         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
19248         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
19249         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
19250         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
19251         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
19252         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
19253         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
19254         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
19255         (REG_NREGS):
19256         Remove.  All uses replaced by the old RE_* names.
19257         (RE_BACKSLASH_ESCAPE_IN_LISTS):
19258         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
19259         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
19260         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
19261         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
19262         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
19263         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
19264         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
19265         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
19266         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
19267         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
19268         Don't bother having these macros be independent of each others'
19269         values, since they no longer exist in the POSIX name space.
19270
19271         Rename the following member names back to their old names,
19272         unless !__USE_GNU_REGEX.  All uses changed back.
19273         (buffer): Renamed from re_buffer.
19274         (allocated): Renamed from re_allocated.
19275         (used): Renamed from re_used.
19276         (syntax): Renamed from re_syntax.
19277         (fastmap): Renamed from re_fastmap.
19278         (translate): Renamed from re_translate.
19279         (can_be_null): Renamed from re_can_be_null.
19280         (regs_allocated): Renamed from re_regs_allocated.
19281         (fastmap_accurate): Renamed from re_fastmap_accurate.
19282         (no_sub): Renamed from re_no_sub.
19283         (not_bol): Renamed from re_not_bol.
19284         (not_eol): Renamed from re_not_eol.
19285         (newline_anchor): Renamed from re_newline_anchor.
19286         (num_regs): Renamed from rm_num_regs.
19287         (start): Renamed from rm_start.
19288         (end): Renamed from rm_end.
19289
19290         (free_state): Move up a bit.
19291
19292         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
19293         #define to be empty.
19294         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
19295         when that is what is intended.
19296         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
19297         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
19298         (MAX): New macro.
19299         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
19300         All uses changed back to re_malloc, etc.  It's now the caller's
19301         responsibility to check for overflow; all callers changed.
19302         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
19303         (re_x2nrealloc): Remove.
19304         (free_state): Remove decl.
19305
19306         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
19307         (re_set_registers, re_exec):
19308         Use K&R-style defn.
19309
19310         2006-01-31  Roland McGrath  <roland@redhat.com>
19311
19312         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
19313         Reported by Mike Frysinger <vapier@gentoo.org>.
19314
19315         2006-01-15  Andreas Jaeger  <aj@suse.de>
19316
19317         [BZ #1950]
19318         * lib/regex_internal.c (re_string_reconstruct): Adjust for
19319         build_wcs_upper_buffer change.
19320         (build_wcs_upper_buffer): Change return type.
19321
19322         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
19323
19324         * lib/regex_internal.h: Include <stdint.h> if available.
19325
19326         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
19327
19328         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
19329
19330         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
19331
19332         * lib/regcomp.c: Adjust for changed secondary hash function.
19333
19334         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
19335
19336         * lib/regex.h: Pretty printing.
19337         Clean up namespace a bit.
19338
19339         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
19340
19341         * lib/regexec.c (update_cur_sifted_state, check_arrival,
19342         check_arrival_add_next_nodes): Avoid using uninitialized variable.
19343
19344         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
19345                     Ulrich Drepper  <drepper@redhat.com>
19346
19347         [BZ #1302]
19348         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
19349         changed.
19350         (bitset_word_t): Renamed from bitset_word.  All uses changed.
19351
19352         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
19353
19354         [BZ #281]
19355         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
19356         * lib/regcomp.c: Remove unnecessary uses of
19357         unsigned RE_TRANSLATE_TYPE.
19358         * lib/regex_internal.h: Likewise.
19359         * lib/regex_internal.c: Likewise.
19360         * lib/regexec.c: Likewise.
19361         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
19362
19363         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
19364
19365         * lib/regexec.c (find_recover_state): Remove unnecessary
19366         initialization.
19367         (transit_state_bkref): Make DFA a const pointer.
19368         (get_subexp): Likewise.
19369         (check_arrival): Likewise.
19370         (update_cur_sifted_state): Likewise.
19371         (re_search_internal): Likewise.
19372         (prune_impossible_nodes): Likewise.
19373         (acquire_init_state_context): Likewise.
19374         (proceed_next_node): Likewise.
19375         (set_regs): Likewise.
19376         (free_fail_stack_return): Likewise.
19377         (check_arrival_expand_ecl): Mark DFA parameter as const.
19378         (check_arrival_expand_ecl_sub): Likewise.
19379         (check_subexp_limits): Likewise.
19380         (sub_epsilon_src_nodes):  Likewise.
19381         (add_epsilon_src_nodes):  Likewise.
19382         (merge_state_array): Likewise.
19383         (update_regs): Likewise.
19384         (build_trtable): Likewise.
19385         (sift_states_backward): Mark MCTX parameter as const.
19386         (build_sifted_states): Likewise.
19387         (update_cur_sifted_state): Likewise.
19388         (sift_states_mkref): Likewise.
19389         (check_arrival_expand_ecl): Mark eclosure as const.
19390         (check_dst_limits_calc_pos_1): Likewise.
19391         * lib/regex_internal.h (re_match_context_t): Make dfa a const
19392         pointer.
19393
19394         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
19395
19396         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
19397         (transit_state_sb): Likewise.
19398         (transit_state_mb): Likewise.
19399         (sift_states_iter_mb): Likewise.
19400         (check_arrival_add_next_nodes): Likewise.
19401         (check_node_accept_bytes): Change first parameter to pointer-to-const.
19402         [_LIBC] (re_search_2_stub): Use mempcpy.
19403
19404         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
19405         mbrtowc for very simple UTF-8 case.
19406
19407         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
19408         a pointer-to-const.
19409         (re_acquire_state_context): Likewise.
19410         * lib/regex_internal.h: Adjust prototypes.
19411
19412         * lib/regex.c: Prevent using C++ compilers.
19413
19414         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
19415         (re_acquire_state_context): Likewise.
19416
19417 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19418
19419         * modules/regex (Depends-on): Add ssize_t.
19420
19421 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19422
19423         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
19424         translation table.
19425
19426 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19427
19428         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
19429
19430 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
19431             Bruno Haible  <bruno@clisp.org>
19432
19433         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
19434         <sys/types.h> and <inttypes.h>.
19435
19436 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19437
19438         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
19439         `__error_t_defined', so argp.h will not typedef the former.
19440
19441 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
19442
19443         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
19444         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
19445         glibc names.  Even if glibc is changed to conform to POSIX, the
19446         traditional names will be available anyway, since regex depends on
19447         the extensions module.  Also, fix a longstanding typo in the
19448         implementation of Spencer ERE test #75 from grep 2.3.  Problems
19449         reported by Emanuele Giaquinta.  Also, change sense of cached
19450         variable, so that the message makes sense.
19451
19452 2006-03-24  Simon Josefsson  <jas@extundo.com>
19453
19454         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
19455         including some doc fixes.
19456         (base64_encode_alloc): Fix +1 bug on allocation failures.
19457
19458 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19459
19460         * lib/base64.c (base64_encode): Do not read past end of array with
19461         unsanitized input on systems with CHAR_BIT > 8.
19462
19463 2006-03-24  Eric Blake  <ebb9@byu.net>
19464
19465         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
19466
19467 2006-03-22  Karl Berry  <karl@gnu.org>
19468
19469         * config/srclist.txt (*setenv.[ch]): get from coreutils.
19470         * config/srclistvars.sh (COREUTILS): new var.
19471
19472 2006-03-17  Jim Meyering  <jim@meyering.net>
19473
19474         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
19475         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
19476
19477 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
19478
19479         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
19480         no longer needs it.  Instead, check that regoff_t is as least
19481         as wide as ptrdiff_t.
19482
19483         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
19484         so that our regex.h stays compatible with the installed regex.
19485         This is helpful for installers who configure --without-included-regex.
19486         Problem reported by Emanuele Giaquinta.
19487
19488 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
19489
19490         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
19491         Typedef to long int, not to off_, as POSIX will likely change
19492         in that direction.
19493
19494 2006-03-15  Eric Blake  <ebb9@byu.net>
19495
19496         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
19497
19498 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
19499
19500         * lib/argp-help.c (validate_uparams): Fix typo
19501         * lib/argp-parse.c (argp_default_options): Consistently begin help
19502         messages with a lowercase letter.
19503
19504 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
19505
19506         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
19507         overrun buffers and shouldn't be used (much as gets shouldn't be
19508         used).
19509         * lib/time_r.c (asctime_r, ctime_r): Likewise.
19510
19511 2006-03-08  Simon Josefsson  <jas@extundo.com>
19512
19513         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
19514         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19515
19516 2006-03-08  Simon Josefsson  <jas@extundo.com>
19517
19518         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
19519         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19520
19521 2006-03-08  Simon Josefsson  <jas@extundo.com>
19522
19523         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
19524         signal that configure disabled the device.
19525
19526 2006-03-08  Simon Josefsson  <jas@extundo.com>
19527
19528         * build-aux/maint.mk: Fix refresh-po, to handle no translated
19529         languages.
19530
19531 2006-03-07  Simon Josefsson  <jas@extundo.com>
19532
19533         * modules/getopt (Depends-on): Add unistd.
19534
19535         * modules/unistd: New file.
19536
19537 2006-03-07  Simon Josefsson  <jas@extundo.com>
19538
19539         * modules/gc-random: New file.
19540
19541 2006-03-07  Simon Josefsson  <jas@extundo.com>
19542
19543         * m4/unistd_h.m4: New file.
19544
19545 2006-03-07  Simon Josefsson  <jas@extundo.com>
19546
19547         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
19548         test to be side-effect free by storing the result in the cache
19549         variable gl_cv_lib_readline, and moving the assignment of
19550         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
19551         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19552
19553 2006-03-07  Simon Josefsson  <jas@extundo.com>
19554
19555         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
19556         error on missing devices (the functions will return an error).
19557
19558         * m4/gc.m4: Move random stuff to gc-random.m4
19559
19560 2006-03-07  Simon Josefsson  <jas@extundo.com>
19561
19562         * lib/unistd_.h: New file.
19563
19564 2006-03-07  Simon Josefsson  <jas@extundo.com>
19565
19566         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
19567
19568 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
19569
19570         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
19571         Problem reported by Juan Manuel Guerrero.
19572
19573 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
19574
19575         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
19576         the unistd module.
19577         * lib/getlogin_r.c: Likewise.
19578         * lib/getlogin_r.h: Likewise.
19579         * lib/glob.c: Likewise.
19580         * lib/pagealign_alloc.c: Likewise.
19581         * lib/unistd_.h: Remove; no longer needed.
19582
19583 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
19584
19585         * MODULES.html.sh (Support for systems lacking POSIX:2001):
19586         Add unistd.
19587         * modules/c-stack (Depends-on): Add unistd.
19588         * modules/getlogin_r: Likewise.
19589         * modules/glob: Likewise.
19590         * modules/pagealign_alloc: Likewise.
19591         * modules/unistd (Files): Remove lib/unistd_.h.
19592         (EXTRA_DIST): Remove.
19593         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
19594         need unistd_.h.
19595         (MOSTLYCLEANFILES): Remove unistd.h-t.
19596
19597 2006-03-03  Simon Josefsson  <jas@extundo.com>
19598
19599         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
19600
19601 2006-03-03  Simon Josefsson  <jas@extundo.com>
19602
19603         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
19604         libidn and bison.
19605
19606 2006-03-03  Simon Josefsson  <jas@extundo.com>
19607
19608         * build-aux/maint.mk: Add indent target.
19609
19610 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
19611
19612         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
19613         our replacement poll.h in any case, to avoid a differing
19614         declaration from a system header.  Seen on AIX.
19615
19616 2006-03-01  Simon Josefsson  <jas@extundo.com>
19617
19618         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
19619         <kasal@ucw.cz>.
19620
19621 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
19622
19623         * modules/gettime (Depends-on): Add extensions module.
19624         * modules/nanosleep (Depends-on): Likewise.
19625         * modules/settime (Depends-on): Likewise.
19626
19627 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
19628
19629         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
19630         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
19631         pedantically.
19632         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
19633         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
19634
19635         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
19636         not "==".  Reported by Ralf Wildenhues.
19637
19638 2006-03-01  Karl Berry  <karl@gnu.org>
19639
19640         * doc/Copyright/request-*: new files, synced from gnuorg.
19641
19642 2006-03-01  Karl Berry  <karl@gnu.org>
19643
19644         * config/srclist.txt (Copyright/*): new entries.
19645
19646 2006-02-28  Simon Josefsson  <jas@extundo.com>
19647
19648         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
19649
19650 2006-02-27  Simon Josefsson  <jas@extundo.com>
19651
19652         * lib/base64.h: Indent #define's.  From Jim Meyering
19653         <jim@meyering.net>.
19654
19655 2006-02-27  Jim Meyering  <jim@meyering.net>
19656
19657         Revert the change of 2006-02-24, so these files can continue
19658         to be sync'd from gettext.
19659         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
19660         of `config.h'.
19661
19662 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
19663
19664         * modules/intprops: New file.
19665         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
19666         Add intprops.
19667         * modules/getloadavg (Files): Remove lib/intprops.h.
19668         (Depends-on): Add intprops.
19669         * modules/human: Likewise.
19670         * modules/inttostr: Likewise.
19671         * modules/openat: Likewise.
19672         * modules/sig2str: Likewise.
19673         * modules/userspec: Likewise.
19674         * modules/utimecmp: Likewise.
19675         * modules/xnanosleep: Likewise.
19676         * modules/xstrtol: Likewise.
19677
19678 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
19679
19680         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
19681         * modules/lock-tests (TESTS): Use $(EXEEXT).
19682         * modules/tls-tests: Likewise.
19683         * modules/argp-tests: Likewise.
19684         (check_PROGRAMS): New var, replacing...
19685         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
19686
19687 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19688
19689         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
19690         `config.h'.
19691
19692 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
19693
19694         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
19695
19696 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19697
19698         Sync from coreutils.
19699         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
19700         gl_CHDIR_SAFER.
19701
19702 2006-02-22  Jim Meyering  <jim@meyering.net>
19703
19704         Sync from coreutils.
19705         * m4/chdir-safer.m4: New file.
19706
19707 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
19708
19709         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
19710         AT_FDCWD exceeds INT_MAX.
19711         * lib/openat.h (AT_FDCWD): Likewise.
19712
19713 2006-02-17  Eric Blake  <address@hidden>
19714
19715         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
19716
19717 2006-02-16  Simon Josefsson  <jas@extundo.com>
19718
19719         * modules/getaddrinfo (Depends-on): Add sys_socket.
19720
19721 2006-02-15  Simon Josefsson  <jas@extundo.com>
19722
19723         * build-aux/maint.mk: Add dsyntax-check rule.
19724
19725 2006-02-15  Eric Blake  <ebb9@byu.net>
19726
19727         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
19728         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
19729         'present but cannot compile' warnings on cygwin.
19730         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
19731         use ws2tcpip.h if sys/socket.h works.
19732         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
19733         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
19734
19735 2006-02-14  Simon Josefsson  <jas@extundo.com>
19736
19737         * modules/maintainer-makefile (Files): Rename.
19738
19739         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
19740         and (the local) Makefile.cfg to maint-cfg.mk.
19741
19742         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
19743         to the latter.
19744
19745         * modules/maintainer-makefile: New module.
19746
19747         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
19748         severaly stripped to make it possible to build it up from scratch
19749         with reliable tests.
19750
19751         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
19752         fixes to permit overriding the default actions when configure and
19753         makefile are not available.
19754
19755 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
19756
19757         Sync from coreutils.
19758         * modules/lstat (Depends-on): Don't depend on xalloc.
19759         (License): Change from GPL to LGPL, since this is now simply a
19760         replacement for a libc function.
19761
19762 2006-02-14  Jim Meyering  <jim@meyering.net>
19763
19764         Sync from coreutils.
19765
19766         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
19767         failure on deficient systems, and simplify gnulib lgpl dependencies.
19768         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
19769         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
19770
19771         * lib/xalloc-die.c: Remove unused definition of N_.
19772
19773 2006-02-14  Jim Meyering  <jim@meyering.net>
19774
19775         Sync from coreutils.
19776         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
19777         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
19778         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
19779         double-quote uses of that variable, to accommodate the rare case in
19780         which getmntent is available in none of the libraries checked.  This
19781         happens at least on FreeBSD 5.0.
19782
19783 2006-02-13  Simon Josefsson  <jas@extundo.com>
19784
19785         * gnulib-tool (Usage): Fix --import, from
19786         karl@freefriends.org (Karl Berry).
19787
19788 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
19789
19790         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
19791
19792 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
19793
19794         * lib/argp-namefrob.h: Restore changes accidentally lost during the
19795         "autoupdate" on 2005-12-12.
19796
19797 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
19798
19799         * modules/closeout (Depends-on): Remove atexit.
19800
19801 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
19802
19803         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
19804         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
19805
19806 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
19807
19808         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
19809         __EXTENSIONS__ if this causes compilation to fail.  Problem
19810         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
19811         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
19812
19813 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
19814
19815         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
19816         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
19817         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
19818         All uses changed.
19819
19820 2006-01-26  Simon Josefsson  <jas@extundo.com>
19821
19822         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
19823         prototype is visible on mingw32.
19824
19825         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
19826         for mingw32.
19827
19828         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
19829         mingw32).
19830
19831 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
19832
19833         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
19834         attempt to open for write; this always fails, at least on POSIX
19835         hosts.  This reinstates the 2006-01-09 change, which was
19836         inadvertently removed.
19837
19838 2006-01-26  Bruno Haible  <bruno@clisp.org>
19839
19840         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
19841         Reported by Paul Eggert.
19842
19843 2006-01-26  Bruno Haible  <bruno@clisp.org>
19844             Paul Eggert  <eggert@cs.ucla.edu>
19845
19846         * lib/stdbool_.h (_Bool)
19847         [(! (defined __cplusplus || defined __BEOS__)
19848           && !defined __GNUC__
19849           && !(defined __HP_cc || defined __xlc__
19850                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
19851                || defined __sgi))]:
19852         #define to signed char in these cases too; this simplifies
19853         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
19854         etc., separately) and makes it more conservative.
19855
19856 2006-01-25  Simon Josefsson  <jas@extundo.com>
19857
19858         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
19859         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
19860         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
19861
19862 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
19863
19864         * lib/argp-namefrob.h: Bugfix. Remove stray #
19865
19866 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
19867
19868         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
19869         so that we test the test.
19870         Check for yet another HP-UX cc bug involving *bool |= bool.
19871
19872 2006-01-25  Karl Berry  <karl@gnu.org>
19873
19874         * config/srclist.txt (vasnprintf.c): sync lost.
19875
19876 2006-01-25  Jim Meyering  <jim@meyering.net>
19877
19878         Sync from the stable (b5) branch of coreutils:
19879
19880         * lib/fts.c (fts_children): Don't let close() clobber errno from
19881         failed fchdir().
19882
19883         * lib/fts.c (fts_stat): When following a symlink-to-directory,
19884         don't necessarily interpret stat-fails+lstat-succeeds as indicating
19885         a dangling symlink.  That can also happen at least for ELOOP.
19886         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
19887         FYI, this bug predates the inclusion of fts.c in coreutils.
19888
19889         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
19890         in their own block, so pre-c99 compilers don't object.
19891
19892         Avoid the double-free (first in fts_read, second in fts_close) that
19893         would occur when an `active' directory is made inaccessible (e.g.,
19894         via chmod a-x) during a traversal.
19895         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
19896         before returning.  Reproduce this failure by
19897         mkdir -p a/b; cd a; chmod a-x . b
19898         Reported by Stavros Passas.
19899
19900 2006-01-25  Jim Meyering  <jim@meyering.net>
19901
19902         * lib/fileblocks.c: Remove more useless parentheses.
19903         * lib/readutmp.h: Likewise.
19904
19905 2006-01-25  Bruno Haible  <bruno@clisp.org>
19906
19907         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
19908         warnings.
19909         Reported by Paul Eggert.
19910
19911 2006-01-25  Bruno Haible  <bruno@clisp.org>
19912
19913         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
19914         rid of a trap command. For Solaris sh.
19915         Reported by Mark D. Baushke <mdb@gnu.org>.
19916
19917 2006-01-24  Simon Josefsson  <jas@extundo.com>
19918
19919         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
19920         Bruno.
19921
19922 2006-01-24  Karl Berry  <karl@gnu.org>
19923
19924         * config/srclist.txt (argp-namefrob.h): sync lost.
19925
19926 2006-01-24  Jim Meyering  <jim@meyering.net>
19927
19928         * modules/openat (Files): Add lib/intprops.h.
19929         From Mark D. Baushke.
19930
19931 2006-01-24  Jim Meyering  <jim@meyering.net>
19932
19933         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
19934         Reported by Mark D. Baushke.
19935
19936 2006-01-24  Jim Meyering  <jim@meyering.net>
19937
19938         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
19939
19940 2006-01-24  Bruno Haible  <bruno@clisp.org>
19941
19942         * modules/strnlen (Maintainer): Change from glibc to all.
19943
19944 2006-01-24  Bruno Haible  <bruno@clisp.org>
19945
19946         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
19947         Patch by Paul Eggert.
19948
19949 2006-01-24  Bruno Haible  <bruno@clisp.org>
19950
19951         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
19952         already has it.
19953         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
19954         2005-11-26.
19955
19956         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
19957         'signed char' to avoid problems with the built-in _Bool type.
19958         Reported by Paul Eggert on 2005-11-26.
19959
19960 2006-01-24  Bruno Haible  <bruno@clisp.org>
19961
19962         * gnulib-tool (func_import): Avoid constructing complicated sed
19963         expressions inside backquote.
19964         Report and solution by Mark D. Baushke <mdb@gnu.org>.
19965
19966 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
19967
19968         These changes imported from libc.
19969         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
19970         test and two separate function calls.
19971         * lib/strndup.c (__strndup): Add libc_hidden_def.
19972
19973 2006-01-23  Simon Josefsson  <jas@extundo.com>
19974
19975         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
19976         Remove the test_*_SOURCES variable: automake infers it by default.
19977         * modules/tls-tests: Likewise.
19978
19979 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
19980
19981         Work around porting bugs reported by Dieter in
19982         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
19983         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
19984         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
19985         Include "getopt.h" first, to check interface.
19986         (getenv): Declare only if defined HAVE_DECL_GETENV &&
19987         !HAVE_DECL_GETENV.
19988         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
19989         (__strndup): Revert to K&R-style function dfns, the glibc style.
19990         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
19991         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
19992         Include strnlen.h first, to get prototype properly.
19993         (strnlen): Renamed from __strnlen.
19994         Remove weak alias.
19995
19996 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
19997
19998         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
19999
20000 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
20001
20002         * config/srclist.txt: Adjust to reflect glibc reorganization.
20003         This affects only comments.
20004
20005 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
20006
20007          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
20008          Reported by Bruce Korb <bkorb@gnu.org>.
20009
20010 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
20011
20012         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
20013         to pacify gcc -Wswitch-default.
20014
20015 2006-01-22  Bruno Haible  <bruno@clisp.org>
20016
20017         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
20018         temporary buffer for sprintf, take into account the precision also
20019         for 'd', 'i', 'u', 'o', 'x', 'X'.
20020
20021 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
20022
20023         * modules/argp-tests: New module
20024         * tests/test-argp.c: New file
20025         * tests/test-argp-2.sh: New file
20026
20027 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
20028
20029         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
20030         (__argp_base_name): Removed
20031         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
20032         typo.
20033         (__argp_base_name): Provide macro definition or extern declaration
20034         depending on the configuration
20035
20036 2006-01-20  Simon Josefsson  <jas@extundo.com>
20037
20038         * modules/inet_ntop (Depends-on): Depend on sys_socket.
20039
20040 2006-01-20  Simon Josefsson  <jas@extundo.com>
20041
20042         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
20043
20044 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
20045
20046         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
20047         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
20048         Suggested by Bruno Haible.
20049
20050 2006-01-20  Karl Berry  <karl@gnu.org>
20051
20052         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
20053         until changes propagate, I guess.
20054
20055 2006-01-19  Simon Josefsson  <jas@extundo.com>
20056
20057         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
20058
20059 2006-01-19  Simon Josefsson  <jas@extundo.com>
20060
20061         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
20062
20063 2006-01-19  Simon Josefsson  <jas@extundo.com>
20064
20065         * gnulib-tool: Set check_PROGRAMS.
20066
20067         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
20068         modules/des-tests, modules/gc-arcfour-tests,
20069         modules/gc-arctwo-tests, modules/gc-des-tests,
20070         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
20071         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
20072         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
20073         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
20074         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
20075         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
20076         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
20077         test_*_SOURCES.
20078
20079 2006-01-18  Simon Josefsson  <jas@extundo.com>
20080
20081         * modules/socklen (Depends-on): Depend on sys_socket.
20082
20083 2006-01-18  Simon Josefsson  <jas@extundo.com>
20084
20085         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
20086         modules/des-tests, modules/gc-arcfour-tests,
20087         modules/gc-arctwo-tests, modules/gc-des-tests,
20088         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
20089         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
20090         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
20091         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
20092         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
20093         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
20094         $(EXEEXT) to automake TESTS variable, for mingw32.
20095
20096 2006-01-17  Simon Josefsson  <jas@extundo.com>
20097
20098         * modules/socklen (Include): Need sys/socket.h.
20099
20100 2006-01-17  Bruno Haible  <bruno@clisp.org>
20101
20102         * modules/ssize_t (Include): Add <sys/types.h>.
20103
20104 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
20105
20106         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
20107         it's not portable and it doesn't work with cross-compiles.
20108         Problem reported by Bruno Haible.  Fix missing-$ typo in
20109         'test "gl_cv_ignore_unused_libraries" ...' that prevented
20110         -zignore from being used with Sun's C compiler.
20111
20112 2006-01-12  Simon Josefsson  <jas@extundo.com>
20113
20114         * lib/base64.c: Fix warning, reported by Bruno Haible
20115         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
20116
20117 2006-01-12  Bruno Haible  <bruno@clisp.org>
20118
20119         * modules/ldd: New file.
20120         * build-aux/ldd.sh.in: New file.
20121         * MODULES.html.sh (Support for building libraries and executables): Add
20122         ldd.
20123
20124 2006-01-12  Bruno Haible  <bruno@clisp.org>
20125
20126         * m4/ldd.m4: New file.
20127
20128 2006-01-12  Bruno Haible  <bruno@clisp.org>
20129
20130         * gnulib-tool (func_import, func_create_testdir): Don't go into an
20131         endless loop while replacing $auxdir with build-aux.
20132
20133 2006-01-11  Simon Josefsson  <jas@extundo.com>
20134
20135         * lib/stdint_.h (SIZE_MAX): Add missing (.
20136
20137 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
20138
20139         Sync from coreutils.
20140         * lib/md5.c: Fix commentary typos.
20141         (alignof, UNALIGNED_P): No need for a GCC-specific version.
20142         * lib/md5.h (__attribute__): Remove; unused.
20143         * lib/sha1.c: Fix commentary to match md5 better.
20144         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
20145         so that we don't need to worry about alignment.  All uses changed.
20146         This merges the 2005-10-28 md5 change into sha1.
20147
20148 2006-01-11  Jim Meyering  <jim@meyering.net>
20149
20150         Sync from coreutils.
20151         * lib/md5.c (OP): Fix spacing.
20152
20153 2006-01-11  Bruno Haible  <bruno@clisp.org>
20154
20155         Ensure automatic ordering between gl_LOCK and gl_ARGP.
20156         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
20157         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
20158
20159 2006-01-11  Bruno Haible  <bruno@clisp.org>
20160
20161         Ensure automatic ordering between gl_LOCK and gl_ARGP.
20162         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
20163         the "early" section as well.
20164
20165 2006-01-11  Bruno Haible  <bruno@clisp.org>
20166
20167         Avoid "ar: no archive members specified" error on MacOS X.
20168         * gnulib-tool (func_modules_add_dummy): New function.
20169         (func_import, func_create_testdir): Invoke it.
20170
20171 2006-01-11  Bruno Haible  <bruno@clisp.org>
20172
20173         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
20174         with $auxdir in AC_CONFIG_FILES statements.
20175
20176 2006-01-11  Bruno Haible  <bruno@clisp.org>
20177
20178         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
20179         Initialize also noinst_HEADERS to empty.
20180
20181 2006-01-11  Bruno Haible  <bruno@clisp.org>
20182
20183         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
20184         variables.
20185         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
20186         autoreconf.
20187
20188 2006-01-11  Bruno Haible  <bruno@clisp.org>
20189
20190         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
20191         overridable by the user.
20192         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20193
20194 2006-01-10  Simon Josefsson  <jas@extundo.com>
20195
20196         * modules/sys_socket: New file.
20197
20198 2006-01-10  Simon Josefsson  <jas@extundo.com>
20199
20200         * m4/sys_socket_h.m4: New file.
20201
20202 2006-01-10  Simon Josefsson  <jas@extundo.com>
20203
20204         * lib/socket_.h: New file.
20205
20206 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
20207
20208         * modules/readutmp (Maintainer): Add myself.
20209
20210 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
20211
20212         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
20213         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
20214         People who are still concerned with buggy memcmp implementations
20215         can invoke gl_FUNC_MEMCMP themselves.
20216
20217 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
20218
20219         * lib/regex_internal.h (BITSET_WORD_BITS):
20220         Work around a bug in 64-bit PGC (before version 6.1-2), where the
20221         preprocessor mishandles large unsigned values as if they were signed.
20222         Problem reported by Claudio Fontana in
20223         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
20224
20225 2006-01-10  Jim Meyering  <jim@meyering.net>
20226
20227         Avoid the double-free (first in fts_read, second in fts_close) that
20228         would occur when an `active' directory is made inaccessible (e.g.,
20229         via chmod a-x) during a traversal.
20230         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
20231         before returning.  Reproduce this failure by
20232         mkdir -p a/b; cd a; chmod a-x . b
20233         Reported by Stavros Passas.
20234
20235         Sync from coreutils.
20236         * lib/sha1.c: Tweak grammar in a comment.
20237
20238 2006-01-10  Jim Meyering  <jim@meyering.net>
20239
20240         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
20241         Patch by Joerg Sonnenberger.
20242
20243 2006-01-10  Bruno Haible  <bruno@clisp.org>
20244
20245         * modules/readutmp: Depend on module free.
20246         * modules/strtok_r: Depend on module restrict.
20247
20248 2006-01-10  Bruno Haible  <bruno@clisp.org>
20249
20250         * modules/gettext (configure.ac): Add an invocation of
20251         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
20252
20253 2006-01-10  Bruno Haible  <bruno@clisp.org>
20254
20255         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
20256         Reported by Werner Lemberg <wl@gnu.org>.
20257
20258 2006-01-10  Bruno Haible  <bruno@clisp.org>
20259
20260         * lib/localcharset.c: Update from GNU gettext.
20261
20262 2006-01-10  Bruno Haible  <bruno@clisp.org>
20263
20264         * lib/argp.h (__const): Remove macro. Use const instead.
20265         * lib/argp-fmtstream.h (__const): Likewise.
20266         * lib/glob_.h (__const): Remove macro.
20267         * lib/glob-libc.h: Use const instead of __const.
20268
20269 2006-01-10  Bruno Haible  <bruno@clisp.org>
20270
20271         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
20272         variable.
20273         Needed to avoid an automake error regarding the 'gettext' module.
20274
20275 2006-01-09  Simon Josefsson  <jas@extundo.com>
20276
20277         * modules/inet_ntop (Depends-on): Add restrict.
20278
20279 2006-01-09  Simon Josefsson  <jas@extundo.com>
20280
20281         * modules/gc-rijndael-tests (License): Put under LGPL.
20282
20283         * modules/gc-des-tests (License): Likewise.
20284
20285         * modules/gc-arcfour-tests (License): Likewise.
20286
20287         * modules/gc-arctwo-tests (License): Likewise.
20288
20289         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
20290
20291         * modules/gc-hmac-sha1-tests (Files): Likewise.
20292
20293         * modules/gc-hmac-md5-tests (License): Likewise.
20294
20295         * modules/gc-sha1-tests (License): Likewise.
20296
20297         * modules/gc-md5-tests (License): Likewise.
20298
20299         * modules/gc-md4-tests (License): Likewise.
20300
20301         * modules/gc-md2-tests (License): Likewise.
20302
20303         * modules/gc-tests (License): Likewise.
20304
20305         * modules/des-tests (License): Likewise.
20306
20307         * modules/md4-tests (License): Likewise.
20308
20309         * modules/md2-tests (License): Likewise.
20310
20311 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
20312
20313         Sync from coreutils:
20314
20315         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
20316         * modules/lib-ignore: New file.
20317         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
20318         chdir-safer.m4, lchmod.m4.
20319         * modules/openat: Add mkdirat.c, openat-priv.h.
20320
20321 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
20322
20323         Sync from coreutils.
20324         * m4/lib-ignore.m4: New file.
20325         * m4/lchmod.m4: New file.
20326
20327 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
20328
20329         Sync from coreutils.
20330         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
20331         for write access: POSIX says that must fail.
20332         * lib/fts.c (diropen): Likewise.
20333         * lib/save-cwd.c (save_cwd): Likewise.
20334         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
20335         well, for minor improvements on hosts that lack O_DIRECTORY.
20336         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
20337         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
20338         Fall back on chown if open failed with EACCES.
20339
20340         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
20341         Report an error at compile-time if only a 1-second nominal clock
20342         resolution is found.
20343
20344         * lib/lchmod.h: New file.
20345         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
20346         (make_dir_parents): Use lchown rather than chown, and
20347         lchmod rather than chmod.
20348
20349         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
20350         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
20351         "proc" reported by n0dalus.
20352
20353         * lib/mountlist.c: Include <limits.h>.
20354         (dev_from_mount_options)
20355         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
20356         New function.  It no longer assumes "dev=" has the System V meaning
20357         on Linux (since it doesn't).  It also parses "dev=" more carefully.
20358         (read_file_system_list)
20359         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
20360         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
20361         dev= in that case.
20362
20363         * lib/posixtm.h (PDS_PRE_2000): New macro.
20364         * lib/posixtm.c (year): Arg is now syntax_bits rather than
20365         allow_century.  All usages changed.  Reject dates outside the range
20366         1969-1999 if PDS_PRE_2000 is used.
20367
20368 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
20369
20370         Sync from coreutils.
20371         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
20372         (Time of day items): Mention the possibility of leap seconds.
20373         Problem reported by Dr. David Alan Gilbert.
20374
20375 2006-01-09  Jim Meyering  <jim@meyering.net>
20376
20377         Sync from coreutils.
20378
20379         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
20380
20381         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
20382
20383         * lib/modechange.c (mode_compile): Reject an invalid mode string
20384         that starts with an octal digit.  From Andreas Gruenbacher.
20385
20386         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
20387         and dup to open_safer and dup_safer, respectively.
20388         (openat_permissive): Fix typo in comment.
20389
20390         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
20391         "gettext.h"; either no longer needed or are guaranteed by openat.h.
20392         (_): Remove; no longer needed.
20393         (openat): Renamed from rpl_openat; no need for rpl_openat
20394         since openat.h renames openat for us.
20395         Replace most of the body with a call to openat_permissive,
20396         to avoid duplicate code.
20397         Port to (probably hypothetical) environments were mode_t is
20398         wider than int.
20399         (openat_permissive): Require mode arg, so that we can check
20400         types better.  Put it just after flags.  Change cwd failure
20401         indicator from pointer-to-bool to pointer-to-errno-value.
20402         All callers changed.
20403         Invoke openat_save_fail and/or openat_restore_fail if
20404         cwd_errno is null, so that openat can call us.
20405         (openat_permissive, fdopendir, fstatat, unlinkat):
20406         Simplify errno handling to avoid some duplicate code,
20407         as it's OK to set errno on success.
20408         * lib/openat.h: Revamp code so that function macros depend on
20409         __OPENAT_PREFIX only, not also on AT_FDCWD.
20410         (openat_ro): Remove.  Caller changed to use openat_permissive.
20411         (openat_permissive): Now a macro, if not a function.
20412         (openat_restore_fail, openat_save_fail): Now always functions,
20413         since mkdirat needs them even if __OPENAT_PREFIX is defined.
20414
20415         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
20416         and openat.c.
20417         * lib/mkdirat.c: Include openat-priv.h.
20418         Remove definitions of macros defined therein.
20419         * lib/openat.c: Likewise.
20420
20421         * lib/mkdirat.c (mkdirat): New file and function.
20422         * lib/openat.h (mkdirat): Declare.
20423
20424         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
20425
20426         * lib/openat.h (openat_permissive): Declare.
20427         (openat_ro): Define.
20428
20429         * lib/openat.c (EXPECTED_ERRNO): New macro.
20430         (openat_permissive): New function -- used in remove.c rewrite.
20431         (all functions): Set errno just before returning, only if there
20432         was an actual failure.
20433         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
20434
20435         Emulate openat-family functions using Linux's procfs, if possible.
20436         Idea and some code based on Ulrich Drepper's glibc changes.
20437
20438         * lib/openat.c: (BUILD_PROC_NAME): New macro.
20439         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
20440         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
20441         before falling back on save_cwd and restore_cwd.
20442         (fdopendir, fstatat, unlinkat): Likewise.
20443
20444         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
20445         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
20446
20447         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
20448         as second argument to va_arg.  Otherwise, some versions of gcc
20449         warn that `if this code is reached, the program will abort'.
20450
20451 2006-01-09  Jim Meyering  <jim@meyering.net>
20452
20453         Sync from coreutils.
20454         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
20455         Require openat-priv.h.
20456
20457 2006-01-09  Bruno Haible  <bruno@clisp.org>
20458
20459         * modules/strnlen (Include): Use strnlen.h.
20460
20461 2006-01-09  Bruno Haible  <bruno@clisp.org>
20462
20463         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
20464
20465 2006-01-09  Bruno Haible  <bruno@clisp.org>
20466
20467         * lib/sysexit_.h (EX_OK): New macro.
20468         Suggested by Martin Lambers <marlam@marlam.de>.
20469
20470 2006-01-09  Bruno Haible  <bruno@clisp.org>
20471
20472         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
20473         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
20474
20475 2006-01-09  Bruno Haible  <bruno@clisp.org>
20476
20477         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
20478         numbers.
20479
20480 2006-01-09  Bruno Haible  <bruno@clisp.org>
20481
20482         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
20483         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
20484         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
20485         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
20486
20487 2006-01-09  Bruno Haible  <bruno@clisp.org>
20488
20489         * build-aux/javacomp.sh.in: New file, moved from lib/.
20490         * modules/javacomp-script (Files): Update.
20491         (configure.ac): Add AC_CONFIG_FILES invocation.
20492         (EXTRA_DIST): Remove variable.
20493
20494         * build-aux/javaexec.sh.in: New file, moved from lib/.
20495         * modules/javaexec (Files): Update.
20496         (configure.ac): Add AC_CONFIG_FILES invocation.
20497         (EXTRA_DIST): Remove javaexec.sh.in.
20498
20499         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
20500         * modules/csharpcomp-script (Files): Update.
20501         (configure.ac): Add AC_CONFIG_FILES invocation.
20502         (EXTRA_DIST): Remove variable.
20503
20504         * build-aux/csharpexec.sh.in: New file, moved from lib/.
20505         * modules/csharpexec (Files): Update.
20506         (configure.ac): Add AC_CONFIG_FILES invocation.
20507         (EXTRA_DIST): Remove csharpexec.sh.in.
20508
20509 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
20510
20511         Sync from coreutils.
20512
20513         Add POSIX ACL support
20514         * lib/acl.h (copy_acl, set_acl): Add declarations.
20515         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
20516         systems other than Linux.
20517         (chmod_or_fchmod): New function: use fchmod when possible,
20518         and chmod otherwise.
20519         (file_has_acl): Add a POSIX ACL implementation, with a
20520         Linux-specific subcase.
20521         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
20522         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
20523         acls are unsupported.
20524         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
20525         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
20526         are unsupported.
20527
20528 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
20529
20530         Sync from coreutils.
20531         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
20532
20533 2006-01-07  Bruno Haible  <bruno@clisp.org>
20534
20535         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
20536         gl_EARLY.
20537
20538 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
20539
20540         * lib/strftime.c (tzname): Don't declare if it is already #defined.
20541         Problem reported for Mingw by Mark Junker.
20542
20543 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
20544
20545         * README: Gnulib normally doesn't generate a tarball.
20546
20547 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
20548
20549         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
20550         long int, not int, for nanosecond counts, so that people who are
20551         used to POSIX struct timespec won't be surprised.  Reported by Jim
20552         Meyering.
20553
20554 2005-12-28  Bruno Haible  <bruno@clisp.org>
20555
20556         * build-aux/config.rpath: Update from GNU gettext.
20557
20558 2005-12-16  Jim Meyering  <jim@meyering.net>
20559
20560         * modules/fprintftime: New module.
20561         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
20562
20563 2005-12-16  Jim Meyering  <jim@meyering.net>
20564
20565         * m4/fprintftime.m4: New file.
20566
20567 2005-12-16  Jim Meyering  <jim@meyering.net>
20568
20569         * lib/fprintftime.c, lib/fprintftime.h: New files.
20570
20571 2005-12-15  Simon Josefsson  <jas@extundo.com>
20572
20573         * modules/socklen (configure.ac): Fix M4 macro name, to align with
20574         new m4/socklen.m4.
20575
20576 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
20577
20578         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
20579         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
20580
20581 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
20582
20583         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
20584         * lib/argp-help.c (fill_in_uparams): Check if the constructed
20585         struct uparams is valid. Fall back to the default values if it is
20586         not.
20587
20588 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
20589
20590         * modules/argp (Files): Add argp-pin.c
20591         (Depends-on): dirname
20592         (lib_SOURCES): Add argp-pin.c
20593
20594 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
20595
20596         * m4/argp.m4:  Check if program_invocation_name and
20597         program_invocation_short_name are declared and define appropriate
20598         macros if they are not.
20599
20600 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
20601
20602         * lib/argp-help.c (__argp_base_name): New function
20603         (__argp_short_program_name): Rewrite using __argp_base_name
20604         * lib/argp-namefrob.h: Define program_invocation_name and
20605         program_invocation_short_name if requested
20606         (__argp_base_name): Add prototype
20607         * lib/argp-parse.c (argp_def): Use gettext wrappers
20608         (argp_default_parser): Use __argp_base_name
20609         * lib/argp-pin.c: New file. Defines program_invocation_name and
20610         program_invocation_short_name on systems that lack them.
20611
20612 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
20613
20614         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
20615         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
20616         porting problem reported by Georg Schwarz in
20617         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
20618
20619 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
20620
20621         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
20622         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
20623         porting problem reported by Georg Schwarz in
20624         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
20625
20626 2005-12-05  Bruno Haible  <bruno@clisp.org>
20627
20628         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
20629         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
20630         Reported by Mark Junker <mjscod@gmx.de>.
20631
20632 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
20633
20634         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
20635         Use implementation from Albert Chin, with some
20636         comments/corrections by Stepan Kasal and myself.
20637
20638 2005-12-02  Bruno Haible  <bruno@clisp.org>
20639
20640         * gnulib-tool (func_import): Accept GPLed build tool modules when
20641         --lgpl is given.
20642         * modules/csharpcomp-script: New file.
20643         * modules/csharpcomp: Depend on it.
20644         * modules/javacomp-script: New file.
20645         * modules/javacomp: Depend on it.
20646         Suggested by Simon Josefsson.
20647
20648 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
20649
20650         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
20651         statement, to work around an HP-UX 10.20 compiler bug reported by
20652         Peter O'Gorman.
20653
20654 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
20655
20656         * modules/savedir (Depends-on): Add openat.
20657
20658 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
20659
20660         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
20661         (uintmax_t) [defined uintmax_t]: Do not declare.
20662         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
20663         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
20664         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
20665         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
20666         sake of portability to weird hosts that C allows (though we don't
20667         know of any practical examples).
20668
20669         * lib/savedir.h (fdsavedir): New decl.
20670         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
20671         contains most of the former guts of savedir.
20672         (savedir): Use savedirstream.
20673         Include "openat.h".
20674
20675 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
20676
20677         * modules/obstack (Files): Add m4/ulonglong.m4.
20678         Problem reported by Davide Angelocola.
20679
20680 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
20681
20682         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
20683         coreutils no longer futzes with rounding modes.
20684
20685 2005-11-14  Jim Meyering  <jim@meyering.net>
20686
20687         * lib/mkstemp-safer.c: Include <config.h>, required for possible
20688         replacement of mkstemp.
20689
20690 2005-11-10  Simon Josefsson  <jas@extundo.com>
20691
20692         * lib/readline.c: Remove EOL.
20693
20694 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
20695
20696         * modules/gethrxtime (Depends-on): Add gettime.
20697
20698 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
20699
20700         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
20701         or gettimeofday; no longer needed.
20702
20703 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
20704
20705         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
20706         time business.
20707         (gethrxtime) [! (HAVE_NANOUPTIME
20708         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
20709         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
20710         our own approximation.
20711
20712 2005-11-08  Eric Blake  <ebb9@byu.net>
20713
20714         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
20715
20716 2005-11-08  Eric Blake  <ebb9@byu.net>
20717
20718         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
20719
20720 2005-11-04  Bruno Haible  <bruno@clisp.org>
20721
20722         * gnulib-tool: Implement --update mode.
20723
20724 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
20725
20726         Fix porting problem reported by Theodoros V. Kalamatianos.
20727         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
20728         Don't assume that futimes failing means we must fail.
20729
20730 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
20731
20732         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
20733         variables to suggest the intended function of the PATH_MAX check.
20734
20735 2005-10-30  Kean Johnston  <jkj@sco.com>
20736
20737         Trivial changes to support SCO systems.
20738         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
20739         as PATH_MAX.
20740         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
20741         where __ptr is null when no I/O is pending.
20742
20743 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
20744
20745         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
20746         leave errno alone.  Problem reported by Dmitry V. Levin.
20747
20748 2005-10-28  Simon Josefsson  <jas@extundo.com>
20749
20750         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
20751         Test more.
20752
20753         * tests/test-gc-md2.c, tests/test-md2.c: New files.
20754
20755         * modules/md2, modules/md2-tests: New files.
20756
20757 2005-10-28  Simon Josefsson  <jas@extundo.com>
20758
20759         * m4/inet_ntop.m4: More tests.
20760
20761         * m4/gc-md2.m4, md2.m4: New file.
20762
20763 2005-10-28  Simon Josefsson  <jas@extundo.com>
20764
20765         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
20766         "restrict" keywords, as per POSIX.  Protect the function
20767         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
20768         Don't use K&R prototypes.  Check the sprintf return values.
20769         Re-define EAFNOSUPPORT if not present.  Indent.
20770
20771         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
20772         suggested by Bruno Haible <bruno@clisp.org>.
20773
20774         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
20775
20776         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
20777
20778         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
20779         libgcrypt).
20780
20781         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
20782
20783         * lib/md2.h, lib/md2.c: New files.
20784
20785 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
20786
20787         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
20788         errno alone.  Problem reported by Frederic Jolliton.
20789
20790 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
20791
20792         * modules/verify (License): Change from GPL to LGPL.  This is a
20793         tiny module and there are apparently near-equivalents that are
20794         under the BSD license.
20795
20796 2005-10-24  Simon Josefsson  <jas@extundo.com>
20797
20798         * modules/sha1: Relicense to LGPL.
20799
20800 2005-10-24  Simon Josefsson  <jas@extundo.com>
20801
20802         * lib/md4.h: Shrink buffer size, now that we changed the type.
20803
20804 2005-10-23  Simon Josefsson  <jas@extundo.com>
20805
20806         * gnulib-tool (func_import): Fix --tests-base.
20807
20808 2005-10-22  Simon Josefsson  <jas@extundo.com>
20809
20810         * modules/arcfour (Depends-on): Need stdint.
20811
20812 2005-10-22  Simon Josefsson  <jas@extundo.com>
20813
20814         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
20815         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
20816
20817 2005-10-22  Simon Josefsson  <jas@extundo.com>
20818
20819         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
20820         suggested by Bruno Haible <bruno@clisp.org>.
20821
20822 2005-10-22  Simon Josefsson  <jas@extundo.com>
20823
20824         * lib/crc.h: Include stddef.h, for size_t.
20825
20826 2005-10-22  Simon Josefsson  <jas@extundo.com>
20827
20828         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
20829         arcfour_context struct (simplify test vector testing in GNU
20830         Shishi).
20831
20832 2005-10-21  Simon Josefsson  <jas@extundo.com>
20833
20834         * modules/des, modules/des-tests: New files.
20835
20836         * modules/gc-des, modules/gc-des-tests: New files.
20837
20838         * tests/test-des.c, tests/test-gc-des.c: New file.
20839
20840 2005-10-21  Simon Josefsson  <jas@extundo.com>
20841
20842         * modules/arctwo, modules/arctwo-tests: New files.
20843
20844         * tests/test-arctwo.c: New file.
20845
20846         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
20847
20848         * tests/test-gc-arctwo.c: New file.
20849
20850 2005-10-21  Simon Josefsson  <jas@extundo.com>
20851
20852         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
20853         Bruno Haible <bruno@clisp.org>.
20854
20855         * m4/gc-des.m4: New file.
20856
20857 2005-10-21  Simon Josefsson  <jas@extundo.com>
20858
20859         * m4/arctwo.m4: New file.
20860
20861         * m4/gc-arctwo.m4: New file.
20862
20863 2005-10-21  Simon Josefsson  <jas@extundo.com>
20864
20865         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
20866         block.
20867
20868 2005-10-21  Simon Josefsson  <jas@extundo.com>
20869
20870         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
20871         <bruno@clisp.org>.
20872
20873         * lib/hmac-sha1.c (hmac_sha1): Likewise.
20874
20875         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
20876         Bruno Haible <bruno@clisp.org>.
20877
20878         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
20879         <bruno@clisp.org>.
20880
20881 2005-10-21  Simon Josefsson  <jas@extundo.com>
20882
20883         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
20884
20885 2005-10-21  Simon Josefsson  <jas@extundo.com>
20886
20887         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
20888
20889 2005-10-21  Simon Josefsson  <jas@extundo.com>
20890
20891         * lib/des.h, lib/des.c: New files.
20892
20893         * lib/gc-gnulib.c: Support DES.c
20894
20895 2005-10-21  Simon Josefsson  <jas@extundo.com>
20896
20897         * lib/arctwo.h, lib/arctwo.c: New files.
20898
20899         * lib/gc-gnulib.c: Support ARCTWO.
20900
20901 2005-10-21  Simon Josefsson  <jas@extundo.com>
20902
20903         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
20904         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20905
20906 2005-10-21  Simon Josefsson  <jas@extundo.com>
20907
20908         * gnulib-tool (func_import, func_create_testdir): Define automake
20909         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
20910         Makefile.am snippet),
20911         suggested by Bruno Haible <bruno@clisp.org>.
20912
20913         * modules/gc (Makefile.am): Use it.
20914
20915 2005-10-21  Bruno Haible  <bruno@clisp.org>
20916
20917         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
20918         patch.
20919
20920 2005-10-19  Simon Josefsson  <jas@extundo.com>
20921
20922         * tests/test-gc-rijndael.c: New file.
20923
20924         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
20925
20926 2005-10-19  Simon Josefsson  <jas@extundo.com>
20927
20928         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
20929         interface too.
20930
20931 2005-10-19  Simon Josefsson  <jas@extundo.com>
20932
20933         * tests/test-gc-arcfour.c: New file.
20934
20935         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
20936
20937 2005-10-19  Simon Josefsson  <jas@extundo.com>
20938
20939         * modules/gc-md4, modules/gc-md4-tests: New file.
20940
20941         * tests/test-gc-md4.c: New file.
20942
20943 2005-10-19  Simon Josefsson  <jas@extundo.com>
20944
20945         * m4/gc-md4.m4: New file.
20946
20947 2005-10-19  Simon Josefsson  <jas@extundo.com>
20948
20949         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
20950         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
20951         <kasal@ucw.cz>.
20952
20953 2005-10-19  Simon Josefsson  <jas@extundo.com>
20954
20955         * m4/gc-arcfour.m4: New file.
20956
20957         * m4/gc-rijndael.m4: New file.
20958
20959 2005-10-19  Simon Josefsson  <jas@extundo.com>
20960
20961         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
20962
20963 2005-10-19  Simon Josefsson  <jas@extundo.com>
20964
20965         * lib/gc-gnulib.c: Support ARCFOUR.
20966
20967 2005-10-19  Simon Josefsson  <jas@extundo.com>
20968
20969         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
20970         support.
20971
20972         * lib/gc.h: Add ECB enum type.
20973
20974         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
20975
20976 2005-10-18  Simon Josefsson  <jas@extundo.com>
20977
20978         * tests/test-md5.c: New file.
20979
20980         * modules/md5-tests: New file.
20981
20982 2005-10-18  Simon Josefsson  <jas@extundo.com>
20983
20984         * tests/test-md4.c: New file.
20985
20986         * modules/md4, modules/md4-tests: New files.
20987
20988 2005-10-18  Simon Josefsson  <jas@extundo.com>
20989
20990         * m4/md4.m4: New file.
20991
20992 2005-10-18  Simon Josefsson  <jas@extundo.com>
20993
20994         * lib/md4.h, lib/md4.c: New files, based on md5.?.
20995
20996 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
20997
20998         * gnulib-tool (func_create_testdir): Omit the second check whether
20999         BUILT_SOURCES in nonempty.
21000
21001 2005-10-17  Simon Josefsson  <jas@extundo.com>
21002
21003         * tests/test-rijndael.c: New file.
21004
21005 2005-10-17  Simon Josefsson  <jas@extundo.com>
21006
21007         * modules/sha1: Depend on stdint instead of md5.
21008
21009         * modules/md5: Depend on stdint, remove uint32_t.
21010
21011 2005-10-17  Simon Josefsson  <jas@extundo.com>
21012
21013         * modules/gc-sha1-tests: New file.
21014
21015         * tests/test-gc-sha1.c: New file.
21016
21017 2005-10-17  Simon Josefsson  <jas@extundo.com>
21018
21019         * m4/md5.m4: Remove call to uint32_t.m4.
21020
21021 2005-10-17  Simon Josefsson  <jas@extundo.com>
21022
21023         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
21024
21025         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
21026         md5.h.
21027
21028         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
21029
21030         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
21031
21032 2005-10-17  Simon Josefsson  <jas@extundo.com>
21033
21034         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
21035
21036 2005-10-17  Simon Josefsson  <jas@extundo.com>
21037
21038         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
21039
21040 2005-10-17  Simon Josefsson  <jas@extundo.com>
21041
21042         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
21043
21044         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
21045
21046 2005-10-17  Bruno Haible  <bruno@clisp.org>
21047
21048         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
21049         that it can also be used in a test.
21050
21051 2005-10-16  Bruno Haible  <bruno@clisp.org>
21052
21053         * gnulib-tool (func_emit_tests_Makefile_am): Also define
21054         TESTS_ENVIRONMENT, so that individual tests can augment it.
21055
21056         * gnulib-tool (func_create_testdir): Use an intermediate target for
21057         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
21058         macros, like $(ALLOCA_H), which cannot be passed through the command
21059         line.
21060
21061 2005-10-15  Simon Josefsson  <jas@extundo.com>
21062
21063         * modules/rijndael-tests: New file.
21064
21065         * modules/rijndael: New file.
21066
21067 2005-10-15  Simon Josefsson  <jas@extundo.com>
21068
21069         * m4/rijndael.m4: New file.
21070
21071 2005-10-15  Simon Josefsson  <jas@extundo.com>
21072
21073         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
21074
21075         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
21076
21077 2005-10-14  Simon Josefsson  <jas@extundo.com>
21078
21079         * tests/test-arcfour.c: New file.
21080
21081         * modules/arcfour, modules/arcfour-tests: New files.
21082
21083 2005-10-14  Simon Josefsson  <jas@extundo.com>
21084
21085         * m4/arcfour.m4: New file.
21086
21087 2005-10-14  Simon Josefsson  <jas@extundo.com>
21088
21089         * lib/arcfour.h, lib/arcfour.c: New files.
21090
21091 2005-10-14  Roland McGrath  <roland@redhat.com>
21092
21093         Import from libc.  [BZ #1331]
21094         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
21095         macro argument.
21096         Reported by Matej Vela <vela@debian.org>.
21097
21098 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
21099
21100         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
21101         include <wchar.h>; no longer needed.
21102
21103 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
21104
21105         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
21106
21107 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
21108         and  Ulrich Drepper  <drepper@redhat.com>
21109
21110         Import from libc.
21111         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
21112         instead of inline stream orientation test and two separate
21113         function calls.  Pay no attention to USE_IN_LIBIO.
21114
21115 2005-10-13  Simon Josefsson  <jas@extundo.com>
21116
21117         * modules/gc-hmac-md5-tests: New file.
21118
21119         * tests/test-gc-hmac-sha1.c: New file.
21120
21121         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
21122
21123         * modules/gc-hmac-md5-tests: New file.
21124
21125         * tests/test-gc-md5.c: New file.
21126
21127         * modules/gc-md5-tests: New file.
21128
21129 2005-10-13  Simon Josefsson  <jas@extundo.com>
21130
21131         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
21132         Move memory allocation outside of loop.
21133
21134 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
21135
21136         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
21137         intermediate directory is in a read-only file system.  Problem
21138         reported by Eric Blake.
21139
21140 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
21141
21142         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
21143
21144 2005-10-12  Simon Josefsson  <jas@extundo.com>
21145
21146         * tests/test-hmac-sha1.c: New file.
21147
21148         * modules/hmac-sha1-tests: New file.
21149
21150         * modules/hmac-sha1: New file.
21151
21152 2005-10-12  Simon Josefsson  <jas@extundo.com>
21153
21154         * modules/gc-sha1: New file.
21155
21156 2005-10-12  Simon Josefsson  <jas@extundo.com>
21157
21158         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
21159
21160         * tests/test-gc-pbkdf2-sha1.c: New file.
21161
21162 2005-10-12  Simon Josefsson  <jas@extundo.com>
21163
21164         * modules/gc-md5, modules/gc-hmac-md5: New files.
21165
21166         * modules/gc (Files): Remove md5, memxor and hmac files.
21167
21168 2005-10-12  Simon Josefsson  <jas@extundo.com>
21169
21170         * m4/gc-pbkdf2-sha1.m4: New file.
21171
21172         * m4/gc-hmac-sha1.m4: New file.
21173
21174         * m4/gc-sha1: New file.
21175
21176         * m4/hmac-sha1.m4: New file.
21177
21178 2005-10-12  Simon Josefsson  <jas@extundo.com>
21179
21180         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
21181
21182         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
21183
21184 2005-10-12  Simon Josefsson  <jas@extundo.com>
21185
21186         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
21187         suggested by Bruno Haible <bruno@clisp.org>.
21188
21189 2005-10-12  Simon Josefsson  <jas@extundo.com>
21190
21191         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
21192
21193 2005-10-12  Simon Josefsson  <jas@extundo.com>
21194
21195         * lib/gc-pbkdf2-sha1.c: New file.
21196
21197         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
21198
21199 2005-10-12  Simon Josefsson  <jas@extundo.com>
21200
21201         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
21202
21203         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
21204
21205 2005-10-12  Simon Josefsson  <jas@extundo.com>
21206
21207         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
21208         GC_USE_HMAC_MD5, respectively.
21209
21210         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
21211         (gc_md5): Fix typo.
21212
21213         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
21214
21215         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
21216
21217         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
21218
21219 2005-10-12  Bruno Haible  <bruno@clisp.org>
21220
21221         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
21222         Reported by Stepan Kasal <kasal@ucw.cz>.
21223
21224 2005-10-11  Simon Josefsson  <jas@extundo.com>
21225
21226         * tests/test-crc.c: New file.
21227
21228         * modules/crc, modules/crc-tests: New files.
21229
21230 2005-10-11  Simon Josefsson  <jas@extundo.com>
21231
21232         * m4/crc.m4: New file.
21233
21234 2005-10-11  Simon Josefsson  <jas@extundo.com>
21235
21236         * lib/gc.h: Add gc_hash and gc_hash_buffer.
21237
21238         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
21239
21240         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
21241
21242 2005-10-11  Simon Josefsson  <jas@extundo.com>
21243
21244         * lib/crc.h, lib/crc.c: New files.
21245
21246         * lib/gc.h (gc_hash_buffer): Add doc.
21247
21248 2005-10-11  Bruno Haible  <bruno@clisp.org>
21249
21250         * modules/c-strcasestr: New file.
21251         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
21252
21253 2005-10-11  Bruno Haible  <bruno@clisp.org>
21254
21255         * modules/c-strcase: New file.
21256         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
21257
21258 2005-10-11  Bruno Haible  <bruno@clisp.org>
21259
21260         * lib/strcasecmp.c: Include limits.h.
21261         (strcasecmp): Avoid integer overflow on exotic platforms.
21262         * lib/strncasecmp.c: Include limits.h.
21263         (strncasecmp): Avoid integer overflow on exotic platforms.
21264         Reported by Paul Eggert.
21265
21266 2005-10-11  Bruno Haible  <bruno@clisp.org>
21267
21268         * lib/c-strcasestr.h: New file, from GNU gettext.
21269         * lib/c-strcasestr.c: New file, from GNU gettext.
21270
21271 2005-10-11  Bruno Haible  <bruno@clisp.org>
21272
21273         * lib/c-strcase.h: New file, from GNU gettext.
21274         * lib/c-strcasecmp.c: New file, from GNU gettext.
21275         * lib/c-strncasecmp.c: New file, from GNU gettext.
21276
21277 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
21278
21279         * modules/mempcpy (License): GPL -> LGPL.
21280         * modules/strchrnul (License): Likewise.
21281         * modules/sysexits (License): Likewise.
21282
21283 2005-10-08  Simon Josefsson  <jas@extundo.com>
21284
21285         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
21286
21287 2005-10-07  Simon Josefsson  <jas@extundo.com>
21288
21289         * m4/memxor.m4: Remove gl_C_RESTRICT call.
21290
21291 2005-10-06  Simon Josefsson  <jas@extundo.com>
21292
21293         * tests/test-hmac-md5.c: New file.
21294
21295         * modules/hmac-md5-tests: New file.
21296
21297         * modules/hmac-md5: New file.
21298
21299 2005-10-06  Simon Josefsson  <jas@extundo.com>
21300
21301         * m4/hmac-md5.m4: New file.
21302
21303         * m4/memxor.m4: Require gl_C_RESTRICT.
21304
21305 2005-10-06  Simon Josefsson  <jas@extundo.com>
21306
21307         * lib/memxor.c (memxor): Avoid casts and warnings.
21308
21309 2005-10-06  Simon Josefsson  <jas@extundo.com>
21310
21311         * lib/hmac-md5.c: New file.
21312
21313         * lib/hmac.h: New file.
21314
21315 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
21316
21317         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
21318         promotes to int, not unsigned int, to catch the AIX 5.3
21319         compiler bug.
21320
21321 2005-10-05  Simon Josefsson  <jas@extundo.com>
21322
21323         * modules/memxor: New file.
21324
21325         * modules/iconv (Files): Move config.rpath to havelib, it is used
21326         there.
21327
21328         * modules/havelib (Files): Add config.rpath.
21329
21330 2005-10-05  Simon Josefsson  <jas@extundo.com>
21331
21332         * m4/memxor.m4: New file.
21333
21334 2005-10-05  Simon Josefsson  <jas@extundo.com>
21335
21336         * lib/memxor.c (memxor): Fix compiler error.
21337
21338         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
21339         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
21340
21341         * lib/memxor.h, lib/memxor.c: New files.
21342
21343         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
21344         we assume all systems have it, suggested by Jim Meyering
21345         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
21346         any systems lack sys/socket.h; mingw32 is known to lack it, but we
21347         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
21348         same reasons.
21349
21350 2005-10-05  Simon Josefsson  <jas@extundo.com>
21351
21352         * config/srclist.txt: Add glibc bug 1423 for md5.h.
21353
21354 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
21355
21356         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
21357         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
21358         needed, since the source code now assumes these .h files.
21359
21360 2005-10-05  Derek Price  <derek@ximbiot.com>
21361
21362         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
21363
21364 2005-10-05  Bruno Haible  <bruno@clisp.org>
21365
21366         * modules/stdint (License): Change to LGPL.
21367
21368 2005-10-04  Simon Josefsson  <jas@extundo.com>
21369
21370         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
21371         D. Baushke" <mdb@gnu.org>.
21372
21373 2005-10-04  Bruno Haible  <bruno@clisp.org>
21374
21375         * lib/verify.h (verify_true): Provide alternative definition for C++.
21376
21377 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
21378
21379         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
21380         (SSIZE_MAX): New macro, if not already defined.
21381         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
21382         than 2 GiB.
21383
21384 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21385
21386         Sync from coreutils.
21387         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
21388         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
21389         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
21390         ULLONG_MAX doesn't work with 2.7.2.1.
21391
21392 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21393
21394         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
21395         From Ben Pfaff.
21396
21397         * modules/exclude (Depends-on): Depend on verify.
21398         * modules/strtoimax (Depends-on): Likewise.
21399         * modules/utimecmp (Depends-on): Likewise.
21400
21401 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
21402
21403         * lib/exclude.c: Include verify.h.
21404         (verify): Remove.  All callers changed to use verify.h's version.
21405         * lib/strtoimax.c: Likewise.
21406         * lib/utimecmp.c: Likewis.e
21407
21408         Sync from coreutils.
21409         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
21410         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
21411         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
21412         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
21413         bother returning ENOSYS if settimeofday or stime fails; just let
21414         them return whatever errno they want to return.
21415         * lib/utimens.c: Include unistd.h, for dup2.
21416         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
21417         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
21418
21419 2005-10-02  Jim Meyering  <jim@meyering.net>
21420
21421         Sync from coreutils.
21422         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
21423         from glibc-2.2.5 that fails for read-only files.
21424
21425 2005-10-02  Jim Meyering  <jim@meyering.net>
21426
21427         Sync from coreutils.
21428         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
21429         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
21430         `#if HAVE_CONFIG_H'.
21431         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
21432         Remove AT_FDCWD test.
21433         Do not consume the fd unless successful.
21434         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
21435         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
21436         block, so that we don't even try to compile it if settimeofday is
21437         available.  This works around a compilation failure on OSF1 V5.1,
21438         due to stime requiring a `long int*' while tv_sec is `int'.
21439
21440 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
21441
21442         Sync from coreutils.
21443         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
21444         against `yes', rather than just testing for nonempty.
21445
21446 2005-10-01  Simon Josefsson  <jas@extundo.com>
21447
21448         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
21449         and Darwin.
21450
21451         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
21452         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
21453         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
21454         freeaddrinfo and gai_strerror are declared by the POSIX headers.
21455         Check if struct addrinfo is declared.
21456
21457 2005-10-01  Simon Josefsson  <jas@extundo.com>
21458
21459         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
21460         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
21461         AI_* and EAI_* definitions.  Protect function declarations.
21462
21463 2005-10-01  Jim Meyering  <jim@meyering.net>
21464
21465         Sync from coreutils.
21466
21467         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
21468         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
21469         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
21470         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
21471         in the inet and nsl libraries.  Required on Solaris 5.7.
21472
21473 2005-10-01  Jim Meyering  <jim@meyering.net>
21474
21475         Sync from coreutils.
21476         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
21477         in the inet and nsl libraries.  Required on Solaris 5.7.
21478
21479 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
21480
21481         * lib/getdelim.c (getdelim): Remove unused variables.
21482
21483 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
21484
21485         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
21486         so that the code works even with ancient cpp.  Portability problem
21487         with GCC 2.7.2.1 reported by Thomas M.Ott.
21488
21489 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
21490
21491         * modules/regex (Depends-on): Add strcase.
21492
21493         * modules/gethostname (Licence): Change from GPL to LGPL, since
21494         gethostname.c is a trivial implementation of a standard library
21495         function.
21496         * modules/poll (License): Change from GPL to LGPL, since it's
21497         derived from LGPL code.
21498
21499 2005-09-27  Jim Meyering  <jim@meyering.net>
21500
21501         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
21502         HAVE_CONFIG_H.
21503
21504         * lib/intprops.h (signed_type_or_expr__): Define.
21505         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
21506         for unsigned types.
21507
21508 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
21509
21510         * lib/verify.h (verify_expr): Remove, replacing with:
21511         (verify_true): New macro that returns true instead of void.
21512         (verify_type__): Remove.
21513         (verify): Use verify_true rather than verify_type__.
21514
21515 2005-09-26  Bruno Haible  <bruno@clisp.org>
21516
21517         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
21518         is necessary.
21519         (lib_SOURCES): Remove mbchar.c.
21520         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
21521         (Files): Add m4/mbrtowc.m4.
21522         * modules/mbiter: Likewise.
21523         * modules/mbuiter: Likewise.
21524
21525 2005-09-26  Bruno Haible  <bruno@clisp.org>
21526
21527         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
21528         compile mbchar.c if they are not both present.
21529         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
21530         * m4/mbiter.m4 (gl_MBITER): Likewise.
21531         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
21532         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
21533         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
21534
21535 2005-09-25  Jim Meyering  <jim@meyering.net>
21536
21537         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
21538         also uses socklen_t.
21539
21540 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
21541
21542         * lib/utimens.c (ENOSYS): Define if not already defined.
21543         (futimens): Support having a null PATH if the file descriptor
21544         is nonnegative.
21545
21546         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
21547         Remove.
21548         (__attribute): Define to empty unless GCC 3.1 or later.
21549         This works around a core dump on OpenBSD 3.4, which has GCC
21550         2.95.3, which dumps core when given __attribute__(()).  It also
21551         simplifies other tests, since we really don't want to bother with
21552         worrying about which ancient version of GCC supported what.
21553         Original problem reported by Yoann Vandoorselaere, with part of
21554         the fix suggested by Derek Price.
21555
21556 2005-09-24  Jim Meyering  <jim@meyering.net>
21557
21558         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
21559         so we can once again use a positive bitfield width of 1 -- now we
21560         don't have to explain why we were using a bitfield width of 2.
21561
21562 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
21563
21564         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
21565         and similarly for the other external symbols.  Problem reported
21566         by James Gallager.
21567
21568         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
21569         bug reported by Jim Meyering.
21570
21571         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
21572         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
21573         not needed, since socklen is a prerequisite module.
21574
21575 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
21576
21577         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
21578         Problem reported by Eric Blake.
21579         (getaddrinfo): Initialize se so that it's not garbage.
21580         Redo internal storage allocation so that it doesn't make unportable
21581         assumptions about alignment.
21582         Fix a memory leak.
21583
21584         * lib/utimens.c (futimens): Use futimesat if available.
21585         Prefer it to futimes since it doesn't have the futimes bug.
21586
21587         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
21588         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
21589         Instead, declare a function that returns a pointer to an array,
21590         and use verify_type__ to declare the size of the array.
21591         Problem and germ of a solution reported by Bruno Haible.
21592         (verify_type__): Use 2, not 1, for bitfield size, to avoid
21593         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
21594
21595 2005-09-23  Jim Meyering  <jim@meyering.net>
21596
21597         Sync from coreutils.
21598         Correct build failure (socklen_t not defined) on at least
21599         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
21600         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
21601
21602 2005-09-23  Jim Meyering  <jim@meyering.net>
21603
21604         * modules/getaddrinfo (Depends-on): Add socklen.
21605
21606 2005-09-23  Bruno Haible  <bruno@clisp.org>
21607
21608         * tests/test-verify.c: New file.
21609
21610 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
21611
21612         Sync from coreutils.
21613
21614         * modules/argmatch (Depends-on): Add verify.
21615         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
21616         unistd-safer.
21617         * modules/save-cwd (Depends-on): Likewise.
21618
21619         * modules/openat (Files): Add lib/openat-die.c.
21620         (Depends-on): Remove error, exitfail.
21621         Add dirname.
21622
21623         * modules/verify: New file.
21624         * MODULES.html.sh (Diagnostics <assert.h>): New section,
21625         with "verify" module.
21626
21627 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
21628
21629         Sync from coreutils.
21630
21631         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
21632         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
21633         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
21634         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
21635         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
21636         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
21637         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
21638         Don't bother checking for string.h, stdlib.h, unistd.h.
21639         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
21640         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
21641         module's job.
21642         * m4/jm-macros.m4 (gl_MACROS): Likewise.
21643         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
21644
21645         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
21646         (gl_GETDATE): Use it.
21647
21648         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
21649
21650 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
21651
21652         Sync from coreutils.
21653
21654         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
21655         stat-time.h.
21656         * lib/argmatch.h: Include verify.h
21657         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
21658         (ARGMATCH_ASSERT): Remove; unused.
21659         * lib/canonicalize.c: Assume STDC_HEADERS.
21660         * lib/exclude.c: Include "strcase.h".
21661         * lib/regex_internal.h [!defined _LIBC]: Likewise.
21662         * lib/getusershell.c: Include stdio--.h rather than stdio.h
21663         and stdio-safer.h.
21664         (getusershell): Call fopen, not fopen_safer.
21665         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
21666         Do not include unistd-safer.h.
21667         (save_cwd): Don't call fd_safer; no longer needed
21668         now that we include fcntl--.h.
21669
21670         * lib/getdate.y (relative_time): New type.
21671         (RELATIVE_TIME_0): New constant.
21672         (parser_control): Use relative_time instead of doing it ourselves.
21673         (%union): Add new relative_time rel member.
21674         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
21675         Now typeless.
21676         (relunit, relunit_snumber): Now of type rel.
21677         (zone, rel, relunit, get_date): Adjust to above changes.
21678
21679         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
21680         Do not include unistd-safer.h.
21681         (getloadavg): Don't call fd_safer; no longer needed
21682         now that we include fcntl--.h.
21683
21684         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
21685         (make_dir_parents): Treat ENOSYS like EEXIST.
21686
21687         Improve quality of diagnostics on restore_cwd failure.
21688         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
21689         (make_dir_parents): Last arg is now int * (for errno), not bool *.
21690         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
21691         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
21692         each time through the loop.  Do not diagnose restore_cwd failure;
21693         that is the caller's job (and perhaps the caller does not care).
21694
21695         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
21696         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
21697         If the file already exists but is not a directory, don't bother
21698         to try to make its parents.
21699         Close potential file descriptor leak if we can't chdir("/") (!).
21700         Don't always return true if chdir($PWD) fails; return true only
21701         if the requested action was done successfully (except for the
21702         chdir($PWD)).
21703         Don't log final directory unless we actually made it.
21704         Refactor to avoid duplicate code to fix up permissions.
21705         Don't attempt to fix up parent permissions if chdir($PWD) fails.
21706
21707         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
21708         to make it a bit faster and (I hope) clearer.
21709         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
21710         Fix bug in formats like %2N.
21711
21712         * lib/verify.h: New file.
21713
21714 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
21715
21716         Sync from coreutils.
21717         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
21718
21719 2005-09-22  Jim Meyering  <jim@meyering.net>
21720
21721         Sync from coreutils.
21722
21723         * m4/lstat.m4 (gl_FUNC_LSTAT):
21724         Use AC_LIBSOURCES to require lstat.c and lstat.h.
21725         Remove obsolete comment.
21726         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
21727         * m4/xstrtod.m4: Likewise.
21728
21729         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
21730
21731 2005-09-22  Jim Meyering  <jim@meyering.net>
21732
21733         Sync from coreutils.
21734
21735         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
21736
21737         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
21738         the .tm_year member, since otherwise gcc-4.0 would now warn about
21739         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
21740
21741         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
21742         order to avoid an unsuppressible warning from gcc on 64-bit systems.
21743
21744         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
21745         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
21746         when run in a time zone for which daylight savings time is in effect
21747         for the starting date.
21748
21749         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
21750         stop us from restricting permissions of just-created absolute-named
21751         directories.
21752         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
21753         to restore initial working directory.
21754         * lib/mkdir-p.c (make_dir_parents): New parameter:
21755         different_working_dir, to tell caller if/when we change the working
21756         directory and are unable to return to the initial one.
21757         * lib/mkdir-p.h (make_dir_parents): Update prototype.
21758         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
21759         `return false'.  This fixes a bug introduced on 2004-07-30.
21760
21761         * lib/openat.c (fdopendir): Be sure to close the supplied
21762         file descriptor before returning.  This makes our replacement
21763         implementation a little closer to Solaris's, where fdopendir
21764         ties the file descriptor to the returned DIR* pointer.
21765         * lib/openat.c (unlinkat): New function.
21766         * lib/openat.h (unlinkat): Add prototype.
21767         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
21768         (openat_restore_fail): Rename from openat_restore_die.
21769         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
21770
21771         Provide an alternative to exiting immediately upon save_cwd or
21772         restore_cwd failure.  Now, an application can arrange e.g.,
21773         to perform a longjump in that case.
21774         * lib/openat.c: Include dirname.h.
21775         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
21776         (rpl_openat, fdopendir, fstatat): Call openat_save_die
21777         and openat_restore_die rather than calling error directly.
21778         Don't include "error.h" or "exitfail.h"; they're no longer needed.
21779
21780         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
21781         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
21782         define.
21783
21784         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
21785         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
21786                             int utc, int nanoseconds);
21787         Background:
21788         date should not have to allocate a megabyte of virtual memory to
21789         handle a format argument like +%1048575T.  When implemented with
21790         strftime, it must allocate such a buffer, use strftime to fill it
21791         in, print it, then free it.
21792         With fprintftime, it simply prints everything and exits.
21793         With no need for memory allocation, that's one fewer way to fail.
21794         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
21795         optional field width, not before, so we accept %9:z, not %:9z.
21796         (my_strftime): Be sure to use L_('x') for literals.
21797
21798         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
21799         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
21800         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
21801         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
21802         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
21803         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
21804         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
21805         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
21806         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
21807         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
21808         * lib/xgethostname.c, lib/xreadlink.c:
21809         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
21810
21811         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
21812         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
21813         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
21814         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
21815         and don't include <sys/file.h>).
21816
21817 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
21818
21819         Sync from coreutils.
21820
21821         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
21822         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
21823         [!LDAV_DONE]: Avoid unused variable warning.
21824
21825 2005-09-21  Bruno Haible  <bruno@clisp.org>
21826
21827         * lib/unicodeio.h (unicode_to_mb): New declaration.
21828
21829 2005-09-20  Derek Price  <derek@ximbiot.com>
21830
21831         * lib/getaddrinfo.c: Don't include <netdb.h> included from
21832         getaddrinfo.h.
21833
21834 2005-09-20  Bruno Haible  <bruno@clisp.org>
21835
21836         * gnulib-tool: Remove trailing slashes from the values specified for
21837         --source-base, --m4-base, --tests-base, --aux-dir.
21838         Suggested by Simon Josefsson <jas@extundo.com>.
21839
21840 2005-09-20  Bruno Haible  <bruno@clisp.org>
21841
21842         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
21843         func_modules_to_filelist, func_import, func_create_testdir): Make all
21844         sorting results locale-independent, so that gnulib-cache.m4 doesn't
21845         change when gnulib-tool is invoked in a different locale.
21846
21847 2005-09-19  Simon Josefsson  <jas@extundo.com>
21848
21849         * m4/socklen.m4: Fix typo.
21850
21851 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21852
21853         Use a consistent style for including <config.h>.
21854         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
21855         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
21856         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
21857         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
21858         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
21859         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
21860         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
21861         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
21862         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
21863         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
21864         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
21865         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
21866         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
21867         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
21868         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
21869         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
21870         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
21871         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
21872         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
21873         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
21874         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
21875         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
21876         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
21877         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
21878         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
21879         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
21880         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
21881         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
21882         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
21883         lib/xstrtoumax.c, lib/yesno.c:
21884         Standardize inclusion of config.h.
21885         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
21886         lib/inttostr.h:  Removed inclusion of config.h from header files.
21887         * lib/inttostr.c:  Adjusted in-tree users.
21888         * lib/timespec.h: Remove superfluous warning to include config.h.
21889         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
21890         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
21891         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
21892         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
21893         config.h with HAVE_CONFIG_H.
21894
21895 2005-09-19  Jim Meyering  <jim@meyering.net>
21896
21897         * modules/pathmax (License): Change to LGPL.
21898
21899 2005-09-19  Derek Price  <derek@ximbiot.com>
21900
21901         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
21902
21903 2005-09-19  Bruno Haible  <bruno@clisp.org>
21904
21905         * gnulib-tool (import): Provide default for --tests-base.
21906
21907 2005-09-19  Bruno Haible  <bruno@clisp.org>
21908
21909         * doc/quote.texi: New file, extracted from gnulib.texi.
21910         * doc/ctime.texi: New file, extracted from gnulib.texi.
21911         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
21912         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
21913         * doc/gnulib.texi: Include them.
21914
21915 2005-09-18  Bruno Haible  <bruno@clisp.org>
21916
21917         Portability fix.
21918         * gnulib-tool (func_readlink): New function.
21919         (func_ln_if_changed): Use it.
21920
21921 2005-09-18  Bruno Haible  <bruno@clisp.org>
21922
21923         * gnulib-tool: Support --with-tests also with --import.
21924         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
21925         (func_import): Use variables $testsbase and $inctests. Emit a
21926         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
21927         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
21928         SUBDIRS += $testsdir.
21929         (func_create_testdir): Update.
21930
21931 2005-09-18  Bruno Haible  <bruno@clisp.org>
21932
21933         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
21934         instead of $dry_run.
21935         (func_cp_if_changed, func_mv_if_changed): Remove functions.
21936         (func_ln_if_changed): Don't handle dry-run here.
21937         (func_import): In dry-run mode, detect more precisely which actions
21938         would be performed, and don't use "...ing" verbs.
21939
21940 2005-09-18  Bruno Haible  <bruno@clisp.org>
21941
21942         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
21943         (func_import): Use join on two temporary files instead of three nested
21944         loops, in order to determine which files are new or old.
21945
21946 2005-09-18  Bruno Haible  <bruno@clisp.org>
21947
21948         * gnulib-tool (func_import): Comment out code that spits out the
21949         new files with --dry-run.
21950
21951 2005-09-18  Bruno Haible  <bruno@clisp.org>
21952
21953         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
21954
21955 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
21956
21957         * lib/stat-time.h: New file.
21958         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
21959         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
21960         in a different way.
21961         (timespec_cmp): New function.
21962         * lib/utimecmp.c: Include stat-time.h.
21963         (SYSCALL_RESOLUTION): Depend on whether various struct stat
21964         members exist, not on the obsolescent ST_MTIM_NSEC.
21965         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
21966
21967 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
21968
21969         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
21970
21971 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
21972
21973         * MODULES.html.sh (File system functions): Add stat-time.
21974         * modules/stat-time: New file.
21975         * modules/timespec (Files): Remove m4/st_mtim.m4; this
21976         is now done in a different way, by the stat-time module.
21977         * modules/utimecmp (Depends-on): Add stat-time.
21978
21979 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
21980
21981         * m4/st_mtim.m4: Remove.  Superseded by...
21982         * m4/stat-time.m4: New file.
21983         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
21984         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
21985
21986 2005-09-15  Derek Price  <derek@ximbiot.com>
21987
21988         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
21989
21990 2005-09-15  Derek Price  <derek@ximbiot.com>
21991
21992         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
21993         * lib/regex_internal.c: Ditto, using this...
21994         (__GNUC_PREREQ): ...new macro.
21995         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
21996         using...
21997         (__GNUC_PREREQ): ...this new macro.
21998
21999         * lib/strstr.h: Include string.h. Define strstr as a macro here.
22000
22001 2005-09-15  Derek Price  <derek@ximbiot.com>
22002             Paul Eggert  <eggert@cs.ucla.edu>
22003
22004         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
22005         changes, consolidating in...
22006         * lib/regex_internal.h: ...this file.
22007
22008 2005-09-13  Jim Meyering  <jim@meyering.net>
22009
22010         * lib/canon-host.c: Filter through gnu indent and reword comments
22011         slightly.
22012         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
22013
22014 2005-09-13  Derek Price  <derek@ximbiot.com>
22015
22016         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
22017         failure.
22018         Reported by Jim Meyering  <jim@meyering.net>.
22019
22020 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
22021
22022         * lib/base64.c: Typo.
22023         (base64_encode): Put b64str in initialized data section.
22024
22025 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
22026
22027         Merge glibc and coreutils changes into gnulib, plus a few
22028         extra fixes.
22029         * lib/md5.c: Use #error rather than a string.
22030         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
22031         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
22032         (__attribute__): Define to empty for non recent-GCC.
22033         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
22034         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
22035         Renamed from their non-__ counterparts, with new macros replacing
22036         them if not _LIBC.  Add __THROW attribute.
22037         (rol): Remove.
22038         (struct md5_ctx): Align buffer if using GCC.
22039         * lib/sha1.h (struct sha1_ctx): Likewise.
22040         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
22041         The old name was backwards.
22042         (NOTSWAP): Remove; not used.
22043         (rol): New macro, moved here from md5.h.
22044         (sha1_process_block): Remove a FIXME that doesn't make sense.
22045
22046 2005-09-12  Derek Price  <derek@ximbiot.com>
22047
22048         Return usable errors from canon-host.
22049         * lib/canon-host.h: New file.
22050         * lib/canon-host.c (canon_host): Wrap...
22051         (canon_host_r): ...this new function, which now relies exclusively on
22052         getaddrinfo.
22053         (ch_strerror): New function.
22054         (last_cherror): New global.
22055         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
22056         interface.
22057         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
22058         void *.
22059         (freeaddrinfo): Free ai->ai_canonname when set.
22060
22061 2005-09-12  Derek Price  <derek@ximbiot.com>
22062
22063         Make canon-host require getaddrinfo.
22064         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
22065         AC_LIBSOURCE canon-host.h.  Call...
22066         (gl_PREREQ_CANON_HOST): ...this new function, which requires
22067         gl_GETADDRINFO.
22068         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
22069
22070 2005-09-12  Derek Price  <derek@ximbiot.com>
22071
22072         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
22073         LGPL.
22074         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
22075
22076 2005-09-12  Derek Price  <derek@ximbiot.com>
22077
22078         * lib/gai_strerror.c: Include config.h when available.  Include
22079         getaddrinfo.h before other headers to test interface.
22080         Reported by Larry Jones <lawrence.jones@ugs.com>.
22081
22082 2005-09-12  Derek Price  <derek@ximbiot.com>
22083             Paul Eggert  <eggert@cs.ucla.edu>
22084
22085         * modules/glob (Files): Add glob-libc.h.
22086
22087 2005-09-12  Derek Price  <derek@ximbiot.com>
22088             Paul Eggert  <eggert@cs.ucla.edu>
22089
22090         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
22091         glob_.h, glob-libc.h.
22092         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
22093
22094 2005-09-12  Derek Price  <derek@ximbiot.com>
22095             Paul Eggert  <eggert@cs.ucla.edu>
22096
22097         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
22098         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
22099         protecting things that should be done only in gnulib contexts.
22100         * lib/glob_.h: New file, containing only the glob things needed for
22101         gnulib.
22102         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
22103         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
22104         (glob, globfree, glob_pattern_p): Now defined simply in terms of
22105         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
22106         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
22107         and to respect the namespace rules better.
22108
22109 2005-09-08  Simon Josefsson  <jas@extundo.com>
22110
22111         * modules/socklen: New file.
22112
22113 2005-09-08  Simon Josefsson  <jas@extundo.com>
22114
22115         * m4/socklen.m4: New file.
22116
22117 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
22118
22119         * modules/utimens (Files): Add m4/utimbuf.m4, since
22120         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
22121         Reported by Sergey Poznyakoff.
22122
22123 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
22124
22125         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
22126         definitions, since that's the preferred style in glibc.
22127         Fix a minor spacing issue, and update copyright notice to match
22128         glibc's.
22129
22130 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
22131
22132         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
22133
22134 2005-09-06  Simon Josefsson  <jas@extundo.com>
22135
22136         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
22137         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
22138
22139 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
22140
22141         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
22142         warning.
22143
22144 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
22145
22146         * config/srclist.txt: Add glibc bug 1302.
22147
22148 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
22149
22150         Change bitset word type from unsigned int to unsigned long int,
22151         as this has better performance on typical 64-bit hosts.
22152         Port bitset code to hosts with unusual word sizes.
22153         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
22154         (build_collating_symbol):
22155         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
22156         argument is a bitset.  This is merely a style issue, but it makes
22157         it clearer that an entire array is expected.
22158         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
22159         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
22160         Port to the case where bitset_word is not the same as unsigned int.
22161         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
22162         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
22163         Likewise.
22164         * lib/regexec.c (check_dst_limits_calc_pos_1,
22165         check_subexp_matching_top):
22166         (build_trtable, group_nodes_into_DFAstates):
22167         Likewise.
22168         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
22169         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
22170         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
22171         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
22172         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
22173         * lib/regcomp.c (optimize_subexps, lower_subexp):
22174         Work even if bitset_word has holes in its bitwise representation.
22175         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
22176         * lib/regexec.c (check_dst_limits_calc_pos_1,
22177         check_subexp_matching_top):
22178         Likewise.
22179         * lib/regex_internal.c (re_string_reconstruct):
22180         Don't assume UCHAR_MAX == 255.
22181         * lib/regex_internal.h (bitset_set_all): Likewise.
22182         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
22183         All uses changed.
22184         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
22185         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
22186         All uses changed.
22187         (BITSET_WORD_MAX): New macro.
22188         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
22189         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
22190         (bitset_empty, bitset_copy):
22191         Prefer sizeof (bitset) to multiplying it out ourselves.
22192         (bitset_not_merge): Remove; unused.
22193         (bitset_contain): Return bool, not unsigned int with one bit on.
22194         All callers changed.
22195         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
22196         alignment than re_node_set; do this by defining a new internal
22197         type struct dests_alloc and using it to allocate memory.
22198
22199 2005-09-05  Bruno Haible  <bruno@clisp.org>
22200
22201         * gnulib-tool (func_import): Fix comparison in handling of symbolic
22202         links.
22203
22204 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
22205
22206         * modules/size_max (Makefile.am): Add size_max.h
22207
22208 2005-09-04  Derek Price  <derek@ximbiot.com>
22209
22210         * gnulib-tool (func_import): Fix reversed $symbolic logic.
22211
22212 2005-09-03  Simon Josefsson  <jas@extundo.com>
22213
22214         * gnulib-tool: Fix typo.
22215
22216 2005-09-03  Simon Josefsson  <jas@extundo.com>
22217
22218         * config/srclist.txt: Add glibc bug 1293.
22219
22220 2005-09-03  Derek Price  <derek@ximbiot.com>
22221
22222         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
22223         From Larry Jones <lawrence.jones@ugs.com>.
22224
22225 2005-09-02  Simon Josefsson  <jas@extundo.com>
22226
22227         * modules/socklen: New file.
22228
22229 2005-09-02  Simon Josefsson  <jas@extundo.com>
22230
22231         * modules/havelib: New module.
22232
22233         * modules/gettext, modules/iconv, modules/lock, modules/readline:
22234         Use havelib.
22235
22236 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
22237
22238         Check for arithmetic overflow when calculating sizes, to prevent
22239         some buffer-overflow issues.  These patches are conservative, in the
22240         sense that when I couldn't determine whether an overflow was possible,
22241         I inserted a run-time check.
22242         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
22243         macros.
22244         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
22245         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
22246         (re_xnrealloc, re_x2nrealloc): New inline functions.
22247         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
22248         parse_bracket_exp):
22249         (build_equiv_class, build_charclass): Check for arithmetic overflow
22250         in size expression calculations.
22251         * lib/regex_internal.c (re_string_realloc_buffers):
22252         (build_wcs_upper_buffer, re_node_set_add_intersect):
22253         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
22254         (re_dfa_add_node, register_state): Likewise.
22255         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
22256         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
22257         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
22258         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
22259
22260 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
22261
22262         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
22263         m4/ulonglong.m4.  Problem reported by Martin Lambers.
22264
22265 2005-09-02  Bruno Haible  <bruno@clisp.org>
22266
22267         Support for lib vs. lib64 distinction on biarch platforms.
22268         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
22269         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
22270         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
22271
22272 2005-09-02  Bruno Haible  <bruno@clisp.org>
22273
22274         * gnulib-tool (import): In the other first-use case, provide defaults
22275         as well.
22276
22277 2005-09-02  Bruno Haible  <bruno@clisp.org>
22278
22279         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
22280         patches not yet found in the latest gettext release.
22281
22282 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
22283
22284         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
22285         to avoid a collision with bits/local_lim.h in glibc.
22286         All uses changed.  Problem reported by Dmitry V. Levin in
22287         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
22288
22289         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
22290         bugs in int versus size_t comparisons.
22291         (re_string_context_at): Fix bug where the code assumed that
22292         Idx is signed.
22293
22294         Use bool where appropriate.
22295         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
22296         All callers changed.
22297         (calc_eclosure_iter): Likewise, for ROOT arg.
22298         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
22299         (build_charclass_op): Likewise, for NON_MATCH arg.
22300         * lib/regex_internal.c (re_string_allocate, re_string_construct):
22301         (re_string_construct_common): Likewise, for ICASE arg.
22302         * lib/regexec.c (re_search_2_stub, re_search_stub):
22303         Likewise, for RET_LEN arg.
22304         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
22305         (set_regs): Likewise, for FL_BACKTRACK arg.
22306         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
22307         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
22308         (calc_eclosure_iter, parse_bracket_exp):
22309         Use bool for internal variables that are booleans.
22310         * lib/regexec.c (re_search_internal, check_matching,
22311         proceed_next_node):
22312         (set_regs, build_sifted_states, sift_states_bkref):
22313         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
22314         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
22315         (find_collation_sequence_value):
22316         Likewise.
22317         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
22318         (re_node_set_compare):
22319         Return bool, not int. All callers changed.
22320         * lib/regexec.c (check_halt_node_context, check_dst_limits):
22321         (build_trtable, check_node_accept): Likewise.
22322         * lib/regex_internal.h: Include stdbool.h.
22323
22324         Fix bugs uncovered when converting to bool.
22325         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
22326         failure instead of charging ahead blindly.
22327         * lib/regex_internal.c (register_state): Likewise.
22328         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
22329         for freeing internal storage.
22330         (group_nodes_into_DFA_states): Use unsigned int, not int, for
22331         bitset pieces used as boolean, to avoid undefined behavior
22332         on hosts that do int overflow checking.
22333
22334 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
22335
22336         * config/srclist.txt: Add glibc bugs 1285-1287.
22337
22338 2005-09-01  Jim Meyering  <jim@meyering.net>
22339
22340         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
22341         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
22342         Require gl_STAT_MACROS, too.
22343
22344 2005-09-01  Bruno Haible  <bruno@clisp.org>
22345
22346         * gnulib-tool (import): In the first-use case, provide defaults.
22347
22348 2005-09-01  Bruno Haible  <bruno@clisp.org>
22349
22350         * gnulib-tool (func_import): Remove the .tmp files.
22351
22352 2005-09-01  Bruno Haible  <bruno@clisp.org>
22353
22354         * gnulib-tool (func_import): Fix handling of symbolic links.
22355
22356 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
22357
22358         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
22359         old glibc regex code mishandles strings longer than 2**31 bytes.
22360         This patch fixes this when the regex code is used in gnulib
22361         (i.e., outside glibc).
22362
22363         This patch should not affect the use of the regex code inside
22364         glibc.  No doubt this problem also needs to be handled for glibc
22365         as well, but the result will be an incompatible change to the
22366         glibc ABI, and the old ABI will have to be supported too.  That
22367         can be the the subject for another patch.
22368
22369         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
22370         governing whether the rest of this patch is active.  By default,
22371         the macro is disabled and the patch has no effect.
22372         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
22373         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
22374         (struct re_pattern_buffer, re_search, re_search_2, re_match):
22375         (re_match_2, re_set_registers): Use the new types.
22376         * lib/regex_internal.h (Idx, re_hashval_t): New types.
22377         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
22378         New macros.
22379         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
22380         (re_string_context_at, bin_tree_t, re_dfastate_t):
22381         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
22382         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
22383         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
22384         (re_string_char_size_at, re_string_wchar_at):
22385         (re_string_elem_size_at):
22386         Use the new types and macros to port to 64-bit hosts.
22387         Use unsigned types for internal values, so that the code
22388         mostly works even for arrays larger than SSIZE_MAX.
22389         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
22390         (search_duplicated_node, calc_eclosure_iter, fetch_number):
22391         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
22392         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
22393         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
22394         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
22395         (calc_inveclosure, parse_dup_op, build_range_exp):
22396         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
22397         (fetch_number, create_token_tree, mark_opt_subexp):
22398         Likewise.
22399         * lib/regex_internal.c (re_string_construct_common,
22400         create_ci_newstate):
22401         (create_cd_newstate, re_string_allocate, re_string_construct):
22402         (re_string_realloc_buffers, build_wcs_upper_buffer):
22403         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
22404         (re_string_reconstruct, re_string_peek_byte_case):
22405         (re_string_fetch_byte_case, re_string_context_at):
22406         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
22407         (re_node_set_init_copy, re_node_set_add_intersect):
22408         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
22409         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
22410         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
22411         (re_acquire_state, re_acquire_state_context, register_state):
22412         Likewise.
22413         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
22414         search_cur_bkref_entry):
22415         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
22416         (re_search_internal, re_search_2_stub, re_search_stub)
22417         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
22418         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
22419         (update_cur_sifted_state, check_dst_limits):
22420         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
22421         (check_subexp_limits, sift_states_bkref, merge_state_array):
22422         (check_subexp_matching_top, get_subexp, get_subexp_sub):
22423         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
22424         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
22425         (expand_bkref_cache, check_node_accept_bytes):
22426         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
22427         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
22428         (acquire_init_state_context, check_halt_node_context):
22429         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
22430         (sift_states_backward, clean_state_log_if_needed):
22431         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
22432         (find_recover_state, transit_state_sb, transit_state_mb):
22433         (transit_state_bkref, build_trtable, match_ctx_clean):
22434         Likewise.
22435         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
22436         to work around an assumption that REG_MISSING is negative.
22437
22438         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
22439         (seek_collating_symbol_entry) [defined _LIBC]:
22440         (lookup_collation_sequence_value) [defined _LIBC]:
22441         (build_range_exp, build_collating_symbol) [defined _LIBC]:
22442         Use prototypes rather than old-style function definitions.
22443         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
22444         (transit_state_sb) [0]:
22445         (find_collation_sequence_value) [defined _LIBC]: Likewise.
22446
22447         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
22448         rm_eo.
22449
22450         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
22451         (optimize_subexps, lower_subexp):
22452         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
22453         since the signed shift might overflow.  Use 1u<<31 instead.
22454         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
22455         Likewise.
22456         * lib/regexec.c (check_dst_limits_calc_pos_1,
22457         check_subexp_matching_top): Likewise.
22458
22459         * lib/regcomp.c (optimize_subexps, lower_subexp):
22460         Use CHAR_BIT rather than 8, for clarity.
22461         * lib/regexec.c (check_dst_limits_calc_pos_1):
22462         (check_subexp_matching_top): Likewise.
22463         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
22464         have to worry about portability issues when shifting it left.
22465         Remove no-longer-needed test for table_size > 0.
22466         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
22467         in a word, as the resulting behavior is undefined.
22468         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
22469         in one case, a <= should have been an <, and in another case the
22470         whole test was missing.
22471         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
22472         the standard name CHAR_BIT.
22473         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
22474         this is not true on one's complement and signed-magnitude hosts.
22475
22476         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
22477         next_last_offset.
22478         (struct re_dfa_t): Remove unused member states_alloc.
22479         * lib/regcomp.c (init_dfa): Don't initialize unused members.
22480
22481 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
22482
22483         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
22484         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
22485         and large-file glibc and in 32-bit large-file Solaris.
22486
22487 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
22488
22489         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
22490         lengths fit in regoff_t; this isn't true if regoff_t is the same
22491         width as size_t.
22492         * lib/regex.c (re_search_internal): 5th arg is LAST_START
22493         (= START + RANGE) instead of RANGE.  This avoids overflow
22494         problems when regoff_t is the same width as size_t.
22495         All callers changed.
22496         (re_search_2_stub): Check for overflow when adding the
22497         sizes of the two strings.
22498         (re_search_stub): Check for overflow when adding START
22499         to RANGE; if it occurs, substitute the extreme value.
22500
22501 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
22502
22503         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
22504
22505 2005-08-31  Jim Meyering  <jim@meyering.net>
22506
22507         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
22508         a pointer-to-const.
22509         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
22510         (register_state): Likewise.
22511         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
22512         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
22513         (group_nodes_into_DFAstates): Likewise.
22514
22515 2005-08-31  Jim Meyering  <jim@meyering.net>
22516
22517         * check-module: Add a FIXME comment.
22518
22519 2005-08-31  Eric Blake  <ebb9@byu.net>
22520
22521         * modules/unistd-safer (Files): Add unistd--.h.
22522         * modules/stdio-safer (Files): Add stdio--.h.
22523
22524 2005-08-31  Derek Price  <derek@ximbiot.com>
22525
22526         * lib/getdelim.c (getdelim): Return EOF on EOF.
22527         Reported by Larry Jones <lawrence.jones@ugs.com>.
22528
22529 2005-08-31  Bruno Haible  <bruno@clisp.org>
22530
22531         Avoid unnecessary diffs in the generated lib/Makefile.am.
22532         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
22533         the generated files.
22534         (func_import): Don't set cmd.
22535
22536 2005-08-31  Bruno Haible  <bruno@clisp.org>
22537
22538         * lib/strstr.c: Include <stddef.h>, for NULL.
22539         * lib/strcasestr.c: Likewise.
22540         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22541
22542 2005-08-31  Bruno Haible  <bruno@clisp.org>
22543
22544         * gnulib-tool: New option --macro-prefix.
22545         (func_import): Use macro_prefix.
22546         (import): Handle option --macro-prefix.
22547
22548 2005-08-31  Bruno Haible  <bruno@clisp.org>
22549
22550         * gnulib-tool (import): Rename most ac_* variables to cached_*.
22551         Also use new variables cached_lgpl, cached_libtool.
22552
22553 2005-08-31  Bruno Haible  <bruno@clisp.org>
22554
22555         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
22556         always instantiating them.
22557
22558 2005-08-31  Bruno Haible  <bruno@clisp.org>
22559
22560         * gnulib-tool (func_import): Read the previous cached settings
22561         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
22562         earlier added by gnulib but are now dropped. Warn when a gnulib file
22563         overwrites a non-gnulib file.
22564
22565 2005-08-31  Bruno Haible  <bruno@clisp.org>
22566
22567         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
22568         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
22569         projects that don't keep autogenerated files in CVS. Put into
22570         actioncmd only the specified modules, not the transitive closure.
22571
22572 2005-08-31  Bruno Haible  <bruno@clisp.org>
22573
22574         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
22575         Create directories that shall be filled.
22576         (import): Don't look for gl_* macros in configure.ac. Recurse across
22577         all directories containing a gnulib-cache.m4 files, if meaningful.
22578
22579 2005-08-31  Bruno Haible  <bruno@clisp.org>
22580
22581         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
22582         (import): Set seen_libtool when we see gl_LIBTOOL.
22583
22584 2005-08-31  Bruno Haible  <bruno@clisp.org>
22585
22586         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
22587         declaration macro definitions from generated gnulib.m4.
22588
22589 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
22590
22591         * lib/iconvme.h: Add prototype for iconv_alloc.
22592
22593 2005-08-29  Simon Josefsson  <jas@extundo.com>
22594
22595         * lib/iconvme.c: Fix errno.
22596
22597 2005-08-29  Bruno Haible  <bruno@clisp.org>
22598
22599         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
22600         that it works when the directory contains spaces.
22601
22602 2005-08-29  Bruno Haible  <bruno@clisp.org>
22603
22604         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
22605
22606 2005-08-29  Bruno Haible  <bruno@clisp.org>
22607
22608         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
22609         Emit more advice.
22610
22611 2005-08-29  Bruno Haible  <bruno@clisp.org>
22612         and Stepan Kasal  <kasal@ucw.cz>
22613
22614         * check-module: If more parameters are given, check each of them
22615         separately; add more exceptions, as noted by Jim Meyering.
22616         (check_module): New procedure.
22617         (%exempt_header): Now contains all exceptions.
22618
22619 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
22620
22621         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
22622
22623 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
22624
22625         * lib/iconvme.c: Split iconv_string into iconv_alloc.
22626
22627 2005-08-28  Bruno Haible  <bruno@clisp.org>
22628
22629         * m4/gnulib-tool.m4: New file.
22630
22631 2005-08-27  Jim Meyering  <jim@meyering.net>
22632
22633         * modules/unistd-safer (Files): Add pipe-safer.c.
22634         * modules/fcntl-safer (Files): Add creat-safer.c.
22635
22636 2005-08-27  Jim Meyering  <jim@meyering.net>
22637
22638         * m4/stdlib-safer.m4: New file.  From coreutils.
22639         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
22640         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
22641         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
22642         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
22643         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
22644
22645 2005-08-27  Jim Meyering  <jim@meyering.net>
22646
22647         * lib/fopen-safer.c: Merge minor changes from coreutils.
22648         * lib/dup-safer.c: Likewise.
22649         * lib/fd-safer.c: Likewise.
22650
22651         Merge from coreutils.
22652         * lib/stdio--.h: New file.
22653         * lib/stdlib--.h: New file.
22654         * lib/mkstemp-safer.c: New file.
22655
22656         GNU tar needs these.
22657         * lib/pipe-safer.c: New file.
22658         * lib/creat-safer.c: New file.
22659         * lib/fcntl--.h (creat): Define to creat_safer.
22660         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
22661         * lib/unistd--.h (pipe): Define to pipe_safer.
22662         * lib/unistd-safer.h: Declare pipe_safer.
22663
22664 2005-08-26  Simon Josefsson  <jas@extundo.com>
22665
22666         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
22667         Haible <bruno@clisp.org>.
22668
22669 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
22670
22671         * lib/regex_internal.h: Remove all references to
22672         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
22673         or better.
22674         (bitset_not, bitset_merge, bitset_not_merge):
22675         (bitset_mask, re_string_allocate, re_string_construct):
22676         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
22677         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
22678         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
22679         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
22680         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
22681         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
22682         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
22683         (re_acquire_state_context):
22684         Remove unnecessary forward decls.
22685         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
22686         Put __attribute at function definition,
22687         now that the function decl has been removed.
22688         * lib/regex_internal.c (re_string_peek_byte_case):
22689         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
22690         Likewise.
22691
22692 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
22693
22694         * m4/regex.m4: Add AC_PREREQ(2.50).
22695         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
22696
22697 2005-08-25  Simon Josefsson  <jas@extundo.com>
22698
22699         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
22700         __fsetlocking.
22701
22702 2005-08-25  Simon Josefsson  <jas@extundo.com>
22703
22704         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
22705         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
22706         GLIBC specific code.
22707
22708 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22709
22710         Make regex safe for g++.  This fixes one real bug (an "err"
22711         that should have been "*err").  g++ problem reported by
22712         Sam Steingold.
22713         * lib/regex_internal.h (re_calloc): New macro, consistent with
22714         re_malloc etc.  All callers of calloc changed to use re_calloc.
22715         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
22716         not int.  All callers changed.
22717         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
22718         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
22719         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
22720         (find_recover_state): Change "err" to "*err"; this fixes what
22721         appears to be a real bug.
22722         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
22723         versus int.
22724
22725 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22726
22727         * modules/regex (Depends-on): Add malloc, since the code
22728         assumes that !malloc(0) means failure.
22729
22730 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22731
22732         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
22733
22734         alloca modernization/simplification for regex.
22735         * lib/regex.c: Remove portability cruft for alloca.  This no longer
22736         needs to be at the start of the file, and can be moved into
22737         regex_internal.h and simplified.
22738         * lib/regex_internal.h: Include <alloca.h>.
22739         (__libc_use_alloca) [!defined _LIBC]: New macro.
22740         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
22741         now works outside glibc.
22742
22743 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
22744
22745         * config/srclist.txt: Add glibc bugs 1241, 1245.
22746
22747 2005-08-25  Jim Meyering  <jim@meyering.net>
22748
22749         * lib/open-safer.c: Include <config.h>.
22750         Otherwise, we'd lose LARGEFILE support in any file using
22751         e.g. "fcntl--.h"
22752
22753 2005-08-25  Bruno Haible  <bruno@clisp.org>
22754
22755         * m4/minmax.m4: Require autoconf 2.52.
22756         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
22757         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
22758         alternatives of translit over the alphabet.
22759         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
22760
22761 2005-08-24  Simon Josefsson  <jas@extundo.com>
22762
22763         * tests/test-getpass.c: New file.
22764
22765 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22766
22767         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
22768         for GNU regex features.
22769
22770 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22771
22772         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
22773         * lib/regex.h (regerror): Likewise.
22774
22775         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
22776         requires this.  (The code never needed it.)
22777
22778         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
22779         All uses of recently-renamed identifiers changed to use the new,
22780         POSIX-compliant names.  The code will build and run just fine
22781         without these changes, but it's better to eat our own dog food
22782         and use the standard-conforming names.
22783
22784         * lib/regex.h: Fix a multitude of POSIX name space violations.
22785         These changes have an effect only for programs that define
22786         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
22787         do not change anything for programs compiled in the normal way.
22788         Also, there is no effect on the ABI.
22789
22790         (_REGEX_SOURCE): New macro.
22791         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
22792         defined and _GNU_SOURCE is not; this fixes a name space violation.
22793
22794         Rename the following macros to obey POSIX requirements.
22795         The old names are still visible as macros if _REGEX_SOURCE is defined.
22796         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
22797         RE_BACKSLASH_ESCAPE_IN_LISTS.
22798         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
22799         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
22800         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
22801         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
22802         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
22803         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
22804         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
22805         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
22806         (REG_INTERVALS): renamed from RE_INTERVALS.
22807         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
22808         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
22809         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
22810         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
22811         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
22812         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
22813         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
22814         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
22815         RE_UNMATCHED_RIGHT_PAREN_ORD.
22816         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
22817         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
22818         (REG_DEBUG): renamed from RE_DEBUG.
22819         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
22820         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
22821         unusual, since we can't clash with the POSIX REG_ICASE.
22822         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
22823         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
22824         (REG_NO_SUB): renamed from RE_NO_SUB.
22825         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
22826         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
22827         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
22828         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
22829         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
22830         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
22831         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
22832         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
22833         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
22834         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
22835         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
22836         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
22837         RE_SYNTAX_POSIX_MINIMAL_BASIC.
22838         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
22839         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
22840         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
22841         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
22842         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
22843         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
22844         (REG_FIXED): Renamed from REGS_FIXED.
22845         (REG_NREGS): Renamed from RE_NREGS.
22846
22847         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
22848         of other REG_* macros, since POSIX says the user is allowed to
22849         #undef these macros selectively.
22850
22851         (reg_errcode_t): Update comment stating what other tables need
22852         to be consistent.
22853
22854         Rename the following enum values to obey POSIX requirements.
22855         The old names are still visible as macros.
22856         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
22857         is not defined, since GNU is supposed to be a superset of POSIX as
22858         much as possible, and since we want reg_errcode_t to be a signed
22859         type for implementation consistency.
22860         (_REG_NOERROR): Renamed from REG_NOERROR.
22861         (_REG_NOMATCH): Renamed from REG_NOMATCH.
22862         (_REG_BADPAT): Renamed from REG_BADPAT.
22863         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
22864         (_REG_ECTYPE): Renamed from REG_ECTYPE.
22865         (_REG_EESCAPE): Renamed from REG_EESCAPE.
22866         (_REG_ESUBREG): Renamed from REG_ESUBREG.
22867         (_REG_EBRACK): Renamed from REG_EBRACK.
22868         (_REG_EPAREN): Renamed from REG_EPAREN.
22869         (_REG_EBRACE): Renamed from REG_EBRACE.
22870         (_REG_BADBR): Renamed from REG_BADBR.
22871         (_REG_ERANGE): Renamed from REG_ERANGE.
22872         (_REG_ESPACE): Renamed from REG_ESPACE.
22873         (_REG_BADRPT): Renamed from REG_BADRPT.
22874         (_REG_EEND): Renamed from REG_EEND.
22875         (_REG_ESIZE): Renamed from REG_ESIZE.
22876         (_REG_ERPAREN): Renamed from REG_ERPAREN.
22877         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
22878         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
22879         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
22880         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
22881
22882         (_REG_RE_NAME, _REG_RM_NAME): New macros.
22883         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
22884         changed.  But support the old name if the new one is not defined
22885         and if _REGEX_SOURCE.
22886
22887         Change the following member names in struct re_pattern_buffer.
22888         The old names are still supported if !_REGEX_SOURCE.
22889         The new names are always supported, regardless of _REGEX_SOURCE.
22890         (re_buffer): Renamed from buffer.
22891         (re_allocated): Renamed from allocated.
22892         (re_used): Renamed from used.
22893         (re_syntax): Renamed from syntax.
22894         (re_fastmap): Renamed from fastmap.
22895         (re_translate): Renamed from translate.
22896         (re_can_be_null): Renamed from can_be_null.
22897         (re_regs_allocated): Renamed from regs_allocated.
22898         (re_fastmap_accurate): Renamed from fastmap_accurate.
22899         (re_no_sub): Renamed from no_sub.
22900         (re_not_bol): Renamed from not_bol.
22901         (re_not_eol): Renamed from not_eol.
22902         (re_newline_anchor): Renamed from newline_anchor.
22903
22904         Change the following member names in struct re_registers.
22905         The old names are still supported if !_REGEX_SOURCE.
22906         The new names are always supported, regardless of _REGEX_SOURCE.
22907         (rm_num_regs): Renamed from num_regs.
22908         (rm_start): Renamed from start.
22909         (rm_end): Renamed from end.
22910
22911         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
22912         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
22913         Prepend __ to parameter names.
22914
22915         Undo yesterday's changes.
22916
22917 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
22918
22919         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
22920         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
22921         lib/regex.c.
22922
22923 2005-08-24  Jim Meyering  <jim@meyering.net>
22924
22925         Sync from coreutils.
22926         * m4/fcntl-safer.m4: New file.
22927
22928         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
22929         and object files for this module.
22930
22931 2005-08-24  Jim Meyering  <jim@meyering.net>
22932
22933         Sync from coreutils.
22934         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
22935
22936 2005-08-24  Jim Meyering  <jim@meyering.net>
22937
22938         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
22939         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
22940
22941 2005-08-24  Jim Meyering  <jim@meyering.net>
22942
22943         * modules/fcntl-safer: New module.
22944         * modules/fts (Depends-on): Add fcntl-safer.
22945         * MODULES.html.sh (File descriptor based Input/Output):
22946         Add fcntl-safer.
22947
22948 2005-08-24  Bruno Haible  <bruno@clisp.org>
22949
22950         Support for unit test modules.
22951         * modules/README: Mention tests modules.
22952         * modules/TEMPLATE-TESTS: New file.
22953         * gnulib-tool: New options --extract-tests-module, --with-tests and
22954         --tests-base (unused for the moment).
22955         (testsbase, inctests): New variables.
22956         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
22957         (func_verify_module): Exclude TEMPLATE-TESTS.
22958         (func_verify_nontests_module, func_verify_tests_module): New functions.
22959         (func_get_dependencies): Add implicit dependency for tests modules.
22960         (func_get_tests_module): New function.
22961         (func_modules_transitive_closure): When --with-tests was specified,
22962         include the unit tests as well, unless explicitly avoided.
22963         (func_emit_lib_Makefile_am): Ignore the tests modules here.
22964         (func_emit_tests_Makefile_am): New function.
22965         (func_create_testdir): When --with-tests was specified, emit a
22966         tests/ directory.
22967         * MODULES.html.sh (Future developments): Update.
22968
22969 2005-08-24  Bruno Haible  <bruno@clisp.org>
22970
22971         * modules/tls-tests: New file.
22972         * tests/test-tls.c: New file, from GNU gettext.
22973
22974 2005-08-24  Bruno Haible  <bruno@clisp.org>
22975
22976         * modules/lock-tests: New file.
22977         * tests/test-lock.c: New file, from GNU gettext.
22978
22979 2005-08-24  Bruno Haible  <bruno@clisp.org>
22980
22981         * lib/lock.h: Add multiple inclusion guard.
22982         * lib/tls.h: Add multiple inclusion guard.
22983
22984 2005-08-24  Bruno Haible  <bruno@clisp.org>
22985
22986         * gnulib-tool: Add support for the --aux-dir option to
22987         --create-testdir, --create-megatestdir, --test, --megatest.
22988         (func_create_testdir, func_create_megatestdir): Optionally emit a
22989         AC_CONFIG_AUX_DIR directive.
22990         (create-testdir, create-megatestdir, test, megatest): Provide a
22991         default value for $auxdir.
22992
22993 2005-08-24  Bruno Haible  <bruno@clisp.org>
22994
22995         * gnulib-tool (import): Use compound statement instead of subshell
22996         where possible.
22997
22998 2005-08-24  Bruno Haible  <bruno@clisp.org>
22999
23000         * gnulib-tool (import): Change --aux-dir default to "build-aux".
23001
23002 2005-08-24  Bruno Haible  <bruno@clisp.org>
23003
23004         * gnulib-tool (func_version): Update.
23005
23006 2005-08-24  Bruno Haible  <bruno@clisp.org>
23007
23008         * gnulib-tool (func_import, func_create_testdir,
23009         func_create_megatestdir): Quote all autoconf macro arguments.
23010
23011 2005-08-24  Bruno Haible  <bruno@clisp.org>
23012
23013         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
23014         option --force, because --force causes the aclocal.m4 of each
23015         subdirectory to be newer than the corresponding config.h.in.
23016
23017 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
23018
23019         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
23020         All contents moved to gl_REGEX.
23021         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
23022         assume that it does.
23023
23024 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
23025
23026         * lib/regex.h (REG_NOSYS)
23027         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
23028         Define, since POSIX requires it as of 2001.
23029         (_REG_ENOSYS)
23030         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
23031         New private symbol, used to keep the enum signed in all cases.
23032         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
23033         Youngman in
23034         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
23035
23036         * lib/regex_internal.c (re_string_skip_chars, register_state):
23037         (calc_state_hash):
23038         Remove forward decls; no longer needed now that we use prototypes.
23039         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
23040         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
23041         (clean_state_log_if_needed): Likewise.
23042
23043 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
23044
23045         * config/srclist.txt: Add glibc bugs 1231-1233.
23046
23047 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23048
23049         Fix problems reported by Sam Steingold in
23050         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
23051         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
23052         assumed that reg_errcode_t is a signed type, which is not
23053         necessarily true if _XOPEN_SOURCE is not defined.
23054         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
23055         since some compilers warn about it otherwise.
23056
23057 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23058
23059         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
23060         (init_word_char, create_initial_state, duplicate_node_closure):
23061         (fetch_token, peek_token_bracket, build_range_exp):
23062         (build_collating_symbol): Remove forward decls; no longer needed
23063         now that we use prototypes.
23064
23065         * lib/regcomp.c:
23066         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
23067         (re_compile_fastmap_iter, regcomp, regerror, regfree):
23068         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
23069         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
23070         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
23071         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
23072         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
23073         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
23074         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
23075         (build_range_exp, build_collating_symbol, parse_bracket_exp):
23076         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
23077         (build_charclass, build_charclass_op, fetch_number, create_tree):
23078         (create_token_tree, mark_opt_subexp, duplicate_tree):
23079         Use prototypes rather than old-style definitions.
23080
23081         * lib/regex_internal.c:
23082         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
23083         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
23084         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
23085         (re_string_reconstruct, re_string_peek_byte_case):
23086         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
23087         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
23088         (re_node_set_init_copy, re_node_set_add_intersect):
23089         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
23090         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
23091         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
23092         (re_acquire_state, re_acquire_state_context, register_state):
23093         (create_ci_newstate, create_cd_newstate, free_state):
23094         Likewise.
23095         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
23096         re_search_2):
23097         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
23098         (re_search_internal, prune_impossible_nodes):
23099         (acquire_init_state_context, check_matching, static):
23100         (check_halt_node_context, check_halt_state_context, proceed_next_node):
23101         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
23102         (update_regs, sift_states_backward, build_sifted_states):
23103         (clean_state_log_if_needed, merge_state_array):
23104         (update_cur_sifted_state, add_epsilon_src_nodes):
23105         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
23106         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
23107         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
23108         (find_recover_state, check_subexp_matching_top, transit_state_mb):
23109         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
23110         (check_arrival, check_arrival_add_next_nodes):
23111         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
23112         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
23113         (check_node_accept_bytes, check_node_accept, extend_buffers):
23114         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
23115         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
23116         (sift_ctx_init):
23117         Likewise.
23118
23119         * lib/regex_internal.h:
23120         (re_string_allocate, re_string_construct, re_string_reconstruct):
23121         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
23122         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
23123         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
23124         (re_string_context_at, re_string_peek_byte_case):
23125         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
23126         is defined, since we now use prototypes always.
23127
23128         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
23129         C89 or better.  All uses removed.
23130
23131 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
23132
23133         * config/srclist.txt: Add glibc bugs 1220-1227.
23134
23135 2005-08-20  Jim Meyering  <jim@meyering.net>
23136
23137         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
23138         of unused local, dfa.
23139
23140 2005-08-20  Bruno Haible  <bruno@clisp.org>
23141
23142         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
23143
23144 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23145
23146         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
23147         (re_node_set_insert_last, re_dfa_add_node):
23148         Rename local variables to avoid GCC shadowing warnings.
23149
23150 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23151
23152         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
23153         [defined lint]: Suppress bogus uninitialized-variable warnings.
23154
23155         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
23156         and let the caller return REG_ESPACE if out of space.  This
23157         removes an uninitialied-variable warning with GCC 4.0.1, and also
23158         avoids taking the address of a local variable.  All callers
23159         changed.
23160
23161 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23162
23163         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
23164         $LIBCSRC/posix/regexec.c.
23165         Add glibc bug 1217 for regcomp.c.
23166
23167 2005-08-19  Jim Meyering  <jim@meyering.net>
23168
23169         * lib/regexec.c (proceed_next_node): Redo local variables to
23170         avoid GCC shadowing warnings.
23171
23172 2005-08-18  Bruno Haible  <bruno@clisp.org>
23173
23174         * lib/strstr.c (strstr): Fix return value in multibyte case.
23175         * lib/strcasestr.c (strcasestr): Likewise.
23176
23177 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23178
23179         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
23180
23181 2005-08-17  Jim Meyering  <jim@meyering.net>
23182
23183         Make the %s format (seconds since the epoch) work for a negative
23184         number and when used with a zero-padded field width, e.g. %015s.
23185
23186         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
23187         label so that it precedes the code to set `digits'.  Otherwise,
23188         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
23189         print `00-22'.  Now, it prints `-0022', as it should.
23190
23191 2005-08-17  Bruno Haible  <bruno@clisp.org>
23192
23193         * modules/strstr (Files): Add m4/mbrtowc.m4.
23194         (Depends-on): Add mbuiter.
23195
23196 2005-08-17  Bruno Haible  <bruno@clisp.org>
23197
23198         * modules/strcasestr: New file.
23199         * MODULES.html.sh (String handling, based on ANSI C 89): Add
23200         strcasestr.
23201
23202 2005-08-17  Bruno Haible  <bruno@clisp.org>
23203
23204         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
23205
23206 2005-08-17  Bruno Haible  <bruno@clisp.org>
23207
23208         * modules/mbuiter: New file.
23209         * MODULES.html.sh (Extended multibyte and wide character utilities):
23210         Add mbuiter.
23211
23212 2005-08-17  Bruno Haible  <bruno@clisp.org>
23213
23214         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
23215         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
23216
23217 2005-08-17  Bruno Haible  <bruno@clisp.org>
23218
23219         * m4/strcasestr.m4: New file.
23220
23221 2005-08-17  Bruno Haible  <bruno@clisp.org>
23222
23223         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
23224         * lib/strstr.c: Completely rewritten, with multibyte locale support.
23225
23226 2005-08-17  Bruno Haible  <bruno@clisp.org>
23227
23228         * lib/strcasestr.h: New file.
23229         * lib/strcasestr.c: New file.
23230
23231 2005-08-17  Bruno Haible  <bruno@clisp.org>
23232
23233         * lib/strcasecmp.c: Use mbuiter.h.
23234
23235 2005-08-17  Bruno Haible  <bruno@clisp.org>
23236
23237         * lib/mbuiter.h: New file.
23238
23239 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
23240
23241         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
23242         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
23243         and gl_GETOPT are both invoked via different paths (as happens
23244         with GNU tar CVS because it uses both argp and getopt), the former
23245         wins.
23246
23247 2005-08-16  Bruno Haible  <bruno@clisp.org>
23248
23249         * modules/tls: New file.
23250         * MODULES.html.sh (Multithreading): Add tls.
23251
23252 2005-08-16  Bruno Haible  <bruno@clisp.org>
23253
23254         * modules/strnlen1: New file.
23255         * MODULES.html.sh (String handling): Add strnlen1.
23256
23257 2005-08-16  Bruno Haible  <bruno@clisp.org>
23258
23259         * modules/strcase (Files): Add m4/mbrtowc.m4.
23260         (Depends-on): Add strnlen1, mbchar.
23261
23262 2005-08-16  Bruno Haible  <bruno@clisp.org>
23263
23264         * modules/mbiter: New file.
23265         * MODULES.html.sh (Extended multibyte and wide character utilities):
23266         Add mbiter.
23267
23268 2005-08-16  Bruno Haible  <bruno@clisp.org>
23269
23270         * modules/mbfile: New file.
23271         * MODULES.html.sh (Extended multibyte and wide character utilities):
23272         Add mbfile.
23273
23274 2005-08-16  Bruno Haible  <bruno@clisp.org>
23275
23276         * modules/mbchar: New file.
23277         * MODULES.html.sh (Extended multibyte and wide character utilities):
23278         New section.
23279
23280 2005-08-16  Bruno Haible  <bruno@clisp.org>
23281
23282         * m4/tls.m4: New file, from GNU gettext.
23283
23284 2005-08-16  Bruno Haible  <bruno@clisp.org>
23285
23286         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
23287         always.
23288         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
23289
23290 2005-08-16  Bruno Haible  <bruno@clisp.org>
23291
23292         * m4/mbiter.m4: New file.
23293
23294 2005-08-16  Bruno Haible  <bruno@clisp.org>
23295
23296         * m4/mbfile.m4: New file.
23297
23298 2005-08-16  Bruno Haible  <bruno@clisp.org>
23299
23300         * m4/mbchar.m4: New file.
23301
23302 2005-08-16  Bruno Haible  <bruno@clisp.org>
23303
23304         * lib/tls.h: New file, from GNU gettext.
23305         * lib/tls.c: New file, from GNU gettext.
23306
23307 2005-08-16  Bruno Haible  <bruno@clisp.org>
23308
23309         * lib/strnlen1.h: New file.
23310         * lib/strnlen1.c: New file.
23311
23312 2005-08-16  Bruno Haible  <bruno@clisp.org>
23313
23314         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
23315         (mbi_init): Update.
23316         (mbi_avail, mbi_advance): Let the iteration end before the terminating
23317         NUL byte, not after it.
23318
23319 2005-08-16  Bruno Haible  <bruno@clisp.org>
23320
23321         * lib/strcase.h (strcasecmp): Add note in comments.
23322         * lib/strncasecmp.c: Use code from strcasecmp.c.
23323         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
23324         (strcasecmp): Work correctly in multibyte locales.
23325
23326 2005-08-16  Bruno Haible  <bruno@clisp.org>
23327
23328         * lib/mbiter.h: New file.
23329
23330 2005-08-16  Bruno Haible  <bruno@clisp.org>
23331
23332         * lib/mbfile.h: New file.
23333
23334 2005-08-16  Bruno Haible  <bruno@clisp.org>
23335
23336         * lib/mbchar.h: New file.
23337         * lib/mbchar.c: New file.
23338
23339 2005-08-16  Bruno Haible  <bruno@clisp.org>
23340
23341         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
23342         the valid ones. Makes the comparison operations transitive:
23343         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
23344         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
23345
23346 2005-08-15  Simon Josefsson  <jas@extundo.com>
23347
23348         * modules/ssize_t (License): Change to 'unlimited'.
23349
23350         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
23351
23352 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23353
23354         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
23355         Add comments for each pending glibc patch.
23356
23357 2005-08-15  Bruno Haible  <bruno@clisp.org>
23358
23359         * lib/regex.h (__restrict_arr): Don't define to __restrict if
23360         __cplusplus is defined.
23361
23362 2005-08-14  Jim Meyering  <jim@meyering.net>
23363
23364         Sync from coreutils.
23365
23366         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
23367         Use the hash-table-based cycle-detection code not just when
23368         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
23369         Reported by James Youngman in
23370         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
23371         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
23372         FTS_TIGHT_CYCLE_CHECK.
23373         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
23374         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
23375         once again.
23376         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
23377         * lib/fts.c (fd_safer): Remove decl.
23378         Include fcntl--.h rather than unistd-safer.h
23379         (fts_safe_changedir): Don't call fd_safer; no longer needed
23380         now that we include fcntl--.h.
23381
23382 2005-08-12  Simon Josefsson  <jas@extundo.com>
23383
23384         * modules/getndelim2: Use ssize_t module.
23385         * modules/getnline: Likewise.
23386         * modules/safe-read: Likewise.
23387         * modules/xreadlink: Likewise.
23388
23389         * modules/ssize_t: New file.
23390
23391 2005-08-12  Simon Josefsson  <jas@extundo.com>
23392
23393         * m4/readline.m4: Look for termcap, curses or ncurses if required.
23394
23395 2005-08-12  Simon Josefsson  <jas@extundo.com>
23396
23397         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23398         ssize_t.
23399
23400 2005-08-12  Simon Josefsson  <jas@extundo.com>
23401
23402         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
23403         readline, getdelim and check_version.
23404         (Support for systems lacking ISO C 99: Sizes of integer types):
23405         Add size_max.
23406
23407 2005-08-12  Bruno Haible  <bruno@clisp.org>
23408
23409         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
23410
23411 2005-08-11  Simon Josefsson  <jas@extundo.com>
23412
23413         * modules/readline: New file.
23414
23415         * modules/strnlen (Files): Add strnlen.h.
23416
23417 2005-08-11  Simon Josefsson  <jas@extundo.com>
23418
23419         * m4/readline.m4: New file.
23420
23421 2005-08-11  Simon Josefsson  <jas@extundo.com>
23422
23423         * lib/readline.h, readline.c: New file.
23424
23425 2005-08-11  Simon Josefsson  <jas@extundo.com>
23426
23427         * doc/gnulib.texi (Initial import, Finishing touches): Mention
23428         gl_AVOID.
23429
23430 2005-08-11  Bruno Haible  <bruno@clisp.org>
23431
23432         * lib/strnlen.h (strnlen): Change parameter name to match comment.
23433
23434 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
23435
23436         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
23437
23438 2005-08-10  Simon Josefsson  <jas@extundo.com>
23439
23440         * tests/test-iconvme.c: New file.
23441
23442 2005-08-10  Simon Josefsson  <jas@extundo.com>
23443
23444         * m4/strnlen.m4: New file.
23445
23446         * m4/strndup.m4: Don't check for strnlen declaration, done in
23447         strnlen.m4.
23448
23449 2005-08-10  Simon Josefsson  <jas@extundo.com>
23450
23451         * lib/strndup.c: Use strnlen.h.
23452
23453         * lib/strnlen.h: New file.
23454
23455 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
23456
23457         * README: Typos.
23458
23459 2005-08-02  Simon Josefsson  <jas@extundo.com>
23460
23461         * modules/readline: New file.
23462
23463 2005-08-02  Simon Josefsson  <jas@extundo.com>
23464
23465         * modules/getdelim: New file.
23466
23467         * modules/getline: Rewrite, don't use getndelim2.
23468
23469 2005-08-02  Simon Josefsson  <jas@extundo.com>
23470
23471         * m4/getline.m4: Separate out getdelim stuff into separate module.
23472
23473         * m4/getdelim.m4: New file.
23474
23475 2005-08-02  Simon Josefsson  <jas@extundo.com>
23476
23477         * lib/getline.h, getline.c: Rewrite.
23478
23479         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
23480
23481 2005-07-31  Bruno Haible  <bruno@clisp.org>
23482
23483         * lib/lock.h (gl_lock_initializer): New macro.
23484         (gl_lock_define_initialized): Use it.
23485         (gl_rwlock_initializer): New macro.
23486         (gl_rwlock_define_initialized): Use it.
23487         (gl_recursive_lock_initializer): New macro.
23488         (gl_recursive_lock_define_initialized): Use it.
23489
23490 2005-07-30  Karl Berry  <karl@gnu.org>
23491
23492         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
23493         Report from Ben Pfaff, regarding getopt.
23494
23495 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
23496
23497         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
23498         normal way.
23499         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
23500         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
23501         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
23502         (gl_GETOPT): Use the new macros.  Most of the implementation
23503         is moved to the new macros.  This is for programs like Emacs
23504         that don't want all the functionality of gl_GETOPT.
23505
23506 2005-07-26  Bruno Haible  <bruno@clisp.org>
23507
23508         * m4/lock.m4: Update from GNU gettext.
23509
23510 2005-07-26  Bruno Haible  <bruno@clisp.org>
23511
23512         * lib/lock.h: Update from GNU gettext.
23513         * lib/lock.c: Update from GNU gettext.
23514
23515 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
23516
23517         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
23518         obsolescent AC_TRY_RUN.  Include the default includes files, for
23519         'exit'.
23520
23521 2005-07-24  Bruno Haible  <bruno@clisp.org>
23522
23523         * modules/visibility: New file.
23524         * MODULES.html.sh (Misc): Add visibility.
23525
23526 2005-07-24  Bruno Haible  <bruno@clisp.org>
23527
23528         * m4/visibility.m4: New file.
23529
23530 2005-07-24  Bruno Haible  <bruno@clisp.org>
23531
23532         * doc/visibility.texi: New file.
23533
23534 2005-07-22  Bruno Haible  <bruno@clisp.org>
23535
23536         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
23537         $(ALLOCA_H), redundant through BUILT_SOURCES.
23538         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
23539         redundant through BUILT_SOURCES.
23540         * modules/byteswap (Makefile.am): Remove explicit dependency on
23541         $(BYTESWAP_H), redundant through BUILT_SOURCES.
23542         * modules/fnmatch (Makefile.am): Remove explicit dependency on
23543         $(FNMATCH_H), redundant through BUILT_SOURCES.
23544         * modules/getopt (Makefile.am): Remove explicit dependency on
23545         $(GETOPT_H), redundant through BUILT_SOURCES.
23546         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
23547         redundant through BUILT_SOURCES.
23548         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
23549         redundant through BUILT_SOURCES.
23550         * modules/stdbool (Makefile.am): Remove explicit dependency on
23551         $(STDBOOL_H), redundant through BUILT_SOURCES.
23552         * modules/stdint (Makefile.am): Remove explicit dependency on
23553         $(STDINT_H), redundant through BUILT_SOURCES.
23554         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
23555         Remove explicit dependency on $(SYSEXITS_H).
23556         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
23557
23558 2005-07-18  Simon Josefsson  <jas@extundo.com>
23559
23560         * lib/check-version.c (check_version): Accept identical versions too.
23561
23562 2005-07-18  Bruno Haible  <bruno@clisp.org>
23563
23564         * modules/lock: New file.
23565         * MODULES.html.sh (Multithreading): New section.
23566
23567 2005-07-18  Bruno Haible  <bruno@clisp.org>
23568
23569         * m4/lock.m4: New file, from GNU gettext.
23570
23571 2005-07-18  Bruno Haible  <bruno@clisp.org>
23572
23573         * lib/lock.h: New file, from GNU gettext.
23574         * lib/lock.c: New file, from GNU gettext.
23575
23576 2005-07-18  Bruno Haible  <bruno@clisp.org>
23577
23578         * lib/lock.h (gl_once_t): New type.
23579         (gl_once_define, gl_once): New macros.
23580         * lib/lock.c (fresh_once): New variable.
23581         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
23582         functions.
23583
23584 2005-07-16  Simon Josefsson  <jas@extundo.com>
23585
23586         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
23587         workaround, suggested by Bruno.
23588
23589 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
23590
23591         * modules/xalloc (Depends-on): Add xalloc-die.
23592         * modules/xvasprintf (Depends-on): Add xalloc-die.
23593
23594 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
23595
23596         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
23597         with a minor change.
23598
23599 2005-07-15  Bruno Haible  <bruno@clisp.org>
23600
23601         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
23602         When using lib/poll.c, define poll as rpl_poll.
23603
23604 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
23605
23606         * modules/argp (Depends-on): Remove unlocked-io.
23607
23608 2005-07-14  Derek Price  <derek@ximbiot.com>
23609
23610         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
23611         for glob symlink bug.
23612
23613 2005-07-14  Bruno Haible  <bruno@clisp.org>
23614
23615         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
23616         Instead, test for *_unlocked function declarations directly.
23617
23618 2005-07-11  Simon Josefsson  <jas@extundo.com>
23619
23620         * modules/size_max: New file.
23621
23622         * modules/xsize: Depend on size_max module for size_max.m4.
23623
23624 2005-07-11  Simon Josefsson  <jas@extundo.com>
23625
23626         * lib/size_max.h: New file.
23627
23628 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
23629
23630         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
23631         copyright symbol and the year.
23632         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
23633         (version_etc_va): Use parameterized copyright notice.
23634         Reword to conform to the current GNU coding standards.
23635
23636 2005-07-11  Karl Berry  <karl@gnu.org>
23637
23638         * doc/gnulib.texi (Quoting): new node.
23639         (Initial import): more info, from Patrice.
23640
23641 2005-07-11  Bruno Haible  <bruno@clisp.org>
23642
23643         * gnulib-tool (func_usage): Document option --avoid.
23644         (Command line options): Handle --avoid.
23645         (func_acceptable): New function.
23646         (func_modules_transitive_closure): Use it.
23647
23648 2005-07-11  Bruno Haible  <bruno@clisp.org>
23649
23650         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
23651         Reported by Jim Meyering.
23652
23653 2005-07-10  Bruno Haible  <bruno@clisp.org>
23654
23655         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
23656         Needed when size_t is smaller than 'unsigned int'.
23657         Reported by Paul Eggert.
23658
23659 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
23660
23661         * modules/argp (Depends-on): Add unlocked-io
23662
23663 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
23664
23665         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
23666         block of defines.
23667
23668 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
23669
23670         * config/srclist.txt: Comment out regcomp.c, since we have a porting
23671         fix now.
23672
23673 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
23674         and Paul Eggert  <eggert@cs.ucla.edu>
23675
23676         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
23677         in wint_t, not wchar_t.  Remove now-unnecessary cast.
23678
23679 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
23680
23681         * modules/regex (Files): Add lib/regex_internal.c,
23682         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
23683         (Depends-on): Add extensions.
23684         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
23685
23686 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
23687
23688         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
23689         pathconf.
23690         * m4/same.m4 (gl_SAME): Likewise.
23691         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
23692
23693         * m4/regex.m4: Adjust to new libc regex implementation.
23694         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
23695         all the .c and .h parts of (the new) regex.
23696         Quote the m4 stuff better.
23697         Check for RE_ICASE bug of old gnulib.
23698         Check for REG_STARTEND of recent libc.
23699         Rename local variables from jm_* to gl_*.
23700         Quote operand of "test -f".
23701         Say "recent enough" version of libc, not "version 2".
23702         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
23703         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
23704         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
23705         Remove check for btowc, isascii.
23706         Require AM_LANGINFO_CODESET.
23707
23708 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
23709
23710         * lib/regex.c, regex.h: Sync from libc.
23711         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
23712         * lib/regexec.c:
23713         New files, synced from libc, except that regex_internal.h
23714         currently has a small porting fix.
23715
23716 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
23717
23718         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
23719         regex_internal.c, regexec.c.
23720         Add regex_internal.h too, but as a comment, since the libc version
23721         is currently broken in gnulib mode.
23722
23723 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
23724
23725         Support programs like Emacs that use gnulib but not gettext.
23726         * MODULES.html.sh (Internationalization functions): Add gettext-h.
23727         * modules/gettext-h: New file.
23728         * modules/gettext (Files): Remove lib/gettext.h.
23729         (Depends-on): Add gettext-h.
23730         (Makefile.am): Remove lib_SOURCES.
23731         * modules/argmatch, modules/c-stack, modules/closeout:
23732         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
23733         * modules/execute, modules/file-type, modules/getaddrinfo:
23734         * modules/getopt, modules/human, modules/javacomp:
23735         * modules/javaexec, modules/mkdir-p, modules/obstack:
23736         * modules/openat, modules/pagealign_alloc, modules/pipe:
23737         * modules/quotearg, modules/regex, modules/rpmatch:
23738         * modules/unicodeio, modules/userspec, modules/version-etc:
23739         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
23740         * modules/xsetenv:
23741         Depend on gettext-h, not gettext.
23742
23743 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
23744
23745         * gnulib-tool (func_import): Add support for 'public domain' license.
23746         * modules/alloca, modules/atexit, modules/memmove:
23747         Now public domain, not GPL.
23748         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
23749         * modules/realloc, modules/strerror, modules/strtod:
23750         Now LGPL, not GPL.
23751
23752 2005-07-05  Bruno Haible  <bruno@clisp.org>
23753
23754         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
23755         autoconf CVS. Needed for mingw.
23756
23757 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
23758
23759         Remove the dependency of the strftime module on the tzset module.
23760         * modules/strftime (Depends-on): Remove dependency on tzset.
23761
23762 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
23763
23764         Remove the dependency of the strftime module on the tzset module.
23765         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
23766         gl_FUNC_TZSET_CLOBBER.
23767
23768 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
23769
23770         Remove the dependency of the strftime module on the tzset module.
23771         * lib/strftime.c (my_strftime)
23772         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
23773         Copy the input structure, to work around some of the bug with
23774         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
23775         Solaris releases, you should also use the tzset module, but we won't
23776         require it as a dependency any more since we don't want LGPLed code
23777         to depend on GPLed code.
23778
23779 2005-07-02  Jim Meyering  <jim@meyering.net>
23780
23781         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
23782         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
23783         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
23784         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
23785
23786 2005-07-02  Jim Meyering  <jim@meyering.net>
23787
23788         * lib/backupfile.c (backup_args): Change a `0' to NULL.
23789
23790 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
23791
23792         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
23793         declares only 'struct timespec;' (!).
23794
23795 2005-07-01  Jim Meyering  <jim@meyering.net>
23796
23797         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
23798         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
23799         * lib/save-cwd.c, tempname.c:
23800         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
23801         and don't include <sys/file.h>).
23802
23803 2005-06-29  Jim Meyering  <jim@meyering.net>
23804
23805         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
23806         type name.  Use the variable name instead.
23807         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
23808         Likewise.
23809
23810 2005-06-28  Simon Josefsson  <jas@extundo.com>
23811
23812         * modules/check-version (Files): Add check-version.m4.
23813
23814 2005-06-28  Simon Josefsson  <jas@extundo.com>
23815
23816         * m4/check-version.m4: New file, suggested by Jim Meyering
23817         <jim@meyering.net>.
23818
23819 2005-06-28  Simon Josefsson  <jas@extundo.com>
23820
23821         * lib/check-version.h, lib/check-version.c: New files.
23822
23823 2005-06-28  Simon Josefsson  <jas@extundo.com>
23824
23825         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
23826         collision with global variable.  Better indentation.  Don't
23827         increment buffer pointer beyond buffer end.  Based on comments
23828         from Paul Eggert <eggert@cs.ucla.edu>.
23829
23830         * lib/base64.h: Indent.
23831
23832 2005-06-28  Simon Josefsson  <jas@extundo.com>
23833
23834         * doc/gnulib.texi (Library version handling): New section.
23835
23836 2005-06-28  Jim Meyering  <jim@meyering.net>
23837
23838         * check-module (find_included_lib_files): Hard-code another
23839         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
23840         but modules/fts-lgpl (correctly) does not list those files.
23841
23842         * modules/canonicalize (Files): Add lib/pathmax.h.
23843
23844 2005-06-25  Simon Josefsson  <jas@extundo.com>
23845
23846         * modules/check-version: New file.
23847
23848 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
23849
23850         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
23851         initializer of struct addrinfo, as an indication that we don't
23852         care how many members the structure has.
23853
23854 2005-06-24  Derek Price  <derek@ximbiot.com>
23855         and Bruno Haible  <bruno@clisp.org>
23856
23857         Remove stat module & update lstat.
23858         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
23859         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
23860         * m4/stat.m4: Remove this file.
23861
23862 2005-06-24  Derek Price  <derek@ximbiot.com>
23863         and Bruno Haible  <bruno@clisp.org>
23864
23865         Remove stat module & update lstat.
23866         * lib/stat.c: Remove this file...
23867         (slash_aware_lstat): ...moving this content and its support...
23868         * lib/lstat.c (rpl_lstat): ...into here.
23869         * lib/lstat.h: New file.
23870
23871 2005-06-24  Derek Price  <derek@ximbiot.com>
23872         and Bruno Haible  <bruno@clisp.org>
23873
23874         Remove stat module & update lstat.
23875         * config/srclist.txt (libc sources): Remove stat.
23876
23877 2005-06-24  Derek Price  <derek@ximbiot.com>
23878         and Bruno Haible  <bruno@clisp.org>
23879
23880         Remove stat module & update lstat.
23881         * MODULES.html.sh (stat): Remove.
23882         * MODULES.html: Regenerated.
23883         * modules/lstat (Description): Correct function name.
23884         (Files): Add "lstat.h".
23885         (Depends-on): Remove stat, add xalloc, stat-macros.
23886         * modules/stat: Remove this file.
23887         (Include): Add "lstat.h", remove <sys/stat.h>.
23888
23889 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
23890
23891         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
23892         (ranged_convert): Don't save conversion in a temporary struct.
23893         This causes a warning with GCC 4.0.0, and anyway in the typical
23894         case it's not worth the extra 100 bytes or so of code.
23895         (ranged_convert, __mktime_internal): When calling a function via a
23896         pointer P, use P () rather than (*P) (), as we now assume C89 or
23897         better.
23898
23899 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23900
23901         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
23902         "who -r" failed to give output.  Problem reported by Tim Waugh.
23903
23904         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
23905         (xcalloc): Use it to avoid needless tests.
23906         Problem reported by Jim Meyering.
23907
23908 2005-06-20  Derek Price  <derek@ximbiot.com>
23909
23910         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
23911         unnecessary for Autoconfs > 2.59c.
23912
23913 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23914
23915         * lib/argp.h (__option_is_short): Check upper limit of
23916         __key. Isprint() requires its argument to have the value
23917         of an unsigned char or EOF.
23918
23919 2005-06-16  Jim Meyering  <jim@meyering.net>
23920
23921         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
23922         when either N or S is zero.
23923
23924 2005-06-16  Derek Price  <derek@ximbiot.com>
23925
23926         * m4/bison.m4: Declare YACC & YFLAGS precious.
23927
23928 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
23929
23930         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
23931         multibyte string or pattern, fall back on unibyte matching.
23932         Problem reported by James Youngman.
23933
23934 2005-06-08  Bruno Haible  <bruno@clisp.org>
23935
23936         * modules/csharpcomp: New file.
23937         * MODULES.html.sh (C#): Add csharpcomp.
23938
23939 2005-06-08  Bruno Haible  <bruno@clisp.org>
23940
23941         * m4/csharpcomp.m4: New file, from GNU gettext.
23942
23943 2005-06-08  Bruno Haible  <bruno@clisp.org>
23944
23945         * lib/csharpcomp.h: New file, from GNU gettext.
23946         * lib/csharpcomp.c: New file, from GNU gettext.
23947         * lib/csharpcomp.sh.in: New file, from GNU gettext.
23948
23949 2005-06-08  Bruno Haible  <bruno@clisp.org>
23950
23951         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
23952         warning on mingw.
23953
23954 2005-06-07  Derek Price  <derek@ximbiot.com>
23955
23956         Sync from CVS.
23957         * lib/glob_.h: Indent nested #ifdef.
23958
23959 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
23960
23961         Sync from coreutils.
23962         Use "file name" when talking about file names, instead of "filename"
23963         or "path", as per the GNU coding standards.
23964         * lib/mkdir-p.c: Renamed from makepath.c.
23965         (make_dir_parents): Renamed from make_path.  All callers changed.
23966         * lib/mkdir-p.h: Likewise.  All includers changed.
23967         * lib/filenamecat.c: Renamed from path-concat.c.
23968         (file_name_concat): Renamed from path_concat.  All callers changed.
23969         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
23970         * lib/filenamecat.h: Likewise.  All includers changed.
23971         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
23972         in comments or local variable names.
23973         * lib/basename.c: Likewise.
23974         * lib/canonicalize.c, canonicalize.h: Likewise.
23975         * lib/dirname.c, dirname.h: Likewise.
23976         * lib/euidaccess.c: Likewise.
23977         * lib/exclude.c: Likewise
23978         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
23979         * lib/fsusage.c, fsuage.h: Likewise.
23980         * lib/fts.c, fts_.h: Likewise.
23981         * lib/getcwd.c: Likewise.
23982         * lib/getloadavg.c: Likewise.
23983         * lib/mkstemp.c: Likewise.
23984         * lib/mountlist.c, mountlist.h: Likewise.
23985         * lib/openat.c, openat.h: Likewise.
23986         * lib/readlink-stub.c: Likewise.
23987         * lib/readutmp.c, readutmp.h: Likewise.
23988         * lib/rename.c: Likewise.
23989         * lib/rmdir.c: Likewise.
23990         * lib/same.c: Likewise.
23991         * lib/savedir.c: Likewise.
23992         * lib/stripslash.c: Likewise.
23993         * lib/tempname.c: Likewise.
23994         * lib/xreadlink.c: Likewise.
23995         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
23996         All uses changed.
23997         * lib/exclude.h: Likewise.
23998
23999         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
24000         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
24001         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
24002         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
24003         * lib/pathmax.h: Include <limits.h> unconditionally, since other
24004         files have been getting away with it for years (MORE/BSD 4.3
24005         is extinct now).
24006         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
24007         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
24008
24009         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
24010         Define to 256, not 255, as per modern POSIX.
24011
24012 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
24013
24014         Sync from coreutils.
24015         Use "file name" when talking about file names, instead of "filename"
24016         or "path", as per the GNU coding standards.
24017         * MODULES.html.sh: mkdir-p renamed from makepath.
24018         filenamecat renamed from path-concat.
24019         * modules/filenamecat: Renamed from modules/path-concat.
24020         (Files): filenamecat.h and filenamecat.c renamed from
24021         path-concat.h and path-concat.c.
24022         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
24023         (Include): filenamecat.h, not path-concat.h.
24024         * modules/mkdir-p: Renamed from modules/makepath.
24025         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
24026         makepath.c.
24027         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
24028         (Include): mkdir-p.h, not makepath.h.
24029
24030 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
24031
24032         Sync from coreutils.
24033         * m4/mkdir-p.m4: Renamed from makepath.m4.
24034         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
24035         Rename files from makepath.c to mkdir-p.c, and from
24036         makepath.h to mkdir-p.h.
24037         * m4/filenamecat.m4: Renamed from path-concat.m4.
24038         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
24039         Rename files from path-concat.c to filenamecat.c,
24040         and from path-concat.h to filenamecat.h.
24041         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
24042         "file name" in local variables or comments.
24043         * m4/rename.m4: Likewise.
24044
24045 2005-06-01  Bruno Haible  <bruno@clisp.org>
24046
24047         * modules/csharpexec: New file.
24048         * MODULES.html.sh (C#): New section.
24049
24050 2005-06-01  Bruno Haible  <bruno@clisp.org>
24051
24052         * m4/csharp.m4: New file, from GNU gettext.
24053         * m4/csharpexec.m4: New file, from GNU gettext.
24054
24055 2005-06-01  Bruno Haible  <bruno@clisp.org>
24056
24057         * lib/csharpexec.h: New file, from GNU gettext.
24058         * lib/csharpexec.c: New file, from GNU gettext.
24059         * lib/csharpexec.sh.in: New file, from GNU gettext.
24060
24061 2005-05-31  Derek Price  <derek@ximbiot.com>
24062             Paul Eggert  <eggert@cs.ucla.edu>
24063
24064         Sync from cvs.
24065         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
24066
24067 2005-05-31  Derek Price  <derek@ximbiot.com>
24068             Paul Eggert  <eggert@cs.ucla.edu>
24069
24070         Sync from cvs.
24071         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
24072
24073 2005-05-29  Derek Price  <derek@ximbiot.com>
24074
24075         * config/srclist.txt (glob_.h, glob.c): Add these files.
24076
24077 2005-05-29  Derek Price  <derek@ximbiot.com>
24078
24079         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
24080         * modules/glob: New file.
24081         * modules/getlogin_r: Add link to POSIX spec in description.
24082
24083 2005-05-29  Derek Price  <derek@ximbiot.com>
24084             Paul Eggert  <eggert@cs.ucla.edu>
24085
24086         * m4/glob.m4: New file.
24087
24088 2005-05-29  Derek Price  <derek@ximbiot.com>
24089             Paul Eggert  <eggert@cs.ucla.edu>
24090
24091         * lib/glob_.h, lib/glob.c: New files.
24092
24093 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
24094
24095         * modules/fts (Files): Remove m4/inttypes-pri.m4.
24096         * modules/fts-lgpl (Depends-on): Remove gettext.
24097
24098 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
24099
24100         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
24101         and don't require gt_INTTYPES_PRI.
24102
24103 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
24104
24105         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
24106
24107         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
24108         the configuration hassle isn't worth it.
24109         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
24110         (LONGEST_MODIFIER, PRIuMAX): Remove.
24111
24112 2005-05-27  Bruno Haible  <bruno@clisp.org>
24113
24114         * lib/getlogin_r.h: Remove second include of <stddef.h>.
24115
24116 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
24117
24118         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
24119         _POSIX_PTHREAD_SEMANTICS for Solaris.
24120
24121 2005-05-25  Derek Price  <derek@ximbiot.com>
24122
24123         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
24124
24125 2005-05-25  Derek Price  <derek@ximbiot.com>
24126             Paul Eggert  <eggert@cs.ucla.edu>
24127
24128         * modules/getlogin_r, m4/getlogin_r.m4: New files.
24129         * lib/getlogin_r.c, getlogin_r.h: New files.
24130
24131 2005-05-25  Bruno Haible  <bruno@clisp.org>
24132             Derek Price  <derek@ximbiot.com>
24133
24134         * lib/getlogin_r.h: Simplify API documentation.
24135
24136 2005-05-23  Derek Price  <derek@ximbiot.com>
24137
24138         * modules/minmax (Files): Add m4/minmax.m4.
24139         (configure.ac): Add gl_MINMAX.
24140
24141 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
24142
24143         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
24144         so that unistd-safer.h (GPL'ed code) need not be included.
24145
24146 2005-05-22  Bruno Haible  <bruno@clisp.org>
24147
24148         * m4/minmax.m4: New file.
24149         Based on a patch by Derek Price <derek@ximbiot.com>.
24150
24151 2005-05-22  Bruno Haible  <bruno@clisp.org>
24152
24153         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
24154         (INT64_MIN): Fix definition.
24155         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
24156
24157         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
24158         NEED_SIGNED_INT_TYPES.
24159
24160         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
24161         HAVE_SYSTEM_INTTYPES.
24162
24163 2005-05-22  Bruno Haible  <bruno@clisp.org>
24164
24165         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
24166         Also include <sys/param.h> if it defines MIN, MAX.
24167         Based on a patch by Derek Price <derek@ximbiot.com>.
24168
24169 2005-05-21  Jim Meyering  <jim@meyering.net>
24170
24171         * modules/fts (Files): Add m4/inttypes-pri.m4.
24172         (Depends-on): Add lstat and remove gettext.  Alphabetize.
24173
24174 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24175
24176         New fts module.
24177         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
24178         (setup_dir, free_dir): New functions.
24179         (enter_dir, leave_dir): Define trivial
24180         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
24181         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
24182         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
24183         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
24184         Move to fts-cycle.c.
24185         (fts_open): Use setup_dir.
24186         (fts_close): Use free_dir.
24187         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
24188         This adds a label and some gotos, but the alternatives were messier.
24189         Check for memory allocation failure when entering a dir.
24190         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
24191         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
24192         (FTS): New member fts_cycle, that is a union that contains the
24193         old active_dir_ht and cycle_state.  All uses changed to mention
24194         fts_cycle.ht and fts_cycle.state.
24195         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
24196         fts.c, with the following changes:
24197         (setup_dir, free_dir): New functions.
24198         (enter_dir): Now returns bool.  Return true if successful, false
24199         if memory exhausted.  All callers changed.
24200         Do not bother partly cleaning up on
24201         memory allocation failure; that is free_dir's job.
24202         However, free ad if hash_insert fails, to avoid memory leak.
24203         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
24204         fts->fts_options to see which union member to use.
24205
24206 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24207
24208         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
24209         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
24210
24211 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24212
24213         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
24214
24215 2005-05-20  Jim Meyering  <jim@meyering.net>
24216
24217         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
24218         Now a macro, to pacify GCC.
24219
24220 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
24221
24222         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
24223         of -1.
24224
24225 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
24226
24227         * lib/chown.c (rpl_chown): Return -1 on failure.
24228
24229 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
24230
24231         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
24232         Don't check for stddef.h.
24233         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
24234         don't use its results.
24235         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
24236         since we include them unconditionally.  Don't require
24237         AM_STDBOOL_H, since stdbool is a prerequisite.
24238         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
24239         since we assume C89 or better.
24240         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
24241         as we don't use their results.
24242         Don't check for fchdir, memmove, memset, strrchr, as we use
24243         them unconditionally.
24244         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
24245         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
24246
24247 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
24248
24249         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
24250         Include <stddef.h> unconditionally, since we assume C89 now.
24251         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
24252         * lib/fts.c: Include fts_.h first, to check interface.
24253         Do not include intprops.h; no longer needed.
24254         Include cycle-check.h and hash.h, since fts_.h no longer does.
24255         Remove unnecessary casts of closedir to void.
24256         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
24257         decide whether to decrement nlinks.
24258         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
24259         (FTS): Use struct hash_table * instead of Hash_table, so that
24260         we no longer need to include hash.h here.
24261
24262 2005-05-18  Jim Meyering  <jim@meyering.net>
24263
24264         * modules/dirfd (License): Change to LGPL.  Most of the code
24265         is already in the public domain.
24266
24267 2005-05-18  Jim Meyering  <jim@meyering.net>
24268
24269         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
24270         Reported by Yoann Vandoorselaere.
24271
24272 2005-05-17  Jim Meyering  <jim@meyering.net>
24273
24274         * m4/fts.m4: New file, from coreutils.
24275
24276 2005-05-17  Jim Meyering  <jim@meyering.net>
24277
24278         * lib/fts.c, lib/fts_.h: New files, from coreutils.
24279
24280 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
24281
24282         Sync from coreutils.
24283         * m4/unlinkdir.m4: New file.
24284
24285 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
24286
24287         Sync from coreutils.
24288         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
24289         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
24290         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
24291         White space changes only.
24292         * lib/makepath.c (make_path): Port to hosts where leading "//" is
24293         special.
24294         * lib/yesno.c: Include getline.h, not ctype.h.
24295         (yesno): Don't remove leading white space; POSIX doesn't allow it.
24296         Use getline to remove arbitrary restriction on response length.
24297
24298 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
24299
24300         * config/srclist-update: Spell out "Street" in FSF postal
24301         mail address; this is the style the FSF seems to prefer.
24302
24303         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
24304         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
24305         this updates FSF postal mail address.
24306
24307         Sync from coreutils.
24308         * modules/unlinkdir: New file.
24309         * modules/yesno (Depends-on): Add getline.
24310         * MODULES.html.sh (File system functions): Add unlinkdir.
24311
24312 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
24313
24314         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
24315         lib/strsep.h:
24316         Change the initial comment to refer to GPL, not LGPL.
24317         gnulib-tool will change it to LGPL as needed.
24318
24319         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
24320         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
24321         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
24322         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
24323         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
24324         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
24325         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
24326         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
24327         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
24328         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
24329         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
24330         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
24331         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
24332         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
24333         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
24334         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
24335         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
24336         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
24337         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
24338         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
24339         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
24340         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
24341         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
24342         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
24343         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
24344         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
24345         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
24346         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
24347         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
24348         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
24349         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
24350         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
24351         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
24352         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
24353         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
24354         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
24355         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
24356         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
24357         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
24358         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
24359         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
24360         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
24361         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
24362         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
24363         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
24364         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
24365         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
24366         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
24367         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
24368         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
24369         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
24370         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
24371         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
24372         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
24373         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
24374         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
24375         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
24376         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
24377         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
24378         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
24379         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
24380         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
24381         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
24382         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
24383         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
24384         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
24385         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
24386         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
24387         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
24388         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
24389         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
24390         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
24391         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
24392         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
24393         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
24394         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
24395         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
24396         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
24397         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
24398         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
24399         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
24400         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
24401         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
24402         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
24403         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
24404         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
24405         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
24406         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
24407         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
24408         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
24409         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
24410         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
24411         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
24412         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
24413         lib/yesno.c, lib/yesno.h:
24414         Update FSF postal mail address.
24415
24416 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
24417
24418         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
24419         tests/test-memmem.c, tests/test-stpncpy.c:
24420         Update FSF postal mail address.
24421
24422 2005-05-13  Bruno Haible  <bruno@clisp.org>
24423
24424         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
24425         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
24426         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
24427         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
24428         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
24429         Add support for 64-bit integers in the MSVC compiler.
24430
24431 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24432
24433         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
24434
24435 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
24436
24437         * gnulib-tool (func_import): Sort and uniquify recommended includes.
24438
24439 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
24440
24441         * doc/getdate.texi (General date syntax): Don't say that date
24442         date --iso-8601=ns generates acceptable dates; it doesn't yet.
24443         Problem reported by Nic Ferrier.
24444
24445 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24446
24447         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
24448         specified in ai_socktype. Fix invalid ai_protocol
24449         check. ai_protocol is usually set to 0 or depending on
24450         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
24451         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
24452         ai_socktype / ai_protocol in the returned addrinfo structure.
24453
24454 2005-05-10  Simon Josefsson  <jas@extundo.com>
24455
24456         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
24457         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
24458
24459 2005-05-10  Karl Berry  <karl@gnu.org>
24460
24461         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
24462         (from http://www.gnu.org/licenses).
24463         * doc/COPYING.LIB: also rename to COPYING.LESSER.
24464         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
24465         fdl.texi suffices.
24466
24467 2005-05-10  Karl Berry  <karl@gnu.org>
24468
24469         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
24470         (COPYING.DOC): remove.
24471
24472         * config/srclist-update: new FSF address.
24473
24474 2005-05-10  Derek Price  <derek@ximbiot.com>
24475
24476         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
24477         possible.
24478
24479 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24480             Bruno Haible  <bruno@clisp.org>
24481
24482         * modules/inet_ntop: New file.
24483         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24484         inet_ntop.
24485
24486 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24487             Bruno Haible  <bruno@clisp.org>
24488
24489         * m4/inet_ntop.m4: New file.
24490
24491 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
24492             Bruno Haible  <bruno@clisp.org>
24493
24494         * lib/inet_ntop.h: New file.
24495         * lib/inet_ntop.c: New file, from glibc with modifications.
24496
24497 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
24498
24499         * modules/time_r (License): Change to LGPL.
24500         * modules/extensions (License): Change to LGPL.  Actually,
24501         the license is more permissive than that, but currently gnulib-tool
24502         doesn't know how to handle more-permissive licenses.
24503
24504         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
24505         Problem reported by Dave Love.
24506
24507 2005-05-08  Jim Meyering  <jim@meyering.net>
24508
24509         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
24510         blank.
24511
24512 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
24513
24514         * modules/argmatch (Depends-on): Add stdbool.
24515         * modules/backupfile (Depends-on): Likewise.
24516         * modules/chdir-long (Depends-on): Likewise.
24517         * modules/closeout (Depends-on): Likewise.
24518         * modules/cycle-check (Depends-on): Likewise.
24519         * modules/dirname (Depends-on): Likewise.
24520         * modules/fnmatch (Depends-on): Likewise.
24521         * modules/fsusage (Depends-on): Likewise.
24522         * modules/fwriteerror (Depends-on): Likewise.
24523         * modules/getcwd (Depends-on): Likewise.
24524         * modules/getloadavg (Depends-on): Likewise.
24525         * modules/hard-locale (Depends-on): Likewise.
24526         * modules/makepath (Depends-on): Likewise.
24527         * modules/mountlist (Depends-on): Likewise.
24528         * modules/nanosleep (Depends-on): Likewise.
24529         * modules/posixtm (Depends-on): Likewise.
24530         * modules/quotearg (Depends-on): Likewise.
24531         * modules/readtokens (Depends-on): Likewise.
24532         * modules/readtokens0 (Depends-on): Likewise.
24533         * modules/readutmp (Depends-on): Likewise.
24534         * modules/save-cwd (Depends-on): Likewise.
24535         * modules/strftime (Depends-on): Likewise.
24536         * modules/userspec (Depends-on): Likewise.
24537         * modules/utimecmp (Depends-on): Likewise.
24538         * modules/xgetcwd (Depends-on): Likewise.
24539         * modules/xnanosleep (Depends-on): Likewise.
24540         * modules/xstrtod (Depends-on): Likewise.
24541         * modules/yesno (Depends-on): Likewise.
24542
24543 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
24544
24545         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
24546         needless checks.
24547
24548 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
24549
24550         Merge from coreutils.  Among other things,
24551         add bulletproofing for cases where stdin, stdout, or stderr are closed.
24552         * lib/fd-safer.c: New file.
24553         * lib/fcntl-safer.h, open-safer.c: Remove.
24554         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
24555         * lib/dup-safer.c: Include unistd-safer.h first.
24556         Don't include errno.h.
24557         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
24558         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
24559         * lib/file-type.c: Rely on file-type.h change.
24560         * lib/getloadavg.c: Include unistd-safer.h.
24561         (getloadavg): Use safer open.
24562         * lib/getusershell.c: Include "stdio-safer.h".
24563         (getusershell): Use safer fopen.
24564         * lib/long-options.c (long_options): Use NULL rather than 0.
24565         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
24566         'free'.
24567         * lib/modechange.c: Likewise.
24568         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
24569         (MODE_DONE): New constant.
24570         (struct mode_change): Remove 'next' member.
24571         (make_node_op_equals): New function; like the old one of the
24572         same name, except it allocates an array.
24573         (mode_compile, mode_create_from_ref): Use it.
24574         (mode_compile): Allocate result as an array, not a linked list.
24575         Parse octal string ourself, so that we catch mistakes like "+0".
24576         (mode_adjust): Arg is an array, not a linked list.
24577         * lib/modechange.c: Include stat-macros.h, xalloc.h.
24578         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
24579         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
24580         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
24581         Remove.  This is now stat-macros.h's job.
24582         (talloc): Remove.  All callers replaced by xalloc, so that
24583         our invokers don't have to worry about reporting memory failures.
24584         (make_node_op_equals): Remove.
24585         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
24586         New constants.
24587         (struct mode_change): Moved here from modechange.h.
24588         (mode_append_entry): Remove.
24589         (mode_compile): Remove MASKED_OPS arg, since it encouraged
24590         apps to have incorrect behavior.  Use simpler algorithm for head
24591         and tail.  Don't futz with umask; that's now the job of mode_adjust.
24592         Detect more invalid usages rather than having somewhat-random behavior.
24593         Don't insert an "a=" action, as that leads to incorrect behavior.
24594         (mode_compile, mode_create_from_ref): Return NULL on error instead
24595         of an enum, since now there's only one way to have an error.  All
24596         callers changed.
24597         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
24598         at the correct time.  Simplify calculation of "+u" and its ilk.
24599         Don't mishandle "+X".
24600         (mode_free): Remove "register" and localize decls.
24601         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
24602         (struct mode_change): Move to modechange.c; callers don't
24603         need to see this stuff.
24604         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
24605         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
24606         (mode_change, mode_adjust): Reflect the new signatures noted above.
24607         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
24608         that might redefine system include files.
24609         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
24610         (my_usleep): Use NULL rather than (void *) 0.
24611         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
24612         Use siginterrupt to specify that system calls should be interrupted.
24613         (rpl_nanosleep): Move initialization of suspended closer to call of
24614         my_usleep.
24615         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
24616         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
24617         (desirable_utmp_entry): New function.
24618         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
24619         using x2nrealloc, to simplify logic.
24620         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
24621         size calculation.  Do not assume utmp file is a regular file.
24622         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
24623         (READ_UTMP_CHECK_PIDS): New constant.
24624         * lib/save-cwd.c: Include unistd-safer.h.
24625         (save_cwd): Use fd_safer.
24626         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
24627         [!_LIBC] Include "stat-macros.h" instead.
24628         * lib/unistd-safer.h (fd_safer): New decl.
24629
24630 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
24631
24632         * modules/getloadavg (Depends-on): Add unistd-safer.
24633         * modules/getusershell (Depends-on): Add stdio-safer.
24634         * modules/lstat (Depends-on): Remove xalloc.
24635         * modules/mkstemp (Depends-on): Add stat-macros.
24636         * modules/modechange (Depends-on): Remove xstrtol.
24637         Add stat-macros, xalloc.
24638         * modules/save-cwd (Depends-on): Add unistd-safer.
24639         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
24640         * modules/unistd-safer (Files): Add lib/fd-safer.c
24641         (Makefile.am): Remove lib_SOURCES.
24642
24643         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
24644         Remove fcntl-safer; unistd-safer supersedes it.
24645
24646 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
24647
24648         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
24649         AC_HEADER_STAT.
24650         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
24651         (gl_PREREQ_CHOWN): Remove.
24652         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
24653         it.  Don't require AC_HEADER_STAT.
24654         (gl_PREREQ_LSTAT): Remove.
24655         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
24656         Don't require AC_HEADER_STAT.
24657         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
24658         (gl_PREREQ_RMDIR): Remove.
24659         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
24660         mention stat-macros.h or AC_HEADER_STAT, since we'll make
24661         the stat-macros module a prerequisite.
24662         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
24663         * m4/filemode.m4 (gl_FILEMODE): Likewise.
24664         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
24665         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
24666         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
24667         variable names.
24668         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
24669         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
24670         variable prefixes.
24671         * m4/fcntl-safer.m4: Remove.
24672         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
24673         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
24674         Invoke gl_PREREQ_FD_SAFER.
24675         (gl_PREREQ_FD_SAFER): New macro.
24676         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
24677         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
24678         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
24679         Remove duplicate call to AC_LIBOBJ(readutmp).
24680         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
24681
24682         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
24683         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
24684
24685 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
24686
24687         * MODULES.html.sh (Misc): Add byteswap.
24688
24689 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
24690
24691         * modules/getcwd (Depends-on): Add extensions.
24692         * modules/openat (Depends-on): Likewise.
24693
24694 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
24695
24696         * modules/byteswap: New file.
24697
24698 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
24699
24700         * m4/byteswap.m4: New file.
24701
24702 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
24703
24704         * lib/byteswap_.h: New file.
24705
24706 2005-04-25  Karl Berry  <karl@gnu.org>
24707
24708         * m4/gettext.m4: Update from GNU gettext 0.14.4.
24709
24710 2005-04-25  Albert Chin  <china@thewrittenword.com>
24711
24712         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
24713         Toolkit C bug.
24714
24715 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
24716
24717         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
24718         (func_ln_if_changed) Remove forcibly for no error message
24719         in case file does not exist.
24720
24721 2005-04-19  Simon Josefsson  <jas@extundo.com>
24722
24723         * gnulib-tool (Options): Make --symlink mean --symbolic.
24724
24725 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
24726
24727         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
24728
24729 2005-04-16  Simon Josefsson  <jas@extundo.com>
24730
24731         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
24732
24733 2005-04-15  Simon Josefsson  <jas@extundo.com>
24734
24735         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
24736
24737 2005-04-15  Simon Josefsson  <jas@extundo.com>
24738
24739         * gnulib-tool: Rename --symlink to --symbolic.
24740
24741 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
24742
24743         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
24744         symbolic links to files instead of copying/moving.  Add --aux-dir,
24745         specifying directory relative --dir where auxiliary build tools
24746         are placed.
24747
24748 2005-04-14  Bruno Haible  <bruno@clisp.org>
24749
24750         * modules/allocsa (License): Change to LGPL.
24751         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
24752
24753 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
24754
24755         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
24756         that "UTC +1 second" continues to work.  Problem reported
24757         by Dmitry V. Levin.
24758         (relunit_snumber): New rule.
24759         (relunit): Use it.
24760
24761 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
24762
24763         * lib/getdate.y (universal_time_zone_table): New constant.
24764         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
24765         universal_time_zone_table.
24766         (lookup_zone): Prefer universal_time_zone_table to
24767         local_time_zone_table, so that "GMT" time stamps are allowed in
24768         London during the summer.  Problem reported by Ian Abbott.
24769
24770 2005-04-12  Jim Meyering  <jim@meyering.net>
24771
24772         * lib/human.c (humblock): Set *options even when returning due to
24773         xstrtoumax conversion failure.  Thanks to a used-uninitialized
24774         warning from gcc-4.
24775
24776 2005-04-09  Jim Meyering  <jim@meyering.net>
24777
24778         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
24779         -Wuninitialized: initialize tm0.tm_year.
24780
24781 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
24782
24783         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
24784         count, since there's no maximum.  All uses changed.
24785         Add member dsts_seen.
24786         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
24787         not being INT_MAX.
24788         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
24789         Use pc_rels_seen to decide whther a date is absolute.
24790
24791         * lib/getdate.y (number): Don't overwrite year.
24792         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
24793         check.
24794
24795 2005-04-02  Simon Josefsson  <jas@extundo.com>
24796
24797         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
24798         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
24799
24800 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
24801
24802         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
24803         where no absolute path name can be longer than PATH_MAX.
24804
24805 2005-03-27  Jim Meyering  <jim@meyering.net>
24806
24807         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
24808
24809 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
24810
24811         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
24812         "one's complement" -> "ones' complement" in comment, as per Knuth.
24813         "value of type" -> "type or expression" in comment.
24814         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
24815
24816 2005-03-26  Jim Meyering  <jim@meyering.net>
24817
24818         Comment nits.
24819         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
24820         Correct typos: s/or/of/.
24821
24822 2005-03-26  Jim Meyering  <jim@meyering.net>
24823
24824         * modules/check-include-files: Move to ../ and rename to...
24825         * check-module: ...this.
24826
24827 2005-03-25  Jim Meyering  <jim@meyering.net>
24828
24829         * modules/xvasprintf (Files): Add xalloc.h.
24830
24831 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
24832
24833         * modules/gettext (Files): config/config.rpath ->
24834         build-aux/config.rpath
24835         * modules/iconv (Files): Likewise.
24836         Problem reported by Oskar Liljeblad.
24837
24838 2005-03-23  Jim Meyering  <jim@meyering.net>
24839
24840         * modules/check-include-files: New script to check for
24841         missing dependencies, multiple includes, etc.
24842
24843         * modules/c-strtold (Depends-on): Add xalloc.
24844         * modules/c-strtod (Depends-on): Add xalloc.
24845         * modules/hash (Depends-on): Add xalloc.
24846         (Files): Remove lib/xalloc.h.
24847
24848         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
24849         * modules/userspec (Files): Add lib/inttostr.h.
24850
24851 2005-03-23  Jim Meyering  <jim@meyering.net>
24852
24853         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
24854
24855 2005-03-22  Jim Meyering  <jim@meyering.net>
24856
24857         * modules/stat-macros: New module.
24858         * modules/canonicalize, modules/euidaccess, modules/file-type,
24859         * modules/filemode, modules/lchown, modules/makepath,
24860         * modules/rmdir, modules/stat: Depend on new stat-macros module
24861         rather than listing lib/stat-macros.h manually.
24862         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
24863
24864 2005-03-22  Jim Meyering  <jim@meyering.net>
24865
24866         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
24867
24868 2005-03-22  Bruno Haible  <bruno@clisp.org>
24869
24870         * config/srclist.txt: Replace target directory 'config' with
24871         'build-aux'.
24872         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
24873         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
24874         ../build-aux/.
24875
24876 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
24877
24878         * modules/chdir-long (Depends-on): Add mempcpy.
24879
24880         * modules/acl, modules/backupfile, modules/c-strtod,
24881         modules/c-strtold, modules/canon-host, modules/canonicalize,
24882         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
24883         modules/exclude, modules/exitfail, modules/file-type,
24884         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
24885         modules/getdate, modules/getline, modules/getpagesize,
24886         modules/getpass, modules/getugroups, modules/group-member,
24887         modules/hard-locale, modules/hash, modules/human, modules/idcache,
24888         modules/inttostr, modules/long-options, modules/makepath,
24889         modules/md5, modules/memcasecmp, modules/memcoll,
24890         modules/modechange, modules/mountlist, modules/path-concat,
24891         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
24892         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
24893         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
24894         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
24895         modules/strftime, modules/strndup, modules/strverscmp,
24896         modules/timespec, modules/unlocked-io, modules/userspec,
24897         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
24898         modules/yesno:
24899         Remove lib_SOURCES line from Makefile.am section, as this is now
24900         done automatically by the corresponding Autoconf macro.
24901
24902 2005-03-21  Jim Meyering  <jim@meyering.net>
24903
24904         Changes imported from coreutils.
24905
24906         * lib/cycle-check.c: Don't include xalloc.h.
24907
24908         * lib/path-concat.c: Don't include assert.h.
24909         (path_concat): Remove assertion that would have triggered
24910         for ABASE starting with more than one slash.
24911         Reported by Andreas Schwab.
24912
24913         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
24914         properly when ABASE is an absolute file name.
24915         Correct the description of this function.
24916         Include <assert.h>.
24917         Add an assertion and a test driver.
24918         This fixes a bug introduced on 2004-07-02.
24919         Andreas Schwab reported the resulting failure of cp --parents:
24920         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
24921
24922 2005-03-21  Jim Meyering  <jim@meyering.net>
24923
24924         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
24925         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
24926
24927 2005-03-21  Jim Meyering  <jim@meyering.net>
24928         and  Paul Eggert  <eggert@cs.ucla.edu>
24929
24930         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
24931         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
24932         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
24933         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
24934         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
24935         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
24936         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
24937         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
24938         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
24939         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
24940         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
24941         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
24942         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
24943         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
24944         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
24945         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
24946         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
24947         for these modules.
24948
24949 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
24950
24951         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
24952         (which shouldn't happen), generate nothing instead of returning 0
24953         immediately, so that nstrftime (NULL, ...) doesn't return 0.
24954
24955 2005-03-16  Bruno Haible  <bruno@clisp.org>
24956
24957         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
24958         HAVE_LONGLONG_64BIT.
24959
24960 2005-03-16  Bruno Haible  <bruno@clisp.org>
24961
24962         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
24963         HAVE_LONGLONG_64BIT.
24964
24965 2005-03-16  Bruno Haible  <bruno@clisp.org>
24966
24967         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
24968         HAVE_LONGLONG_64BIT.
24969
24970 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
24971
24972         * lib/strftime.c (my_strftime): Prepend space to format so that we can
24973         reliably distinguish strftime failure from empty output on POSIX
24974         hosts.
24975
24976 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
24977
24978         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
24979         (iconv_string): Don't guess a size-zero buffer, as that might cause
24980         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
24981         result would be 'too large', where 'too large' is (heuristically)
24982         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
24983         overflow concerns.  This will prevent some unwanted malloc failures
24984         when the inputs are very large.
24985
24986 2005-03-15  Karl Berry  <karl@gnu.org>
24987
24988         * config/srclist.txt (config.rpath): from gettext.
24989         * config/config.rpath: update.
24990
24991 2005-03-15  Bruno Haible  <bruno@clisp.org>
24992
24993         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
24994         to 'negate'.
24995
24996         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
24997         variable.
24998
24999         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
25000         results.
25001
25002 2005-03-14  Simon Josefsson  <jas@extundo.com>
25003
25004         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
25005         <fx@gnu.org>.
25006
25007 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
25008
25009         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
25010         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
25011         intprops.h.
25012         * lib/strtol.c: Likewise.
25013
25014 2005-03-14  Jim Meyering  <jim@meyering.net>
25015
25016         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
25017         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
25018         to be nonzero so that we (and caller) can detect the difference
25019         between a valid zero-length expansion and an error return, even
25020         when the underlying strftime fails before writing anything into
25021         that location.
25022
25023 2005-03-14  Bruno Haible  <bruno@clisp.org>
25024
25025         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
25026         Update from GNU gettext 0.14.3.
25027
25028 2005-03-10  Jim Meyering  <jim@meyering.net>
25029
25030         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
25031
25032 2005-03-10  Jim Meyering  <jim@meyering.net>
25033
25034         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
25035         so that this module works on systems without fchdir.
25036
25037 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
25038
25039         Factor int-properties macros into a single file, except for
25040         glibc-related files.
25041         * lib/intprops.h: New file.
25042         * lib/getloadavg.c: Include it instead of limits.h.
25043         (INT_STRLEN_BOUND): Remove.
25044         * lib/human.c: Include intprops.h.
25045         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
25046         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
25047         302/1000.
25048         * lib/inttostr.h: Include intprops.h instead of limits.h.
25049         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
25050         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
25051         for consistency with intprops.h.
25052         (time_t_is_integer, twos_complement_arithmetic): Use them.
25053         * lib/sig2str.h: Include <signal.h>, intprops.h.
25054         (INT_STRLEN_BOUND): Remove.
25055         * lib/strftime.c (TYPE_SIGNED): Remove.
25056         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
25057         * lib/strtol.c: Adjust comments to match intprops.h.
25058         * lib/userspec.c: Include intprops.h.
25059         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
25060         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
25061         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
25062         instead of rolling our own expressions.
25063         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
25064
25065         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
25066         instead of int.
25067         (my_strftime): Do not mishandle years close to INT_MAX, by doing
25068         the right thing even if adding 1900 would overflow.  Similarly
25069         for tm_mon + 1 and tm_yday + 1.
25070         Make %Y always equivalent to %C%y, and similarly for %G and %g.
25071         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
25072         (DO_SIGNED_NUMBER): New macro.
25073         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
25074
25075 2005-03-07  Bruno Haible  <bruno@clisp.org>
25076
25077         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
25078
25079 2005-03-07  Bruno Haible  <bruno@clisp.org>
25080
25081         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
25082
25083 2005-03-04  Derek R. Price  <derek@ximbiot.com>
25084
25085         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
25086         (func_import): Only replace files via --import when they have actually
25087         changed.
25088
25089 2005-03-03  Derek R. Price  <derek@ximbiot.com>
25090
25091         * m4/mmap-anon.m4: New file.
25092         * m4/pagealign_alloc.m4: New file.
25093
25094 2005-03-03  Derek R. Price  <derek@ximbiot.com>
25095             Bruno Haible  <bruno@clisp.org>
25096
25097         * modules/pagealign_alloc: New file.
25098         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
25099
25100 2005-03-03  Derek R. Price  <derek@ximbiot.com>
25101             Bruno Haible  <bruno@clisp.org>
25102
25103         * lib/pagealign_alloc.h: New file.
25104         * lib/pagealign_alloc.c: New file.
25105
25106 2005-03-03  Bruno Haible  <bruno@clisp.org>
25107
25108         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
25109         Use an all-permissive copyright notice, recommended by RMS.
25110
25111 2005-03-02  Bruno Haible  <bruno@clisp.org>
25112
25113         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
25114         of AIX, the replacement has to be done only after <string.h> is
25115         included, therefore not in config.h. stpncpy.h does the replacement,
25116         and stpncpy.c uses it.
25117
25118 2005-03-02  Bruno Haible  <bruno@clisp.org>
25119
25120         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
25121         stpncpy.c uses it.
25122
25123 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25124
25125         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
25126         The workaround isn't strictly needed for POSIX conformance, and
25127         it's too much of a pain to configure and maintain.  We'll ask
25128         people to fix their kernels instead.
25129         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
25130         (NANOSLEEP_BUG_WORKAROUND): Remove.
25131         (xnanosleep): Remove the workaround.
25132
25133 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25134
25135         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
25136         Reported by Derek Price.
25137         (Include): Add "timespec.h".
25138
25139         * modules/xnanosleep (Depends-on): Remove gethrxtime.
25140
25141 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25142
25143         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
25144         to detect nanosleep bug.
25145
25146 2005-03-01  Bruno Haible  <bruno@clisp.org>
25147
25148         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
25149
25150 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
25151
25152         * modules/gethrxtime: New file.
25153         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
25154         (Depends-on): Add gethrxtime.
25155         (configure.ac): Add gl_XNANOSLEEP.
25156         (Makefile.am): Remove lib_SOURCES line.
25157
25158 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
25159
25160         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
25161         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
25162
25163 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
25164
25165         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
25166         * lib/timespec.h (gettime): Return void, since it always
25167         succeeds now.  All uses changed.
25168         * lib/gettime.c (gettime) Likewise.
25169         [HAVE_NANOTIME]: Prefer nanotime.
25170         Assume gettimeofday succeeds, as POSIX requires.
25171         Assime time () succeeds, since other code already does.
25172         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
25173         (timespec_subtract): Remove.
25174         (NANOSLEEP_BUG_WORKAROUND): New constant.
25175         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
25176         things considerably.  Use it only on GNU/Linux hosts, since the
25177         workaround shouldn't be needed elsewhere.
25178
25179 2005-02-24  Bruno Haible  <bruno@clisp.org>
25180
25181         * modules/gettext (Files): Add m4/glibc2.m4.
25182
25183 2005-02-24  Bruno Haible  <bruno@clisp.org>
25184
25185         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
25186         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
25187         * m4/progtest.m4:
25188         Update from GNU gettext 0.14.2.
25189         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
25190
25191 2005-02-24  Bruno Haible  <bruno@clisp.org>
25192
25193         * lib/localcharset.c: Update from GNU gettext 0.14.2.
25194         * lib/config.charset: Update from GNU gettext 0.14.2.
25195
25196 2005-02-24  Bruno Haible  <bruno@clisp.org>
25197
25198         * lib/gettext.h: Update from GNU gettext 0.14.2.
25199
25200 2005-02-23  Simon Josefsson  <jas@extundo.com>
25201
25202         * m4/iconvme.m4: New file.
25203
25204 2005-02-23  Jim Meyering  <jim@meyering.net>
25205
25206         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
25207         change.
25208         Thanks to Bruno Haible for catching it.
25209
25210 2005-02-22  Simon Josefsson  <jas@extundo.com>
25211
25212         * modules/iconvme: New file.
25213
25214         * MODULES.html.sh: Add iconvme.
25215
25216 2005-02-22  Simon Josefsson  <jas@extundo.com>
25217
25218         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
25219
25220 2005-02-22  Simon Josefsson  <jas@extundo.com>
25221
25222         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
25223
25224 2005-02-22  Jim Meyering  <jim@meyering.net>
25225
25226         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
25227         s/ifndef/ifdef/.
25228
25229 2005-02-20  Neil Conway  <neilc@samurai.com>
25230
25231         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
25232         returned by OSX/Darwin if the specified buffer is not large
25233         enough for the hostname.
25234
25235 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25236
25237         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
25238         pass it to _help, otherwise the latter coredumps trying to
25239         dereference state.root_argp.
25240
25241 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
25242
25243         * modules/chdir-long (Depends-on): Add memrchr.
25244         * modules/memrchr (Files): Add lib/memrchr.h.
25245         (Include): "memrchr.h".
25246
25247 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
25248
25249         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
25250
25251 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
25252
25253         * lib/memrchr.h: New file.
25254         * lib/chdir-long.c: Include it.
25255         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
25256         Don't bother including stddef.h.
25257
25258 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
25259
25260         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
25261         inclusion.
25262         Include <sys/types.h>, for dev_t.
25263         (ME_DUMMY, ME_REMOTE): Move from here....
25264         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
25265         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
25266         Dmitry V. Levin.
25267         Include mountlist.h first, to test the interface.
25268
25269 2005-01-29  Bruno Haible  <bruno@clisp.org>
25270
25271         * lib/progname.c (program_name): Initialize.
25272         Needed when linking statically on MacOS X.
25273
25274 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
25275
25276         Sync from coreutils.
25277         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
25278         (Depends-on): Add c-strtod.
25279         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
25280
25281 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
25282
25283         Sync from coreutils.
25284         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
25285
25286         Remove files that are specific to coreutils.
25287         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
25288
25289 2005-01-28  Bruno Haible  <bruno@clisp.org>
25290
25291         * modules/javacomp: New file.
25292         * MODULES.html.sh (Java): Add javacomp.
25293
25294 2005-01-28  Bruno Haible  <bruno@clisp.org>
25295
25296         * m4/javacomp.m4: New file, from GNU gettext.
25297
25298 2005-01-28  Bruno Haible  <bruno@clisp.org>
25299
25300         * lib/javacomp.sh.in: New file, from GNU gettext.
25301         * lib/javacomp.h: New file, from GNU gettext.
25302         * lib/javacomp.c: New file, from GNU gettext.
25303
25304 2005-01-26  Simon Josefsson  <jas@extundo.com>
25305
25306         * lib/gai_strerror.c: Use GPL in header.
25307
25308 2005-01-26  Bruno Haible  <bruno@clisp.org>
25309
25310         * modules/javaexec: New file.
25311         * MODULES.html.sh (Java): Add javaexec.
25312
25313 2005-01-26  Bruno Haible  <bruno@clisp.org>
25314
25315         * m4/javaexec.m4: New file, from GNU gettext.
25316
25317 2005-01-26  Bruno Haible  <bruno@clisp.org>
25318
25319         * lib/javaexec.sh.in: New file, from GNU gettext.
25320         * lib/javaexec.h: New file, from GNU gettext.
25321         * lib/javaexec.c: New file, from GNU gettext.
25322
25323 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25324
25325         * modules/lchown (Depends-on): Remove lchown.h
25326
25327 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25328
25329         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
25330         must be defined if the header file was not found, in order
25331         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
25332
25333 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25334
25335         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
25336         initializers for struct pentry_state.
25337         (__argp_error): Check return value of __asprintf
25338         (__argp_failure): Translate error message
25339
25340         * lib/argp-parse.c: Removed braces around the expansion of N_()
25341
25342 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
25343
25344         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
25345         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
25346         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
25347         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
25348         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
25349         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
25350         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
25351         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
25352         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
25353         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
25354         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
25355         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
25356         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
25357         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
25358         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
25359         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
25360         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
25361         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
25362         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
25363         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
25364         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
25365         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
25366         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
25367         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
25368         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
25369         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
25370         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
25371         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
25372         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
25373         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
25374         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
25375         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
25376         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
25377         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
25378         xstrtol.m4, xstrtoumax.m4, yesno.m4:
25379         Use an all-permissive copyright notice, recommended by RMS.
25380
25381 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
25382
25383         * modules/chdir-long (Depends-on): Remove mempcpy.
25384
25385 2005-01-21  Jim Meyering  <jim@meyering.net>
25386
25387         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
25388         same value as for Solaris 9.
25389
25390         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
25391         component length.  This included changing the parameter to be
25392         of type `char *' rather than `char const *'.
25393         * lib/chdir-long.h (chdir_long): Update prototype.
25394
25395         * lib/openat.c (fdopendir, fstatat): New functions.
25396         * lib/openat.h: Include headers required for use of DIR and struct
25397         stat.
25398         [AT_SYMLINK_NOFOLLOW]: Define.
25399         (fdopendir, fstatat): Add prototypes.
25400
25401 2005-01-21  Bruno Haible  <bruno@clisp.org>
25402
25403         * modules/classpath: New file.
25404         * MODULES.html.sh (Java): Add classpath.
25405
25406 2005-01-21  Bruno Haible  <bruno@clisp.org>
25407
25408         * lib/classpath.h: New file, from GNU gettext.
25409         * lib/classpath.c: New file, from GNU gettext.
25410
25411 2005-01-20  Simon Josefsson  <jas@extundo.com>
25412
25413         * modules/version-etc-fsf: New file.
25414
25415 2005-01-20  Simon Josefsson  <jas@extundo.com>
25416
25417         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
25418         * lib/version-etc.c: Remove version_etc_copyright.
25419         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
25420         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
25421
25422 2005-01-20  Simon Josefsson  <jas@extundo.com>
25423
25424         * lib/base64.h (isbase64): Add.
25425
25426         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
25427         using a unsigned prototype, don't inline.
25428         (base64_decode): Use it.
25429
25430 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
25431
25432         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
25433         it.
25434
25435 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
25436
25437         * lib/save-cwd.c (save_cwd): Remove code to support the case
25438         where fchdir is missing or flaky.
25439
25440 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
25441
25442         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
25443
25444 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
25445
25446         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
25447         AC_LIBSOURCES now does this.
25448         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
25449         with new ullong_max module.
25450
25451 2005-01-19  Bruno Haible  <bruno@clisp.org>
25452
25453         * modules/sh-quote: New file.
25454         * MODULES.html.sh (Executing programs): Add sh-quote.
25455
25456 2005-01-19  Bruno Haible  <bruno@clisp.org>
25457
25458         * lib/sh-quote.h: New file, from GNU gettext.
25459         * lib/sh-quote.c: New file, from GNU gettext.
25460
25461 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
25462
25463         Merge from coreutils.
25464         * m4/ullong_max.m4: New file.
25465         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
25466         (gl_MACROS): Assume localeconv exists.
25467
25468 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
25469
25470         Merge changes from coreutils, as described below in several
25471         changelogs dated today.
25472
25473         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
25474         (O_DIRECTORY): Remove; not needed here, since "." must be
25475         a directory.  All uses removed.
25476         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
25477         universal on Suns, and we also need to test for IRIX.
25478         Revamp code to use 'if' rather than '#if'.
25479         Avoid unnecessary comparison of cwd->desc to 0.
25480
25481         * lib/utimens.c (futimens): Robustify the previous patch, by checking
25482         for known valid error numbers rather than observed invalid ones.
25483
25484 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
25485
25486         * modules/ullong_max: New file.
25487
25488         * modules/chdir-long, modules/openat: New files.
25489         * modules/save-cwd (Depends-on): Depend on chdir-long.
25490         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
25491
25492 2005-01-18  Jim Meyering  <jim@meyering.net>
25493
25494         Merge from coreutils.
25495         * m4/chdir-long.m4, m4/openat.m4: New files.
25496         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
25497         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
25498         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
25499         is sane and DOES follow symlinks.  Besides, testing 20 different
25500         systems found no broken chown implementations.
25501         Prompted by a change in rsync's copy of this macro.
25502         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
25503
25504         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
25505
25506         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
25507         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
25508         NULL-means-set-to-current-time semantics.
25509         Remove temporary file immediately, rather than waiting
25510         for configure's at-exit trap code to do it.
25511
25512 2005-01-18  Jim Meyering  <jim@meyering.net>
25513
25514         * lib/version-etc.c (version_etc_copyright): Update copyright date.
25515
25516         * lib/utimens.c (futimens): Account for the fact that futimes
25517         can also fail with errno == ENOSYS or errno == ENOENT.
25518         Patch from Dmitry V. Levin.
25519
25520         Change the name of the robust chdir function from chdir to chdir_long.
25521         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
25522         (restore_cwd): Use chdir_long, not chdir.
25523         * lib/chdir-long.c: Renamed from chdir.c.
25524         * lib/chdir-long.h: Renamed from chdir.h.
25525         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
25526         Hurd.
25527
25528 2005-01-18  Bruno Haible  <bruno@clisp.org>
25529
25530         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
25531         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
25532         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
25533         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
25534         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
25535         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
25536         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
25537         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
25538         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
25539         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
25540         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
25541         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
25542         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
25543         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
25544         Use an all-permissive copyright notice, recommended by RMS.
25545
25546 2005-01-18  Bob Proulx  <bob@proulx.com>
25547
25548         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
25549         simplify offsetof() macro construct to avoid compile failure with
25550         native HP-UX 11.0 ANSI C compiler.
25551
25552 2005-01-17  Bruno Haible  <bruno@clisp.org>
25553
25554         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
25555         redundant because stpncpy.m4 takes care of it.
25556
25557 2005-01-17  Bruno Haible  <bruno@clisp.org>
25558
25559         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
25560
25561 2005-01-17  Bruno Haible  <bruno@clisp.org>
25562
25563         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
25564         used.
25565
25566 2005-01-17  Bruno Haible  <bruno@clisp.org>
25567
25568         * lib/fwriteerror.h (fwriteerror): Change specification to include
25569         fclose.
25570         * lib/fwriteerror.c: Include <stdbool.h>.
25571         (fwriteerror): At the end, close the file stream. Record whether
25572         stdout was already closed.
25573
25574 2005-01-17  Bruno Haible  <bruno@clisp.org>
25575
25576         * lib/execute.c (environ): Declare if needed.
25577         * lib/pipe.c (environ): Likewise.
25578         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
25579
25580 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25581
25582         * modules/argp: Depend on vsnprintf
25583
25584 2005-01-10  Jim Meyering  <jim@meyering.net>
25585
25586         * modules/closeout (Depends-on): Add atexit.
25587
25588 2005-01-06  Bruno Haible  <bruno@clisp.org>
25589
25590         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
25591
25592 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
25593
25594         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
25595         definitions to be after all include files, to avoid collisions.
25596         Problem reported by Bob Proulx.
25597
25598 2005-01-04  Jim Meyering  <jim@meyering.net>
25599
25600         Changes imported from coreutils.
25601         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
25602         as the mkstemp template, use a temporary directory and an
25603         8.3-friendly template to avoid trouble on systems like DJGPP.
25604         Reported by Juan M. Guerrero via Stepan Kasal.
25605         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
25606         close. Remove the temporary directory right away, rather than waiting
25607         for configure's at-exit trap code to do it.
25608         Suggestion from Stepan Kasal.
25609
25610 2005-01-01  Simon Josefsson  <jas@extundo.com>
25611
25612         * gnulib-tool: Print #include directives when --import'ing.
25613
25614 2004-12-28  Simon Josefsson  <jas@extundo.com>
25615
25616         * tests/test-base64.c: Include required header files.  Remove
25617         unused variables.
25618
25619 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
25620
25621         * modules/error (Depends-on): Remove gettext.
25622
25623 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
25624
25625         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
25626         not needed.  This removes a dependency on the gettext module.
25627         [defined _LIBC]: Do not include <libintl.h>; not needed.
25628
25629 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
25630
25631         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
25632         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
25633
25634 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
25635
25636         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
25637         HAVE_DECL_STRTOLD.
25638
25639 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
25640
25641         * modules/getdate (Depends-on): Remove alloca-opt.
25642
25643 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
25644
25645         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
25646
25647 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
25648
25649         * lib/argp-parse.c: Include <stddef.h>.
25650         (alignof, alignto): New macros.
25651         (parser_init): Don't assume that void * is aligned sufficiently
25652         for struct option.
25653
25654         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
25655         need to extend the stack.
25656         (YYINITDEPTH): New macro, so that the initial stack isn't overly
25657         large.
25658
25659 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25660
25661         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
25662
25663 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
25664
25665         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
25666         (2004-10-24) change.  Apparently this was a false alarm.
25667
25668         * modules/getdate: Depend on alloca-opt, not alloca.
25669
25670 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
25671
25672         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
25673         Remove now-obsolete comment about AIX.
25674         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
25675         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
25676         (YYMAXDEPTH): New macro.
25677
25678 2004-12-18  Simon Josefsson  <jas@extundo.com>
25679
25680         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
25681
25682 2004-12-18  Bruno Haible  <bruno@clisp.org>
25683
25684         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
25685
25686 2004-12-18  Bruno Haible  <bruno@clisp.org>
25687
25688         * lib/fatal-signal.c (fatal_signals): Make non-const.
25689         (init_fatal_signals): New function.
25690         (uninstall_handlers, install_handlers): Ignore signals that were set to
25691         SIG_IGN.
25692         (at_fatal_signal): Call init_fatal_signals.
25693         (init_fatal_signal_set): Likewise. Ignore signals that were set to
25694         SIG_IGN.
25695         Reported by Paul Eggert.
25696
25697 2004-12-18  Bruno Haible  <bruno@clisp.org>
25698
25699         * doc/alloca.texi: New file.
25700         * doc/alloca-opt.texi: New file.
25701
25702 2004-12-17  Jim Meyering  <jim@meyering.net>
25703
25704         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
25705         Otherwise, install-sh could exit with improper exit status when
25706         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
25707
25708 2004-12-16  Simon Josefsson  <jas@extundo.com>
25709
25710         * tests/test-base64.c: Add license.
25711
25712 2004-12-15  Stepan Kasal  <address@hidden>
25713
25714         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
25715
25716 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
25717
25718         * modules/getcwd (Files): Add m4/d-ino.m4.
25719         Suggested by Mark D. Baushke.
25720
25721 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
25722
25723         * lib/getdate.y (textint): New member "negative".
25724         (time_zone_hhmm): New function.
25725         Expect 14 shift-reduce conflicts, not 13.
25726         (o_colon_minutes): New rule.
25727         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
25728         (yylex): Set the "negative" member of signed numbers.
25729
25730 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
25731
25732         * doc/getdate.texi (Time of day items, Time zone items):
25733         Describe new formats +00:00, UTC+00:00.
25734
25735 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
25736
25737         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
25738         spurious "-l"s.  Problem reported by Stepan Kasal.
25739
25740 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
25741
25742         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
25743         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
25744
25745 2004-12-04  Simon Josefsson  <jas@extundo.com>
25746
25747         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
25748         Vandoorselaere <yoann@prelude-ids.org>.
25749
25750 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
25751
25752         Changes imported from coreutils.
25753         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
25754         exist.
25755         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
25756
25757 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
25758
25759         Changes imported from coreutils.
25760         * lib/hard-locale.c: Assume <locale.h> exists.
25761         Include "strdup.h".
25762         (GLIBC_VERSION): New macro.
25763         (hard_locale): Assume setlocale exists.
25764         Rewrite to avoid #ifdef.
25765         Use strdup rather than malloc + strcpy.
25766         * lib/human.c: Assume <locale.h> exists.
25767         (human_readable): Assume localeconv exists.
25768
25769 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
25770
25771         * modules/hard-locale (Depends-on): Add strdup.
25772
25773 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
25774
25775         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
25776         convert T2, not T.  (Imported from libc.)
25777
25778 2004-11-30  Simon Josefsson  <jas@extundo.com>
25779
25780         * modules/restrict (License): Change to LGPL.
25781
25782 2004-11-30  Simon Josefsson  <jas@extundo.com>
25783
25784         * m4/restrict.m4: Add copyright and copying conditions.
25785
25786 2004-11-30  Simon Josefsson  <jas@extundo.com>
25787
25788         * m4/base64.m4: New file.
25789
25790 2004-11-30  Simon Josefsson  <jas@extundo.com>
25791
25792         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
25793         base64.
25794
25795         * tests/test-base64.c: New file.
25796
25797         * modules/base64: New file.
25798
25799 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
25800
25801         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
25802         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
25803
25804         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
25805
25806 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
25807
25808         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
25809         (__getcwd.c): Don't restore errno; glibc doesn't.
25810         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
25811         first, falling back to our code only if its results look suspicious.
25812         Ensure that the resulting buffer is only as large as necessary.
25813
25814         * lib/readutmp.c: Include readutmp.h first.
25815         Include <errno.h>, since readutmp.h no longer does that.
25816         * lib/readutmp.h: Don't include <errno.h>,
25817         <sys/param.h>, <time.h>; not needed to establish interface.
25818         (errno): Remove decl.
25819         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
25820         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
25821         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
25822
25823 2004-11-28  Simon Josefsson  <jas@extundo.com>
25824
25825         * lib/base64.h, base64.c: New file.
25826
25827 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
25828
25829         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
25830
25831 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
25832
25833         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
25834         (Depends-on): Remove pathmax, same.  Add mempcpy.
25835         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
25836         (Makefile.am): Append getcwd.h to lib_SOURCES.
25837         (Include): Add getcwd.h.
25838         (Maintainer): Change from Jim Meyering to "all, glibc",
25839         since getdate now uses intended-for-glibc code.
25840         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
25841         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
25842
25843 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
25844
25845         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
25846         HP's ANSI C compiler.
25847         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
25848         Declaring int functions causes warnings on some modern systems and
25849         shouldn't be needed to compile on ancient ones.
25850         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
25851         defined.
25852
25853         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
25854         with the following changes.
25855         (__set_errno): Parenthesize properly.
25856         Include <stdbool.h>.
25857         (MIN, MAX, MATCHING_INO): New macros.
25858         (__getcwd): Define with prototype, not K&R form.
25859         Use heuristics to allocate default buffer on stack if possible.
25860         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
25861         behavior, and to avoid the PATH_MAX limit when computing
25862         ../../../../...
25863         Use MATCHING_INO to compare inode number to file.
25864         Check for arithmetic overflow in size calculations.
25865         Fix bug in reallocation of dot array that caused getcwd to fail
25866         on directories nested deeper than 75.
25867         Be more careful about saving errno on error.
25868         Do not use realloc; use only free+malloc, as this is a bit
25869         more flexible and avoids a needless copy operation.
25870         Do not inspect st_dev and st_ino for symbolic links; POSIX
25871         doesn't specify the latter.
25872         Check for closedir errors.
25873         Avoid needless casts.
25874         Use "#ifdef weak_alias" around weak_alias, to be like other
25875         glibc code.
25876         The following changes to getcwd.c have effect only when used in
25877         gnulib; they have no effect inside glibc proper.
25878         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
25879         as alloca isn't used.
25880         (alloca, __alloca): Likewise.
25881         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
25882         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
25883         unconditionally, as gnulib assumes C89 or better.
25884         Do not include <sys/param.h>.
25885         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
25886         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
25887         better.
25888         (NULL) [!defined NULL]: Remove; we assume C89 or better.
25889         Include <dirent.h> in a way that is compatible with modern Autoconf.
25890         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
25891         New macros, if not already defined.
25892         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
25893         Use "_LIBC", not "defined _LIBC", for consistency.
25894         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
25895         a mempcpy module.
25896         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
25897         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
25898         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
25899         credit only to Jim Meyering and adjust the copyright dates.
25900         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
25901         <stdlib.h>, <unistd.h>, "pathmax.h".
25902         Instead, include "xgetcwd.h" (first) and "getcwd.h".
25903         (INITIAL_BUFFER_SIZE): Remove.
25904         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
25905
25906 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
25907
25908         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
25909         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
25910         Use the _ONCE methods, for efficiency.
25911         Check for fcntl.h.  In test program, include <errno.h>
25912         and <fcntl.h> if available.  Remove old K&R cruft from
25913         test program.  Check for common errors in GNU/Linux,
25914         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
25915         don't do AC_LIBOBJ, as that's getcwd.m4's job.
25916         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
25917         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
25918         name accordingly.
25919         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
25920         accommodate new getcwd.c.
25921         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
25922         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
25923         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
25924         that's all we need now.
25925
25926 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25927
25928         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
25929         argp-parse.c depends on getopt internals, that means we should
25930         always use our getopt, to be on the safe side.
25931         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
25932         order not to spoil the result of an eventual previous invocation
25933         of gl_GETOPT_SUBSTITUTE.
25934
25935 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25936
25937         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
25938         redefinition warnings. To avoid them, include the defines
25939         in `#if !defined __need_getopt ... #endif'. The only place
25940         where __getopt_argv_const is used is in definitions
25941         of getopt_long and getopt_long_only below, which are as well
25942         protected by `#ifndef __need_getopt'.
25943         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
25944         __need_getopt after including <stdio.h> and <unistd.h> These
25945         headers might have defined it.
25946
25947 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
25948
25949         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
25950
25951 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
25952
25953         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
25954         (futimens): New function, which uses futimes if available.
25955         (futimens, utimens): Support timespec==NULL, with same semantics
25956         as utime and utimens.
25957         * lib/utimens.h (futimens): New decl.
25958
25959 2004-11-23  Jim Meyering  <jim@meyering.net>
25960
25961         * lib/getopt_.h: Remove trailing blanks.
25962
25963 2004-11-23  Jim Meyering  <jim@meyering.net>
25964
25965         * lib/__fpending.c: Add comment.
25966
25967 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
25968
25969         * modules/canonicalize (Depends-on): Add xreadlink.
25970         Problem reported by James Youngman.
25971
25972 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
25973
25974         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
25975         New macros.
25976         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
25977         optopt): Use them instead of invoking ## directly; otherwise, the
25978         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
25979
25980 2004-11-19  Bruno Haible  <bruno@clisp.org>
25981
25982         * lib/strtok_r.c: Move comments from here...
25983         * lib/strtok_r.h: ... to here.
25984
25985 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
25986
25987         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
25988         implementations that mishandle size_t overflow.
25989
25990 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
25991
25992         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
25993         might fail.  Problem reported by Yoann Vandoorselaere.
25994         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
25995         implementations that mishandle size_t overflow.
25996
25997 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
25998
25999         * modules/canon-host (Depends-on): Add strdup.
26000
26001 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
26002
26003         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
26004
26005 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
26006
26007         * lib/canon-host.c: Include "strdup.h".
26008         (canon_host): Use getaddrinfo if available, so that IPv6 works.
26009         Use strdup instead of malloc/strcpy to duplicate strings.
26010
26011         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
26012         (human_space_before_unit): New constant.
26013         * lib/human.c (human_readable): Support it.
26014
26015         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
26016         (xgetcwd): Set errno correctly when failing.
26017         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
26018         the failure is actually due to a PATH_MAX problem.
26019
26020         Further getopt changes to make it more likely that glibc will
26021         buy the changes back.
26022         * lib/getopt.c (POSIXLY_CORRECT): New constant.
26023         (getopt): Use it, so to preserve glibc semantic
26024         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
26025         when compiling for libc.
26026         * lib/getopt_.h (__getopt_argv_const): Bring it back.
26027         (getopt_long, getopt_long_only): Use it.
26028
26029         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
26030         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
26031         (getopt): Argv is now char * const *, as per standard.
26032         (_getopt_internal_r, _getopt_internal): Argv is now char **,
26033         not char *__getopt_argv_const *.
26034         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
26035         _getopt_long_only_r): Likewise.
26036         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
26037         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
26038         _getopt_long_r, _getopt_long_only_r): Likewise.
26039         * lib/getopt_.h (__getopt_argv_const): Remove.
26040         (getopt): Argv is now char * const *, as per standard.
26041
26042         * lib/getdate.y (tORDINAL): New token.
26043         (day, relunit): Allow it for relative times.
26044         (relative_time_table): Use tORDINAL for ordinals.
26045
26046 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
26047
26048         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
26049         Document that "second" isn't allowed as an ordinal number.
26050
26051 2004-11-16  Jim Meyering  <jim@meyering.net>
26052
26053         * modules/closeout (Depends-on): Add fpending.
26054
26055 2004-11-15  Jim Meyering  <jim@meyering.net>
26056
26057         * lib/closeout.c: Include "__fpending.h" once again.
26058         Include <stdbool.h>.
26059         (close_stdout): Don't fail just because stdout was closed initially,
26060         since some programs don't write to stdout in the normal course of
26061         operation (other than --version and --help), and we don't want this
26062         function to make e.g. `touch file >&-' fail.
26063         But do fail if it was closed and someone has tried to write to it.
26064         E.g., `printf foo >&-' must fail.
26065
26066 2004-11-13  Jim Meyering  <jim@meyering.net>
26067
26068         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
26069
26070 2004-11-12  Simon Josefsson  <jas@extundo.com>
26071
26072         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
26073         small doc fix is still pending.
26074
26075 2004-11-11  Simon Josefsson  <jas@extundo.com>
26076
26077         * modules/strtok_r: New file.
26078
26079         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
26080         strtok_r.
26081
26082 2004-11-11  Simon Josefsson  <jas@extundo.com>
26083
26084         * m4/strtok_r.m4: New file.
26085
26086         * m4/getopt.m4: Replace opterr.
26087
26088 2004-11-11  Simon Josefsson  <jas@extundo.com>
26089
26090         * lib/strtok_r.h, strtok_r.c: New file.
26091
26092 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
26093
26094         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
26095         of replacing opterr, getopt, etc.  This should handle the
26096         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
26097
26098 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
26099
26100         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
26101         we can stop lying to compilers about the constness of argv when we
26102         are compiled outside glibc.
26103         (getopt, getopt_long, getopt_long_only): Use it.
26104         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
26105         _getopt_internal, getopt): Likewise.
26106         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
26107         _getopt_long_only_r): Likewise.
26108         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
26109         _getopt_long_r, _getopt_long_only_r): Likewise.
26110
26111         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
26112         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
26113         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
26114         the other external symbols.
26115         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
26116         declaration, since the above renaming now works around collisions.
26117
26118 2004-11-11  Jim Meyering  <jim@meyering.net>
26119
26120         * lib/linebreak.c: Remove trailing blanks.
26121         * lib/alloca_.h: Likewise.
26122         * lib/acosl.c: Likewise.
26123         * lib/euidaccess.c: Likewise.
26124         * lib/allocsa.h: Likewise.
26125
26126 2004-11-10  Simon Josefsson  <jas@extundo.com>
26127
26128         * m4/getaddrinfo.m4: New file.
26129
26130 2004-11-10  Simon Josefsson  <jas@extundo.com>
26131
26132         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
26133
26134 2004-11-10  Simon Josefsson  <jas@extundo.com>
26135
26136         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
26137         getaddrinfo.
26138
26139         * modules/getaddrinfo: New file.
26140
26141 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
26142
26143         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
26144
26145 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
26146
26147         * lib/mktime.c (SHR): New macro, which is a portable
26148         substitute for >> that should work even on Crays.
26149         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
26150         Problem reported by Mark D. Baushke in
26151         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
26152         * lib/getdate.y (SHR): Likewise.
26153         (tm_diff): Use it.
26154         * lib/strftime.c (SHR): Likewise.
26155         (tm_diff): Use it.
26156         * lib/quotearg.c (struct quoting_options): Use unsigned int for
26157         quote_these_too, so that right shifts are well defined.  All uses
26158         changed.
26159
26160 2004-11-10  Jim Meyering  <jim@meyering.net>
26161
26162         Ensure that no close failure goes unreported.
26163         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
26164         return early when it seems there's nothing to flush.
26165         Don't include __fpending.h.
26166
26167 2004-11-10  Jim Meyering  <jim@meyering.net>
26168
26169         * modules/closeout (Depends-on): Remove fpending.
26170
26171 2004-11-10  Jim Meyering  <jim@meyering.net>
26172
26173         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
26174
26175 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
26176
26177         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
26178         gl_FUNC_STRFTIME.
26179         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
26180         and AC_REQUIRE when possible, to avoid duplicate checks.
26181         Check for <wchar.h>.
26182
26183 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
26184
26185         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
26186
26187 2004-11-09  Bruno Haible  <bruno@clisp.org>
26188
26189         * m4/sockpfaf.m4: New file.
26190
26191 2004-11-05  Bruno Haible  <bruno@clisp.org>
26192
26193         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
26194         Reported by Mark D. Baushke <mdb@cvshome.org>.
26195
26196 2004-11-04  Bruno Haible  <bruno@clisp.org>
26197
26198         2004-09-11  Bruno Haible  <bruno@clisp.org>
26199                 * allocsa.valgrind: New file.
26200         2004-02-06  Bruno Haible  <bruno@clisp.org>
26201                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
26202                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
26203                 Reported by Christopher Seip <chris.seip@hp.com>.
26204
26205 2004-11-04  Bruno Haible  <bruno@clisp.org>
26206
26207         * modules/allocsa (Files): Add lib/allocsa.valgrind.
26208         (Makefile.am): Distribute it.
26209
26210 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
26211
26212         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
26213         with errno == ERANGE if the buffer is too small.
26214         Problem reported by Mark D. Baushke.
26215
26216 2004-11-03  Albert Chin  <china@thewrittenword.com>
26217             Paul Eggert  <eggert@cs.ucla.edu>
26218
26219         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
26220         equivalent, substitute $ac_type for equivalent type rather than
26221         blindly using uint32_t *always* which won't work if uint32_t is not
26222         available.  Define _UINT32_T to work around typedef of uint32_t if
26223         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
26224         2.5.1.
26225
26226 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
26227
26228         * m4/jm-macros.m4: Sync from coreutils.
26229         (gl_MACROS): Check for mbrlen, for pathchk.
26230         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
26231
26232 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
26233
26234         * lib/xreadlink.c (MAXSIZE): New macro.
26235         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
26236         size does not exceed MAXSIZE.  Avoid cast.
26237         As suggested by Mark D. Baushke in
26238         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
26239         if readlink fails with buffer size just under MAXSIZE, try again
26240         with MAXSIZE.
26241
26242 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
26243
26244         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
26245
26246 2004-11-02  Derek R. Price  <derek@ximbiot.com>
26247         and  Paul Eggert  <eggert@cs.ucla.edu>
26248
26249         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
26250         (get_date): Overparenthesize to avoid GCC warning.
26251
26252 2004-11-02  Bruno Haible  <bruno@clisp.org>
26253
26254         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
26255         returns void.
26256
26257 2004-11-02  Bruno Haible  <bruno@clisp.org>
26258
26259         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
26260         function returns void.
26261
26262 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
26263
26264         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
26265         fflush_unlocked, flockfile, funlockfile, funlockfile,
26266         fputs_unlocked, putc_unlocked.
26267
26268 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
26269
26270         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
26271         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
26272         already declared.
26273
26274 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
26275
26276         * modules/getdate (Files): Add doc/getdate.texi.
26277         (Depends-on): Add setenv, xalloc.
26278
26279 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
26280
26281         * lib/getdate.y: Add support for TZ="foo" within a date string.
26282         Fix some bugs near time_t boundaries.  Reject dates with
26283         out-of-range components, e.g., "Sept 31".
26284         Include <stdlib.h>, "setenv.h", "xalloc.h".
26285         (ISDIGIT_LOCALE): Remove; unused.
26286         Note that the TZ and time functions used here are not reentrant.
26287         (mktime_ok, get_tz): New functions.
26288         (TZBUFSIZE): New constant.
26289         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
26290         This requires that we sometimes generate our own TZ="XXX..." setting.
26291
26292 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
26293
26294         * doc/getdate.texi: New file, from coreutils with modifications for
26295         the new TZ parsing.
26296
26297 2004-10-27  Derek R. Price  <derek@ximbiot.com>
26298
26299         * lib/mktime.c (not_equal_tm): Remove redundant check.
26300
26301 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
26302
26303         * modules/regex (lib_SOURCES): Add regex.c.
26304         Reported by James Youngman in
26305         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
26306
26307 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
26308
26309         * lib/getdate.y: Use Bison 1.875 features, and some minor
26310         code cleanups.  This change does not affect semantics.
26311         Don't include <stdlib.h>; no longer needed.
26312         Don't include unlocked-io.h; only the "#if TEST" code uses
26313         stdio, and performance isn't crucial there.
26314         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
26315         Bison 1.875 features as described below.
26316         All uses of "PC." replaced by "pc->".
26317         (YYSTYPE): Add a forward declaration.
26318         (yylex, yyerror): Use full prototypes in forward decls.
26319         Use "%pure-parser" rather than obsolescent "%pure_parser".
26320         Use %parse-param and %lex-param instead of obsolescent
26321         YYPARSE_PARAM and YYLEX_PARAM.
26322         (meridian_table, month_and_day_table, time_units_table,
26323         relative_time_table, time_zone_table, military_table,
26324         lookup_zone, lookup_word, get_date):
26325         Use NULL instead of 0 where appropriate.
26326         (to_hour): Avoid abort (), to avoid a dependency on
26327         stdlib.h.
26328         (yyerror, yylex): Now accepts parser_control * arg.
26329         (main) [TEST]: Use '\0' rather than 0 for char.
26330
26331 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
26332
26333         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
26334
26335 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
26336
26337         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
26338         It's now the caller's responsibility to handle the case where
26339         !HAVE_GETPAGESIZE && !defined getpagesize.
26340
26341         * lib/mktime.c (leapyear): Arg is long int, not int.
26342
26343 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
26344
26345         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
26346
26347 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
26348
26349         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
26350         missing.  Problem reported by James Youngman.
26351
26352 2004-10-16  Simon Josefsson  <jas@extundo.com>
26353
26354         * gnulib-tool: Fix comments.  Fix parse problem.
26355         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
26356
26357 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
26358
26359         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
26360         implementation of getopt_long.  Problem reported by Alexander Taler in:
26361         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
26362
26363 2004-10-15  Bruno Haible  <bruno@clisp.org>
26364
26365         * gnulib-tool: Untabify. Initialize supplied_libname.
26366         (func_usage): More homogenous output.
26367         (func_modules_transitive_closure, func_modules_to_filelist,
26368         func_emit_lib_Makefile_am): New functions.
26369         (func_import): New function, extracted from big case statement. Use
26370         func_get_license, func_modules_transitive_closure,
26371         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
26372         opt_lgpl. Don't use test -a, as it's not portable.
26373         (func_create_testdir): Use func_modules_transitive_closure,
26374         func_modules_to_filelist, func_emit_lib_Makefile_am.
26375
26376 2004-10-15  Bruno Haible  <bruno@clisp.org>
26377
26378         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
26379
26380 2004-10-15  Bruno Haible  <bruno@clisp.org>
26381
26382         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
26383         the portions belonging to each module.
26384         Suggested by Derek Robert Price <derek@ximbiot.com>.
26385
26386 2004-10-12  Simon Josefsson  <jas@extundo.com>
26387
26388         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
26389         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
26390         to real functions.
26391
26392 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26393
26394         * modules/vsnprintf: New file.
26395
26396 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26397
26398         * m4/vsnprintf.m4: New file.
26399
26400 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26401
26402         * lib/vsnprintf.h: New file.
26403         * lib/vsnprintf.c: New file.
26404
26405 2004-10-11  Bruno Haible  <bruno@clisp.org>
26406
26407         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
26408         vsnprintf.
26409
26410 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
26411
26412         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
26413
26414 2004-10-07  Bruno Haible  <bruno@clisp.org>
26415
26416         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
26417         fits into the provided buffer.
26418
26419 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
26420
26421         * lib/diacrit.c, diacrit.h: Add GPL notice.
26422
26423         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
26424         notice.
26425         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
26426         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
26427         This avoids a potential constant-folding bug.
26428
26429 2004-10-05  Bruno Haible  <bruno@clisp.org>
26430
26431         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
26432         for the declaration of strsep.
26433
26434 2004-10-05  Bruno Haible  <bruno@clisp.org>
26435
26436         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
26437
26438 2004-10-04  Simon Josefsson  <jas@extundo.com>
26439
26440         * modules/memmem: New file.
26441         * tests/test-memmem.c: New file.
26442         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
26443
26444 2004-10-04  Simon Josefsson  <jas@extundo.com>
26445
26446         * m4/memmem.m4: New file.
26447
26448 2004-10-04  Simon Josefsson  <jas@extundo.com>
26449
26450         * lib/memmem.h: New file.
26451         * lib/memmem.c: New file, taken from glibc.
26452
26453 2004-10-04  Simon Josefsson  <jas@extundo.com>
26454
26455         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
26456         '#ifdef USE_UNLOCKED_IO'.
26457
26458 2004-10-04  Simon Josefsson  <jas@extundo.com>
26459
26460         * config/srclist.txt: Add memmem from glibc.
26461
26462 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
26463
26464         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
26465
26466         * modules/argmatch, modules/argp, modules/closeout, modules/error,
26467         modules/exclude, modules/getdate, modules/getline,
26468         modules/getndelim2, modules/getpass, modules/getpass-gnu,
26469         modules/getusershell, modules/linebuffer, modules/md5,
26470         modules/mountlist, modules/posixtm, modules/readtokens,
26471         modules/readutmp, modules/regex, modules/sha1,
26472         modules/version-etc, modules/yesno:
26473         Remove dependency on unlocked-io.
26474
26475 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
26476
26477         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
26478
26479         * m4/unlocked-io.m4: Add copyright notice.
26480         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
26481
26482 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
26483
26484         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
26485         * lib/xmalloc.c (xmemdup): Likewise.
26486         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
26487         XFREE): Remove these long-obsolescent macros.
26488         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
26489         * lib/xstrdup.c: Remove.
26490
26491         * lib/regex.c (re_comp): Cast gettext return value to char *,
26492         Problem reported by Martin Neitzel via Mark D. Baushke.
26493
26494 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
26495
26496         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
26497         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
26498         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
26499         regex.c, sha1.c, version-etc.c, yesno.c:
26500         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
26501         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
26502         the includer's responsibility.
26503
26504         Sync from coreutils.
26505
26506         * lib/modechange.c (mode_compile): Don't decrement a pointer that
26507         points to the start of a string, as the C Standard says the
26508         resulting behavior is undefined.
26509
26510         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
26511         simple -> simple_backups, numbered_existing ->
26512         numbered_existing_backups, numbered -> numbered_backups
26513         to avoid shadowing problems.  All uses changed.
26514         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
26515         * lib/backupfile.c (check_extension, numbered_backup):
26516         Rename locals to avoid shadowing 'basename'.
26517         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
26518         once.
26519
26520         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
26521         * lib/.cvsignore: Add getopt.h.
26522
26523 2004-10-04  Bruno Haible  <bruno@clisp.org>
26524
26525         * modules/README: New file.
26526         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
26527         not a module.
26528
26529 2004-10-02  Jim Meyering  <jim@meyering.net>
26530
26531         * lib/dirfd.h, getpagesize.h: Add copyright notice.
26532
26533 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26534
26535         * modules/strsep: New file.
26536
26537 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26538
26539         * m4/strsep.m4: New file.
26540
26541 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26542
26543         * lib/strsep.h: New file.
26544         * lib/strsep.c: New file.
26545
26546 2004-10-01  Simon Josefsson  <jas@extundo.com>
26547
26548         * lib/snprintf.c (snprintf): Handle size==0.
26549
26550 2004-10-01  Simon Josefsson  <jas@extundo.com>
26551             Bruno Haible  <bruno@clisp.org>
26552
26553         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
26554         (snprintf): Declare 'args'.
26555
26556 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
26557
26558         * lib/snprintf.c: Remove comments as to why each header is needed.
26559
26560 2004-10-01  Bruno Haible  <bruno@clisp.org>
26561
26562         * MODULES.html.sh: Add strsep.
26563
26564 2004-09-30  Simon Josefsson  <jas@extundo.com>
26565
26566         * modules/snprintf: New file.
26567
26568 2004-09-30  Simon Josefsson  <jas@extundo.com>
26569
26570         * m4/snprintf.m4: New file.
26571
26572 2004-09-30  Simon Josefsson  <jas@extundo.com>
26573
26574         * lib/snprintf.h, lib/snprintf.c: New files.
26575
26576 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
26577
26578         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
26579         (hol_entry_help): Never translate an empty string.
26580         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
26581         * lib/argp.h (OPTION_NO_TRANS): New option.
26582
26583 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
26584
26585         * modules/argp (Maintainer): Replace Simon Josefsson
26586         by Sergey Poznyakoff.
26587
26588 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
26589
26590         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
26591         changes merged back into glibc.
26592
26593 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
26594
26595         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
26596
26597 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
26598
26599         * lib/xvasprintf.c: Include xalloc.h.
26600         (xvasprintf): Use xalloc_die, not xmalloc_die.
26601
26602 2004-09-29  Bruno Haible  <bruno@clisp.org>
26603
26604         * modules/alloca-opt: New file, derived from modules/alloca.
26605         * modules/allocsa: Depend on alloca-opt instead of alloca.
26606         * modules/setenv: Likewise.
26607         * modules/vasnprintf: Likewise.
26608         * MODULES.html.sh: Add alloca-opt.
26609
26610 2004-09-28  Simon Josefsson  <jas@extundo.com>
26611
26612         * gnulib-tool: New parameter --lgpl, to asseert that modules are
26613         LGPL, and to replace license template from GPL to LGPL.
26614
26615 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
26616
26617         * modules/dummy: Change license to LGPL.
26618
26619 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
26620
26621         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
26622
26623 2004-09-24  Simon Josefsson  <jas@extundo.com>
26624
26625         * modules/minmax (License): Change from GPL to LGPL.
26626
26627 2004-09-23  Simon Josefsson  <jas@extundo.com>
26628
26629         * gnulib-tool (--import): Typo.
26630
26631 2004-09-23  Simon Josefsson  <jas@extundo.com>
26632
26633         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
26634
26635 2004-09-22  Bruno Haible  <bruno@clisp.org>
26636
26637         * modules/*: Add 'License' field.
26638         * gnulib-tool: Accept --extract-license option.
26639         (func_get_license): New function.
26640
26641 2004-09-21  Bruno Haible  <bruno@clisp.org>
26642
26643         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
26644         Reported by Simon Josefsson.
26645
26646 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
26647
26648         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
26649         gl_AC_TYPE_LONG_LONG.
26650
26651 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
26652
26653         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
26654
26655 2004-09-18  Simon Josefsson  <jas@extundo.com>
26656         and  Paul Eggert  <eggert@cs.ucla.edu>
26657
26658         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
26659         calls with autoreconf.  Define GL_LIB.
26660
26661 2004-09-14  Karl Berry  <karl@gnu.org>
26662
26663         * config/srclist.txt: unsync setenv.c, sigh.
26664
26665 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
26666
26667         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
26668         Problem reported by Bruno Haible in:
26669         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
26670
26671 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
26672
26673         * config/srclist.txt: Comment out argp-pvh.c.
26674
26675 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
26676
26677         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
26678         in case some system header has #define'd it.  Problem reported by
26679         Soeren D. Schulze in
26680         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
26681
26682 2004-09-09  Karl Berry  <karl@gnu.org>
26683
26684         * regex.[ch]: delete from the root.  These were supposed to be
26685                 synced with emacs cvs, but this has not happened for about
26686                 a year, and anyway nothing else uses emacs regex.[ch].
26687                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
26688                 lib/regex[.ch] is untouched.
26689
26690 2004-09-09  Bruno Haible  <bruno@clisp.org>
26691
26692         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
26693
26694 2004-09-09  Bruno Haible  <bruno@clisp.org>
26695
26696         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
26697         modifications.
26698         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
26699
26700 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
26701
26702         * modules/xvasprintf: New file.
26703         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
26704
26705 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
26706
26707         * lib/xvasprintf.h: New file.
26708         * lib/xvasprintf.c: New file.
26709         * lib/xasprintf.c: New file.
26710
26711 2004-09-08  Bruno Haible  <bruno@clisp.org>
26712
26713         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
26714
26715 2004-09-08  Bruno Haible  <bruno@clisp.org>
26716
26717         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
26718         length is > INT_MAX.
26719         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
26720         more.
26721
26722 2004-09-08  Bruno Haible  <bruno@clisp.org>
26723
26724         * lib/stdint_.h: New file, taken from GNU clisp.
26725
26726 2004-09-08  Bruno Haible  <bruno@clisp.org>
26727             Oskar Liljeblad  <oskar@osk.mine.nu>
26728
26729         * modules/stdint: New file.
26730         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
26731
26732 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26733
26734         Import from coreutils.
26735         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
26736         strings on unbounded length.  alloca's performance benefits aren't
26737         that important here.
26738         (V_STRDUP): Remove.
26739         (parse_with_separator): New function, with most of the internals
26740         of the old parse_user_spec.  Allow user to omit both user and group,
26741         for compatibility with FreeBSD.
26742         Clone only the user name, not the entire spec.
26743         Do not set *uid, *gid unless entirely successful.
26744         Avoid memory leak in some failing cases.
26745         Fix regression for USER.GROUP reported by Dmitry V. Levin in
26746         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
26747         (parse_user_spec): Rewrite to use parse_with_separator.
26748
26749 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26750
26751         * modules/userspec: Don't depend on alloca.
26752
26753 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26754
26755         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
26756
26757 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26758
26759         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
26760         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
26761         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
26762
26763 2004-08-16  Simon Josefsson  <jas@extundo.com>
26764
26765         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
26766         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
26767         Add --dry-run for --import.
26768         Let user provided command line parameters override configure.ac
26769         settings.
26770
26771 2004-08-12  Simon Josefsson  <jas@extundo.com>
26772
26773         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
26774         as discussed with Paul Eggert in threads rooted at
26775         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
26776         and
26777         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
26778         Before, the test was empty, and relied on ELIDE_CODE in source
26779         code.)
26780         (gl_PREREQ_GETOPT): New macro.
26781         (gl_GETOPT): Use them.
26782
26783 2004-08-12  Simon Josefsson  <jas@extundo.com>
26784
26785         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
26786         * lib/getopt_.h: Renamed from getopt.h.
26787
26788 2004-08-12  Simon Josefsson  <jas@extundo.com>
26789
26790         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
26791         Change default library name from libfoo to libgnu.
26792         Now, if you have a configure.ac that says:
26793                 gl_SOURCE_BASE(gl)
26794                 gl_M4_BASE(gl/m4)
26795                 gl_MODULES(error getopt etcetera)
26796                 gl_INIT
26797         you can import all you need by running:
26798                 ../gnulib/gnulib-tool --import
26799
26800         * modules/getopt (Files): Rename getopt.h to getopt_.h.
26801         (Makefile.am): Rewrite, use logic from argz.
26802         (Include): Use <getopt.h> instead of "getopt.h".
26803
26804 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
26805
26806         * modules/argp (Files): Add m4/unlocked-io.m4.
26807         (Depends-on): Add extensions.
26808
26809 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
26810
26811         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
26812         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
26813         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
26814         Check for program_invocation_name, program_invocation_short_name,
26815         flockfile, funlockfile, features.h, _getopt_long_only_r.
26816
26817 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
26818
26819         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
26820         its complicated substitute.
26821         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
26822         and program_invocation_name.
26823         (__argp_basename) [!_LIBC]: Remove; the only use was
26824         replaced by its body.
26825         (__argp_short_program_name): Change condition from
26826         !defined __argp_short_program_name to
26827         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
26828         to match argp-namefrob.h.
26829         (__argp_failure): Don't assume strerror_r returns char *.
26830         * lib/argp-parse.c (N_): Define unconditionally.
26831         (argp_default_options): Fill out initializers with 0 to avoid
26832         gcc warnings.
26833
26834 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
26835
26836         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
26837         getopt1.c.
26838
26839 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
26840
26841         Merge from coreutils.
26842
26843         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
26844
26845         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
26846         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
26847
26848 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
26849
26850         Merge from coreutils.
26851
26852         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
26853         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
26854         for Reliant Unix 5.43.
26855
26856         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
26857         (union fooround): Use uintmax_t, not long int.
26858         The rest is a merge from libc:
26859         [defined _LIBC]: Include <shlib-compat.h>.
26860         (_obstack) [defined _LIBC]: Remove after 2.3.4.
26861
26862         * lib/settime.c (settime): Recode to avoid warning with
26863         Sun Forte C 6U2.
26864
26865         * lib/strverscmp.c: Convert to UTF-8.
26866
26867 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
26868
26869         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
26870         m4/uintmax_t.m4.
26871
26872 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26873
26874         * modules/xalloc-die: New file.
26875         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
26876
26877         * modules/md5 (Files): Add m4/uint32_t.m4.
26878         * modules/sha1: Renamed from modules/sha.
26879         (Files):
26880         Rename lib/sha.h to lib/sha1.h.
26881         Rename lib/sha.c to lib/sha1.c.
26882         Rename m4/sha.m4 to m4/sha1.m4.
26883         (lib_SOURCES): Likewise.
26884         (configure.ac): Rename gl_SHA to gl_SHA1.
26885         (Include): sha.h -> sha1.h.
26886
26887 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26888
26889         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
26890         * m4/sha1.m4: Renamed from sha.m4.
26891         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
26892
26893 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
26894
26895         * lib/obstack.h (obstack_empty_p):
26896         Don't assume that chunk->contents is suitably aligned.
26897         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
26898         Likewise. Problem reported by Benno in
26899         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
26900
26901         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
26902         readable.  This could be improved further but it'd take some work.
26903
26904 2004-08-08  Simon Josefsson  <jas@extundo.com>
26905
26906         * modules/xgethostname (Depends-on): Remove exit and error (not
26907         used).
26908
26909         * modules/getpass-gnu: Add getpass.h.
26910         (Depends-on): Add stdbool.
26911         * modules/getpass: Add getpass.h.
26912
26913 2004-08-08  Simon Josefsson  <jas@extundo.com>
26914
26915         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
26916         Check getpass declaration.
26917
26918 2004-08-08  Simon Josefsson  <jas@extundo.com>
26919
26920         * lib/xgethostname.c: Don't include error.h (not used).
26921
26922         * lib/getpass.h: Add.
26923         * lib/getpass.c: Include getpass.h first.
26924
26925 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
26926
26927         * lib/xalloc-die.c: New file.
26928         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
26929         All uses removed.
26930         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
26931         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
26932         xalloc-die.c.
26933         (_, N_, xalloc_die): Move to xalloc-die.c.
26934         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
26935         so that we needn't mess with xalloc_msg_memory_exhausted.
26936
26937         * lib/sha1.h: Renamed from sha.h.
26938         (SHA1_H): Renamed from _SHA_H.
26939         (sha1_ctx): Renamed from sha_ctx.
26940         (sha1_init_ctx): Renamed from sha_init_ctx.
26941         (sha1_process_block): Renamed from sha_process_block.
26942         (sha1_process_bytes): Renamed from sha_process_bytes.
26943         (sha1_finish_ctx): Renamed from sha_finish_ctx.
26944         (sha1_read_ctx): Renamed from sha_read_ctx.
26945         (sha1_stream): Renamed from sha_stream.
26946         (sha1_buffer): Renamed from sha_buffer.
26947         * lib/sha1.c: Likewise; renamed from sha.c.
26948         Do not include <sys/types.h>.
26949         Include <stddef.h> rather than <stdlib.h>.
26950
26951 2004-08-08  Bruno Haible  <bruno@clisp.org>
26952
26953         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
26954         FILESYSTEM_PREFIX_LEN.
26955         * lib/progreloc.c: Likewise.
26956         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
26957
26958 2004-08-06  Simon Josefsson  <jas@extundo.com>
26959
26960         * modules/progname (Depends-on): Don't depend on stdbool.
26961
26962 2004-08-06  Simon Josefsson  <jas@extundo.com>
26963
26964         * modules/getsubopt: New file.
26965         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
26966         getsubopt.
26967
26968 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
26969
26970         More merge from coreutils.
26971
26972         * m4/utimens.m4, m4/utimecmp.m4: New files.
26973         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
26974         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
26975         prereq.m4, sha.m4: Import changes from coreutils.
26976
26977 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
26978
26979         More merge from coreutils.
26980         * modules/raise, modules/readtokens0, modules/utimens:
26981         * modules/utimecmp, module/xnanosleep: New files.
26982         * modules/strftime: Add lib/strftime.h.
26983         Change include from <time.h> to "strftime.h".
26984         * modules/yesno: Add lib/yesno.h.
26985         * modules/backupfile: Remove lib/addext.c.
26986         * modules/euidaccess: Add stat-macros.h.
26987         * modules/canonicalize, modules/euidaccess,
26988         modules/filemode, modules/lchown, modules/makepath,
26989         modules/rmdir, modules/stat: Likewise.
26990
26991 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
26992
26993         Merge from tar.
26994         * lib/argp-help.c (make_hol, hol_append): Don't assume that
26995         SIZE_MAX is a valid preprocessor constant.
26996         (__argp_basename): Change from "#ifndef _LIBC"
26997         to "#ifndef __argp_short_program_name", so that
26998         we don't compile these functions for tar.
26999
27000         More merges from coreutils.
27001         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
27002         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
27003         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
27004         * lib/addext.c: Remove; no longer needed.
27005         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
27006         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
27007         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
27008         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
27009         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
27010         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
27011         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
27012         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
27013         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
27014         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
27015         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
27016         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
27017         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
27018         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
27019         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
27020         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
27021         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
27022         Import changes from coreutils.
27023
27024 2004-08-05  Simon Josefsson  <jas@extundo.com>
27025
27026         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
27027
27028 2004-08-05  Simon Josefsson  <jas@extundo.com>
27029
27030         * m4/getsubopt.m4: New file.
27031
27032 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
27033
27034         Merge from coreutils.
27035
27036         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
27037         * m4/getcwd-path-max.m4: New files.
27038
27039         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
27040         FILESYSTEM_PREFIX_LEN ->
27041         FILE_SYSTEM_PREFIX_LEN.
27042         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
27043         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
27044         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
27045         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
27046
27047         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
27048         prerequisite modules now handle the DOS stuff.
27049         Don't check for unistd.h.
27050
27051 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
27052
27053         Merge from coreutils.
27054
27055         * lib/.gdb-history: Remove; this doesn't belong here.
27056
27057         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
27058         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
27059         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
27060         * lib/getcwd.c: New files.
27061
27062         * lib/dirname.h: Include <stdbool.h>.
27063         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
27064         for consistency with POSIX terminology.  All uses changed.
27065         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
27066         (strip_trailing_slashes): Use bool for booleans.
27067         * lib/stripslash.c (strip_trailing_slashes): Likewise.
27068
27069         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
27070         sometimes returns a positive errno value even when it succeeds.
27071         (print_errno_message) [!LIBC]: Fall back on strerror if
27072         __strerror_r fails.
27073
27074         * lib/path-concat.c (mempcpy): Don't define if a system header defines
27075         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
27076         (longest_relative_suffix): New function.
27077         (path_concat): Use it.  Assume first argument is not NULL.
27078         Port to DOS.  Omit redundant separators.
27079         Report an error instead of returning NULL.
27080         Use mempcpy instead of memcpy.
27081         (xpath_concat): Remove: not declared or used.
27082
27083         * lib/same.h: Include <stdbool.h>
27084         (same_name): Return bool, not int.
27085         * lib/same.c (same_name): Likewise.
27086         (errno): Don't declare; we assume C89 or better now.
27087
27088         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
27089         if not already defined.
27090
27091         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
27092         * lib/dup-safer.c (errno): Likewise.
27093
27094 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
27095
27096         Merge from coreutils.
27097         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
27098         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
27099         * modules/path-concat: Don't depend on strdup.
27100
27101 2004-08-03  Simon Josefsson  <jas@extundo.com>
27102
27103         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
27104         * lib/progname.h: Don't include stdbool.h.
27105
27106 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
27107
27108         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
27109         * MODULES.html.sh (func_all_modules): Remove fatal.
27110
27111 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
27112
27113         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
27114
27115 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
27116
27117         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
27118         working.
27119
27120 2004-08-02  Simon Josefsson  <jas@extundo.com>
27121
27122         * lib/getsubopt.h: New file, with comments from Bruno Haible.
27123         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
27124         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
27125
27126 2004-08-01  Simon Josefsson  <jas@extundo.com>
27127
27128         * lib/xgetdomainname.c: Include stdlib.h, for free().
27129
27130 2004-07-19  Bruno Haible  <bruno@clisp.org>
27131
27132         * MODULES.html.sh (func_all_modules): Add dummy.
27133
27134 2004-07-16  Simon Josefsson  <jas@extundo.com>
27135
27136         * modules/dummy: New file.
27137
27138 2004-07-16  Simon Josefsson  <jas@extundo.com>
27139
27140         * lib/dummy.c: New file.
27141
27142 2004-07-16  Bruno Haible  <bruno@clisp.org>
27143
27144         * lib/backupfile.h: Add extern "C" for C++.
27145         * lib/closeout.h: Likewise.
27146         * lib/copy-file.h: Likewise.
27147         * lib/findprog.h: Likewise.
27148         * lib/full-write.h: Likewise.
27149         * lib/pathname.h: Likewise.
27150         * lib/progname.h: Likewise.
27151         * lib/stpcpy.h: Likewise.
27152         * lib/stpncpy.h: Likewise.
27153         * lib/strcase.h: Likewise.
27154         * lib/strstr.h: Likewise.
27155         * lib/xalloc.h: Likewise.
27156
27157         * lib/mbswidth.h: Add extern "C" for C++.
27158         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
27159
27160 2004-07-13  Robert Millan  <robertmh@gnu.org>
27161
27162         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
27163
27164 2004-07-09  Simon Josefsson  <jas@extundo.com>
27165
27166         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
27167         failed without this.)
27168
27169 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
27170
27171         * modules/chown (Files): Add lib/fchown-stub.c, since
27172         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
27173
27174 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
27175
27176         * lib/fchown-stub.c: New file.
27177
27178 2004-06-24  Jim Meyering  <jim@meyering.net>
27179
27180         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
27181
27182 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
27183
27184         * modules/argz: Omit "#include".
27185
27186         * MODULES.html.sh (func_all_modules): Add calloc, to match
27187         2004-06-01 addition of calloc module.
27188
27189 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
27190
27191         * m4/argz.m4: New file, which is autoupdated from libtool.
27192
27193 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
27194
27195         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
27196         libtool.
27197
27198 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
27199
27200         * config/srclist-update: Don't insist on "USA." before the
27201         close-comment, as libtool omits the period and puts the */ on a
27202         separate line.
27203         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
27204         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
27205
27206 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
27207
27208         * modules/argz: New file.
27209         * MODULES.html.sh (func_all_modules): Add argz.
27210
27211 2004-06-12  Jim Meyering  <jim@meyering.net>
27212         and  Paul Eggert  <eggert@cs.ucla.edu>
27213
27214         * modules/hash (Files): Add lib/xalloc.h.
27215         * modules/pipe (Depends-on): Add wait-process.
27216         * modules/stat (Depends-on): Add xalloc.
27217         * modules/userspec (Files): Add lib/userspec.h.
27218         * modules/xstrto
27219
27220         Upgrade from gettext-0.13.
27221         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
27222         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
27223         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
27224
27225 2004-06-10  Jim Meyering  <jim@meyering.net>
27226
27227         * lib/calloc.c: New file.
27228
27229 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
27230
27231         * lib/getdate.y (yylex): Allow space between sign and number.
27232         Problem reported by Dan Jacobson.
27233
27234 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
27235
27236         Merge from coreutils CVS.
27237
27238         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
27239         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
27240         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
27241         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
27242         xstrtol.m4: Fix copyright date and/or serial number.
27243
27244         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
27245         See if we need an fchown replacement.
27246         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
27247         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
27248         and use the replacement function if we detect either defect.
27249
27250         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
27251         gl_UTIMECMP.
27252
27253 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
27254         and  Jim Meyering  <jim@meyering.net>
27255
27256         Merge from coreutils CVS.
27257
27258         * lib/stat-macros.h: New file, with contents from file-type.h
27259         and coreutils' system.h.
27260         * lib/file-type.c: Include "stat-macros.h".
27261         * lib/file-type.h (file_type): Move all macro definitions to new file,
27262         stat-macros.h.
27263
27264         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
27265         Wrap old code with this conditional.
27266         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
27267         function that does not dereference symlinks.
27268         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
27269
27270         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
27271         dependency problems.
27272         (xreadlink): Accept new arg SIZE, for efficiency.
27273         All decls and uses changed.
27274         * lib/xreadlink.h: Include <stddef.h>, for size_t.
27275
27276         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
27277         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
27278
27279         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
27280         sysexits.h.
27281
27282 2004-06-01  Jim Meyering  <jim@meyering.net>
27283
27284         * m4/calloc.m4: New file.
27285
27286 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
27287
27288         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
27289         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
27290         Also, fix a typo in a diagnostic.
27291
27292 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
27293
27294         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
27295         or AC_FUNC_REALLOC.
27296
27297 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
27298
27299         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
27300         macros to be defined.
27301         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
27302         the allocator returns NULL because the requested size is zero.
27303
27304 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
27305
27306         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
27307         var.  Add comment explaining why libc still defines it.  This
27308         merges the following patch from glibc:
27309         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
27310
27311 2004-05-20  Andreas Schwab  <schwab@suse.de>
27312
27313         * m4/free.m4: Replace free if it not known to work, not the other
27314         way round.
27315
27316 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
27317
27318         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
27319         present in glibc since revision 1.1 of this file.
27320         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
27321         obstack_alignment_mask, obstack_alloc, obstack_base,
27322         obstack_blank, obstack_blank_fast, obstack_chunk_size,
27323         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
27324         obstack_grow0, obstack_init, obstack_int_grow,
27325         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
27326         obstack_next_free, obstack_object_size, obstack_ptr_grow,
27327         obstack_ptr_grow_fast, obstack_room): Remove declarations of
27328         nonexistent functions.
27329
27330 2004-05-18  Karl Berry  <karl@gnu.org>
27331
27332         * config/srclist.txt: break link for vasnprintf.c.
27333
27334 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
27335
27336         Port obstack to the AS/400, where pointers are 16 bytes wide and
27337         you cannot cast an integer to a valid pointer.  This patch is
27338         currently waiting to be integrated into glibc; see
27339         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
27340
27341         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
27342         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
27343         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
27344         (struct obstack): temp member is now a union of a pointer and
27345         an integer, instead of an integer.  All integer uses changed.
27346         This does not affect the physical layout of struct obstack,
27347         except on hosts (like the AS/400) where the size or alignment of
27348         void * is greater than that of ptrdiff_t.
27349         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
27350         __STDC__)]: Store temporary in pointer member of union, not
27351         integer member.
27352         * lib/obstack.c: Include <stddef.h>, for offsetof.
27353         (struct fooalign): Remove; it doesn't need a name.
27354         (union fooround): Change double to long double, and add void *.
27355         (DEFAULT_ALIGNMENT): Use offsetof to compute.
27356         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
27357         not a macro.  Hence the values are always int; so remove all
27358         casts-to-int in uses.
27359
27360 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
27361
27362         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
27363         we can get this patch merged into glibc.
27364
27365 2004-05-17  Derek R. Price  <derek@ximbiot.com>
27366             Paul Eggert  <eggert@cs.ucla.edu>
27367
27368         * m4/argp: Depend on alloca.
27369
27370 2004-05-17  Derek R. Price  <derek@ximbiot.com>
27371             Paul Eggert  <eggert@cs.ucla.edu>
27372
27373         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
27374         freecoding.
27375
27376 2004-05-17  Bruno Haible  <bruno@clisp.org>
27377
27378         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
27379         precision that consists of a '.' followed by an empty digit string.
27380         Patch by Tor Lillqvist <tml@iki.fi>.
27381
27382 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
27383
27384         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
27385         for backward compatibility with older code.  We need our own
27386         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
27387         it under some other name, and our alloca.h will define it.
27388
27389 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
27390             Derek Price  <derek@ximbiot.com>
27391
27392         * lib/alloca.c: Include <alloca.h>, to get our interface.
27393         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
27394         include <alloca.h> first.  Use C89 prototype for alloca; this
27395         requires including <stddef.h> for size_t.  Use extern "C" if C++.
27396         Use #elif for simplicity, since we can assume C89 now.
27397         Don't try to source the system alloca.h since it will not be found
27398         and to prevent recursively including its replacement.
27399         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
27400         * lib/regex.c: Likewise.
27401
27402 2004-05-16  Derek Price  <derek@ximbiot.com>
27403             Paul Eggert  <eggert@cs.ucla.edu>
27404
27405         getline cleanup.  This changes the getndelim2 API: both order of
27406         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
27407         no delimiter).
27408
27409         * lib/getline.c: Don't include stddef.h or stdio.h, since our
27410         interface does that.
27411         (getline): Always use getdelim, so that we don't have two
27412         copies of this code.
27413         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
27414         if available.
27415         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
27416         (GETNDELIM2_MAXIMUM): New macro.
27417         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
27418         instead of the old practice of delim2==0.  All callers changed.
27419         Return -1 on overflow, instead of returning junk.
27420         Do not set *linesize unless allocation succeeds.
27421         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
27422         that we include sys/types.h.
27423         * lib/getnline.h: Likewise.
27424         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
27425         (getndelim2): Reorder arguments.
27426         * lib/getnline.c (getnline, getndelim):
27427         Don't discard the NMAX argument.
27428         (getnline): Invoke getndelim, to avoid code duplication.
27429         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
27430         of (size_t) -1 by callers of the getnline family.
27431
27432 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
27433
27434         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
27435         Check for gettimeofday.
27436         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
27437         Check for settimeofday, stime.
27438
27439 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
27440
27441         * lib/nanosleep.c (suspended): Change its type from int to
27442         sig_atomic_t volatile.
27443         (first_call): Make it private to rpl_nanosleep, and have it
27444         be zero initially as that's a bit faster.
27445         (my_usleep): Round up fractional times instead of truncating them,
27446         as this is the usual meaning for 'sleep'.
27447
27448         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
27449         doesn't work.
27450         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
27451         (ENOSYS): Define if not defined.
27452         (settime): Fall back on stime if it exists and settimeofday fails.
27453         But don't bother with fallbacks if a method fails with errno == EPERM.
27454
27455 2004-05-11  Jim Meyering  <jim@meyering.net>
27456
27457         Prior to this change, the save_cwd caller required read access to the
27458         current directory on most systems (ones with the fchdir function).
27459
27460         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
27461         fails, try write-only, and finally, resort to using xgetcwd.
27462
27463 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
27464
27465         * lib/obstack.c, obstack.h: Import changes from libc.
27466
27467 2004-04-28  Bruno Haible  <bruno@clisp.org>
27468
27469         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
27470         also implicitly appends .exe to executables.
27471         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
27472         accepts Windows pathnames.
27473         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
27474         Treat Cygwin like Windows, since it now accepts Windows pathnames.
27475         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
27476         Treat Cygwin like Windows, since it now accepts Windows pathnames.
27477         Reported by Derek Robert Price <derek@ximbiot.com>.
27478
27479 2004-04-21  Karl Berry  <karl@gnu.org>
27480
27481         * config/srclist.txt (localcharset.c): break sync.
27482
27483 2004-04-20  Paul Eggert  <eggert@twinsun.com>
27484
27485         * m4/host-os.m4: Add a copyright notice.
27486
27487 2004-04-20  Jim Meyering  <jim@meyering.net>
27488
27489         Change UTILS_ to gl_ in AC_DEFINE'd names.
27490         Change utils_- and jm_-prefixed variables, too.
27491         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
27492         UTILS_FUNC_MKDIR_TRAILING_SLASH.
27493         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
27494
27495         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
27496         Don't emit trailing blanks.
27497         Also rename jm_-prefixed variables to have gl_ prefix.
27498
27499         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
27500         Also rename jm_-prefixed variables to have gl_ prefix.
27501
27502         * m4/jm-macros.m4: Reflect the renamings.
27503         * m4/prereq.m4: Likewise.
27504
27505 2004-04-20  Jim Meyering  <jim@meyering.net>
27506
27507         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
27508         memory.
27509
27510 2004-04-20  Jim Meyering  <jim@meyering.net>
27511             Bruno Haible  <bruno@clisp.org>
27512
27513         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
27514         memory when realloc fails.
27515
27516 2004-04-19  Jim Meyering  <jim@meyering.net>
27517
27518         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
27519         now that readutmp.c may call `free (0)'.
27520
27521 2004-04-19  Bruno Haible  <bruno@clisp.org>
27522
27523         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
27524         * m4/inttypes_h.m4: Likewise.
27525         * m4/stdint_h.m4: Likewise.
27526         * m4/intmax_t.m4: Likewise.
27527         * m4/uintmax_t.m4: Likewise.
27528
27529 2004-04-18  Jim Meyering  <jim@meyering.net>
27530
27531         * m4/prereq.m4: Don't forbid jm_ prefix.
27532
27533         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
27534         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
27535         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
27536         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
27537         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
27538         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
27539         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
27540         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
27541         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
27542         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
27543         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
27544         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
27545         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
27546         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
27547         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
27548         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
27549         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
27550         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
27551         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
27552
27553 2004-04-18  Jim Meyering  <jim@meyering.net>
27554
27555         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
27556         failure, don't leak memory and do call END_UTMP_ENT.
27557
27558 2004-04-16  Jim Meyering  <jim@meyering.net>
27559
27560         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
27561         coreutils' stat program.
27562         (gl_PREREQ): Don't require jm_PREREQ_STAT.
27563
27564 2004-04-11  Paul Eggert  <eggert@twinsun.com>
27565
27566         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
27567         C89.
27568         (CHAR_BIT): Remove, since we assume C89.
27569         Include <stdint.h> if available, as per current Autoconf CVS advice.
27570
27571 2004-03-31  Jim Meyering  <jim@meyering.net>
27572
27573         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
27574         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
27575         * m4/xalloc.m4: Likewise.
27576
27577 2004-03-30  Paul Eggert  <eggert@twinsun.com>
27578
27579         Merge from coreutils.
27580
27581         * m4/inttostr.m4: New file.
27582         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
27583         Require AM_STDBOOL_H and gl_TIMESPEC instead.
27584         Require gl_CLOCK_TIME.
27585         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
27586
27587 2004-03-30  Paul Eggert  <eggert@twinsun.com>
27588
27589         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
27590         not bool, to be more consistent with Unix conventions.
27591         Suggested by Bruno Haible.
27592
27593         Merge from coreutils.
27594
27595         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
27596         * lib/umaxtostr.c: New files.
27597
27598         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
27599         the usual <time.h> dance.
27600         (get_date): Change signature to support fractional time stamps.
27601         All callers changed.
27602         * lib/getdate.y: Include "getdate.h" first, as we can now
27603         assume C89 and don't need to worry about 'const'.
27604         Similarly, include "unlocked-io.h" near start, not in middle.
27605         Include <limits.h>.
27606         (textint.value): Use long int rather than int.
27607         (textint.digits): Use size_t rather than int.
27608         (BILLION, LOG10_BILLION): New constants.
27609         (parser_control): New member rel_ns.  Members day_ordinal,
27610         time_zone, month, day, hour, minutes, rel_year, rel_month,
27611         rel_day, rel_hour, rel_minutes, rel_seconds
27612         are now long int, not int.  Member seconds is now struct timespec,
27613         not int.  New member timespec_seen.  Members dates_seen, days_seen,
27614         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
27615         not int.
27616         (%union.intval): Now long int, not int.
27617         New member timespec.
27618         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
27619         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
27620         (spec): Now is a timespec or an item list.
27621         (timespec, items): New nonterminals.
27622         (time, rel, relunit, number, get_date):
27623         Add support for fractional seconds.
27624         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
27625         (gmtime, localtime, mktime): Remove decls; not needed with C89.
27626         (to_hour): First arg is now long int, not int.
27627         (to_year): Returns long int, not int.
27628         Don't treat year -70 like 70.
27629         (tm_diff): Returns long int, not int.
27630         (lookup_word): Use bool instead of int when appropriate.
27631         (yylex): Use size_t for count, not int.
27632         Detect overflow when parsing large integer constants.
27633         Add support for fractions.
27634         (get_date): Make pointers 'const' if possible.
27635         Use more-portable code to detect integer overflow.
27636         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
27637         Don't use ctime; it's not reliable if the year has >4 digits.
27638
27639         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
27640         This is for compatibility with BSD.
27641
27642         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
27643         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
27644         From coreutils' system.h.
27645
27646         * lib/userspec.c: Don't include "posixver.h".
27647         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
27648         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
27649         compatible extension.  Simplify code by removing a boolean int
27650         that was always nonzero if a string was nonnull.
27651
27652 2004-03-30  Jim Meyering  <jim@meyering.net>
27653
27654         Merge from coreutils.
27655
27656         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
27657         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
27658         on some systems one must include <grp.h> before it.
27659         Reported by Christian Krackowizer.
27660
27661 2004-03-30  Jim Meyering  <jim@meyering.net>
27662
27663         Merge from coreutils.
27664
27665         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
27666
27667         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
27668         an empty input stream.
27669
27670         * lib/readtokens.c: Include <stdbool.h>.
27671         (readtoken): Use `size_t' rather than int/long.
27672         All callers adjusted.
27673         Use `bool' rather than `int' where appropriate.
27674         Use memset rather than an explicit loop.
27675         Use x2nrealloc rather than xrealloc.
27676         Allow the use of `\0' as a delimiter.
27677         (readtokens): Likewise.
27678         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
27679
27680 2004-03-30  Jim Meyering  <jim@meyering.net>
27681
27682         * m4/realloc.m4: Remove file, since now it does no more than
27683         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
27684         the `configure.ac' section of module/realloc.
27685         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
27686
27687 2004-03-30  Bruno Haible  <bruno@clisp.org>
27688
27689         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
27690         nonnull.
27691
27692 2004-03-29  Paul Eggert  <eggert@twinsun.com>
27693
27694         Merge changes to getloadavg.c from coreutils and Emacs.
27695
27696         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
27697         Define to an expression, not to the empty string.
27698         Include cloexec.h and xalloc.h.
27699         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
27700         Use set_cloexec_flag rather than rolling our own.
27701         * lib/cloexec.c, lib/cloexec.h: New files.
27702
27703 2004-03-29  Paul Eggert  <eggert@twinsun.com>
27704
27705         * m4/cloexec.m4: New file.
27706
27707 2004-03-18  Paul Eggert  <eggert@twinsun.com>
27708
27709         * lib/getopt.h: Sync with libc CVS.
27710
27711 2004-03-18  Paul Eggert  <eggert@twinsun.com>
27712             Bruno Haible  <bruno@clisp.org>
27713
27714         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
27715         mbswidth.
27716
27717 2004-03-18  Paul Eggert  <eggert@twinsun.com>
27718             Bruno Haible  <bruno@clisp.org>
27719
27720         * lib/mbswidth.h: Include <wchar.h> only if
27721         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
27722         <wchar.h>.
27723         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
27724
27725 2004-03-09  Paul Eggert  <eggert@twinsun.com>
27726
27727         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
27728         Sync with libc CVS.
27729         * lib/getopt_int.h: New file, also synced from libc.
27730
27731 2004-03-09  Paul Eggert  <eggert@twinsun.com>
27732
27733         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
27734         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
27735         Bring back getopt.c, getopt.h, getopt1.c.
27736
27737 2004-03-07  Paul Eggert  <eggert@twinsun.com>
27738
27739         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
27740         All uses changed.  Check for sa_sigaction member; this fixes
27741         a bug first reported by Jason Andrade in
27742         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
27743
27744 2004-03-07  Paul Eggert  <eggert@twinsun.com>
27745
27746         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
27747         '#if' expressions.  Unlike the code it replaces, it does not
27748         depend on (defined _SC_PAGESIZE).  However, it does depend on
27749         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
27750         first reported by Jason Andrade in
27751         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
27752
27753 2004-02-25  Simon Josefsson  <jas@extundo.com>
27754
27755         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
27756
27757 2004-02-25  Simon Josefsson  <jas@extundo.com>
27758
27759         * lib/strdup.h: New file.
27760         * lib/strdup.c: Include it.
27761         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
27762         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
27763
27764 2004-02-23  Karl Berry  <karl@gnu.org>
27765
27766         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
27767         (from fencepost.gnu.org:/gd/gnuorg).
27768
27769 2004-02-23  Karl Berry  <karl@gnu.org>
27770
27771         * config/srclistvars.sh (GNUORG) [karl]: redefine.
27772         * config/srclist.txt: add maintain/standards documents.
27773
27774 2004-02-18  Bruno Haible  <bruno@clisp.org>
27775
27776         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
27777         Reported by Derek Robert Price <derek@ximbiot.com>.
27778
27779 2004-02-16  Karl Berry  <karl@gnu.org>
27780
27781         * config/mkinstalldirs, install-sh: update from automake.
27782
27783 2004-02-06  Karl Berry  <karl@gnu.org>
27784
27785         * m4/po.m4: update from gettext 0.14.1.
27786
27787 2004-02-06  Karl Berry  <karl@gnu.org>
27788
27789         * lib/config.charset: update from gettext 0.14.1.
27790
27791 2004-02-05  Paul Eggert  <eggert@twinsun.com>
27792
27793         Add comments and code, prompted by suggestions from Bruno Haible
27794         for sh-quote.
27795         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
27796         describing the enum quoting_style values.
27797         * lib/quotearg.c (quotearg_alloc): New function.
27798         (quotearg_buffer_restyled): Treat lone { and } as special.
27799         Treat = as special.  Work around bug with older shells
27800         that "see" a '\' that is really the 2nd byte of a multibyte char.
27801         Quote empty string with shell_quoting_style.
27802
27803 2004-02-03  Bruno Haible  <bruno@clisp.org>
27804
27805         * m4/pipe.m4: New file, from GNU gettext.
27806
27807 2004-02-03  Bruno Haible  <bruno@clisp.org>
27808
27809         * lib/pipe.h: New file, from GNU gettext.
27810         * lib/pipe.c: New file, from GNU gettext.
27811
27812 2004-01-27  Bruno Haible  <bruno@clisp.org>
27813
27814         * m4/execute.m4: New file, from GNU gettext.
27815
27816 2004-01-27  Bruno Haible  <bruno@clisp.org>
27817
27818         * lib/execute.h: New file, from GNU gettext.
27819         * lib/execute.c: New file, from GNU gettext.
27820         * lib/w32spawn.h: New file, from GNU gettext.
27821
27822 2004-01-24  Paul Eggert  <eggert@twinsun.com>
27823
27824         Merge from diffutils.
27825
27826         * lib/file-type.c (file_type): Add typed memory objects.
27827         * lib/file-type.h (S_TYPEISTMO): New macro.
27828
27829         * lib/c-stack.h (c_stack_action): Remove argv argument.
27830         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
27831         (die): Don't calculate message unless segv_action returns.
27832         (get_stack_location, min_address_from_argv, max_address_from_argv,
27833         volatile stack_base, volatile_stack_size): Remove.
27834         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
27835         that every segmentation violation is a stack overflow.  (Ouch!)
27836         See Debian bug 136249 (still outstanding) for more info about why
27837         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
27838
27839 2004-01-24  Paul Eggert  <eggert@twinsun.com>
27840
27841         Exit-status fix from coreutils.
27842
27843         Use exit_failure consistently in place of EXIT_FAILURE,
27844         so that program exit statuses are consistent on failure.
27845
27846         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
27847         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
27848         * lib/argmatch.h: Comment fix to match the above.
27849         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
27850         Now a macro referring to exit_failure, instead of a separate
27851         variable.  Include "exitfail.h" to get it.
27852         * lib/xstrtol.h: Include "exitfail.h".
27853         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
27854
27855         * lib/long-options.c (parse_long_options): Use prototype
27856         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
27857         for clarity.
27858
27859 2004-01-21  Jim Meyering  <jim@meyering.net>
27860
27861         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
27862         so as not to conflict with a different-sized __mktime_internal
27863         function in GNU libc.
27864         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
27865         Problem building statically-linked `ls' reported by Michael Brunnbauer.
27866
27867 2004-01-20  Karl Berry  <karl@gnu.org>
27868
27869         * config/config.guess: update from config.
27870
27871         * config/srclistvars.sh: GNUWWWLICENSES for karl.
27872
27873 2004-01-20  Bruno Haible  <bruno@clisp.org>
27874
27875         Safer stack allocation.
27876         * lib/setenv.c: Include allocsa.h.
27877         (alloca): Remove fallback definition.
27878         (freea): Remove macro.
27879         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
27880         instead of freea.
27881
27882 2004-01-20  Bruno Haible  <bruno@clisp.org>
27883
27884         * m4/eealloc.m4: New file, from GNU gettext.
27885
27886 2004-01-20  Bruno Haible  <bruno@clisp.org>
27887
27888         * m4/allocsa.m4: New file, from GNU gettext.
27889
27890 2004-01-20  Bruno Haible  <bruno@clisp.org>
27891
27892         * lib/xallocsa.h: New file, from GNU gettext.
27893         * lib/xallocsa.c: New file, from GNU gettext.
27894
27895 2004-01-20  Bruno Haible  <bruno@clisp.org>
27896
27897         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
27898
27899 2004-01-20  Bruno Haible  <bruno@clisp.org>
27900
27901         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
27902         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
27903         specially.
27904
27905 2004-01-20  Bruno Haible  <bruno@clisp.org>
27906
27907         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
27908         patch.
27909
27910 2004-01-20  Bruno Haible  <bruno@clisp.org>
27911
27912         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
27913
27914 2004-01-20  Bruno Haible  <bruno@clisp.org>
27915
27916         * lib/eealloc.h: New file.
27917
27918 2004-01-20  Bruno Haible  <bruno@clisp.org>
27919
27920         * lib/binary-io.h: Avoid warnings on Cygwin.
27921
27922 2004-01-20  Bruno Haible  <bruno@clisp.org>
27923
27924         * lib/allocsa.h: New file, from GNU gettext.
27925         * lib/allocsa.c: New file, from GNU gettext.
27926
27927 2004-01-18  Karl Berry  <karl@gnu.org>
27928
27929         * doc/gpl.texi, doc/lgpl.texi: new files.
27930
27931 2004-01-18  Karl Berry  <karl@gnu.org>
27932
27933         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
27934         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
27935
27936 2004-01-15  Paul Eggert  <eggert@twinsun.com>
27937
27938         Merge from coreutils.
27939
27940         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
27941         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
27942         (gl_DEFAULT_POSIX2_VERSION): Move
27943         the documentation from 'configure' into 'config.hin',
27944         so that 'configure --help' isn't burdened by it and
27945         we don't have to worry about its formatting there.
27946         Reword the documentation so that it's more succinct
27947         and can be run together into a single paragraph.
27948         * m4/same.m4 (gl_SAME): Check for pathconf.
27949
27950 2004-01-15  Paul Eggert  <eggert@twinsun.com>
27951
27952         Merge from coreutils.
27953
27954         * lib/posixver.c: Include posixver.h.
27955
27956         * lib/same.c: Include <stdbool.h>, <limits.h>.
27957         (_POSIX_NAME_MAX): Define if not defined.
27958         (MIN): New macro.
27959         (same_name): If file names are silently truncated, report
27960         that the file names are the same if they are the same after
27961         the silent truncation.
27962
27963         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
27964         conversion function.
27965         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
27966         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
27967         longer needed.
27968
27969 2004-01-15  Jim Meyering  <jim@meyering.net>
27970
27971         Merge from coreutils.
27972
27973         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
27974         if no library is required.
27975         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
27976         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
27977         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
27978         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
27979         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
27980         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
27981         value, $ac_cv_search_crypt, if it's "none required".
27982         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
27983         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
27984         not gl_FUNC_GETLOADAVG.
27985         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
27986         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
27987
27988 2004-01-15  Jim Meyering  <jim@meyering.net>
27989
27990         Merge from coreutils.
27991
27992         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
27993         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
27994         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
27995
27996         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
27997         optional configure-time default.
27998
27999         * lib/version-etc.c (version_etc_copyright): Update copyright date.
28000
28001         * lib/xreadlink.c (xreadlink): Correct outdated comment.
28002
28003 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
28004
28005         Merge from coreutils.
28006
28007         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
28008         value, $ac_cv_search_nanosleep, if it's "none required".
28009
28010 2004-01-14  Paul Eggert  <eggert@twinsun.com>
28011
28012         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
28013         with like-named macro in fnmatch.c.
28014         (EXT): Use an internal constant instead.
28015
28016         Merge fnmatch patches from glibc.
28017         * lib/fnmatch.c (mbsinit): Remove define.
28018         Add libc_hidden_ver (__fnmatch, fnmatch).
28019         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
28020         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
28021
28022 2004-01-14  Karl Berry  <karl@gnu.org>
28023
28024         * config/install-sh: update from automake.
28025
28026 2004-01-13  Karl Berry  <karl@gnu.org>
28027
28028         * config/install-sh: update from automake.
28029
28030 2004-01-09  Karl Berry  <karl@gnu.org>
28031
28032         * config/install-sh: update from automake.
28033
28034 2004-01-05  Karl Berry  <karl@gnu.org>
28035
28036         * config/config.{sub,guess}: update from config.
28037
28038 2003-12-31  Karl Berry  <karl@gnu.org>
28039
28040         * config/depcomp: update from automake.
28041
28042 2003-12-14  Karl Berry  <karl@gnu.org>
28043
28044         * lib/config.charset: update from gettext-runtime.
28045
28046 2003-12-03  Paul Eggert  <eggert@twinsun.com>
28047
28048         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
28049         Bug reported by Alfred M. Szmidt.
28050
28051 2003-12-03  Bruno Haible  <bruno@clisp.org>
28052
28053         * m4/gettext.m4: Upgrade from gettext-0.13.
28054         * m4/po.m4: Upgrade from gettext-0.13.
28055         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
28056         * m4/intmax.m4: New file, from gettext-0.13.
28057         * m4/printf-posix.m4: New file, from gettext-0.13.
28058
28059 2003-11-29  Karl Berry  <karl@gnu.org>
28060
28061         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
28062
28063 2003-11-25  Paul Eggert  <eggert@twinsun.com>
28064             Bruno Haible  <bruno@clisp.org>
28065
28066         * lib/printf-parse.h: Don't include sys/types.h.
28067         (ARG_NONE): New macro.
28068         (char_directive): Change type of *arg_index fields to size_t.
28069         * lib/printf-parse.c: Don't include sys/types.h.
28070         (SSIZE_MAX): Remove macro.
28071         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
28072         Remove unnecessary overflow check.
28073         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
28074         fields.
28075
28076 2003-11-25  Bruno Haible  <bruno@clisp.org>
28077
28078         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
28079
28080 2003-11-25  Bruno Haible  <bruno@clisp.org>
28081
28082         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
28083         gt_TYPE_SSIZE_T.
28084
28085 2003-11-24  Paul Eggert  <eggert@twinsun.com>
28086
28087         * modules/alloca: Remove dependency on xalloc.
28088
28089 2003-11-24  Paul Eggert  <eggert@twinsun.com>
28090
28091         * lib/alloca.c: Remove dependency on xalloc module.
28092         (xalloc_die): Remove.
28093         (memory_full) [!defined emacs]: New macro.
28094         [!defined emacs]: Don't include xalloc.h.
28095         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
28096         address arithmetic overflows.  Change datatypes a bit to avoid
28097         unnecessary casts.
28098
28099 2003-11-22  Jim Meyering  <jim@meyering.net>
28100
28101         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
28102         s/size/size_t/.
28103
28104 2003-11-21  Karl Berry  <karl@gnu.org>
28105
28106         * config/config.{sub,guess}: update from config.
28107
28108 2003-11-18  Karl Berry  <karl@gnu.org>
28109
28110         * config/config.{sub,guess}: update from config.
28111
28112         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
28113
28114 2003-11-17  Paul Eggert  <eggert@twinsun.com>
28115
28116         * README: Mention that S+T cannot overflow if S is the size of
28117         an existing object and T is sufficiently small.
28118
28119 2003-11-17  Jim Meyering  <jim@meyering.net>
28120
28121         On systems without utime and without a utimes function capable of
28122         dealing with a NULL struct utimbuf* argument, this utime replacement
28123         could -- in unusual circumstances -- leak a file descriptor.
28124         * lib/utime.c: Include <unistd.h> and <errno.h>.
28125         (utime_null): Be sure to close `fd' and to preserve errno.
28126         Reported by Geoff Collyer via Arnold Robbins.
28127
28128 2003-11-17  Bruno Haible  <bruno@clisp.org>
28129
28130         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
28131         (Depends-on): Add xsize.
28132
28133 2003-11-17  Bruno Haible  <bruno@clisp.org>
28134
28135         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
28136
28137 2003-11-17  Bruno Haible  <bruno@clisp.org>
28138
28139         * lib/vasnprintf.c (alloca): Remove fallback definition.
28140         (freea): Remove definition.
28141         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
28142         Reported by Paul Eggert.
28143
28144 2003-11-16  Paul Eggert  <eggert@twinsun.com>
28145             Bruno Haible  <bruno@clisp.org>
28146
28147         Protect against address arithmetic overflow.
28148         * lib/printf-args.h: Include stddef.h.
28149         (arguments): Change type of field 'count' to size_t.
28150         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
28151         'unsigned int' where appropriate.
28152         * lib/printf-parse.h: Include sys/types.h.
28153         (char_directive): Change type of *arg_index fields to ssize_t.
28154         (char_directives): Change type of fields 'count', max_*_length to
28155         size_t.
28156         * lib/printf-parse.c: Include sys/types.h and xsize.h.
28157         (SSIZE_MAX): Define fallback value.
28158         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
28159         instead of 'int' where appropriate. Check a_allocated, d_allocated
28160         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
28161         * lib/vasnprintf.c: Include xsize.h.
28162         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
28163         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
28164         overflow. Avoid wraparound when converting a width or precision from
28165         decimal to binary.
28166
28167 2003-11-16  Bruno Haible  <bruno@clisp.org>
28168
28169         Update from GNU gettext.
28170         * lib/printf-parse.c: Generalize to it can be compiled for wide
28171         strings.
28172         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
28173         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
28174         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
28175         SNPRINTF): New macros.
28176         Don't include <alloca.h> if the file is used inside libintl.
28177         (local_wcslen): New function, for Solaris 2.5.1.
28178         (VASNPRINTF): Use it instead of wcslen.
28179
28180 2003-11-16  Bruno Haible  <bruno@clisp.org>
28181
28182         * lib/xsize.h (xmax): New function.
28183         (xsum, xsum3, xsum4): Declare as "pure" functions.
28184
28185 2003-11-12  Paul Eggert  <eggert@twinsun.com>
28186
28187         * modules/xalloc (Files): Undo latest change, since xalloc.h
28188         no longer needs SIZE_MAX or PTRDIFF_MAX.
28189
28190 2003-11-12  Paul Eggert  <eggert@twinsun.com>
28191
28192         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
28193         gl_PTRDIFF_MAX.
28194
28195 2003-11-12  Paul Eggert  <eggert@twinsun.com>
28196
28197         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
28198         "return", to pacify some unknown compiler.  Problem reported
28199         by Joerg Schilling.
28200
28201 2003-11-12  Paul Eggert  <eggert@twinsun.com>
28202
28203         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
28204         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
28205         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
28206         heuristic is just as accurate as far as we know, and it removes a
28207         dependency on size_max.m4 and ptrdiff_max.m4.
28208
28209 2003-11-11  Bruno Haible  <bruno@clisp.org>
28210
28211         * modules/xsize (Files): Add m4/size_max.m4.
28212         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
28213
28214 2003-11-11  Bruno Haible  <bruno@clisp.org>
28215
28216         * m4/size_max.m4: New file.
28217         * m4/ptrdiff_max.m4: New file.
28218         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
28219         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
28220         (gl_XALLOC): Invoke it.
28221
28222 2003-11-11  Bruno Haible  <bruno@clisp.org>
28223
28224         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
28225         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
28226         defined.
28227
28228 2003-11-10  Paul Eggert  <eggert@twinsun.com>
28229
28230         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
28231         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
28232         rejected some allocations of exactly SIZE_MAX - 2 bytes.
28233         From Bruno Haible.
28234         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
28235         not (size_t) -1, since it's defined here.
28236
28237 2003-11-09  Karl Berry  <karl@gnu.org>
28238
28239         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
28240
28241 2003-11-06  Paul Eggert  <eggert@twinsun.com>
28242
28243         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
28244         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
28245         Reject sizes of exactly SIZE_MAX bytes.
28246         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
28247         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
28248
28249 2003-11-05  Bruno Haible  <bruno@clisp.org>
28250
28251         * lib/xsize.h: Include limits.h, to avoid a possible collision with
28252         SIZE_MAX defined in <limits.h> on Solaris.
28253
28254 2003-11-04  Jim Meyering  <jim@meyering.net>
28255
28256         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
28257         variable names, rather than @VAR@.
28258         * modules/poll: Likewise.
28259
28260 2003-11-04  Bruno Haible  <bruno@clisp.org>
28261
28262         * modules/xsize: New file.
28263         * modules/linebreak: Depend on xsize.
28264         * MODULES.html.sh (func_all_modules): Add xsize.
28265
28266 2003-11-04  Bruno Haible  <bruno@clisp.org>
28267
28268         * m4/xsize.m4: New file.
28269
28270 2003-11-04  Bruno Haible  <bruno@clisp.org>
28271
28272         * lib/xsize.h: New file.
28273         * lib/linebreak.c: Include xsize.h.
28274         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
28275         argument for overflow.
28276         Suggested by Paul Eggert.
28277
28278 2003-11-03  Karl Berry  <karl@gnu.org>
28279
28280         * config/config.{guess,sub}: update from config.
28281
28282 2003-11-03  Jim Meyering  <jim@meyering.net>
28283
28284         * modules/userspec (lib_SOURCES): Add userspec.h.
28285         (Include): Add "userspec.h".
28286         Improve description.
28287
28288 2003-11-03  Jim Meyering  <jim@meyering.net>
28289
28290         * lib/userspec.c: Include "userspec.h".
28291         * lib/userspec.h: New file.
28292
28293 2003-11-03  Bruno Haible  <bruno@clisp.org>
28294
28295         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
28296
28297 2003-11-03  Bruno Haible  <bruno@clisp.org>
28298
28299         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
28300         available, to avoid (extremely rare) race condition.
28301         Suggested by Paul Eggert.
28302
28303 2003-11-02  Karl Berry  <karl@gnu.org>
28304
28305         * config/srclist.txt (vasprintf.c): sync broken, sigh.
28306
28307 2003-10-31  Paul Eggert  <eggert@twinsun.com>
28308
28309         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
28310         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
28311         (read_filesystem_list): Set and use me_type_malloced.
28312         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
28313         whatever the type happens to be), for brevity and consistency.
28314         Check for size calculation overflow on Alphas running OSF/1.
28315
28316 2003-10-31  Jim Meyering  <jim@meyering.net>
28317
28318         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
28319
28320         * lib/linebuffer.c: Include <string.h> for declaration of memset.
28321
28322 2003-10-30  Paul Eggert  <eggert@twinsun.com>
28323             Bruno Haible  <bruno@clisp.org>
28324
28325         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
28326         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
28327
28328 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
28329
28330         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
28331         netbsd*-gnu*.  Suggested by Robert Millan.
28332
28333 2003-10-29  Paul Eggert  <eggert@twinsun.com>
28334
28335         * modules/group-member: Depend on stdbool.
28336
28337 2003-10-29  Paul Eggert  <eggert@twinsun.com>
28338
28339         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
28340
28341 2003-10-29  Paul Eggert  <eggert@twinsun.com>
28342
28343         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
28344         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
28345         after the 'gnu' in these cases.  This fixes some bugs in the
28346         previous change, and is based on suggestions by Robert Millan.
28347
28348 2003-10-29  Paul Eggert  <eggert@twinsun.com>
28349
28350         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
28351         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
28352         no longer needed.
28353         * lib/quotearg.c (quotearg_n_options): Use it.
28354         * lib/group-member.c: Include <stdbool.h>.
28355         (free_group_info): Arg is now const *; don't free arg.
28356         (get_group_info): Now returns bool and accepts struct group_info *,
28357         rather than returning a malloc'ed struct group_info *.
28358         All uses changed.  Check for overflow in internal size calculation.
28359
28360         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
28361         rather than xmalloc/xrealloc.
28362         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
28363         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
28364         conformance bug: the old code used a pointer after freeing the
28365         storage that it addressed.
28366         * lib/hash.c (hash_initialize): Simplify the code by using
28367         xalloc_oversized rather than doing it by hand.
28368         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
28369         the buffer preserved.  Use free and xmalloc instead.
28370         * lib/quotearg.c (quotearg_n_options): Likewise.
28371         Use a simpler test for size overflow.  Don't use xalloc_oversized
28372         because unsigned int might be wider than size_t (!); this suggests
28373         that we should switch from unsigned int to size_t for slot numbers.
28374
28375 2003-10-28  Paul Eggert  <eggert@twinsun.com>
28376
28377         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
28378         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
28379         NetBSD kernels.  Requested by Richard Stallman.
28380
28381 2003-10-27  Paul Eggert  <eggert@twinsun.com>
28382
28383         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
28384         to allocate the returned structure.  Do not allocate a subarray,
28385         as x2nrealloc will do that.
28386         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
28387         instead of xnrealloc.
28388         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
28389
28390 2003-10-27  Bruno Haible  <bruno@clisp.org>
28391
28392         * lib/stdbool_.h: Better support for BeOS.
28393
28394 2003-10-26  Paul Eggert  <eggert@twinsun.com>
28395
28396         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
28397         now uses inline.
28398
28399 2003-10-26  Paul Eggert  <eggert@twinsun.com>
28400
28401         * lib/xalloc.h (xalloc_oversized): New static inline function, for
28402         callers that want to do their own size-overflow checking.  Include
28403         <stdbool.h>, since xalloc_oversized returns bool.
28404         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
28405         to use xalloc_oversized.
28406
28407         Add two functions x2realloc, x2nrealloc, for programs that grow
28408         arrays dynamically by doubling their sizes.
28409         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
28410         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
28411         New functions.
28412
28413         Port to C99 semantics for 'inline' of external functions.
28414         Bug reported by Bruno Haible.
28415         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
28416         with the old contents of xnmalloc.
28417         (xnmalloc, xmalloc): Use it.
28418         (xnrealloc_inline): New static inline function,
28419         with the old contents of xnrealloc.
28420         (xnrealloc, xrealloc): Use it.
28421
28422         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
28423         that.
28424
28425 2003-10-26  Karl Berry  <karl@gnu.org>
28426
28427         * config/srclist.txt (COPYING.DOC): no longer available from
28428         /gd/gnuorg; don't know where the ultimate source is.
28429
28430 2003-10-25  Paul Eggert  <eggert@twinsun.com>
28431
28432         Fix several address-calculation bugs in the hash modules,
28433         plus some minor code cleanup.
28434
28435         * lib/hash.h: Include <stdbool.h>, for bool.
28436         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
28437         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
28438         hash_get_n_entries, hash_get_max_bucket_length,
28439         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
28440         hash_rehash): Use size_t rather than unsigned.
28441         * lib/hash.c (struct hash_table, hash_get_n_buckets,
28442         hash_get_n_buckets_used, hash_get_n_entries,
28443         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
28444         hash_get_entries, hash_do_for_each, hash_string, is_prime,
28445         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
28446         Likewise.
28447         (SIZE_MAX): Define if not defined.
28448         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
28449         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
28450         hash_print):
28451         Use const * when possible.
28452         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
28453         (check_tuning): Fix bug: if tuning parameters were very close to
28454         0 or 1, rounding errors could have caused subscript violations.
28455         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
28456         (hash_initialize): Add 'fail:' label
28457         to free table and return NULL, and use it to simplify code.
28458         Use calloc rather than clearing the storage ourself.
28459         (hash_initialize, hash_rehash): Check for arithmetic overflow in
28460         buffer size calculations.
28461         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
28462         Include <stddef.h>, for size_t.
28463         * lib/hash-pjw.c (hash_pjw): Likewise.
28464         Switch to method described by Bruno Haible.
28465         Include <limits.h>, for CHAR_BIT.
28466         (SIZE_BITS): New macro.
28467
28468 2003-10-23  Paul Eggert  <eggert@twinsun.com>
28469
28470         * m4/getline.m4 (AM_FUNC_GETLINE):
28471         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
28472         hosts.  Problem reported by Derek Robert Price in
28473         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
28474         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
28475         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
28476
28477 2003-10-21  Paul Eggert  <eggert@twinsun.com>
28478
28479         * lib/getndelim2.c (getndelim2): When size calculation overflows,
28480         ceiling the allocation at NMAX bytes rather than silently
28481         discarding input bytes before NMAX is reached.  This makes
28482         a difference only if NMAX exceeds SIZE_MAX / 2.
28483
28484         * lib/obstack.c: Merge from glibc.
28485         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
28486         Add libc_hidden_def (_obstack_newchunk).
28487         (_obstack_free) [! defined _LIBC]: Remove.
28488         [defined _LIBC]: Make a strong alias from obstack_free, rather than
28489         a clone of the function body.
28490         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
28491         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
28492
28493         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
28494         glibc.
28495         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
28496         arg to memcpy.
28497
28498         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
28499         (obstack_ptr_grow_fast, obstack_int_grow_fast):
28500         Don't use lvalue casts, as GCC plans to remove support for them
28501         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
28502         was also present in the non-GCC version, indicating that this
28503         code had always been buggy and had never been widely used.
28504         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
28505         Use the fast variant of each macro, rather than copying the
28506         definiens of the fast variant; that way, we'll be more likely to
28507         catch future bugs in the fast variants.
28508
28509 2003-10-20  Bruno Haible  <bruno@clisp.org>
28510
28511         * modules/wait-process: New file.
28512         * MODULES.html.sh (func_all_modules): Add wait-process.
28513
28514 2003-10-20  Bruno Haible  <bruno@clisp.org>
28515
28516         * m4/wait-process.m4: New file.
28517
28518 2003-10-20  Bruno Haible  <bruno@clisp.org>
28519
28520         * lib/wait-process.h: New file, from GNU gettext.
28521         * lib/wait-process.c: New file, from GNU gettext.
28522
28523 2003-10-19  Jim Meyering  <jim@meyering.net>
28524
28525         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
28526         HPUX 10.20.
28527
28528 2003-10-18  Karl Berry  <karl@gnu.org>
28529
28530         * config/config.guess: update from config.
28531
28532 2003-10-16  Paul Eggert  <eggert@twinsun.com>
28533
28534         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
28535         (getgroups): First arg is int, not size_t.
28536         Don't let 'free' mangle errno.
28537
28538 2003-10-16  Paul Eggert  <eggert@twinsun.com>
28539
28540         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
28541
28542 2003-10-16  Karl Berry  <karl@gnu.org>
28543
28544         * config/config.{guess,sub}: update from config.
28545
28546 2003-10-16  Jim Meyering  <jim@meyering.net>
28547
28548         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
28549         memcpy.
28550
28551 2003-10-15  Paul Eggert  <eggert@twinsun.com>
28552
28553         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
28554         (SIZE_MAX): Remove.
28555         (new_exclude, add_exclude_file): Initial size no longer needs to
28556         be a power of 2.
28557         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
28558         our own address arithmetic overflow checking.
28559
28560         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
28561         (fnmatch): Do not alloca more than 2000 wide characters;
28562         instead, use malloc for large buffers.
28563         Check for address arithmetic overflow, and return -1
28564         with errno set to ENOMEM in that case.
28565         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
28566         (NEW_PATTERN): Do not alloca more than 8000 bytes;
28567         instead, return -1.  Check for address arithmetic overflow.
28568
28569 2003-10-14  Paul Eggert  <eggert@twinsun.com>
28570
28571         Handle invalid suffixes and overflow independently, so that
28572         callers can treat them independently as needed.  Fix some bugs in
28573         suffix handling, e.g., "100k@" was not diagnosed as an invalid
28574         suffix for a human-readable blocksize.  The major caller-visible
28575         change is the addition of a new
28576         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
28577         that both overflow and suffix chars were found.
28578
28579         * lib/human.c (humblock): Don't check separately for invalid suffix
28580         char; that is xstrtoumax's job (now that its bug is fixed).
28581         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
28582         INTMAX_MAX]: New macros.
28583         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
28584         TYPE_MAXIMUM): New macros.
28585         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
28586         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
28587         if overflow occurs, as it's what __strtol does and it's more useful
28588         in practice.
28589         (__xstrtol): If __strtol reports some error other than ERANGE,
28590         reflect it to the caller as LONGINT_INVALID.  If it reports
28591         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
28592         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
28593         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
28594         value.
28595         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
28596         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
28597         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
28598         [defined UINTMAX_MAX]: New macros.
28599
28600 2003-10-14  Bruno Haible  <bruno@clisp.org>
28601
28602         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
28603
28604 2003-10-14  Bruno Haible  <bruno@clisp.org>
28605
28606         * m4/sig_atomic_t: New file, from GNU gettext.
28607         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
28608
28609 2003-10-14  Bruno Haible  <bruno@clisp.org>
28610
28611         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
28612         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
28613         Also use volatile where needed.
28614
28615 2003-10-12  Paul Eggert  <eggert@twinsun.com>
28616
28617         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
28618         Change maintainer from Bruno Haible to 'all'.
28619
28620 2003-10-12  Paul Eggert  <eggert@twinsun.com>
28621
28622         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
28623
28624 2003-10-12  Paul Eggert  <eggert@twinsun.com>
28625
28626         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
28627         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
28628         and define in terms of the other primitives.
28629         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
28630         (SIZE_MAX): Define if not already defined.
28631         (array_size_overflow): New function.
28632         (xalloc_die): Abort instead of exiting if 'error' returns.
28633         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
28634         (xmalloc, xrealloc): Use them.
28635         (xcalloc): Check for address arithmetic overflow.
28636         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
28637         a bit faster than strcpy.
28638
28639 2003-10-10  Simon Josefsson  <jas@extundo.com>
28640
28641         * modules/argp (Depends-on): Add restrict and strcase.
28642
28643 2003-10-10  Simon Josefsson  <jas@extundo.com>
28644
28645         * m4/argp.m4: Add AC_C_INLINE.
28646
28647 2003-10-08  Paul Eggert  <eggert@twinsun.com>
28648
28649         Merge getpass from libc, plus a few fixes.
28650
28651         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
28652         Include <stdbool.h>.
28653         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
28654         __fsetlocking to empty.
28655         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
28656         do include <bits/libc-lock.h>.
28657         Do not include <fcntl.h>; not needed.
28658         [_LIBC]: Include <wchar.h>.
28659         (NOTCANCEL_MODE): New macro.
28660         (flockfile, funlockfile) [_LIBC]: New macros.
28661         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
28662         [!_LIBC]: New macros.
28663         (call_fclose): New function.
28664         (getpass): Use it.  Save tty stream separately; this simplifies the
28665         code and makes it more reliable if stdin happens to equal stdout.
28666         Invoke __fsetlocking on tty.
28667         Handle thread cancellation if needed.
28668         Namespace cleanup (use __tcgetattr, __getline).
28669         Use bool for Booleans.
28670         [USE_IN_LIBIO]: Handle wide streams.
28671         [!_LIBC]: Unconditionally do the fseek, since we don't know what
28672         stream might go where.
28673
28674         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
28675         doesn't have to include <stdio.h> before us.
28676         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
28677         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
28678         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
28679         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
28680         if not declared, so that we can use getpass.c code from libc without
28681         rewriting it.
28682         (flockfile, ftrylockfile, funlockfile): New macros.
28683
28684 2003-10-08  Paul Eggert  <eggert@twinsun.com>
28685
28686         * modules/getpass: Depend on stdbool.
28687
28688 2003-10-08  Paul Eggert  <eggert@twinsun.com>
28689
28690         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
28691
28692 2003-10-07  Karl Berry  <karl@gnu.org>
28693
28694         * config/config.{guess,sub}: update from config.
28695
28696 2003-10-06  Jim Meyering  <jim@meyering.net>
28697             Bruno Haible  <bruno@clisp.org>
28698
28699         This lets translators provide better translations for the
28700         "Written by ..." part of --version output.
28701         * lib/version-etc.h: Include stdarg.h.
28702         (version_etc_copyright): Declare as readonly.
28703         (version_etc): Make this function variadic with a NULL-terminated list
28704         of author name strings.
28705         (version_etc_va): New declaration.
28706         * lib/version-etc.c: Include stdarg.h, stdlib.h.
28707         (version_etc_copyright): Declare as readonly.
28708         (version_etc_va): New function. Provide a different translatable string
28709         for each possible number of authors < 10. Abbreviate when there are 10
28710         authors or more.
28711         (version_etc): Make this function variadic. Call version_etc_va.
28712         Suggestion from Gary V. Vaughan.
28713
28714         * lib/long-options.h (parse_long_options): Change prototype: the
28715         authors string is moved to the end and becomes variadic.
28716         * lib/long-options.c: Include stdarg.h.
28717         (parse_long_options): Make this function variadic, too.
28718         Call version_etc_va, not version_etc.
28719
28720 2003-10-06  Bruno Haible  <bruno@clisp.org>
28721
28722         * modules/version-etc-2: Remove file.
28723         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
28724
28725 2003-10-06  Bruno Haible  <bruno@clisp.org>
28726
28727         * modules/fatal-signal: New file.
28728         * MODULES.html.sh (func_all_modules): Add fatal-signal.
28729
28730 2003-10-06  Bruno Haible  <bruno@clisp.org>
28731
28732         * m4/fatal-signal.m4: New file.
28733         * m4/signalblocking.m4: New file, from GNU gettext.
28734
28735 2003-10-06  Bruno Haible  <bruno@clisp.org>
28736
28737         * lib/version-etc-2.h: Remove file.
28738         * lib/version-etc-2.c: Remove file.
28739
28740 2003-10-06  Bruno Haible  <bruno@clisp.org>
28741
28742         * lib/fatal-signal.h: New file, from GNU gettext.
28743         * lib/fatal-signal.c: New file, from GNU gettext.
28744
28745 2003-10-05  Paul Eggert  <eggert@twinsun.com>
28746
28747         * README: Rework advice for preventing empty .o files.
28748         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
28749         not <sys/types.h>.
28750
28751 2003-10-04  Karl Berry  <karl@gnu.org>
28752
28753         * lib/argp*: update from libc.
28754
28755 2003-10-04  Karl Berry  <karl@gnu.org>
28756
28757         * config/config.{guess,sub}: update from config.
28758
28759 2003-10-02  Bruno Haible  <bruno@clisp.org>
28760
28761         * modules/lchown (Include): Add lchown.h.
28762         * modules/time_r (Include): Use "..." syntax.
28763         * modules/xgetdomainname (Include): Add xgetdomainname.h.
28764
28765 2003-10-01  Simon Josefsson  <jas@extundo.com>
28766
28767         * MODULES.html.sh (func_all_modules): Move gethostname from section
28768         'based on' to section 'lacking' POSIX:2001.
28769
28770 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
28771
28772         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
28773         to output mode on the same stream.
28774
28775 2003-09-29  Paul Eggert  <eggert@twinsun.com>
28776
28777         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
28778         Fix arg typo in previous patch.
28779
28780 2003-09-28  Jim Meyering  <jim@meyering.net>
28781
28782         * lib/error.c: Correct cpp indentation.
28783
28784 2003-09-27  Paul Eggert  <eggert@twinsun.com>
28785
28786         * modules/free: New file.
28787
28788 2003-09-27  Paul Eggert  <eggert@twinsun.com>
28789
28790         * m4/free.m4: New file.
28791
28792 2003-09-27  Paul Eggert  <eggert@twinsun.com>
28793
28794         * lib/minmax.h (MIN, MAX)
28795         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
28796         Omit the special code that used __typeof__, since we worry that
28797         it could be more trouble than it's worth.  See:
28798         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
28799         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
28800
28801         * lib/free.c: New file.
28802
28803 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
28804
28805         Trivial fixes to Makefile.am parts of module listings.
28806         * modules/strstr: Append strstr.h to lib_SOURCES.
28807         * modules/strcase: Likewise, for strcase.h.
28808
28809 2003-09-27  Karl Berry  <karl@gnu.org>
28810
28811         * config/mkinstalldirs: update from automake.
28812
28813 2003-09-26  Paul Eggert  <eggert@twinsun.com>
28814
28815         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
28816         (error_tail): Do not loop, reallocating temporary buffer, since
28817         the output cannot contain more wide characters than the input
28818         contains bytes, the size must be big enough already.  This avoids
28819         one potential size overflow calculation.  Check for size overflow
28820         when calculating temporary buffer size.  Free temporary buffer
28821         when done, if it was allocated with malloc; this plugs a memory
28822         leak.  Remove casts from void * to pointers, that are no longer
28823         needed now that we're assuming C89 or better.
28824
28825         Merge error changes from glibc.
28826
28827         * lib/error.c, error.h: Update copyright notice header to match glibc.
28828         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
28829         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
28830         Disable cancellation while printing error.
28831         * lib/error.h: Prepend __ to parameter names.
28832
28833 2003-09-26  Jim Meyering  <jim@meyering.net>
28834
28835         * lib/error.c (error_tail): Move some declarations
28836         into inner scope where the local variables are used.
28837
28838 2003-09-26  Bruno Haible  <bruno@clisp.org>
28839
28840         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
28841         stpncpy().
28842         Don't define stpncpy through config.h; it's now done through stpncpy.h.
28843
28844 2003-09-26  Bruno Haible  <bruno@clisp.org>
28845
28846         * lib/stpncpy.h (gnu_stpncpy): New declaration.
28847         (stpncpy): Define as alias for gnu_stpncpy.
28848         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
28849
28850 2003-09-25  Simon Josefsson  <jas@extundo.com>
28851
28852         * lib/xgetdomainname.h: New file.
28853         * lib/xgetdomainname.c: New file.
28854
28855 2003-09-25  Simon Josefsson  <jas@extundo.com>
28856             Bruno Haible  <bruno@clisp.org>
28857
28858         * modules/getdomainname: New file.
28859         * modules/xgetdomainname: New file.
28860         * MODULES.html.sh (func_all_modules): Add getdomainname,
28861         xgetdomainname.
28862
28863 2003-09-25  Simon Josefsson  <jas@extundo.com>
28864             Bruno Haible  <bruno@clisp.org>
28865
28866         * m4/getdomainname.m4: New file.
28867
28868 2003-09-25  Simon Josefsson  <jas@extundo.com>
28869             Bruno Haible  <bruno@clisp.org>
28870
28871         * lib/getdomainname.h: New file.
28872         * lib/getdomainname.c: New file.
28873
28874 2003-09-25  Karl Berry  <karl@gnu.org>
28875
28876         * lib/argp-fmtstream.c, argp-help.c: update from libc.
28877
28878 2003-09-25  Karl Berry  <karl@gnu.org>
28879
28880         * config/install-sh: update from automake.
28881
28882 2003-09-25  Bruno Haible  <bruno@clisp.org>
28883
28884         * modules/version-etc-2: New file, from modules/version-etc with
28885         modifications.
28886         * MODULES.html.sh (func_all_modules): Add version-etc-2.
28887
28888 2003-09-25  Bruno Haible  <bruno@clisp.org>
28889
28890         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
28891         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
28892
28893 2003-09-24  Simon Josefsson  <jas@extundo.com>
28894
28895         * modules/xgethostname: Add xgethostname.h.
28896
28897 2003-09-24  Paul Eggert  <eggert@twinsun.com>
28898
28899         * lib/linebuffer.c (freebuffer): Don't free the argument, just
28900         the buffer associated with the argument.  Bug reported by
28901         Simon Josefsson.
28902
28903 2003-09-24  Paul Eggert  <eggert@twinsun.com>
28904
28905         * README: Document assumptions that 'int' is at least 32 bits
28906         wide, that integer arithmetic is 2's complement without overflow,
28907         that there are no holes in integer values, that adding sizes of
28908         two nonoverlapping objects can't overflow, and that all-bits-zero
28909         yields scalar zero.  Fix spelling and capitalization typos.
28910
28911 2003-09-19  Karl Berry  <karl@gnu.org>
28912
28913         * lib/argp.h: update from libc.
28914
28915 2003-09-17  Paul Eggert  <eggert@twinsun.com>
28916
28917         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
28918         to avoid spurious warnings like "AC_RUN_IFELSE was called before
28919         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
28920
28921 2003-09-17  Paul Eggert  <eggert@twinsun.com>
28922
28923         * gnulib-tool: Use "test -h", not "test -L", for portability
28924         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
28925         (tags_regexp): Remove, since \| doesn't conform to POSIX.
28926         (sed_extract_prog): Issue s commands one-by-one, rather than
28927         using \| in one s command.
28928
28929 2003-09-16  Paul Eggert  <eggert@twinsun.com>
28930
28931         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
28932         input error, instead of returning NULL the next time we are called
28933         (and therefore losing track of errno).
28934
28935 2003-09-16  Bruno Haible  <bruno@clisp.org>
28936
28937         * gnulib-tool (func_create_testdir): Warn about duplicated
28938         dependencies.
28939
28940 2003-09-15  Paul Eggert  <eggert@twinsun.com>
28941
28942         * modules/argmatch, modules/fatal, modules/obstack,
28943         modules/xalloc, modules/xgethostname: Sort dependencies by
28944         importance, not alphabetically.
28945
28946 2003-09-15  Paul Eggert  <eggert@twinsun.com>
28947
28948         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
28949         fails, so that the caller gets the proper errno.
28950
28951         * lib/readutmp.c (read_utmp): Likewise.
28952         Check for fstat error.  Close stream and free storage
28953         when failing.
28954
28955 2003-09-14  Karl Berry  <karl@gnu.org>
28956
28957         * config/srclist.txt (strdup.c): disable for c89 changes.
28958
28959 2003-09-14  Jim Meyering  <jim@meyering.net>
28960
28961         * lib/getloadavg.c: Correct cpp indentation.
28962         * lib/strdup.c: Likewise.
28963         * lib/vasnprintf.c: Likewise.
28964
28965 2003-09-14  Bruno Haible  <bruno@clisp.org>
28966
28967         * modules/fwriteerror: New file.
28968         * MODULES.html.sh (func_all_modules): Add fwriteerror.
28969
28970 2003-09-14  Bruno Haible  <bruno@clisp.org>
28971
28972         * lib/fwriteerror.h: New file.
28973         * lib/fwriteerror.c: New file.
28974
28975 2003-09-12  Paul Eggert  <eggert@twinsun.com>
28976
28977         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
28978         modules/xgethostname, modules/xalloc: Depend on exit.
28979
28980 2003-09-12  Paul Eggert  <eggert@twinsun.com>
28981
28982         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
28983
28984         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
28985         and AC_MINIX, too, so that their extensions are available.
28986
28987         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
28988         This macro has been superseded by gl_BACKUPFILE.
28989
28990         More patches to assume C89 or better.
28991
28992         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
28993
28994         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
28995         unconditionally.
28996         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
28997         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
28998         Include <string.h>, <stdlib.h> unconditionally.
28999         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
29000         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
29001         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
29002         headers or for string.h.
29003         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
29004         or strtoul.
29005
29006         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
29007         headers.
29008         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
29009         * m4/userspec.m4 (gl_USERSPEC): Likewise.
29010         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
29011         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
29012         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
29013         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
29014         memcpy, memset.
29015         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
29016         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
29017         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
29018         strtol.
29019         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
29020         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
29021         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
29022         strtoul.
29023
29024 2003-09-12  Paul Eggert  <eggert@twinsun.com>
29025
29026         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
29027         * lib/obstack.c [!defined _LIBC]: Likewise.
29028         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
29029         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
29030         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
29031
29032         More changes to assume C89 or better.
29033
29034         * lib/error.c (error_tail): Assume vprintf.
29035
29036         * lib/argmatch.c (getenv): Remove decl.
29037         * lib/progreloc.c (get_full_program_name): Define via prototype.
29038         * lib/setenv.c (clearenv): Likewise.
29039         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
29040         needed.
29041         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
29042         (malloc, memcpy): Remove decls.
29043         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
29044         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
29045         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
29046         (memcpy): Remove macro.
29047         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
29048         (__P): Remove.  All uses removed.
29049         (PTR): Remove.  All uses changed to void *.
29050         (CHAR_BIT, NULL): Remove.
29051         (spaces, zeros, memset_space, memset_zero)
29052         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
29053         Remove.
29054         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
29055         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
29056         Define with prototype.
29057         Remove now-unnecessary prototype decl.
29058         (extra_args_spec): Assume ANSI C.  All uses changed.
29059         (extra_args_spec_iso): Remove.
29060         (my_strftime, emacs_strftimeu): Define via prototype.
29061         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
29062         unconditionally.
29063         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
29064         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
29065         (strtoul, strtol): Remove decls.
29066         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
29067         LONG_MAX): Remove.
29068         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
29069         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
29070         (LOCALE_PARAM_PROTO): New macro.
29071         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
29072         (INTERNAL (strtol), strtol): Define with a prototype.
29073         (PARAMS): Remove.  All uses removed.
29074         * lib/tempname.c: Include <string.h> unconditionally.
29075         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
29076         * lib/xgethostname.c (main): Define with a prototype.
29077         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
29078         Include <stdlib.h> unconditionally.
29079         (calloc, malloc, realloc, free): Remove decls.
29080         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
29081         Include <stdlib.h> unconditionally.  Sort include file names.
29082         (strtod): Remove.
29083         (xstrtod): Define with a prototype.
29084         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
29085         (strtol, strtoul): Remove decls.
29086
29087 2003-09-11  Paul Eggert  <eggert@twinsun.com>
29088
29089         More patches to assume C89 or better.
29090         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
29091         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
29092         string.h, memchr, STDC_HEADERS.
29093
29094 2003-09-11  Paul Eggert  <eggert@twinsun.com>
29095
29096         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
29097         Include <stdlib.h>, <string.h> unconditionally.
29098         Remove now-unnecessary cast to char *.
29099         * lib/strnlen.c: Include <string.h> unconditionally.
29100         * lib/yesno.c (yesno): Define with a prototype.
29101
29102 2003-09-11  Bruno Haible  <bruno@clisp.org>
29103
29104         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
29105
29106 2003-09-10  Jim Meyering  <jim@meyering.net>
29107
29108         * lib/error.c: Correct indentation of cpp directives.
29109
29110 2003-09-10  Bruno Haible  <bruno@clisp.org>
29111
29112         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
29113         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
29114         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
29115         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
29116         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
29117         <stdlib.h> and <string.h> checks.
29118         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
29119         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
29120
29121 2003-09-10  Bruno Haible  <bruno@clisp.org>
29122
29123         * lib/strcspn.c: Include <string.h> unconditionally.
29124         * lib/strpbrk.c: Include <string.h> unconditionally.
29125         * lib/strstr.c: Include <string.h> unconditionally.
29126         * lib/unicodeio.c: Include <string.h> unconditionally.
29127         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
29128         * lib/unsetenv.c: Likewise.
29129         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
29130         * lib/yesno.c: Include <stdlib.h> unconditionally.
29131         (rpmatch): Add prototype.
29132
29133 2003-09-09  Paul Eggert  <eggert@twinsun.com>
29134
29135         More patches to assume C89 or better.
29136         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
29137         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
29138         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
29139         or for string.h.
29140         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
29141         stdlib.h.
29142         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
29143         C headers.
29144         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
29145         string.h.
29146         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
29147         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
29148         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
29149         or for string.h.
29150         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
29151         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
29152         C headers.
29153         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
29154         memcpy.
29155         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
29156         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
29157         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
29158         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
29159         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
29160         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
29161         string.h, free.
29162         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
29163         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
29164         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
29165         C headers, or for string.h.
29166         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
29167         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
29168         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
29169         headers, memory.h, stdlib.h, string.h, strings.h.
29170         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
29171         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
29172         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
29173         strchr.
29174         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
29175         headers, memory.h, string.h.
29176         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
29177         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
29178         free.
29179         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
29180         headers.
29181         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
29182         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
29183         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
29184         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
29185         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
29186
29187 2003-09-09  Paul Eggert  <eggert@twinsun.com>
29188
29189         More K&R removal.
29190
29191         * lib/acosl.c (main): Use a prototype.
29192         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
29193         tanl.c: Likewise.
29194
29195         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
29196
29197         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
29198         (getopt, etopt_long, getopt_long_only, _getopt_internal)
29199         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
29200         with a prototype.
29201         * lib/getopt.c (const): Remove macro.
29202         Include <string.h> unconditionally.
29203         (my_index): Remove; all uses changed to strchr.
29204         (strlen): Remove decl.
29205         (exchange): Remove forward decl; no longer needed.
29206         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
29207         Define with prototype.
29208         * lib/getopt1.c (const): Remove macro.
29209         (getopt_long, getopt_long_only, main): Define with prototype.
29210
29211         * lib/getugroups.c: Include <string.h> unconditionally.
29212
29213         * lib/getusershell.c: Include <stdlib.h> unconditionally.
29214         (getusershell, setusershell, endusershell, readname, main):
29215         Define with prototypes.
29216
29217         * lib/group-member.c: Include group-member.h first.
29218         Include <stdlib.h> unconditionally.
29219
29220         * lib/hard-locale.c: Include hard-locale.h first.
29221         Include <stdlib.h>, <string.h> unconditionally.
29222
29223         * lib/hash.c (free, malloc): Remove decls.
29224         Include <stdlib.h> unconditionally.
29225
29226         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
29227         (getenv): Do not declare.
29228
29229         * lib/idcache.c: Include <string.h> unconditionally.
29230
29231         * lib/long-options.c: Include long-options.h first, to test interface.
29232         Include <stdlib.h> unconditionally.
29233
29234         * lib/makepath.c: Include makepath.h first, to test interface.
29235         Include <stdlib.h> and <string.h> unconditionally.
29236
29237         * lib/linebuffer.c: Include <stdlib.h>.
29238         (free): Remove decl.
29239
29240         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
29241         stddef.h. rpl_malloc returns void *, not char *.
29242         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
29243         prototype.
29244
29245         * lib/md5.h: Include <limits.h> unconditionally.
29246         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
29247         (__P): Remove; all uses removed.
29248         * lib/md5.c: Include "md5.h" first.
29249         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
29250         md5_buffer, md5_process_bytes, md5_process_block):
29251         Define with prototypes.
29252         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
29253         * lib/sha.c: Include "sha.h" first.
29254         Include <stdlib.h>, <string.h> unconditionally.
29255
29256         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
29257         * lib/memcmp.c (__ptr_t): Likewise.
29258         * lib/memrchr.c (__ptr_t): Likewise.
29259         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
29260         Include <string.h> unconditionally.
29261         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
29262         * lib/memchr.c: Include <stdlib.h> unconditionally.
29263         * lib/memchr.c (LONG_MAX): Remove.
29264         * lib/memrchr.c (LONG_MAX): Likewise.
29265         * lib/memchr.c (__memchr): Define via a prototype.
29266         * lib/memrchr.c (__memrchr): Likewise.
29267         * lib/memcmp.c (__P): Remove, and remove all uses.
29268         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
29269         Remove forward decls; no longer needed.
29270         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
29271         Use types required by C89 in prototype.
29272
29273         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
29274         * lib/savedir.c: Likewise.
29275         * lib/mkdir.c (free): Remove decl.
29276         * lib/rmdir.c (rmdir): Define with a prototype.
29277         * lib/savedir.c: Include savedir.h first, to test interface.
29278
29279         * lib/mktime.c (STDC_HEADERS): Remove.
29280         Include <stdlib.h>, <string.h> unconditionally.
29281
29282         * lib/modechange.c: Include <stdlib.h> unconditionally.
29283         (malloc): Remove decl.
29284
29285         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
29286         (free): Remove decl.
29287
29288         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
29289         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
29290         (This type really should be intptr_t, but that's a C99ism.)
29291         (_obstack_memcpy): Remove: all uses changed to memcpy.
29292         Include <string.h> unconditionally.
29293         (struct obstack): Assume __STDC__ for types of members
29294         chunkfun, freefun, extra_arg.
29295         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
29296         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
29297         obstack_begin, obstack_specify_allocation,
29298         obstack_specify_allocation_with_arg, obstack_chunkfun,
29299         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
29300         Remove unprototyped decls and the macros that use them.
29301         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
29302         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
29303         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
29304         (defined __STDC__ && __STDC__)]:
29305         Remove nonprototyped code.
29306         Include <stdlib.h> unconditionally.
29307         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
29308         _obstack_allocated_p, _obstack_free, obstack_free,
29309         _obstack_memory_used, print_and_abort):
29310         Define using prototypes.
29311         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
29312         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
29313         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
29314         obstack_next_free, obstack_object_size, obstack_room) [0]:
29315         Remove unused, unprototyped code.
29316
29317         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
29318
29319         * lib/physmem.c (physmem_total, physmem_available, main): Define
29320         with prototypes.
29321
29322         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
29323         (main): Define with a prototype.
29324
29325         * lib/posixver.c (getenv): Remove decl.
29326
29327         * lib/putenv.c (malloc): Returns void *, not char *.
29328         Include <string.h> unconditionally.
29329         (strchr, memcpy, NULL): Do not define.
29330
29331         * lib/readtokens.c: Include readtokens.h first, to test interface.
29332         Include <stdlib.h>, <string.h> unconditionally.
29333         (init_tokenbuffer): Define with a prototype.
29334
29335         * lib/regex.c (PARAMS): Remove.  All uses removed.
29336         All uses of _RE_ARGS removed, too.
29337         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
29338         unconditionally.
29339         (bzero): Assume memset exists.
29340         (memcmp, memcpy, NULL): Remove.
29341         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
29342         char, or assignments to local vars of type signed char.
29343         (init_syntax_once, PREFIX(extract_number_and_incr),
29344         PREFIX(print_partial_compiled_pattern),
29345         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
29346         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
29347         PREFIX(regex_grow_registers), PREFIX(regex_compile),
29348         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
29349         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
29350         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
29351         wcs_compile_range, byte_compile_range, truncate_wchar,
29352         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
29353         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
29354         count_mbs_length, wcs_re_match_2_internal,
29355         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
29356         PREFIX(alt_match_null_string_p),
29357         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
29358         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
29359         regfree, PREFIX(extract_number)): Define with prototype.  Remove
29360         now-unnecessary declaration, if any.
29361         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
29362         regcomp, regexec):
29363         Remove now-unnecessary casts among pointer types.
29364         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
29365
29366         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
29367         (free): Remove decl.
29368
29369         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
29370
29371         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
29372         (free): Remove decl.
29373
29374         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
29375         * lib/xgetcwd.c: Likewise.
29376
29377         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
29378         (free): Remove decl.
29379
29380         * lib/strchrnul.c (strchrnul): Define with a prototype.
29381         Fix bug: c_in was not converted to char before searching.
29382
29383         The following changes are not K&R related:
29384
29385         * lib/group-member.h: Include <sys/types.h>, so that this file is
29386         self-contained.
29387         * lib/makepath.h: Likewise.
29388
29389         * lib/getusershell.c (readname, default_index, line_size, readname):
29390         Use size_t, not int, for sizes.
29391         (readname): If the size overflows, report an error instead of
29392         looping forever.
29393
29394 2003-09-09  Paul Eggert  <eggert@twinsun.com>
29395
29396         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
29397         libc.
29398
29399 2003-09-09  Paul Eggert  <eggert@twinsun.com>
29400
29401         * README: New section: portability guidelines.
29402
29403 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
29404
29405         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
29406         C89 spec.
29407
29408 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
29409
29410         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
29411
29412 2003-09-08  Paul Eggert  <eggert@twinsun.com>
29413
29414         Assume C89 or better; remove K&R cruft.
29415         A few of these changes were first proposed by Derek Robert Price
29416         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
29417
29418         * lib/addext.c: Include <string.h> unconditionally.
29419         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
29420         Don't declare getenv or malloc.
29421
29422         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
29423         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
29424         (NULL): Remove.
29425         (find_stack_direction, alloca): Use prototypes.
29426
29427         * lib/atexit.c (atexit): Define using a prototype.
29428
29429         * lib/basename.c, dirname.c, stripslash.c:
29430         Include <string.h> unconditionally.
29431
29432         * lib/bcopy.c: Include <stddef.h>.
29433         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
29434
29435         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
29436
29437         * lib/error.h (error, error_at_line, error_print_progname)
29438         [! (defined (__STDC__) && __STDC__)]: Remove decls.
29439         * lib/error.c: Include error.h first, to check interface.
29440         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
29441         (VA_START): Remove; all uses changeed to va_start.
29442         (exit, strerror): Remove decls.
29443         (error_print_progname): Prototype uncondionally.
29444         Don't include <errno.h>; no longer needed.
29445         (private_strerror): Remove.
29446         (error_tail): Always define.
29447         (error, error_at_line): Assume C89 or better; always use prototypes.
29448         * lib/fatal.c: Include "fatal.h" first, to test interface.
29449         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
29450         (VA_START): Remove; all uses changed to va_start.
29451         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
29452         this case.
29453         (exit): Remove decl.
29454         (fatal): Prototype unconditionally.  Assume va_start works.
29455         Abort at end, to pacify gcc.
29456
29457         * lib/euidaccess.c (main): Define with a prototype.
29458
29459         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
29460
29461         * lib/exitfail.c: Include <stdlib.h> unconditionally.
29462
29463         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
29464         prototypes.
29465         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
29466         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
29467         (getenv): Remove decl.
29468         (fnmatch): Define using a prototype.
29469         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
29470         (FCT): Define using a prototype.
29471
29472         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
29473
29474         * lib/gethostname.c: Include <stddef.h>.
29475         (gethostname): Define with prototype.  Length is size_t, not int.
29476
29477 2003-09-08  Paul Eggert  <eggert@twinsun.com>
29478
29479         Assume C89 or better; remove K&R cruft.
29480         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
29481         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
29482         string.h, getenv, malloc.
29483         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
29484         headers.
29485         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
29486         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
29487         do not check for strerror.
29488         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
29489         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
29490         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
29491         do not check for doprnt or vprintf.
29492         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
29493         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
29494
29495 2003-09-08  Paul Eggert  <eggert@twinsun.com>
29496
29497         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
29498         getversion.c should have been removed then, but was accidentally
29499         preserved.
29500
29501         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
29502         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
29503
29504 2003-09-08  Karl Berry  <karl@gnu.org>
29505
29506         * config/config.sub, config.guess, srclistvars.sh: update from savannah
29507                 config, forget about prep.
29508
29509         * config/depcomp, missing: update from automake.
29510
29511 2003-09-07  Paul Eggert  <eggert@twinsun.com>
29512
29513         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
29514         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
29515
29516 2003-09-07  Paul Eggert  <eggert@twinsun.com>
29517
29518         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
29519         copy_tm_result.  Bug reported by Simon Josefsson in
29520         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
29521
29522 2003-09-06  Paul Eggert  <eggert@twinsun.com>
29523
29524         * m4/time_r.m4: New file.
29525         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
29526         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
29527         is. Check for timegm declaration.
29528         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
29529         Do not check for gmtime_r.
29530         Replace mktime if __mktime_internal does not exist and if mktime
29531         hasn't been replaced already.
29532
29533 2003-09-06  Paul Eggert  <eggert@twinsun.com>
29534
29535         * lib/time_r.c, lib/time_r.h: New files.
29536
29537         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
29538         __localtime_r.
29539         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
29540         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
29541
29542         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
29543         __gmtime_r.
29544         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
29545         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
29546         Include <time_r.h>.
29547
29548         * lib/timegm.c: Switch to glibc implementation, with the following
29549         changes:
29550         [defined HAVE_CONFIG_H]: Include <config.h>.
29551         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
29552         (__mktime_internal) [!defined _LIBC]: New decl.
29553         (__gmtime_r) [!defined _LIBC]: New macro and function.
29554         (timegm): Use a prototype, since gnulib assumes C89.
29555         Do not bother declaring tmp to be const, as it's not really usefu.
29556         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
29557         (timegm): Declare only if HAVE_DECL_TIMEGM.
29558
29559 2003-09-06  Paul Eggert  <eggert@twinsun.com>
29560
29561         * MODULES.html.sh (func_all_modules): Add time_r.
29562         * modules/time_r: New file.
29563         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
29564         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
29565
29566 2003-09-03  Paul Eggert  <eggert@twinsun.com>
29567
29568         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
29569         Bug reported by Lute Kamstra in
29570         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
29571
29572         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
29573         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
29574         course with correspondingly smaller numbers for tomorrow and
29575         yesterday.  From Tadayoshi Funaba.  Originally installed into
29576         sh-utils on 1999-08-07, but the patch got lost (I guess during the
29577         coreutils merge?).
29578
29579 2003-08-31  Simon Josefsson  <jas@extundo.com>
29580
29581         * modules/timegm: New file.
29582         * MODULES.html.sh (func_all_modules): Add timegm.
29583
29584 2003-08-31  Simon Josefsson  <jas@extundo.com>
29585
29586         * m4/timegm.m4: New file.
29587
29588 2003-08-31  Simon Josefsson  <jas@extundo.com>
29589
29590         * lib/timegm.h: New file.
29591         * lib/timegm.c: New file.  Based on
29592         wget-1.8.2/src/http.c:mktime_from_utc.
29593
29594 2003-08-31  Karl Berry  <karl@gnu.org>
29595
29596         * lib/argp.h: update from libc.
29597
29598 2003-08-28  Bruno Haible  <bruno@clisp.org>
29599
29600         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
29601         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
29602         followed by '#define fnmatch fnmatch_posix' gives an error.
29603
29604 2003-08-28  Bruno Haible  <bruno@clisp.org>
29605
29606         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
29607         warning on QNX, which defines O_BINARY to 000000.
29608
29609 2003-08-27  Jim Meyering  <jim@meyering.net>
29610
29611         * m4/mkstemp.m4: Require that the system mkstemp be able to create
29612         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
29613         would fail after 32.  Reported by Danny Levinson.  Details here:
29614         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
29615
29616 2003-08-24  Bruno Haible  <bruno@clisp.org>
29617
29618         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
29619         MSVC7 <stdio.h> is included later.
29620
29621 2003-08-22  Simon Josefsson  <jas@extundo.com>
29622
29623         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
29624
29625 2003-08-20  Karl Berry  <karl@gnu.org>
29626
29627         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
29628
29629 2003-08-20  Bruno Haible  <bruno@clisp.org>
29630
29631         * modules/progname: New file.
29632         * MODULES.html.sh (func_all_modules): Add progname.
29633
29634 2003-08-20  Bruno Haible  <bruno@clisp.org>
29635
29636         * lib/progname.h: New file, from GNU gettext.
29637         * lib/progname.c: New file, from GNU gettext.
29638         * lib/progreloc.c: New file, from GNU gettext.
29639
29640 2003-08-19  Jim Meyering  <jim@meyering.net>
29641
29642         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
29643         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
29644
29645 2003-08-19  Bruno Haible  <bruno@clisp.org>
29646
29647         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
29648         more.
29649
29650 2003-08-19  Bruno Haible  <bruno@clisp.org>
29651
29652         * lib/xstrdup.c: Assume <string.h> exists.
29653
29654 2003-08-18  Paul Eggert  <eggert@twinsun.com>
29655
29656         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
29657         in makefile rules.
29658
29659 2003-08-18  Jim Meyering  <jim@meyering.net>
29660
29661         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
29662         * m4/lib-ld.m4: Likewise.
29663
29664 2003-08-18  Jim Meyering  <jim@meyering.net>
29665
29666         * lib/setenv.h: Indent nested cpp directive.
29667         * lib/vasnprintf.c: Remove trailing blanks.
29668
29669 2003-08-17  Simon Josefsson  <jas@extundo.com>
29670
29671         * modules/xstrndup: New file.
29672         * MODULES.html.sh (func_all_modules): Add xstrndup.
29673
29674 2003-08-17  Simon Josefsson  <jas@extundo.com>
29675
29676         * modules/argp: Fix autoconf macro name. Add more dependencies.
29677
29678 2003-08-17  Simon Josefsson  <jas@extundo.com>
29679
29680         * m4/xstrndup.m4: New file.
29681
29682 2003-08-17  Simon Josefsson  <jas@extundo.com>
29683
29684         * m4/argp.m4: New file.
29685
29686 2003-08-17  Simon Josefsson  <jas@extundo.com>
29687             Bruno Haible  <bruno@clisp.org>
29688
29689         * lib/xstrndup.h: New file.
29690         * lib/xstrndup.c: New file.
29691
29692 2003-08-17  Bruno Haible  <bruno@clisp.org>
29693
29694         * modules/strndup (Files, Include): Add lib/strndup.h.
29695
29696 2003-08-17  Bruno Haible  <bruno@clisp.org>
29697
29698         * modules/euidaccess (Files): Add lib/euidaccess.h.
29699
29700 2003-08-17  Bruno Haible  <bruno@clisp.org>
29701
29702         * lib/strndup.h: New file.
29703
29704 2003-08-17  Bruno Haible  <bruno@clisp.org>
29705
29706         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
29707         like AC_GNU_SOURCE.
29708         * modules/extensions (configure.ac): Comment out the invocation of
29709         gl_USE_SYSTEM_EXTENSIONS.
29710
29711 2003-08-16  Paul Eggert  <eggert@twinsun.com>
29712
29713         Merges from coreutils, etc.
29714         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
29715         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
29716         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
29717         fixing a typo.
29718         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
29719         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
29720
29721 2003-08-16  Paul Eggert  <eggert@twinsun.com>
29722
29723         Document merge from coreutils.
29724         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
29725         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
29726         * modules/utime: Add m4/utimes-null.m4.
29727
29728 2003-08-16  Paul Eggert  <eggert@twinsun.com>
29729
29730         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
29731         space, undoing this 2003-08-12 change:
29732         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
29733
29734 2003-08-16  Paul Eggert  <eggert@twinsun.com>
29735
29736         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
29737         strtoul.c from libc, undoing this 2003-08-12 change:
29738         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
29739
29740 2003-08-16  Jim Meyering  <jim@meyering.net>
29741
29742         Merges from coreutils.
29743         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
29744         prefix.  Adjust cache variables similarly.  Create 500 rather than
29745         just 300 files, to exercise bug on Darwin6.5, too.
29746         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
29747         $missing_dir.
29748         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
29749         AM_SYS_POSIX_TERMIOS.
29750         Reported by mkc@mathdogs.com.
29751         Also change use of $am_cv_sys_posix_termios
29752         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
29753         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
29754         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
29755         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
29756         in /proc/mounts until it finds one with matching device number.  This
29757         is unnecessary when the FILE argument *is* a mount point.  No stat call
29758         is necessary in that case.  So, disable the statvfs-testing code on
29759         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
29760         as RedHat bug# 84846.
29761         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
29762         to 1MB, so as not to render systems with no stack size limit (e.g.,
29763         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
29764         Include <unistd.h>.  On some systems,
29765         it is required for the definition of _SC_PAGESIZE.
29766
29767 2003-08-16  Jim Meyering  <jim@meyering.net>
29768
29769         Merge from coreutils.
29770         * lib/xstrtoimax.c: #else #if -> #elif.
29771         * lib/xstrtoumax.c: Likewise.
29772
29773 2003-08-16  Jim Meyering  <jim@meyering.net>
29774
29775         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
29776         * m4/utimes.m4: Removed.
29777         * m4/utimes-null.m4: Renamed from utimes.m4.
29778
29779         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
29780         to 1MB, so as not to render systems with no stack size limit (e.g.,
29781         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
29782         Include <unistd.h>.  On some systems,
29783         it is required for the definition of _SC_PAGESIZE.
29784
29785 2003-08-16  Jim Meyering  <jim@meyering.net>
29786         and Paul Eggert  <eggert@cs.ucla.edu>
29787
29788         Merges from coreutils, etc.
29789
29790         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
29791         using the latest version from cvs.  This avoids problems with #line
29792         directives using a vendor (Sun) compiler.
29793         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
29794         Don't set GETGROUPS_LIB here; now it's
29795         done via getgroups.m4's wrapper function.
29796         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
29797         rather than just in sh-util/configure.in, so that the
29798         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
29799         same.
29800         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
29801         AC_FUNC_GETLOADAVG where to find getloadavg.c.
29802         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
29803         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
29804         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
29805         Remove code that is now done by the newly-required macros.
29806         Append $(EXEEXT) to DF_PROG.
29807         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
29808         Do not invoke or require the following here,
29809         since prereq.m4 or some gnulib .m4 now does this for us:
29810         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
29811         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
29812         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
29813         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
29814         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
29815         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
29816         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
29817         AC_FUNC_OBSTACK.
29818         Do not replace the following functions, as this is now the job
29819         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
29820         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
29821         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
29822         atexit getpass, strdup, getpagesize.
29823         Replace 'raise'.
29824         Do not check for the following functions, as this is now the job
29825         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
29826         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
29827         setregid.
29828         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
29829         Check for sys/sysctl.h.
29830         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
29831         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
29832         of checking for ssize_t ourselves.
29833
29834         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
29835         Require every macro that gnulib/modules/* suggests for us.
29836         (jm_PREREQ_ADDEXT): New macro.
29837         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
29838         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
29839
29840         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
29841         (gl_PHYSMEM): Use it.
29842         Also check for `table' function.
29843         Check for new headers and functions.
29844         Add check for sys/sysmp.h.
29845         With suggestions from Kaveh Ghazi.
29846         Ignore headers that are present but cannot be compiled.  This
29847         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
29848         C 5.4.
29849
29850 2003-08-15  Paul Eggert  <eggert@twinsun.com>
29851
29852         Document merge from coreutils.
29853         * modules/userspec: Depend on posixver.
29854         * modules/strftime: Depend on tzset.
29855
29856 2003-08-15  Paul Eggert  <eggert@twinsun.com>
29857
29858         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
29859         rather than tab, after '#' in shell-script copyright notices.
29860         Suggested by Bruno Haible.
29861
29862 2003-08-15  Paul Eggert  <eggert@twinsun.com>
29863
29864         * config/srclist-update: Use three spaces, rather than tab, after '#'
29865         in shell-script copyright notices.  Suggested by Bruno Haible.
29866         Remove unnecessary parenthesization in regular expression.
29867
29868 2003-08-15  Jim Meyering  <jim@meyering.net>
29869
29870         Merge from coreutils.
29871         * lib/xgethostname.c: Include <stdlib.h>.
29872         (xghostname): Don't exit for anything other than memory-related
29873         failure; just return NULL.
29874         * lib/userspec.c: Include "posixver.h".
29875         (parse_user_spec): Accept `.' as a separator only
29876         in pre-POSIX-200112 mode.
29877         * lib/strtoimax.c: Use #elif rather than #else #if.
29878         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
29879         Remove function, now that we can rely on a working tzset function.
29880         [!_LIBC]: Ensure that the required autoconf test has been run.
29881         [!defined _NL_CURRENT && HAVE_STRFTIME]:
29882         Use underlying_strftime for %r.
29883         * lib/sha.c: Merge in some clean-up and optimization changes from
29884         glibc.
29885         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
29886         Ensure that it is a multiple of 64.
29887         Rearrange loop exit tests so as to avoid performing an
29888         additional fread after encountering an error or EOF.
29889         * lib/realloc.c: Update copyright date.
29890
29891 2003-08-15  Jim Meyering  <jim@meyering.net>
29892         and Paul Eggert  <eggert@twinsun.com>
29893
29894         Merge from coreutils.
29895         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
29896         member but strut utmpx does not.  Needed for AIX 4.3.3.
29897         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
29898
29899 2003-08-15  Jim Meyering  <jim@meyering.net>
29900         and Paul Eggert  <eggert@cs.ucla.edu>
29901
29902         Merges from coreutils, etc.
29903         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
29904         Require gl_FUNC_TZSET_CLOBBER.
29905         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
29906         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
29907         members.
29908
29909 2003-08-14  Paul Eggert  <eggert@twinsun.com>
29910
29911         Help the merge from coreutils.
29912         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
29913         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
29914         * m4/tzset.m4: Use it too.
29915
29916 2003-08-14  Paul Eggert  <eggert@twinsun.com>
29917
29918         * modules/tzset: New file.
29919
29920 2003-08-14  Jim Meyering  <jim@meyering.net>
29921
29922         Merges from coreutils.
29923         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
29924         variable names, rather than @FNMATCH_H@.
29925         * modules/alloca: Likewise for $(ALLOCA_H).
29926
29927         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
29928         the three copies of the literal target, `fnmatch.h'.
29929         * modules/alloca (alloca.h): Likewise.
29930
29931 2003-08-14  Jim Meyering  <jim@meyering.net>
29932
29933         Merge from coreutils.
29934         * m4/tzset.m4: New file.
29935         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
29936         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
29937         otherwise, AIX 5.1 systems would end up using the latter.
29938         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
29939         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
29940         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
29941         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
29942
29943 2003-08-14  Jim Meyering  <jim@meyering.net>
29944
29945         Merge from coreutils.
29946         * lib/obstack.h: Whitespace changes.
29947         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
29948         and xcalloc return values.
29949         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
29950         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
29951         hang on OSF/1 5.1 for DIR on both local and remote file systems.
29952         Reported by (and fix confirmed by) Nelson H. F. Beebe.
29953         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
29954         error from mntctl.
29955         Use mntctl's return value to drive the entry-processing loop, since
29956         we can't rely on the value of the vmt_length member in the last
29957         entry.  On some systems doing so could result in exhausting
29958         virtual memory.  Based in part on a patch from Mike Jetzer.
29959
29960 2003-08-14  Jim Meyering  <jim@meyering.net>
29961         and Paul Eggert  <eggert@twinsun.com>
29962
29963         Merges from coreutils, plus other fixes.
29964         * lib/physmem.c: Merge in portability changes from gcc/libiberty
29965         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
29966         for credits and details.  Thanks to Kaveh Ghazi for helping
29967         to keep these files in sync.
29968         (ARRAY_SIZE): Define it.
29969         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
29970         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
29971         (memcasecmp): Don't assume size_t fits in unsigned int.
29972         Remove casts and duplicate code.
29973         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
29974         (memcpy): Remove definition.
29975         Merge in some clean-up and optimization changes from glibc.
29976         [BLOCKSIZE]: Move definition to top of file.
29977         Ensure that it is a multiple of 64.
29978         Rearrange loop exit tests so as to avoid performing an
29979         additional fread after encountering an error or EOF.
29980         * lib/md5.h (md5_uintptr): Define.
29981         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
29982         return to the initial working directory.  Preserve errno
29983         for caller.
29984         * lib/idcache.c: Include "xalloc.h".
29985         (xmalloc, xrealloc): Remove decls.
29986         (getuser): Remove casts no longer required in C89.
29987         * lib/human.c: Include stdio.h, for sprintf.
29988         * lib/group-member.c: Include "xalloc.h".
29989         (xmalloc, xrealloc): Remove decls.
29990         (get_group_info): Remove casts no longer required in C89.
29991         * lib/getusershell.c (readname): Remove casts no longer required in
29992         C89.
29993         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
29994         * lib/getline.c: Whitespace fix, from coreutils.
29995
29996 2003-08-13  Paul Eggert  <eggert@twinsun.com>
29997
29998         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
29999         Check for isascii.
30000
30001         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
30002         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
30003         Undo previous (whitespace-only) change.
30004
30005 2003-08-13  Paul Eggert  <eggert@twinsun.com>
30006
30007         * lib/exclude.c: Include <ctype.h>
30008         (IN_CTYPE_DOMAIN): New macro.
30009         (is_space): New fn.
30010         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
30011         and empty lines.
30012
30013         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
30014         Undo previous (whitespace-only) change.
30015
30016 2003-08-13  Paul Eggert  <eggert@twinsun.com>
30017
30018         * config/srclist-update: Change update back to the old behavior,
30019         leaving whitespace alone.  Use one 'sed' command rather than a
30020         pipeline.
30021         (fixlicense): Now a variable, not a function.
30022         (remove_trailing_blanks): Remove.
30023         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
30024         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
30025         Undo previous (whitespace-only) change.
30026
30027 2003-08-12  Paul Eggert  <eggert@twinsun.com>
30028
30029         Merge from coreutils.
30030         * modules/euidaccess: Add lib_SOURCES, include for new
30031         file euidaccess.h
30032
30033 2003-08-12  Paul Eggert  <eggert@twinsun.com>
30034
30035         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
30036         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
30037         Normalize leading white space and remove trailing white space.
30038
30039         Merge from coreutils
30040         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
30041
30042         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
30043         0.12.1.  These files are now being upgraded automatically by
30044         ../config/srclist-update.
30045
30046 2003-08-12  Paul Eggert  <eggert@twinsun.com>
30047
30048         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
30049         Normalize leading white space and remove trailing white space.
30050         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
30051         notice, as per ../config/srclist-update.
30052
30053         Merge from coreutils.
30054         * lib/euidaccess.h: New file.
30055         * lib/euidaccess.c: Include it.
30056         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
30057         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
30058         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
30059
30060 2003-08-12  Paul Eggert  <eggert@twinsun.com>
30061
30062         * config/srclist-update: Add copyright notice.
30063         (remove_id_lines, remove_trailing_blanks): New constants.
30064         (fixfile): Use them to normalize spacing a bit in copied files.
30065         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
30066         Normalize leading white space and remove trailing white space.
30067
30068         * config/texinfo.tex: Sync with texinfo.
30069
30070         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
30071         strtoul.c from libc, to merge coreutils whitespace changes.
30072
30073         * config/srclist.txt: Get the following m4 files from gettext:
30074         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
30075         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
30076         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
30077         wint_t.m4.
30078
30079 2003-08-12  Karl Berry  <karl@gnu.org>
30080
30081         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
30082         been made.
30083
30084 2003-08-11  Paul Eggert  <eggert@twinsun.com>
30085
30086         * modules/gnu-source, m4/gnu-source.m4:
30087         Remove; we're assuming Autoconf 2.54 or later now.
30088         Suggested by Bruno Haible.
30089         * MODULES.html.sh (func_all_modules): Remove gnu-source.
30090
30091 2003-08-11  Bruno Haible  <bruno@clisp.org>
30092
30093         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
30094
30095 2003-08-11  Bruno Haible  <bruno@clisp.org>
30096
30097         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
30098         (vasnprintf): Use it instead of wcslen.
30099
30100 2003-08-11  Bruno Haible  <bruno@clisp.org>
30101
30102         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
30103         value to ensure that _Bool promotes to int. Use #define for _Bool when
30104         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
30105
30106 2003-08-10  Karl Berry  <karl@gnu.org>
30107
30108         * lib/regex.h: update from libc (whitespace fix).
30109
30110 2003-08-09  Paul Eggert  <eggert@twinsun.com>
30111
30112         Merge some files from coreutils.  These changes were
30113         originally made by Jim Meyering.
30114         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
30115         many older Unixes require this.
30116         * lib/alloca.c (alloca): Remove cast to argument of free;
30117         no longer needed in C89.
30118         * lib/alloca_.h, regex.h: Fix white space to match
30119         what GNU indent does.
30120
30121 2003-08-09  Paul Eggert  <eggert@twinsun.com>
30122
30123         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
30124         apparently Emacs's Unicode mode got confused before my 2003-08-05
30125         checkin.
30126
30127 2003-08-08  Paul Eggert  <eggert@twinsun.com>
30128
30129         * m4/extensions.m4: New file.
30130         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
30131         Require gl_USE_SYSTEM_EXTENSIONS.
30132         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
30133         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
30134
30135 2003-08-08  Paul Eggert  <eggert@twinsun.com>
30136
30137         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
30138         * modules/extensions, modules/gnu-source: New files.
30139         * modules/timespec, modules/unlocked-io: Depend on extensions.
30140
30141 2003-08-07  Paul Eggert  <eggert@twinsun.com>
30142
30143         * modules/restrict: New file.
30144         * MODULES.html.sh (func_all_modules): Add restrict.
30145         * modules/regex: Depend on restrict.
30146
30147 2003-08-07  Paul Eggert  <eggert@twinsun.com>
30148
30149         * m4/restrict.m4: New file.
30150         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
30151
30152 2003-08-07  Bruno Haible  <bruno@clisp.org>
30153
30154         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
30155         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
30156
30157 2003-08-07  Bruno Haible  <bruno@clisp.org>
30158
30159         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
30160         makes the module 'getndelim2' compatible with the module 'getline'.
30161
30162 2003-08-05  Paul Eggert  <eggert@twinsun.com>
30163
30164         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
30165         byte with "\201" to avoid glitches when editing that source file
30166         with multi-gnome-terminal.
30167
30168 2003-08-05  Paul Eggert  <eggert@twinsun.com>
30169
30170         * lib/bumpalloc.h: Remove.
30171
30172 2003-08-05  Paul Eggert  <eggert@twinsun.com>
30173
30174         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
30175         * modules/bumpalloc: Remove.
30176
30177 2003-08-04  Paul Eggert  <eggert@twinsun.com>
30178
30179         * lib/getloadavg.c: Change copyright notice and spacing to conform to
30180         GNU coding style.
30181
30182         Merge from coreutils.
30183         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
30184         1. From glibc.
30185         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
30186         from Karl Berry, implemented by Jim Meyering.
30187         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
30188         from Dmitry V. Levin.
30189         Remove anachronistic cast of xrealloc.
30190         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
30191         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
30192         type. Otherwise, it wouldn't compile with at least /bin/cc on
30193         ymp-cray-unicos9.0.2.X.
30194         Combine two mostly-identical uses of alloca into one.
30195         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
30196
30197 2003-08-04  Dave Love  <d.love@dl.ac.uk>
30198
30199         [From Emacs.]
30200
30201         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
30202         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
30203         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
30204         obsolete NLIST_NAME_UNION.
30205         [__GNU__]: Undef BSD and FSCALE.
30206         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
30207
30208 2003-08-03  Paul Eggert  <eggert@twinsun.com>
30209
30210         * lib/stdbool_.h (_Bool): Make it signed char, instead of
30211         an enum type, so that it's guaranteed to promote to int.  See:
30212         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
30213
30214 2003-08-03  Karl Berry  <karl@gnu.org>
30215
30216         * config/depcomp: update from automake.
30217
30218 2003-07-31  Paul Eggert  <eggert@twinsun.com>
30219
30220         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
30221         (strerror): Don't assume that a printable int fits in 14 bytes.
30222
30223 2003-07-31  Bruno Haible  <bruno@clisp.org>
30224
30225         * modules/getpass-gnu: New file.
30226         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
30227
30228 2003-07-31  Bruno Haible  <bruno@clisp.org>
30229
30230         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
30231
30232 2003-07-24  Karl Berry  <karl@gnu.org>
30233
30234         * config/missing: update from automake.
30235
30236 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
30237             Bruno Haible  <bruno@clisp.org>
30238
30239         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
30240         * lib/getline.c (getline, getdelim): Likewise.
30241         Remove _GNU_SOURCE define; now it's defined in config.h through
30242         m4/getline.m4.
30243
30244 2003-07-23  Karl Berry  <karl@gnu.org>
30245
30246         * config/config.sub: update from prep.
30247
30248 2003-07-22  Paul Eggert  <eggert@twinsun.com>
30249
30250         * modules/xalloc (Depends-on): Add exitfail.
30251         * modules/xmemcoll: Likewise.
30252
30253 2003-07-22  Paul Eggert  <eggert@twinsun.com>
30254
30255         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
30256         over-parenthesization in macros.
30257
30258         Sync with coreutils.
30259
30260         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
30261         required by C99.
30262
30263         Use `exit_failure' for xalloc and xmemcoll instead of their own
30264         private exit-failure variables.
30265         * lib/xalloc.h (xalloc_exit_failure): Remove.
30266         * lib/xmalloc.c: Likewise.  Include exitfail.h.
30267         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
30268         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
30269         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
30270         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
30271
30272 2003-07-20  Jim Meyering  <jim@meyering.net>
30273
30274         * modules/closeout (Depends-on): Add exitfail.
30275         Suggestion from Bruno Haible.
30276
30277 2003-07-19  Karl Berry  <karl@gnu.org>
30278
30279         * config/config.sub: update from prep.
30280
30281 2003-07-18  Paul Eggert  <eggert@twinsun.com>
30282
30283         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
30284         Remove.
30285         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
30286         to test that it can stand by itself.  Include "exitfail.h".
30287         Clients should set exit_failure instead.
30288         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
30289
30290 2003-07-18  Bruno Haible  <bruno@clisp.org>
30291
30292         * modules/getndelim2: New file.
30293         * modules/getline: Share files with module getndelim2.
30294         * modules/getnline: Depend on getndelim2 instead of sharing files with
30295         it. Add getnline.c to lib_SOURCES.
30296         * MODULES.html.sh (func_all_modules): Add getndelim2.
30297
30298 2003-07-18  Bruno Haible  <bruno@clisp.org>
30299
30300         * m4/getndelim2.m4: New file.
30301         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
30302         invoke gl_PREREQ_GETNDELIM2.
30303         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
30304         gl_PREREQ_GETNDELIM2.
30305         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
30306         gl_GETNDELIM2.
30307
30308 2003-07-18  Bruno Haible  <bruno@clisp.org>
30309
30310         * lib/getndelim2.h: New file.
30311         * lib/getndelim2.c: Make into a module of its own. Include config.h,
30312         getndelim2.h.
30313         (getndelim2): Make non-static. Change return type to ssize_t.
30314         * lib/getline.h: Change argument names.
30315         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
30316         * lib/getnline.c: Include getndelim2.h.
30317
30318 2003-07-18  Andreas Schwab  <schwab@suse.de>
30319
30320         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
30321
30322 2003-07-17  Karl Berry  <karl@gnu.org>
30323
30324         * config/config.sub: update from prep.
30325
30326 2003-07-17  Bruno Haible  <bruno@clisp.org>
30327
30328         * modules/getnline: New file.
30329         * modules/getline: Add lib/getndelim2.c to source file list.
30330         * MODULES.html.sh (func_all_modules): Add getnline.
30331
30332 2003-07-17  Bruno Haible  <bruno@clisp.org>
30333
30334         * m4/getnline.m4: New file.
30335
30336 2003-07-17  Bruno Haible  <bruno@clisp.org>
30337
30338         * m4/Makefile.am.in: Remove file.
30339         * m4/Makefile.am: Remove file.
30340         * m4/Makefile.in: Remove file.
30341
30342 2003-07-17  Bruno Haible  <bruno@clisp.org>
30343
30344         * lib/getnline.h: New file.
30345         * lib/getnline.c: New file.
30346         * lib/getndelim2.c: New file, extracted from getline.c.
30347         (getndelim2): Renamed from getdelim2, with added nmax argument.
30348         * lib/getline.c: Include getndelim2.c.
30349         (getdelim2): Moved out to getndelim2.c.
30350         (getline, getdelim): Update.
30351
30352 2003-07-17  Bruno Haible  <bruno@clisp.org>
30353
30354         * lib/Makefile.am: Remove file.
30355         * lib/Makefile.in: Remove file.
30356
30357 2003-07-17  Bruno Haible  <bruno@clisp.org>
30358
30359         * configure.in: Remove file.
30360         * Makefile.in: Remove file.
30361
30362 2003-07-17  Bruno Haible  <bruno@clisp.org>
30363
30364         * MODULES.html.sh: Put the </BODY> right before </HTML>.
30365
30366 2003-07-16  Karl Berry  <karl@gnu.org>
30367
30368         * config/srclist-update: was running fixlicense twice, which caused
30369                 texinfo.tex to be nullified for some reason.  Simplify,
30370                 $gplsrc is no longer needed as far as I can see?
30371
30372 2003-07-16  Jim Meyering  <jim@meyering.net>
30373
30374         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
30375
30376 2003-07-15  Paul Eggert  <eggert@twinsun.com>
30377
30378         * config/srclist.txt: Get the following files from gettext-runtime/intl
30379         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
30380         ref-del.sin.  From Bruno Haible.
30381         * config/srclist-update (fixfile): Change grep pattern again, since the
30382         previous fix didn't work (there was another trailing $).  Use
30383         '[$]' to escape the $s.
30384
30385 2003-07-15  Karl Berry  <karl@gnu.org>
30386
30387         * lib/vasnprintf.c: update from gettext.
30388
30389 2003-07-15  Karl Berry  <karl@gnu.org>
30390
30391         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
30392         gets expanded when surrounded by '$'.
30393
30394 2003-07-15  Jim Meyering  <jim@meyering.net>
30395
30396         * modules/save-cwd: Don't depend on error.  From Derek Price.
30397
30398 2003-07-15  Jim Meyering  <jim@meyering.net>
30399
30400         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
30401
30402 2003-07-14  Simon Josefsson  <jas@extundo.com>
30403
30404         * modules/mempcpy: New file.
30405         * MODULES.html.sh (func_all_modules): Add mempcpy.
30406
30407 2003-07-14  Simon Josefsson  <jas@extundo.com>
30408
30409         * m4/mempcpy.m4: New file.
30410
30411 2003-07-14  Simon Josefsson  <jas@extundo.com>
30412
30413         * lib/mempcpy.h: New file.
30414         * lib/mempcpy.c: New file.
30415
30416 2003-07-14  Paul Eggert  <eggert@twinsun.com>
30417
30418         * modules/getdate, modules/posixtm: Depend on mktime.
30419
30420 2003-07-14  Paul Eggert  <eggert@twinsun.com>
30421
30422         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
30423         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
30424         unicodeio.c, unicodeio.h, unlocked-io.h:
30425         Switch from LGPL to GPL.
30426
30427 2003-07-14  Paul Eggert  <eggert@twinsun.com>
30428
30429         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
30430         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
30431         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
30432         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
30433         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
30434         updated automatically by ../config/srclist-update.  This changes
30435         their license from LPGL to GPL.
30436
30437 2003-07-14  Paul Eggert  <eggert@twinsun.com>
30438
30439         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
30440         assumed to refer to the root of the most recent stable gettext version.
30441         * config/srclistvars.sh: Add defaults for eggert.
30442         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
30443         Match "This program" as well as "The program".  This is needed
30444         for gettext.
30445
30446 2003-07-14  Jim Meyering  <jim@meyering.net>
30447
30448         Don't emit diagnostics.  Let callers do that.
30449         * lib/save-cwd.c: Don't include "error.h".
30450         (save_cwd): Don't call error.  Ensure that errno is valid
30451         when returning nonzero.
30452
30453         * lib/save-cwd.h (restore_cwd): Update prototype.
30454         * lib/save-cwd.c (restore_cwd): Remove two parameters.
30455         Simplify.  Don't call error upon failure.  Let callers do that.
30456         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
30457         when auditing is enabled.  But don't bother updating the #if.
30458
30459 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
30460
30461         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
30462         it breaks C++ compilation.
30463         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
30464
30465 2003-07-10  Simon Josefsson  <jas@extundo.com>
30466
30467         * modules/strchrnul (Makefile.am): Add strchrnul.h.
30468
30469 2003-07-10  Jim Meyering  <jim@meyering.net>
30470
30471         * m4/clock_time.m4: Remove trailing blank.
30472         * m4/intmax_t.m4: Likewise.
30473
30474 2003-07-10  Jim Meyering  <jim@meyering.net>
30475
30476         * lib/vasnprintf.c: Remove trailing blanks.
30477         Make cpp indentation consistent.
30478
30479 2003-07-09  Paul Eggert  <eggert@twinsun.com>
30480
30481         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
30482         posixver.c, strftime.c, strnlen.c, strverscmp.c:
30483         Switch from LGPL to GPL.
30484
30485 2003-07-09  Paul Eggert  <eggert@twinsun.com>
30486
30487         * config/srclist.txt: Sort sublists.  Add
30488         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
30489         that differ from gnulib for one reason or another; we'd like this list
30490         to be smaller but for now let's document what we have.
30491
30492 2003-07-08  Paul Eggert  <eggert@twinsun.com>
30493
30494         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
30495         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
30496         and sweeter "eval x=$x".
30497         * config/srclist.txt: Get lib/argp* from glibc.
30498
30499 2003-07-07  Paul Eggert  <eggert@twinsun.com>
30500
30501         * lib/mktime.c: Fix some boundary cases and remove need for floating
30502         point.
30503
30504         Issue a compile-time diagnostic if time_t is floating point, or if
30505         two's complement arithmetic is not in effect, or if arithmetic
30506         right shift does not propagate the sign.  These assumptions were
30507         all in the original code but they weren't checked.
30508
30509         (TIME_T_MIDPOINT, verify): New macros.
30510         (__isleap): Remove; it has integer overflow problems.
30511         (leapyear): New function, without those problems.
30512         (ydhms_tm_diff): Remove; splitting into two parts.
30513         (ydhms_diff): New function, containing the arithmetic part of
30514         the old ydhms_tm_diff function.  Issue a compile-time
30515         diagnostic if we are not using C99 integer division.
30516         Avoid casts when possible.
30517         (guess_time_tm): New function, containing the checking part of
30518         the old ydhms_tm_diff function.  Return the new value, rather than
30519         the difference between it and the old.  Accept a new argument T
30520         so that *T specifies the old value.  Check for overflow in the result.
30521
30522         (__mktime_internal): Use a time_t offset, not a long int offset.
30523         This undoes the 2003-06-04 change, which is no longer needed now
30524         that we have better overflow checking.
30525         (localtime_offset): Likewise.
30526
30527         (__mktime_internal): Avoid harmful overflow on hosts where time_t
30528         and long are 64-bit but int is only 32-bit.
30529         (ydhms_diff): Use long int to store year1 and yday1.
30530         Issue a compile-time diagnostic if long int is not wide enough.
30531
30532         (__mktime_internal): Use long int to store adjusted year and yday.
30533         Use plain C rather than preprocessor commands, if that doesn't
30534         affect efficiency.
30535         Check for overflow (and try to repair) after each probe
30536         rather than checking only at the very end.  This avoids some bugs
30537         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
30538         does not equal GMT offset at maximum time).
30539         Use integer to check for overflow rather than floating point; this
30540         is more portable to non-IEEE hosts, and is a tad faster.
30541         When we detect that we are oscillating between two values,
30542         don't check whether tm_isdst has the requested value, since
30543         we already know the answer.  When tm_isdst has the wrong value,
30544         use a different heuristic to find the right one, based on the
30545         extreme values actually observed in practice in tz2003a,
30546         rather than the (overly optimistic) "previous 3 calendar quarters".
30547
30548         (not_equal_tm, print_tm, check_result): Use "const T" rather than
30549         "T const" to accommodate glibc style.
30550         (check_result): Use less-confusing report format.  "long" -> "long int.
30551         (main): Likewise.
30552         Don't loop if the iteration overflows time_t.
30553         Allow a negative step in the iteration.
30554
30555 2003-07-06  Karl Berry  <karl@gnu.org>
30556
30557         * config/depcomp: update from automake.
30558         * config/config.sub: update from prep.
30559
30560 2003-07-03  Karl Berry  <karl@gnu.org>
30561
30562         * config/config.guess: update from prep.
30563
30564 2003-07-01  Paul Eggert  <eggert@twinsun.com>
30565
30566         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
30567         xreadlink.c now includes it unconditionally.
30568
30569 2003-07-01  Paul Eggert  <eggert@twinsun.com>
30570
30571         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
30572         having it depend on HAVE_SYS_TYPES_H.
30573
30574 2003-07-01  Bruno Haible  <bruno@clisp.org>
30575
30576         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
30577         <sys/types.h> should be sufficient.
30578         Reported by Paul Eggert.
30579
30580 2003-06-26  Karl Berry  <karl@gnu.org>
30581
30582         * config/depcomp: update from automake.
30583
30584 2003-06-26  Bruno Haible  <bruno@clisp.org>
30585
30586         * modules/human: Depend on module stdbool.
30587
30588 2003-06-25  Bruno Haible  <bruno@clisp.org>
30589
30590         * modules/readlink: New file.
30591         * modules/xreadlink: Depend on it.
30592         * MODULES.html.sh (func_all_modules): Add readlink.
30593
30594 2003-06-25  Bruno Haible  <bruno@clisp.org>
30595
30596         * m4/readlink.m4: New file.
30597
30598 2003-06-25  Bruno Haible  <bruno@clisp.org>
30599
30600         * lib/readlink.c: New file.
30601
30602 2003-06-22  Karl Berry  <karl@gnu.org>
30603
30604         * config/srclist.txt: update mkinstalldirs from automake.
30605         * config/mkinstalldirs: update.
30606
30607 2003-06-22  Bruno Haible  <bruno@clisp.org>
30608
30609         Portability to mingw32.
30610         * m4/ssize_t.m4: New file, from GNU gettext.
30611         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
30612         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
30613
30614 2003-06-22  Bruno Haible  <bruno@clisp.org>
30615
30616         * modules/safe-read: Add m4/ssize_t.m4.
30617         * modules/xreadlink: Add m4/ssize_t.m4.
30618
30619 2003-06-20  Bruno Haible  <bruno@clisp.org>
30620
30621         Assume C89, so PARAMS isn't needed.
30622         * lib/unicodeio.h (PARAMS): Remove.
30623         * lib/unicodeio.c: Don't use PARAMS.
30624
30625 2003-06-18  Karl Berry  <karl@gnu.org>
30626
30627         * config/config.{guess,sub}: update from prep.
30628
30629 2003-06-18  Jim Meyering  <jim@meyering.net>
30630
30631         Merge changes from coreutils.
30632         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
30633         Remove explicit declarations of xmalloc and realloc.
30634         Include xalloc.h.
30635         (read_utmp): Remove anachronistic cast of xmalloc.
30636
30637 2003-06-17  Paul Eggert  <eggert@twinsun.com>
30638
30639         Assume C89, so PARAMS isn't needed.
30640         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
30641         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
30642         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
30643         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
30644         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
30645         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
30646         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
30647         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
30648         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
30649         lib/xstrtod.h, lib/xstrtol.h: Likewise.
30650         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
30651         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
30652         no longer needed. Anyway, config.h should always be included before any
30653         other file.
30654
30655 2003-06-11  Simon Josefsson  <jas@extundo.com>
30656
30657         * modules/sysexits: New file.
30658         * MODULES.html.sh (func_all_modules): Add sysexits.
30659
30660 2003-06-11  Simon Josefsson  <jas@extundo.com>
30661
30662         * lib/sysexit_.h: New file.
30663
30664 2003-06-11  Derek Price  <derek@ximbiot.com>
30665
30666         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
30667         necessary.
30668
30669 2003-06-11  Bruno Haible  <bruno@clisp.org>
30670
30671         * m4/sysexits.m4: New file.
30672
30673 2003-06-10  Simon Josefsson  <jas@extundo.com>
30674
30675         * lib/argp.h: New file, from glibc.
30676         * lib/argp-ba.c: New file, from glibc.
30677         * lib/argp-eexst.c: New file, from glibc.
30678         * lib/argp-fmtstream.c: New file, from glibc.
30679         * lib/argp-fmtstream.h: New file, from glibc.
30680         * lib/argp-fs-xinl.c: New file, from glibc.
30681         * lib/argp-help.c: New file, from glibc.
30682         * lib/argp-namefrob.h: New file, from glibc.
30683         * lib/argp-parse.c: New file, from glibc.
30684         * lib/argp-pv.c: New file, from glibc.
30685         * lib/argp-pvh.c: New file, from glibc.
30686         * lib/argp-xinl.c: New file, from glibc.
30687
30688 2003-06-10  Simon Josefsson  <jas@extundo.com>
30689
30690         * modules/strchrnul: New file.
30691
30692 2003-06-10  Simon Josefsson  <jas@extundo.com>
30693
30694         * modules/argp: New file.
30695
30696 2003-06-10  Simon Josefsson  <jas@extundo.com>
30697
30698         * m4/strchrnul.m4: New file.
30699
30700 2003-06-10  Simon Josefsson  <jas@extundo.com>
30701
30702         * lib/strchrnul.h: New file.
30703         * lib/strchrnul.c: New file.
30704
30705 2003-06-10  Bruno Haible  <bruno@clisp.org>
30706
30707         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
30708
30709 2003-06-07  Karl Berry  <karl@gnu.org>
30710
30711         * config/config.{guess,sub}: update from prep.
30712
30713 2003-06-07  Jim Meyering  <jim@meyering.net>
30714
30715         * modules/strtod: Use $(...) notation, not @...@ for
30716         AC_REPLACE'd variables.
30717         * modules/localcharset: Likewise.
30718
30719 2003-06-07  Jim Meyering  <jim@meyering.net>
30720
30721         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
30722         in place of my name in the copyright comment.
30723         Remove definition and uses of __P.
30724
30725         From coreutils.
30726         * lib/stat.c: Don't declare xmalloc explicitly.
30727         Instead, include "xalloc.h".
30728         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
30729         xrealloc, and xcalloc return values.
30730         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
30731         Improve comment.
30732         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
30733
30734 2003-06-07  Bruno Haible  <bruno@clisp.org>
30735
30736         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
30737         avoid AC_CONFIG_LINKS.
30738         * modules/fnmatch (Makefile.am): Use explicit creation rule for
30739         fnmatch.h, to avoid AC_CONFIG_LINKS.
30740         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
30741
30742 2003-06-07  Bruno Haible  <bruno@clisp.org>
30743
30744         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
30745         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
30746         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
30747         directory.
30748         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
30749         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
30750         directory.
30751
30752 2003-06-06  Jim Meyering  <jim@meyering.net>
30753
30754         Merge from coreutils.
30755         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
30756         Consolidate declarations and initializations of *_base* locals.
30757
30758         Merge from coreutils.
30759         This avoids a core dump on systems without GNU putenv,
30760         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
30761         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
30762         (unsetenv): New static function, from GNU libc.
30763         (rpl_putenv): Use it.
30764
30765         * lib/modechange.c: Remove trailing blanks.
30766
30767         Merge from coreutils.
30768         * lib/fsusage.c: Remove declaration of statfs.
30769         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
30770
30771         * lib/posixtm.c: Include <stdbool.h> unconditionally.
30772
30773 2003-06-06  Jim Meyering  <jim@meyering.net>
30774
30775         * lib/stdbool_.h: Renamed from stdbool.h.in.
30776
30777 2003-06-06  Jim Meyering  <jim@meyering.net>
30778             Bruno Haible  <bruno@clisp.org>
30779
30780         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
30781         Adjust Makefile.am snippet not to redirect directly to target.
30782         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
30783
30784 2003-06-05  Paul Eggert  <eggert@twinsun.com>
30785
30786         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
30787         mismatch, look in future quarters as well as past.  This fixes a
30788         bug when processing fall-backwards gaps immediately after a long
30789         period of daylight-saving time.
30790
30791         * lib/mktime.c: Assume freestanding C89 or better.
30792         (HAVE_LIMITS_H): Remove.  Assume it's 1.
30793         (__P): Remove; not used.
30794         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
30795         (mktime, not_equal_tm, print_tm, check_result,
30796         main): Use prototypes.  Use const * where appropriate.
30797         (main): Fix typo in testing code that uncovered by above changes.
30798         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
30799
30800 2003-06-04  Paul Eggert  <eggert@twinsun.com>
30801
30802         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
30803         locale.h, localeconv.  This merges changes from coreutils.
30804
30805         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
30806         It can be removed after the next Autoconf is released.
30807         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
30808         needed.
30809
30810 2003-06-04  Paul Eggert  <eggert@twinsun.com>
30811
30812         * lib/mktime.c: Fix Debian bug 177940
30813         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
30814         (localtime_offset): Now long int, not time_t, because we want it
30815         to be guaranteed to be signed.  All uses changed.
30816         (__mktime_internal): If overflow would occur when adding offset,
30817         don't add it.
30818
30819         Merge 'human' changes from coreutils.  Rewrite to support
30820         locale-specific notations like thousands separators.
30821         * lib/human.c: Simplify authorship notice.
30822         Include human.h immediately after config.h.
30823         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
30824         <limits.h>: Do not include, since human.h does.
30825         (SIZE_MAX, UINTMAX_MAX): New macros.
30826         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
30827         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
30828         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
30829         (power_letter): Renamed from suffixes.
30830         (generate_suffix_backwards): Remove.
30831         (adjust_value): Now takes int style (because of human.h changes)
30832         and long double value (for greater precision on some platforms).
30833         (group_number): New function.
30834         (human_readable): Use it.  Use integer options, not enum.
30835         Put the options before the sizes in the arg list.
30836         Support all the new options.
30837         The old human_readable function has been removed;
30838         use inttostr.h instead.
30839         (human_readable, default_block_size, humblock):
30840         Use uintmax_t, not int, for block sizes.
30841         (human_readable_inexact, block_size_types): Remove.
30842         (block_size_opts): New constant.
30843         (human_options): Renamed from human_block_size, with new signature
30844         that allows block sizes up to UINTMAX_MAX.  All callers changed.
30845         * lib/human.h: Add copyright and authorship notice.
30846         Include <limits.h> and <stdbool.h> unconditionally.
30847         (PARAMS): Remove.  All uses removed.
30848         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
30849         (enum human_inexact_style): Remove tag; now a nameless enum.
30850         (human_floor, human_ceiling, human_round_to_even): Now have
30851         values 2, 0, 1 rather than -1, 1, 0.
30852         (human_group_digits, human_suppress_point_zero, human_autoscale,
30853         human_base_1024, human_SI, human_B): New constants.
30854         (human_readable_inexact, human_block_size): Remove.
30855         (human_readable): Size args are now uintmax_t, not int.
30856         (human_options): New decl.
30857
30858         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
30859         unnecessary now that we assume C89 or better.  This change
30860         imported from coreutils.
30861
30862         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
30863         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
30864         in the 2003-05-30 sync from glibc.
30865
30866         .h files should stand alone, but we shouldn't include <sys/types.h>
30867         if we can get away with just <stddef.h>.
30868
30869         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
30870         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
30871         rather than <sys/types.h>, as we merely need size_t.
30872         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
30873         to get size_t.
30874         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
30875         Include <stdio.h>, to get FILE.
30876         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
30877         memcasecmp.h has included <stddef.h> and all we need is size_t.
30878         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
30879         our interface, instead of including <sys/types.h>
30880
30881 2003-06-04  Paul Eggert  <eggert@twinsun.com>
30882
30883         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
30884         now, as glibc mktime is buggy on non-glibc systems.
30885
30886 2003-06-03  Karl Berry  <karl@gnu.org>
30887
30888         * config/config.sub: update from prep.
30889
30890 2003-06-02  Paul Eggert  <eggert@twinsun.com>
30891
30892         [from coreutils]
30893         Fix some minor time-related bugs with POSIX time arguments.
30894         Some valid time stamps were being rejected (notably -1, and
30895         time stamps before 1900 on 64-bit hosts).  And some invalid
30896         time stamps were being accepted, e.g. September 31.
30897
30898         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
30899         that we can return (time_t) -1 successfully.
30900         * lib/posixtm.c: Likewise.
30901         [HAVE_STDBOOL_H]: Include <stdbool.h>.
30902         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
30903         (t): Remove static var.
30904         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
30905         of static var.  All uses changed.
30906         (year): Do not reject years before 1900; they can occur with
30907         64-bit time_t.
30908         (posix_time_parse): Do not check for out-of-range components;
30909         that is now the caller's responsibility, since our checks were
30910         only approximations.
30911         (posixtime): Use mktime to check for out-of-range components,
30912         since it knows them exactly.
30913         If mktime returns (time_t) -1, check whether an error actually occurred
30914         by invoking localtime on -1.
30915         (main) [TEST_POSIXTIME]: Check for input data errors, and report
30916         posixtime failures better.
30917         Improve the test data (in comments only).
30918
30919 2003-06-02  Karl Berry  <karl@gnu.org>
30920
30921         * config/mkinstalldirs (version): new variable.
30922         (--version): new option.
30923         (usage): improve message.
30924
30925 2003-05-30  Karl Berry  <karl@gnu.org>
30926
30927         * lib/mktime.c: update from libc.
30928
30929 2003-05-30  Bruno Haible  <bruno@clisp.org>
30930
30931         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
30932         * config/config.rpath: Upgrade to gettext-0.12.1.
30933
30934 2003-05-30  Bruno Haible  <bruno@clisp.org>
30935
30936         * m4/gettext.m4: Upgrade to gettext-0.12.1.
30937         * m4/nls.m4: New file, from gettext-0.12.1.
30938         * m4/po.m4: New file, from gettext-0.12.1.
30939         * m4/progtest.m4: Upgrade to gettext-0.12.1.
30940
30941 2003-05-30  Bruno Haible  <bruno@clisp.org>
30942
30943         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
30944         * lib/localcharset.h: Likewise.
30945         * lib/localcharset.c: Likewise.
30946
30947 2003-05-29  Karl Berry  <karl@gnu.org>
30948
30949         * config/config.rpath: update from gettext.
30950
30951 2003-05-28  Paul Eggert  <eggert@twinsun.com>
30952
30953         Assume the headers required for C89 freestanding compilers.
30954         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
30955         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
30956         * m4/human.m4 (gl_HUMAN): Likewise.
30957         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
30958         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
30959         * m4/userspec.m4 (gl_USERSPEC): Likewise.
30960         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
30961         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
30962         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
30963
30964 2003-05-28  Paul Eggert  <eggert@twinsun.com>
30965
30966         Assume the headers required for C89 freestanding compilers.
30967         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
30968         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
30969         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
30970         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
30971         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
30972         define, since <limits.h> is guaranteed to do that.
30973         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
30974         * lib/exclude.c: Include <stdbool.h> unconditionally.
30975         * lib/tempname.c: Include <stddef.h> unconditionally.
30976         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
30977         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
30978         <stddef.h> does that.
30979         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
30980         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
30981         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
30982         needed.
30983         * lib/xstrtol.c: Likewise.
30984         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
30985         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
30986
30987         * lib/addext.c (addext): Use assignment rather than cast, to avoid
30988         warnings on some platforms.
30989
30990         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
30991         arbitrarily.
30992
30993 2003-05-26  Jim Meyering  <jim@meyering.net>
30994
30995         Merge in a change from coreutils:
30996         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
30997         that is guaranteed to be `no'.  Use `no_such_member' to indicate
30998         that condition, rather than `-1' which is slightly misleading.
30999         Change the name of the cache variable to have the gl_ prefix.
31000         Prompted by a patch from Richard Dawe for DJGPP.
31001
31002 2003-05-24  Karl Berry  <karl@gnu.org>
31003
31004         * config/config.guess: update from prep.
31005
31006 2003-05-22  Karl Berry  <karl@gnu.org>
31007
31008         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
31009
31010 2003-05-20  Karl Berry  <karl@gnu.org>
31011
31012         * config/config.guess: update from prep.
31013
31014 2003-05-18  Karl Berry  <karl@gnu.org>
31015
31016         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
31017         might actually be set by the user.
31018
31019         * config/depcomp, install-sh, mdate-sh: update from automake.
31020
31021 2003-05-17  Bruno Haible  <bruno@clisp.org>
31022
31023         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
31024         invalid expansion for AC_EGREP_CPP.
31025         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
31026         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
31027         Suggested by Akim Demaille <akim@epita.fr> in
31028         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
31029
31030 2003-05-12  Jim Meyering  <jim@meyering.net>
31031
31032         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
31033         the space-padded-by-default conversion specifiers, %e, %k, %l.
31034
31035 2003-05-12  Bruno Haible  <bruno@clisp.org>
31036
31037         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
31038         the string is longer than 4 KB.
31039
31040 2003-05-11  Karl Berry  <karl@gnu.org>
31041
31042         * config/config.{guess,sub}: update from prep.
31043
31044 2003-05-09  Bruno Haible  <bruno@clisp.org>
31045
31046         * modules/error: Add m4/strerror_r.m4 to file list.
31047
31048 2003-05-03  Bruno Haible  <bruno@clisp.org>
31049
31050         Upgrade to Unicode-4.0.
31051         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
31052         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
31053         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
31054         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
31055         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
31056         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
31057         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
31058         Change width of U+E0100..U+E01EF from 1 to 0.
31059
31060 2003-04-25  Jim Meyering  <jim@meyering.net>
31061
31062         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
31063         of type size_t, not int.
31064
31065 2003-04-25  Bruno Haible  <bruno@clisp.org>
31066
31067         * lib/copy-file.c: Include <stddef.h>, for size_t.
31068
31069 2003-04-21  Paul Eggert  <eggert@twinsun.com>
31070
31071         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
31072         code which expansion is under static control.  Patch imported from
31073         Akim Demaille's patch to Bison; see
31074         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
31075
31076 2003-04-14  Bruno Haible  <bruno@clisp.org>
31077
31078         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
31079
31080 2003-04-11  Jim Meyering  <jim@meyering.net>
31081
31082         Merge changes from Coreutils.
31083
31084         2003-03-22  Jim Meyering  <jim@meyering.net>
31085
31086         * lib/strftime.c (widen): Cast alloca return value to proper type.
31087
31088         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
31089
31090         From GNU libc.
31091         * lib/strftime.c (my_strftime): Handle very large width
31092         specifications for numeric values correctly.  Improve checks for
31093         overflow.
31094
31095         2003-01-19  Jim Meyering  <jim@meyering.net>
31096
31097         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
31098         definitions.
31099         (nl_get_alt_digit) [! defined my_strftime]: Define.
31100         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
31101         _nl_get_alt_digit and _nl_get_walt_digit.
31102
31103         * lib/strftime.c (my_strftime): Merge in locale-related changes from
31104         libc. These changes have no effect outside of _LIBC.
31105
31106 2003-04-10  Bruno Haible  <bruno@clisp.org>
31107
31108         * modules/findprog: New file.
31109         * MODULES.html.sh (func_all_modules): Add it.
31110
31111 2003-04-10  Bruno Haible  <bruno@clisp.org>
31112
31113         * m4/findprog.m4: New file.
31114         * m4/eaccess.m4: New file.
31115
31116 2003-04-10  Bruno Haible  <bruno@clisp.org>
31117
31118         * lib/findprog.h: New file, from GNU gettext.
31119         * lib/findprog.c: New file, from GNU gettext.
31120
31121 2003-04-05  Jim Meyering  <jim@meyering.net>
31122
31123         Merge changes from Coreutils.
31124
31125         * lib/exclude.h (PARAMS): Remove definition and uses.
31126         * lib/exclude.c: Remove uses of `PARAMS'.
31127
31128         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
31129         Add test-cases for DOS filenames. Declare program_name.
31130         (main): Set up program_name.  Patch by Rich Dawe.
31131
31132         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
31133         error from mntctl.
31134         Use mntctl's return value to drive the entry-processing loop, since
31135         we can't rely on the value of the vmt_length member in the last
31136         entry.  On some systems doing so could result in exhausting
31137         virtual memory.  Based in part on a patch from Mike Jetzer.
31138
31139 2003-04-04  Bruno Haible  <bruno@clisp.org>
31140
31141         * modules/linebreak: New file.
31142         * MODULES.html.sh (func_all_modules): Add it.
31143
31144 2003-04-04  Bruno Haible  <bruno@clisp.org>
31145
31146         * m4/linebreak.m4: New file.
31147
31148 2003-04-04  Bruno Haible  <bruno@clisp.org>
31149
31150         * lib/linebreak.h: New file, from GNU gettext.
31151         * lib/linebreak.c: New file, from GNU gettext with slight
31152         modifications.
31153         * lib/lbrkprop.h: New file, from GNU gettext.
31154
31155 2003-04-03  Bruno Haible  <bruno@clisp.org>
31156
31157         * modules/utf8-ucs4: New file.
31158         * modules/utf16-ucs4: New file.
31159         * modules/ucs4-utf8: New file.
31160         * modules/ucs4-utf16: New file.
31161         * MODULES.html.sh (func_all_modules): Add them.
31162
31163 2003-04-03  Bruno Haible  <bruno@clisp.org>
31164
31165         * m4/utf-ucs4.m4: New file.
31166         * m4/ucs4-utf.m4: New file.
31167
31168 2003-04-03  Bruno Haible  <bruno@clisp.org>
31169
31170         * lib/utf8-ucs4.h: New file, from GNU gettext.
31171         * lib/utf16-ucs4.h: New file, from GNU gettext.
31172         * lib/ucs4-utf8.h: New file, from GNU gettext.
31173         * lib/ucs4-utf16.h: New file, from GNU gettext.
31174
31175 2003-04-02  Bruno Haible  <bruno@clisp.org>
31176
31177         * modules/binary-io: New file.
31178         * MODULES.html.sh (func_all_modules): Add it.
31179
31180 2003-04-02  Bruno Haible  <bruno@clisp.org>
31181
31182         * lib/binary-io.h: New file, from GNU gettext.
31183
31184 2003-04-01  Bruno Haible  <bruno@clisp.org>
31185
31186         * modules/pathname: New file.
31187         * MODULES.html.sh (func_all_modules): Add it.
31188
31189 2003-04-01  Bruno Haible  <bruno@clisp.org>
31190
31191         * lib/pathname.h: New file, from GNU gettext.
31192         * lib/concatpath.c: New file, from GNU gettext.
31193
31194 2003-03-30  Bruno Haible  <bruno@clisp.org>
31195
31196         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
31197
31198 2003-03-30  Bruno Haible  <bruno@clisp.org>
31199
31200         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
31201         function chown() doesn't exist.
31202
31203 2003-03-28  Bruno Haible  <bruno@clisp.org>
31204
31205         * modules/copy-file: New file.
31206         * MODULES.html.sh (func_all_modules): Add it.
31207
31208 2003-03-28  Bruno Haible  <bruno@clisp.org>
31209
31210         * m4/copy-file.m4: New file.
31211
31212 2003-03-28  Bruno Haible  <bruno@clisp.org>
31213
31214         * lib/copy-file.h: New file, from GNU gettext.
31215         * lib/copy-file.c: New file, from GNU gettext.
31216
31217 2003-03-18  Jim Meyering  <jim@meyering.net>
31218
31219         * lib/quote.c (quote_n): Fix typo in comment.
31220
31221 2003-03-18  Bruno Haible  <bruno@clisp.org>
31222
31223         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
31224         checking.
31225         * m4/onceonly_2_57.m4: Likewise.
31226
31227 2003-03-17  Bruno Haible  <bruno@clisp.org>
31228
31229         * m4/onceonly.m4: Require autoconf 2.54 or newer.
31230         (m4_quote): Remove macro.
31231         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
31232
31233 2003-03-14  Jim Meyering  <jim@meyering.net>
31234
31235         Merge changes from Coreutils.
31236         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
31237         to be const, in order to avoid warnings.
31238         (obstack_room): Likewise.
31239         (obstack_empty_p): Likewise.
31240
31241 2003-03-14  Bruno Haible  <bruno@clisp.org>
31242
31243         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
31244         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
31245
31246 2003-03-13  Paul Eggert  <eggert@twinsun.com>
31247
31248         Merge changes from Bison.
31249         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
31250         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
31251         when compiling Bison 1.875's `bitset bset = obstack_alloc
31252         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
31253         * lib/hash.c: Include <stdbool.h> unconditionally.
31254
31255 2003-03-13  Paul Eggert  <eggert@twinsun.com>
31256
31257         * m4/onceonly.m4 (m4_quote): New macro.
31258         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
31259         Quote AC_FOREACH variable-expansions properly.
31260
31261 2003-03-13  Paul Eggert  <eggert@twinsun.com>
31262
31263         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
31264
31265 2003-03-09  Paul Eggert  <eggert@twinsun.com>
31266
31267         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
31268         Reported by Bruce Becker; see:
31269         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
31270
31271 2003-03-03  Paul Eggert  <eggert@twinsun.com>
31272             Bruno Haible  <bruno@clisp.org>
31273
31274         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
31275         Reported by John Hughes, see
31276         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
31277
31278 2003-02-20  Bruno Haible  <bruno@clisp.org>
31279
31280         * MODULES.html.sh (func_all_modules): Add poll.
31281
31282 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
31283
31284         * modules/poll: New file.
31285
31286 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
31287
31288         * lib/poll_.h: New file.
31289         * lib/poll.c: New file.
31290
31291 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
31292
31293         * m4/poll.m4: New file.
31294
31295 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
31296
31297         * modules/mathl: New file.
31298
31299 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
31300
31301         * lib/mathl.h: New file.
31302         * lib/acosl.c: New file.
31303         * lib/asinl.c: New file.
31304         * lib/atanl.c: New file.
31305         * lib/ceill.c: New file.
31306         * lib/cosl.c: New file.
31307         * lib/expl.c: New file.
31308         * lib/floorl.c: New file.
31309         * lib/frexpl.c: New file.
31310         * lib/ldexpl.c: New file.
31311         * lib/logl.c: New file.
31312         * lib/sincosl.c: New file.
31313         * lib/sinl.c: New file.
31314         * lib/sqrtl.c: New file.
31315         * lib/tanl.c: New file.
31316         * lib/trigl.c: New file.
31317         * lib/trigl.h: New file.
31318
31319 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
31320
31321         * m4/mathl.m4: New file.
31322
31323 2003-02-18  Bruno Haible  <bruno@clisp.org>
31324
31325         * MODULES.html.sh (func_all_modules): Add mathl.
31326
31327 2003-02-17  Bruno Haible  <bruno@clisp.org>
31328
31329         * modules/mkdtemp: New module.
31330         * MODULES.html.sh (func_all_modules): Add it.
31331
31332 2003-02-17  Bruno Haible  <bruno@clisp.org>
31333
31334         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
31335
31336 2003-02-17  Bruno Haible  <bruno@clisp.org>
31337
31338         * lib/mkdtemp.h: New file, from GNU gettext.
31339         * lib/mkdtemp.c: New file, from GNU gettext.
31340
31341 2003-02-02  Jim Meyering  <jim@meyering.net>
31342
31343         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
31344         e.g. glibc-2.2.93.
31345
31346 2003-01-31  Bruno Haible  <bruno@clisp.org>
31347
31348         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
31349         'rpl_rename'.
31350         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
31351         'rpl_strnlen'.
31352         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
31353         'rpl_strtod'.
31354         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
31355         'rpl_utime'.
31356
31357 2003-01-31  Bruno Haible  <bruno@clisp.org>
31358
31359         * lib/rename.c: #undef rename before defining rpl_rename.
31360         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
31361
31362 2003-01-30  Bruno Haible  <bruno@clisp.org>
31363
31364         * modules/vasnprintf, modules/vasprintf: New modules.
31365         * MODULES.html.sh (func_all_modules): Add them.
31366
31367 2003-01-30  Bruno Haible  <bruno@clisp.org>
31368
31369         * m4/signed.m4: New file, from GNU gettext.
31370         * m4/longdouble.m4: New file, from GNU gettext.
31371         * m4/wchar_t.m4: New file, from GNU gettext.
31372         * m4/wint_t.m4: New file, from GNU gettext.
31373         * m4/vasnprintf.m4: New file.
31374         * m4/vasprintf.m4: New file.
31375
31376 2003-01-30  Bruno Haible  <bruno@clisp.org>
31377
31378         * lib/printf-args.h: New file, from GNU gettext.
31379         * lib/printf-args.c: New file, from GNU gettext.
31380         * lib/printf-parse.h: New file, from GNU gettext.
31381         * lib/printf-parse.c: New file, from GNU gettext.
31382         * lib/vasnprintf.h: New file, from GNU gettext.
31383         * lib/vasnprintf.c: New file, from GNU gettext.
31384         * lib/asnprintf.c: New file, from GNU gettext.
31385         * lib/vasprintf.h: New file, from GNU gettext with modifications.
31386         * lib/vasprintf.c: New file, from GNU gettext.
31387         * lib/asprintf.c: New file, from GNU gettext.
31388
31389 2003-01-29  Bruno Haible  <bruno@clisp.org>
31390
31391         * modules/stpncpy: New module.
31392         * MODULES.html.sh (func_all_modules): Add it.
31393
31394 2003-01-29  Bruno Haible  <bruno@clisp.org>
31395
31396         * m4/stpncpy.m4: New file.
31397
31398 2003-01-29  Bruno Haible  <bruno@clisp.org>
31399
31400         * lib/stpncpy.h: New file, from GNU gettext with modifications.
31401         * lib/stpncpy.c: New file, from GNU gettext with modifications.
31402
31403 2003-01-28  Bruno Haible  <bruno@clisp.org>
31404
31405         * modules/c-ctype: New module.
31406         * MODULES.html.sh (func_all_modules): Add it.
31407
31408 2003-01-28  Bruno Haible  <bruno@clisp.org>
31409
31410         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
31411         Paul Eggert.
31412         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
31413         Paul Eggert.
31414
31415 2003-01-27  Bruno Haible  <bruno@clisp.org>
31416
31417         * modules/xsetenv: New module.
31418         * MODULES.html.sh (func_all_modules): Add it.
31419
31420 2003-01-27  Bruno Haible  <bruno@clisp.org>
31421
31422         * lib/xsetenv.h: New file, from GNU gettext.
31423         * lib/xsetenv.c: New file, from GNU gettext.
31424
31425 2003-01-23  Jim Meyering  <jim@meyering.net>
31426
31427         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
31428         from working on systems without dirfd (at least Irix and OSF1/Tru64).
31429
31430 2003-01-23  Bruno Haible  <bruno@clisp.org>
31431
31432         * modules/minmax: New module.
31433         * MODULES.html.sh (func_all_modules): Add it.
31434
31435 2003-01-23  Bruno Haible  <bruno@clisp.org>
31436
31437         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
31438         Eggert.
31439
31440 2003-01-22  Bruno Haible  <bruno@clisp.org>
31441
31442         * modules/exit: New module.
31443         * MODULES.html.sh (func_all_modules): Add it.
31444
31445 2003-01-22  Bruno Haible  <bruno@clisp.org>
31446
31447         * lib/exit.h: New file, from GNU gettext.
31448
31449 2003-01-19  Bruno Haible  <bruno@clisp.org>
31450
31451         * gnulib-tool: Recognize option --extract-maintainer.
31452         (func_get_maintainer): New function.
31453         * modules/*: Add Maintainer entry.
31454
31455 2003-01-16  Jim Meyering  <jim@meyering.net>
31456
31457         * m4/regex.m4: The `regex' struct is both input and output.
31458         Initialize it before each use.  Patch by Tim Waugh.
31459
31460 2003-01-16  Bruno Haible  <bruno@clisp.org>
31461
31462         * MODULES.html.sh: Add a table of contents. Add the module name as
31463         leftmost column. Add hyperlinks.
31464
31465 2003-01-15  Bruno Haible  <bruno@clisp.org>
31466
31467         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
31468
31469 2003-01-15  Bruno Haible  <bruno@clisp.org>
31470
31471         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
31472         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
31473         suffix.
31474
31475 2003-01-15  Bruno Haible  <bruno@clisp.org>
31476
31477         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
31478
31479 2003-01-15  Bruno Haible  <bruno@clisp.org>
31480
31481         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
31482         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
31483
31484 2003-01-14  Jim Meyering  <jim@meyering.net>
31485
31486         * lib/same.c (same_name): Tweak a comment.
31487
31488 2003-01-14  Bruno Haible  <bruno@clisp.org>
31489
31490         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
31491         when a string comparison is sufficient.
31492
31493 2003-01-14  Bruno Haible  <bruno@clisp.org>
31494
31495         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
31496         'unsigned int'.
31497
31498 2003-01-14  Bruno Haible  <bruno@clisp.org>
31499
31500         * lib/hash-pjw.c: Add comment about low quality of this function.
31501
31502 2003-01-13  Bruno Haible  <bruno@clisp.org>
31503
31504         * modules/stpcpy: Distribute lib/stpcpy.h.
31505         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
31506
31507 2003-01-13  Bruno Haible  <bruno@clisp.org>
31508
31509         * modules/*: Add a description.
31510         * modules/strpbrk: Fix Makefile.am snippet.
31511         * modules/strtoimax: Fix dependencies.
31512         * modules/strtoumax: Likewise.
31513
31514 2003-01-13  Bruno Haible  <bruno@clisp.org>
31515
31516         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
31517         * modules/alloca (Makefile.am): All object files depend on alloca.h.
31518         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
31519
31520 2003-01-13  Bruno Haible  <bruno@clisp.org>
31521
31522         * gnulib-tool (func_create_testdir): Store config/* files in the main
31523         directory.
31524         * config.rpath: Move to ...
31525         * config/config.rpath: ... here.
31526         * modules/gettext: Contains config/config.rpath, not config.rpath.
31527         * modules/iconv: Likewise.
31528
31529 2003-01-12  Paul Eggert  <eggert@twinsun.com>
31530
31531         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
31532         to avoid collisions with libcurses and libreadline.
31533
31534         * m4/getstr.m4: Remove.
31535         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
31536
31537 2003-01-12  Paul Eggert  <eggert@twinsun.com>
31538
31539         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
31540         to avoid collisions with libcurses and libreadline.
31541
31542         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
31543         * lib/getstr.h, getstr.c: Remove.
31544         * lib/getline.c: Include "getline.h", to check interface.
31545         Move body of old getstr.c here: this defines MIN_CHUNK and
31546         declares getdelim2, which is renamed from getstr.
31547         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
31548
31549         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
31550         All uses changed.
31551         * lib/linebuffer.h: Likewise.
31552         (readline): Remove backward-compatibility macro.
31553
31554 2003-01-12  Paul Eggert  <eggert@twinsun.com>
31555
31556         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
31557         to avoid collisions with libcurses and libreadline.
31558         * getstr: Remove.
31559         * MODULES.html.sh: Remove getstr.
31560         * modules/getline: Depend on unlocked-io, not getstr.
31561
31562 2003-01-12  Jim Meyering  <jim@meyering.net>
31563
31564         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
31565
31566 2003-01-10  Bruno Haible  <bruno@clisp.org>
31567
31568         * modules/alloca: Change Makefile.am requirements. Simplify Include
31569         requirements. Add lib/alloca_.h to file list.
31570
31571 2003-01-10  Bruno Haible  <bruno@clisp.org>
31572
31573         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
31574
31575 2003-01-10  Bruno Haible  <bruno@clisp.org>
31576
31577         * lib/alloca_.h: New file.
31578         * lib/getdate.y: Unconditionally include alloca.h.
31579         * lib/makepath.c: Likewise.
31580         * lib/setenv.c: Likewise.
31581         * lib/userspec.c: Likewise.
31582
31583 2003-01-09  Karl Berry  <karl@gnu.org>
31584
31585         * MODULES.html.sh: include `dirname $0` in PATH, to find
31586         gnulib-tool.
31587
31588 2003-01-09  Bruno Haible  <bruno@clisp.org>
31589
31590         * modules/stdbool: Change configure.ac, Makefile.am requirements.
31591         Simplify Include requirements. Add lib/stdbool.h.in to file list.
31592
31593 2003-01-09  Bruno Haible  <bruno@clisp.org>
31594
31595         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
31596
31597 2003-01-09  Bruno Haible  <bruno@clisp.org>
31598
31599         * lib/stdbool.h.in: New file.
31600
31601 2003-01-09  Bruno Haible  <bruno@clisp.org>
31602
31603         * gnulib-tool (func_all_modules): Ignore files ending in ~.
31604         * MODULES.html.sh: Likewise.
31605
31606 2003-01-08  Jim Meyering  <jim@meyering.net>
31607
31608         * lib/full-write.c: Undefine and define-away `const' after inclusion
31609         of errno.h, not before.  Suggestion from Bruno Haible.
31610
31611 2003-01-08  Bruno Haible  <bruno@clisp.org>
31612
31613         * modules/full-read: Depend on full-write.
31614
31615 2003-01-08  Bruno Haible  <bruno@clisp.org>
31616
31617         * lib/safe-read.c: Include specification header first, to ensure its
31618         selfcontainedness.
31619         * lib/full-write.c: Likewise.
31620
31621 2003-01-07  Jim Meyering  <jim@meyering.net>
31622
31623         * lib/full-write.c: Rework so that it may serve to define full_read,
31624         too.
31625         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
31626
31627 2003-01-07  Bruno Haible  <bruno@clisp.org>
31628
31629         * lib/strtoimax.c: Include <stdint.h> as an alternative to
31630         <inttypes.h>.
31631         * lib/xstrtol.h: Likewise.
31632         * lib/xstrtoimax.c: Likewise.
31633         * lib/xstrtoumax.c: Likewise.
31634         * lib/human.h: Likewise.
31635
31636         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
31637         on systems that have <inttypes.h> but not <stdint.h>.
31638
31639 2003-01-07  Bruno Haible  <bruno@clisp.org>
31640
31641         * MODULES.html.sh: Add copyright notice.
31642         (missed_files): Omit CVS directory entries.
31643         (func_module): Make it work with sed-3.02.
31644         * MODULES.txt: Remove file.
31645
31646 2003-01-06  Jim Meyering  <jim@meyering.net>
31647
31648         * lib/version-etc.c: Update year in translatable copyright string.
31649
31650 2003-01-03  Karl Berry  <karl@gnu.org>
31651
31652         * config/config.{guess,sub}: update from prep.
31653
31654 2003-01-02  Karl Berry  <karl@gnu.org>
31655
31656         * doc/COPYING.DOC: belatedly updated to 1.2.
31657
31658 2003-01-01  Karl Berry  <karl@gnu.org>
31659
31660         * gnulib-tool (func_verify_module): report module name $module in
31661         error message, not $1.
31662         * gnulib-tool (create-testdir): don't complain if destdir couldn't
31663         be created, only if it doesn't exist.
31664         * gnulib-tool (last_checkin_date): don't expand the $Date here.
31665
31666 2002-12-31  Paul Eggert  <eggert@twinsun.com>
31667
31668         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
31669
31670 2002-12-31  Paul Eggert  <eggert@twinsun.com>
31671
31672         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
31673         memcmp if strcoll doesn't work.
31674
31675 2002-12-31  Bruno Haible  <bruno@clisp.org>
31676
31677         * lib/utime.c (utime_null): No need to call ftruncate if the file was
31678         nonempty.
31679
31680 2002-12-31  Bruno Haible  <bruno@clisp.org>
31681
31682         * lib/memcoll.c (STRCOLL): New macro.
31683         (memcoll): Use it.
31684
31685 2002-12-31  Bruno Haible  <bruno@clisp.org>
31686
31687         * lib/localcharset.h: New file.
31688         * lib/localcharset.c: Include it.
31689         * lib/unicodeio.c: Likewise.
31690
31691 2002-12-31  Bruno Haible  <bruno@clisp.org>
31692
31693         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
31694         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
31695
31696 2002-12-31  Bruno Haible  <bruno@clisp.org>
31697
31698         * lib/getline.h: Include <stddef.h>, for size_t.
31699
31700         * lib/unicodeio.h: Include <stddef.h>, for size_t.
31701         * lib/unicodeio.c: Don't include <stddef.h>.
31702
31703 2002-12-31  Bruno Haible  <bruno@clisp.org>
31704
31705         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
31706         HAVE_TM_ZONE.
31707
31708 2002-12-24  Karl Berry  <karl@gnu.org>
31709
31710         * config/config.guess: update from prep.
31711
31712 2002-12-24  Bruno Haible  <bruno@clisp.org>
31713
31714         General infrasructure.
31715         * m4/README: Rewritten.
31716         * m4/onceonly.m4: New file.
31717         * m4/onceonly_2_57.m4: New file.
31718
31719         Module atexit.
31720         * m4/atexit.m4: New file.
31721
31722         Module strtod.
31723         * m4/strtod.m4: New file.
31724
31725         Module strtol.
31726         * m4/strtol.m4: New file.
31727
31728         Module strtoul.
31729         * m4/strtoul.m4: New file.
31730
31731         Module memchr.
31732         * m4/memchr.m4: New file.
31733
31734         Module memcmp.
31735         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
31736         (jm_FUNC_MEMCMP): Invoke it.
31737
31738         Module memcpy.
31739         * m4/memcpy.m4: New file.
31740
31741         Module memmove.
31742         * m4/memmove.m4: New file.
31743
31744         Module memset.
31745         * m4/memset.m4: New file.
31746
31747         Module strcspn.
31748         * m4/strcspn.m4: New file.
31749
31750         Module strpbrk.
31751         * m4/strpbrk.m4: New file.
31752
31753         Module strstr.
31754         * m4/strstr.m4: New file.
31755
31756         Module strerror.
31757         * m4/strerror.m4: New file.
31758
31759         Module mktime.
31760         * m4/mktime.m4: Renamed from jm-mktime.m4.
31761         (gl_PREREQ_MKTIME): New macro.
31762         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
31763
31764         Module malloc.
31765         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
31766         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
31767         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
31768
31769         Module realloc.
31770         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
31771         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
31772         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
31773
31774         Module strftime.
31775         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
31776         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
31777         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
31778         gl_TM_GMTOFF.
31779         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
31780
31781         Module xalloc.
31782         * m4/xalloc.m4: New file.
31783
31784         Module alloca.
31785         * m4/alloca.m4: New file.
31786
31787         Module putenv.
31788         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
31789         (jm_FUNC_PUTENV): Invoke it.
31790
31791         Module setenv.
31792         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
31793         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
31794         when invoked twice.
31795         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
31796         gt_FUNC_SETENV.
31797
31798         Module memrchr.
31799         * m4/memrchr.m4: New file.
31800
31801         Module stpcpy.
31802         * m4/stpcpy.m4: New file.
31803
31804         Module strcase.
31805         * m4/strcase.m4: New file.
31806
31807         Module strdup.
31808         * m4/strdup.m4: New file.
31809
31810         Module strnlen.
31811         * m4/strnlen.m4: New file.
31812
31813         Module strndup.
31814         * m4/strndup.m4: New file.
31815
31816         Module xstrtod.
31817         * m4/xstrtod.m4: New file.
31818
31819         Module xstrtol.
31820         * m4/xstrtol.m4: New file.
31821
31822         Module getdate.
31823         * m4/getdate.m4: New file.
31824
31825         Module unlocked-io.
31826         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
31827         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
31828         * m4/jm-glibc-io.m4n: Remove file.
31829
31830         Module long-options.
31831         * m4/long-options.m4: New file.
31832
31833         Module md5.
31834         * m4/md5.m4: New file.
31835
31836         Module sha.
31837         * m4/sha.m4: New file.
31838
31839         Module getstr.
31840         * m4/getstr.m4: New file.
31841
31842         Module getline.
31843         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
31844         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
31845         <sys/types.h>, for size_t. Use the function name gnu_getline, not
31846         simply getline. Infoke gl_PREREQ_GETLINE.
31847
31848         Module obstack.
31849         * m4/obstack.m4: New file.
31850
31851         Module hash.
31852         * m4/hash.m4: New file.
31853
31854         Module readtokens.
31855         * m4/readtokens.m4: New file.
31856
31857         Module strverscmp.
31858         * m4/strverscmp.m4: New file.
31859
31860         Module stdbool.
31861         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
31862         OSF/1.
31863
31864         Module strtoll.
31865         * m4/strtoll.m4: New file.
31866
31867         Module strtoull.
31868         * m4/strtoull.m4: New file.
31869
31870         Module strtoimax.
31871         * m4/strtoimax.m4: New file.
31872
31873         Module strtoumax.
31874         * m4/strtoumax.m4: New file.
31875
31876         Module xstrtoimax.
31877         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
31878         jm_AC_PREREQ_XSTRTOIMAX.
31879         Moved the strtol prerequisites to strtol.m4.
31880         Moved the strtoll prerequisites to strtoll.m4.
31881         Moved the strtoimax prerequisites to strtoimax.m4.
31882
31883         Module xstrtoumax.
31884         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
31885         jm_AC_PREREQ_XSTRTOUMAX.
31886         Moved the strtoul prerequisites to strtoul.m4.
31887         Moved the strtoull prerequisites to strtoull.m4.
31888         Moved the strtoumax prerequisites to strtoumax.m4.
31889
31890         Module chown.
31891         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
31892         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
31893
31894         Module dup2.
31895         * m4/dup2.m4: New file.
31896
31897         Module ftruncate.
31898         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
31899         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
31900
31901         Module getgroups.
31902         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
31903         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
31904
31905         Module gettimeofday.
31906         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
31907         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
31908         gl_PREREQ_GETTIMEOFDAY.
31909
31910         Module mkdir.
31911         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
31912         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
31913
31914         Module mkstemp.
31915         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
31916         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
31917         jm_AC_TYPE_UINTMAX_T.
31918         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
31919
31920         Module stat.
31921         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
31922         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
31923
31924         Module lstat.
31925         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
31926         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
31927
31928         Module timespec.
31929         * m4/timespec.m4 (gl_TIMESPEC): New macro.
31930         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
31931         * m4/st_mtim.m4: Indentation.
31932
31933         Module nanosleep.
31934         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
31935         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
31936         gl_PREREQ_NANOSLEEP.
31937
31938         Module regex.
31939         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
31940         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
31941         (gl_REGEX): New macro.
31942
31943         Module rename.
31944         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
31945         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
31946
31947         Module rmdir.
31948         * m4/rmdir.m4: New file.
31949
31950         Module utime.
31951         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
31952         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
31953         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
31954
31955         Module dirname.
31956         * m4/dirname.m4: New file.
31957
31958         Module getopt.
31959         * m4/getopt.m4: New file.
31960
31961         Module unistd-safer.
31962         * m4/unistd-safer.m4: New file.
31963
31964         Module fnmatch.
31965         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
31966         declaration.
31967         (gl_PREREQ_FNMATCH_EXTRA): New macro.
31968         (gl_FUNC_FNMATCH_POSIX): New macro.
31969         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
31970         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
31971         simply fnmatch.
31972
31973         Module exclude.
31974         * m4/exclude.m4: New file.
31975
31976         Module human.
31977         * m4/human.m4: New file.
31978
31979         Module acl.
31980         * m4/acl.m4: Nop.
31981
31982         Module backupfile.
31983         * m4/backupfile.m4: New file.
31984         * m4/d-ino.m4: Indentation.
31985
31986         Module fsusage.
31987         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
31988         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
31989         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
31990
31991         Module dirfd.
31992         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
31993         requirements.
31994
31995         Module euidaccess.
31996         * m4/euidaccess.m4: New file.
31997
31998         Module file-type.
31999         * m4/file-type.m4: New file.
32000
32001         Module fileblocks.
32002         * m4/fileblocks.m4: New file.
32003
32004         Module filemode.
32005         * m4/filemode.m4: New file.
32006
32007         Module isdir.
32008         * m4/isdir.m4: New file.
32009
32010         Module lchown.
32011         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
32012         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
32013
32014         Module makepath.
32015         * m4/makepath.m4: New file.
32016
32017         Module modechange.
32018         * m4/modechange.m4: New file.
32019
32020         Module mountlist.
32021         * m4/mountlist.m4: New file.
32022         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
32023         Indentation.
32024
32025         Module path-concat.
32026         * m4/path-concat.m4: New file.
32027
32028         Module pathmax.
32029         * m4/pathmax.m4: New file.
32030
32031         Module same.
32032         * m4/same.m4: New file.
32033
32034         Module save-cwd.
32035         * m4/save-cwd.m4: New file.
32036
32037         Module savedir.
32038         * m4/savedir.m4: New file.
32039
32040         Module xgetcwd.
32041         * m4/xgetcwd.m4: New file.
32042         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
32043
32044         Module xreadlink.
32045         * m4/xreadlink.m4: New file.
32046
32047         Module safe-read.
32048         * m4/safe-read.m4: New file.
32049
32050         Module safe-write.
32051         * m4/safe-write.m4: New file.
32052
32053         Module closeout.
32054         * m4/closeout.m4: New file.
32055
32056         Module stdio-safer.
32057         * m4/stdio-safer.m4: New file.
32058
32059         Module getpass.
32060         * m4/getpass.m4: New file.
32061
32062         Module getugroups.
32063         * m4/getugroups.m4: New file.
32064
32065         Module group-member.
32066         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
32067         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
32068
32069         Module idcache.
32070         * m4/idcache.m4: New file.
32071
32072         Module userspec.
32073         * m4/userspec.m4: New file.
32074
32075         Module gettime.
32076         * m4/clock_time.m4: New file.
32077         * m4/gettime.m4: New file.
32078
32079         Module settime.
32080         * m4/settime.m4: New file.
32081
32082         Module posixtm.
32083         * m4/posixtm.m4: New file.
32084
32085         Module gethostname.
32086         * m4/gethostname.m4: New file.
32087
32088         Module canon-host.
32089         * m4/canon-host.m4: New file.
32090
32091         Module gettext.
32092         * m4/codeset.m4: New file, from gettext-0.11.5.
32093         * m4/gettext.m4: New file, from gettext-0.11.5.
32094         * m4/glibc21.m4: New file, from gettext-0.11.5.
32095         * m4/iconv.m4: New file, from gettext-0.11.5.
32096         * m4/intdiv0.m4: New file, from gettext-0.11.5.
32097         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
32098         * m4/inttypes.m4: New file, from gettext-0.11.5.
32099         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
32100         * m4/isc-posix.m4: New file, from gettext-0.11.5.
32101         * m4/lcmessage.m4: New file, from gettext-0.11.5.
32102         * m4/lib-ld.m4: New file, from gettext-0.11.5.
32103         * m4/lib-link.m4: New file, from gettext-0.11.5.
32104         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
32105         * m4/progtest.m4: New file, from gettext-0.11.5.
32106         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
32107         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
32108         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
32109
32110         Module localcharset.
32111         * m4/localcharset.m4: New file.
32112
32113         Module hard-locale.
32114         * m4/hard-locale.m4: New file.
32115
32116         Module mbswidth.
32117         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
32118         onceonly macros.
32119         * m4/mbrtowc.m4: Add comment.
32120
32121         Module memcasecmp.
32122         * m4/memcasecmp.m4: New file.
32123
32124         Module memcoll.
32125         * m4/memcoll.m4: New file.
32126
32127         Module unicodeio.
32128         * m4/unicodeio.m4: New file.
32129
32130         Module rpmatch.
32131         * m4/rpmatch.m4: New file.
32132
32133         Module yesno.
32134         * m4/yesno.m4: New file.
32135
32136         Module exitfail.
32137         * m4/exitfail.m4: New file.
32138
32139         Module c-stack.
32140         * m4/c-stack.m4 (gl_C_STACK): New macro.
32141         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
32142
32143         Module error.
32144         * m4/error.m4 (gl_ERROR): New macro.
32145         (jm_PREREQ_ERROR): Use onceonly macros.
32146
32147         Module fatal.
32148         * m4/fatal.m4: New file.
32149
32150         Module getloadavg.
32151         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
32152         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
32153
32154         Module getpagesize.
32155         * m4/getpagesize.m4: New file.
32156
32157         Module getusershell.
32158         * m4/getusershell.m4: New file.
32159
32160         Module physmem.
32161         * m4/physmem.m4: New file.
32162
32163         Module posixver.
32164         * m4/posixver.m4: New file.
32165
32166         Module quotearg.
32167         * m4/quotearg.m4: New file.
32168
32169         Module quote.
32170         * m4/quote.m4: New file.
32171
32172         Module readutmp.
32173         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
32174
32175         Module sig2str.
32176         * m4/sig2str.m4: New file.
32177
32178         Other.
32179         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
32180         ulonglong.m4.
32181         * m4/intmax_t.m4: New file.
32182         * m4/d-type.m4: Indentation.
32183         * m4/jm-macros.m4: Update.
32184         * m4/prereq.m4 (jm_PREREQ): Update.
32185         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
32186         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
32187         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
32188         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
32189         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
32190         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
32191         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
32192         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
32193         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
32194         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
32195         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
32196         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
32197         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
32198         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
32199         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
32200         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
32201         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
32202         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
32203         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
32204
32205 2002-12-24  Bruno Haible  <bruno@clisp.org>
32206
32207         * MODULES.txt: Update according to m4/ changes.
32208
32209         Module gettext.
32210         * config.rpath: New file, from gettext-0.11.5.
32211
32212         * modules/*: New module descriptions.
32213         * gnulib-tool: New file.
32214         * MODULES.html.sh: New file.
32215
32216 2002-12-21  Karl Berry  <karl@gnu.org>
32217
32218         * doc/fdl.texi: update to version 1.2.
32219
32220 2002-12-19  Karl Berry  <karl@gnu.org>
32221
32222         * config/config.guess: update from prep.
32223
32224 2002-12-18  Bruno Haible  <bruno@clisp.org>
32225
32226         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
32227         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
32228
32229 2002-12-17  Bruno Haible  <bruno@clisp.org>
32230
32231         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
32232         stdlib.h, string.h.
32233
32234 2002-12-17  Bruno Haible  <bruno@clisp.org>
32235
32236         * lib/canon-host.c (strdup): Remove unused declaration.
32237
32238         * lib/fsusage.c: Include full_read.h.
32239         (get_fs_usage): Use full_read instead of safe_read.
32240
32241         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
32242
32243 2002-12-12  Karl Berry  <karl@gnu.org>
32244
32245         * config/config.guess: update from prep.
32246
32247 2002-12-11  Bruno Haible  <bruno@clisp.org>
32248
32249         * m4/setenv.m4: New file, from gettext-0.11.5.
32250
32251 2002-12-11  Bruno Haible  <bruno@clisp.org>
32252
32253         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
32254         not unsetenv().
32255         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
32256         modifications:
32257
32258         2002-12-11  Bruno Haible  <bruno@clisp.org>
32259
32260                 * setenv.c (alloca): Fall back to malloc.
32261                 (freea): New macro.
32262                 (setenv): Use freea() to free memory allocated with alloca().
32263
32264         2002-11-13  Bruno Haible  <bruno@clisp.org>
32265
32266                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
32267                 function declarations.
32268                 * unsetenv.c (unsetenv): Likewise.
32269
32270         2002-03-04  Bruno Haible  <bruno@clisp.org>
32271
32272                 Portability to AIX 4.3.3.
32273                 * unsetenv.c: New file, extracted from setenv.c.
32274                 * setenv.c: Move the unsetenv() function to unsetenv.c.
32275
32276         2001-12-20  Bruno Haible  <bruno@clisp.org>
32277
32278                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
32279                 use malloc instead. For SunOS 4.
32280
32281         2001-12-11  Bruno Haible  <bruno@clisp.org>
32282
32283                 * setenv.c: Declare alloca.
32284                 (compar_fn_t): New typedef.
32285                 (KNOWN_VALUE, STORE_VALUE): Use it.
32286
32287         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
32288         setenv.h.
32289
32290 2002-12-10  Paul Eggert  <eggert@twinsun.com>
32291
32292         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
32293         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
32294         Choose values that are less likely to collide with system fnmatch
32295         options.
32296         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
32297         defined (e.g., a pure POSIX system).
32298         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
32299         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
32300
32301 2002-12-06  Paul Eggert  <eggert@twinsun.com>
32302
32303         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
32304         a pain in practice to deal with generated m4 files.  This change
32305         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
32306
32307         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
32308         and jm-glibc-io.m4, as they are no longer a special case.
32309         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
32310         kludge and the auto-generation stuff.  Check only whether the
32311         functions are declared, not whether they exist, since older hosts
32312         that don't declare the functions can't use the optimization anyway.
32313
32314 2002-12-06  Jim Meyering  <jim@meyering.net>
32315
32316         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
32317
32318         Merge in changes from libc's misc/error.c, in preparation
32319         for the merge of gnulib's changes back into libc.
32320
32321         * lib/error.c (_): Define only if not already defined.
32322         Move definition to follow all #include directives.
32323         Include unlocked-io.h only if !_LIBC.
32324         [_LIBC]: Include <libio/libioP.h>.
32325         [USE_IN_LIBIO]: Include <libio/iolibio.h>
32326         (fflush): Tweak definition to use INTUSE.
32327         (putc): Define.
32328
32329 2002-12-05  Paul Eggert  <eggert@twinsun.com>
32330
32331         * lib/alloca.c [defined emacs]: Include "lisp.h".
32332         (xalloc_die) [defined emacs]: New macro.
32333         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
32334         [! defined emacs]: Include <xalloc.h>.
32335         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
32336         (pointer): Typedef to POINTER_TYPE *.
32337         (malloc): Remove decl; we now always use xmalloc.
32338         (alloca): Use old-style definition, since Emacs needs this.
32339         Check for arithmetic overflow when computing combined size.
32340
32341 2002-12-04  Paul Eggert  <eggert@twinsun.com>
32342
32343         Do not generate unlocked-io.h automatically, since it's easier to
32344         maintain it by hand.
32345
32346         * lib/unlocked-io.h: New file, from GNU diffutils,
32347         but with proper copyright notice and attribution.
32348         * lib/gen-uio: Remove.
32349         * lib/Makefile.am: Add copyright notice.
32350         (libfetish_a_SOURCES): Add unlocked-io.h.
32351         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
32352         (DISTCLEANFILES, io_functions): Remove macros.
32353         (EXTRA_DIST): Remove gen_uio.
32354         (unlocked-io.h): Remove rule.
32355
32356 2002-12-04  Jim Meyering  <jim@meyering.net>
32357
32358         Reflect the fact that stat.c and lstat.c are no longer generated.
32359         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
32360         (DISTCLEANFILES): Likewise.
32361         (EXTRA_DIST): Likewise.
32362         (all_local): Don't depend on stat.c or lstat.c.
32363         (stat.c, lstat.c): Remove rules.
32364         (EXTRA_DIST): Remove xstat.in.
32365
32366         * lib/xstat.in: Remove file.  Contents moved into stat.c.
32367         * lib/stat.c: New file.  Contents mostly from xstat.in.
32368         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
32369         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
32370
32371         * lib/safe-read.c: Rework so that it may serve to define safe_write,
32372         too.
32373         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
32374
32375 2002-12-03  Jim Meyering  <jim@meyering.net>
32376
32377         * lib/safe-read.c, safe-write.c: Change variable names and comments,
32378         but not semantics, to minimize the differences between these two files.
32379         (safe_read): Change comment to mention SAFE_READ_ERROR.
32380
32381         * lib/safe-read.c (IS_EINTR): Define.
32382         (safe_read): Use IS_EINTR in place of in-function cpp directives.
32383
32384 2002-12-02  Jim Meyering  <jim@meyering.net>
32385
32386         * lib/safe-read.c (EINTR): Define.
32387         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
32388         (INT_MAX): Provide fallback.
32389         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
32390
32391         * lib/safe-read.h (SAFE_READ_ERROR): Define.
32392
32393 2002-12-02  Bruno Haible  <bruno@clisp.org>
32394
32395         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
32396         Define, taken from safe-read.c.
32397         (INT_MAX): Provide fallback.
32398         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
32399         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
32400
32401         * lib/safe-read.c (EINTR): Remove definition.
32402         (safe_read): Don't use EINTR if it is absent.
32403
32404 2002-12-01  Jim Meyering  <jim@meyering.net>
32405
32406         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
32407         zero.
32408         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
32409
32410 2002-11-27  Paul Eggert  <eggert@twinsun.com>
32411
32412         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
32413         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
32414         with `if (! (value < limit)) abort ();', for readability.
32415
32416 2002-11-26  Karl Berry  <karl@gnu.org>
32417
32418         * lib/strdup.c: copy from libc again, with jim's ok.
32419         * lib/.cppi-disable: re-add strdup.c
32420
32421 2002-11-25  Karl Berry  <karl@gnu.org>
32422
32423         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
32424         instead of "strtol.c".
32425
32426 2002-11-25  Karl Berry  <karl@gnu.org>
32427
32428         * config/install-sh: update from automake for variable quoting, $0 in
32429         error msgs, etc.
32430
32431         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
32432         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
32433         entry.
32434
32435 2002-11-25  Jim Meyering  <jim@meyering.net>
32436
32437         * lib/mktime.c: Sync from libc, now that it has the latest fix.
32438
32439 2002-11-24  Karl Berry  <karl@gnu.org>
32440
32441         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
32442         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
32443
32444 2002-11-24  Jim Meyering  <jim@meyering.net>
32445
32446         Update from coreutils:
32447
32448         * lib/mktime.c: Merge in changes from libc.
32449
32450         Avoid a link-time failure on some Linux systems.
32451         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
32452         (otherwise).
32453         (__mon_yday): Declare with the STATIC attribute.
32454         (__mktime_internal): Likewise.
32455         Based on a report from Greg Schafer.
32456
32457 2002-11-23  Jim Meyering  <jim@meyering.net>
32458
32459         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
32460         Use `unsigned', not `int', as type of index.
32461
32462         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
32463
32464         * lib/fsusage.c: Remove unneeded parentheses around operands of
32465         `defined'.
32466
32467 2002-11-22  Paul Eggert  <eggert@twinsun.com>
32468
32469         * lib/quotearg.h: Allow multiple inclusion by surrounding with
32470         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
32471         so that we can be included first.
32472         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
32473         * lib/quotearg.c: Include quotearg.h immediately after config.h.
32474         No need to include stddef.h or sys/types.h any more.
32475         Surround local include files with "", not "<>".
32476         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
32477         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
32478         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
32479         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
32480         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
32481         (ISPRINT): Remove; no longer needed now that we assume C89.
32482
32483         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
32484         Preserve errno.
32485
32486         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
32487         quotearg_char): Use SIZE_MAX rather than
32488         (size_t) -1 when we are talking about "infinity".
32489
32490         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
32491
32492 2002-11-22  Paul Eggert  <eggert@twinsun.com>
32493
32494         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
32495         hint that one should use `if (! x) abort ();' rather than `assert
32496         (x);', and anyway it's one less thing to worry about configuring.
32497         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
32498         hash_rehash, hash_insert): Use abort rather than assert.
32499
32500 2002-11-22  Bruno Haible  <bruno@clisp.org>
32501
32502         * lib/safe-read.h: Assume C89. Add comments.
32503         (safe_read): Change return type to size_t.
32504         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
32505         byte counts > SSIZE_MAX correctly.
32506         * lib/safe-write.h: New file.
32507         * lib/safe-write.c: New file.
32508         * lib/full-read.h: New file.
32509         * lib/full-read.c: New file.
32510         * lib/full-write.h: Assume C89. Add comments.
32511         * lib/full-write.c: Include safe-write.h.
32512         (full_write): Rewritten to use safe_write.
32513         Suggested by Jim Meyering and Paul Eggert.
32514
32515 2002-11-21  Jim Meyering  <jim@meyering.net>
32516
32517         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
32518
32519         Merge in changes from the coreutils.
32520
32521         2002-09-25  Paul Eggert  <eggert@twinsun.com>
32522         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
32523         <stdint.h>.
32524         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
32525         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
32526         int.  Work more efficiently if X is the same width as uintmax_t.
32527         Do not compare X to -1, to avoid bogus compiler warning.
32528         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
32529         Don't assume that f_frsize and f_bsize are the same type.
32530
32531         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
32532         warning on FreeBSD.
32533
32534         * lib/makepath.c (make_path): Restore umask *before* creating the final
32535         component.
32536         (make_path): Minor reformatting.
32537
32538         * lib/xmalloc.c: Adjust to work with new autoconf macros,
32539         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
32540         HAVE_MALLOC/HAVE_REALLOC.
32541
32542         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
32543         dummy ones.  At least on GNU/Linux systems, `auto' means something
32544         else.
32545         From Michael Stone.
32546
32547 2002-11-21  Bruno Haible  <bruno@clisp.org>
32548
32549         Remove case insensitive option matching.
32550         * lib/argmatch.h (argcasematch): Remove declaration.
32551         (ARGCASEMATCH): Remove macro.
32552         (__xargmatch_internal): Remove case_sensitive argument.
32553         (XARGMATCH): Update.
32554         (XARGCASEMATCH): Remove macro.
32555         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
32556         case_sensitive argument.
32557         (argcasematch): Remove function.
32558         (__xargmatch_internal): Remove case_sensitive argument.
32559         (main): Use XARGMATCH instead of XARGCASEMATCH.
32560
32561         * lib/xmalloc.c: Change compile-time error message. Add comment about
32562         required autoconf version.
32563
32564 2002-11-20  Paul Eggert  <eggert@twinsun.com>
32565
32566         Merge argmatch cleanups from Bison.  Assume C89.
32567
32568         * lib/argmatch.c: Include config.h here, not in argmatch.h.
32569         Include stdlib.h, for EXIT_FAILURE.
32570         Always include <string.h>, since we assume C89.
32571         (EXIT_FAILURE): Remove pre-C89 bug workaround.
32572         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
32573         Include <stddef.h> instead, since it's all we need for size_t.
32574         (PARAMS): Remove.  All uses removed.
32575         (ARRAY_CARDINALITY): Do not bother to #undef.
32576         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
32577         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
32578         Remove unnecessary parentheses.
32579         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
32580         Insert necessary parentheses.
32581         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
32582         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
32583
32584 2002-11-19  Bruno Haible  <bruno@clisp.org>
32585
32586         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
32587         * lib/mbswidth.h: Include <stddef.h>, for size_t.
32588
32589         * lib/mbswidth.h (PARAMS): Remove macro.
32590         (mbswidth, mbsnwidth): Use ANSI C function declarations.
32591         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
32592
32593         * lib/gcd.h (PARAMS): Remove macro.
32594         (gcd): Use ANSI C function declarations.
32595         * lib/gcd.c (gcd): Likewise.
32596
32597 2002-11-15  Bruno Haible  <bruno@clisp.org>
32598
32599         * lib/strcspn.c: Include <stddef.h>.
32600         (strcspn): Use ANSI C function declaration. Change return type to
32601         size_t. Use NULL.
32602         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
32603         (strpbrk): Use NULL.
32604         * lib/strpbrk.h (PARAMS): Remove macro.
32605         (strpbrk): Use ANSI C function declaration.
32606         * lib/strstr.c: Don't include <sys/types.h>.
32607         * lib/strstr.h (PARAMS): Remove macro.
32608         (strstr): Use ANSI C function declarations.
32609
32610 2002-11-14  Karl Berry  <karl@gnu.org>
32611
32612         * config/mkinstalldirs: `do' on separate line, instead of
32613         `for var; do'.
32614
32615 2002-11-06  Bruno Haible  <bruno@clisp.org>
32616
32617         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
32618         * lib/gcd.c (gcd): Likewise.
32619
32620 2002-11-05  Bruno Haible  <bruno@clisp.org>
32621
32622         * lib/gcd.h: New file, from gettext-0.11.5.
32623         * lib/gcd.c: New file, from gettext-0.11.5.
32624
32625 2002-11-05  Bruno Haible  <bruno@clisp.org>
32626
32627         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
32628         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
32629         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
32630         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
32631
32632         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
32633         <libintl.h>.
32634         * lib/makepath.c: Include gettext.h instead of <locale.h> and
32635         <libintl.h>.
32636
32637         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
32638         * lib/human.c: Include gettext.h instead of <libintl.h>.
32639         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
32640         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
32641         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
32642         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
32643         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
32644         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
32645         (textdomain): Remove definition.
32646         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
32647
32648         * lib/long-options.c: Remove include of <libintl.h> and definition of
32649         _.
32650         * lib/same.c: Remove include of <libintl.h> and definition of _.
32651
32652 2002-11-04  Owen Taylor  <otaylor@redhat.com>
32653
32654         * lib/config.charset: A few additions for Solaris.
32655
32656 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
32657
32658         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
32659         * lib/localcharset.c (locale_charset): Declare as extern "C".
32660
32661 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
32662
32663         * lib/config.charset: msdos in uk_UA uses CP1125.
32664
32665 2002-11-04  Bruno Haible  <bruno@clisp.org>
32666
32667         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
32668         * lib/strcase.h: New file, from GNU gettext-0.11.5.
32669         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
32670         * lib/strstr.h: New file, from GNU gettext-0.11.5.
32671         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
32672
32673 2002-11-04  Bruno Haible  <bruno@clisp.org>
32674
32675         * lib/localcharset.c (locale_charset): Don't return an empty string.
32676
32677 2002-11-04  Bruno Haible  <bruno@clisp.org>
32678
32679         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
32680         aliases.
32681
32682 2002-11-04  Bruno Haible  <bruno@clisp.org>
32683
32684         * lib/config.charset: Update for newest glibc. Add canonical names
32685         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
32686
32687 2002-11-04  Bruno Haible  <bruno@clisp.org>
32688
32689         * lib/config.charset: Add support for NetBSD.
32690
32691 2002-11-04  Bruno Haible  <bruno@clisp.org>
32692
32693         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
32694
32695 2002-11-01  Bruno Haible  <bruno@clisp.org>
32696
32697         * configure.in: Add AC_CONFIG_AUX_DIR call.
32698         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
32699         test/Makefile.
32700         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
32701
32702 2002-09-28  Karl Berry  <karl@gnu.org>
32703
32704         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
32705         installed automake until the next release, since changes have been
32706         made.
32707
32708 2002-09-25  Karl Berry  <karl@gnu.org>
32709
32710         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
32711         * lib/getopt*: copy from libc/posix.
32712         * lib/gettext.h: copy from gettext.
32713         * lib/.cppi-disable: add strdup.c, gettext.h.
32714
32715 2002-09-25  Karl Berry  <karl@gnu.org>
32716
32717         * config/srclist.txt: enable gettext.h check.
32718         * config/config.{guess,sub}: update from prep.
32719         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
32720                 from automake 1.6.3.
32721         See srclist*.
32722
32723 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
32724
32725         * regex.c (PATFETCH): Remove the translating fetch.
32726         (PATFETCH_RAW): Rename to PATFETCH.
32727         (set_image_of_range): New fun.
32728         (SET_RANGE_TABLE_WORK_AREA): Use it.
32729         (regex_compile): Don't translate the pattern chars so eagerly.
32730         Only do it when inserting an `exactn' bytecode or when handling
32731         a char-range.
32732         (mutually_exclusive_p): Avoid empty statement.
32733
32734 2002-07-06  Jim Meyering  <meyering@lucent.com>
32735
32736         * m4/README: Don't mention Makefile.am.in.
32737         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
32738
32739 2002-07-01  Jim Meyering  <meyering@lucent.com>
32740
32741         * lib/c-stack.c: Include sys/time.h.
32742         From Volker Borchert.
32743
32744 2002-06-26  Paul Eggert  <eggert@twinsun.com>
32745
32746         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
32747
32748 2002-06-26  Paul Eggert  <eggert@twinsun.com>
32749
32750         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
32751         New macro.  Use it uniformly instead of
32752         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
32753         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
32754         reported by Vin Shelton.
32755
32756 2002-06-22  Paul Eggert  <eggert@twinsun.com>
32757
32758         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
32759         Do not assume SA_SIGINFO behavior.
32760         Bug reported by Jim Meyering on NetBSD 1.5.2.
32761
32762 2002-06-22  Jim Meyering  <meyering@lucent.com>
32763
32764         * m4/c-stack.m4: New file, from diffutils-2.8.2.
32765         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
32766
32767         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
32768         now that configure.ac uses AC_GNU_SOURCE.
32769         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
32770         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
32771
32772         Update to latest tools.  Suggestions from Paul Eggert.
32773         * m4/stdbool.m4: New file, from diffutils-2.8.2.
32774         * m4/gnu-source.m4: Update from diffutils-2.8.2.
32775         * m4/fnmatch.m4: Likewise.
32776         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
32777         to AC_HEADER_STDBOOL
32778
32779 2002-06-22  Jim Meyering  <meyering@lucent.com>
32780
32781         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
32782         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
32783
32784 2002-06-22  Jim Meyering  <meyering@lucent.com>
32785
32786         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
32787
32788         * lib/exitfail.c, exitfail.h: Likewise.
32789         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
32790
32791         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
32792         of fnmatch.h.
32793         (EXTRA_DIST): Add fnmatch_loop.c.
32794         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
32795
32796         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
32797         * lib/fnmatch.c: Update from diffutils-2.8.2.
32798         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
32799         * lib/fnmatch.h: Remove file.
32800
32801 2002-06-21  Jim Meyering  <meyering@lucent.com>
32802
32803         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
32804         * m4/mbrtowc.m4: Likewise.
32805
32806         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
32807         * m4/mbswidth.m4: Reflect name change:
32808         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
32809         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
32810
32811         * m4/lib-link.m4: Update from gettext-0.11.2.
32812         * m4/gettext.m4: Likewise.
32813
32814         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
32815         From Alfred M. Szmidt.
32816
32817 2002-06-18  Paul Eggert  <eggert@twinsun.com>
32818
32819         * lib/file-type.h: Report an error if neither S_ISREG nor
32820         S_IFREG is defined, instead of using a test specific to glibc
32821         2.2.  This should be safe, since POSIX requires S_ISREG and
32822         Unix Version 7 had S_IFREG.  We don't need to check for
32823         <sys/types.h> since we don't use any symbols that it defines.
32824
32825 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
32826
32827         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
32828         $@-t, so that each temporary file name is unique and valid in the first
32829         8 characters, for operation under DOS.
32830
32831 2002-06-15  Paul Eggert  <eggert@twinsun.com>
32832
32833         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
32834
32835 2002-06-15  Jim Meyering  <meyering@lucent.com>
32836
32837         Work even with DJGPP 2.03, which lacks support for symlinks.
32838         From Richard Dawe.
32839         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
32840         is defined.
32841         * lib/lchown.c (S_ISLNK): Likewise.
32842
32843 2002-06-15  Jim Meyering  <meyering@lucent.com>
32844
32845         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
32846         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
32847         have been included before this file.
32848
32849 2002-06-14  Jim Meyering  <meyering@lucent.com>
32850
32851         * lib/file-type.h: Use the version from diffutils-2.8.2.
32852         * lib/file-type.c: Likewise.
32853
32854 2002-06-07  Jim Meyering  <meyering@lucent.com>
32855
32856         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
32857         They're needed at least for NetBSD 1.5.2.
32858         ($statxfs_includes): Include those same headers.
32859         ($statxfs_includes): Include sys/vfs.h if available.
32860         ($statxfs_includes): Likewise for sys/statvfs.h.
32861         Check for the following members in both structs statfs and statvfs:
32862         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
32863
32864 2002-06-01  Jim Meyering  <meyering@lucent.com>
32865
32866         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
32867         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
32868
32869 2002-05-28  Jim Meyering  <meyering@lucent.com>
32870
32871         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
32872         Reported by Volker Borchert.
32873
32874 2002-05-27  Jim Meyering  <meyering@lucent.com>
32875
32876         Fix a problem seen only on nonconforming systems whereby ls.c's
32877         use of localtime, and then of gettimeofday would cause trouble:
32878         the localtime call used to initialize rpl_gettimeofday's save
32879         mechanism would clobber ls's current local time information so
32880         that in any long listing the first file would always be listed
32881         with date 1970-01-01.  Analysis by Volker Borchert.
32882
32883         * lib/gettimeofday.c (localtime): Undefine.
32884         (rpl_localtime): New function.
32885
32886 2002-05-27  Jim Meyering  <meyering@lucent.com>
32887
32888         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
32889         localtime.
32890
32891         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
32892         use the replacement function; it wouldn't resolve at link time.
32893         Reported by Volker Borchert.
32894
32895 2002-05-22  Jim Meyering  <meyering@lucent.com>
32896
32897         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
32898         file-type.h.
32899         * lib/file-type.h: New file.
32900         * lib/file-type.c (file_type): New file/function.  Extracted from
32901         diffutils.
32902
32903 2002-04-30  Jim Meyering  <meyering@lucent.com>
32904
32905         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
32906
32907 2002-04-29  Paul Eggert  <eggert@twinsun.com>
32908
32909         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
32910
32911 2002-04-29  Paul Eggert  <eggert@twinsun.com>
32912
32913         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
32914         Do not check for alloca.h (no longer used) or stdbool.h (was never
32915         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
32916
32917 2002-04-29  Paul Eggert  <eggert@twinsun.com>
32918
32919         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
32920
32921 2002-04-29  Jim Meyering  <meyering@lucent.com>
32922
32923         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
32924         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
32925         Use AC_FUNC_STRNLEN here instead.
32926
32927         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
32928         With autoconf-2.53a, it's part of AC_PROG_CC.
32929
32930 2002-04-28  Paul Eggert  <eggert@twinsun.com>
32931
32932         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
32933         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
32934
32935 2002-04-28  Paul Eggert  <eggert@twinsun.com>
32936
32937         * lib/sig2str.h, lib/sig2str.c: New files.
32938         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
32939
32940 2002-04-28  Paul Eggert  <eggert@twinsun.com>
32941
32942         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
32943         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
32944         of 127, since 64 is the largest conceivable number for ancient
32945         nonstandard hosts.
32946         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
32947
32948 2002-04-28  Jim Meyering  <meyering@lucent.com>
32949
32950         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
32951
32952 2002-04-24  Jim Meyering  <meyering@lucent.com>
32953
32954         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
32955         (jm_PREREQ): Use it.
32956
32957         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
32958         mach/mach.h fcntl.h.
32959         Check for this function: setlocale.
32960
32961 2002-04-24  Jim Meyering  <meyering@lucent.com>
32962
32963         * lib/gettext.h: New file, from Gettext.
32964         * lib/Makefile.am (INCLUDES): Remove -I../intl.
32965         (libfetish_a_SOURCES): Add gettext.h.
32966
32967 2002-04-16  Jim Meyering  <meyering@lucent.com>
32968
32969         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
32970         ut_pid, ut_id, ut_exit.
32971
32972 2002-04-16  Jim Meyering  <meyering@lucent.com>
32973
32974         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
32975         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
32976         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
32977
32978 2002-04-12  Jim Meyering  <meyering@lucent.com>
32979
32980         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
32981         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
32982         existence of the getmntinfo function.  Needed for Darwin 5.3.
32983
32984         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
32985         This is necessary at least on Darwin 5.3.
32986
32987         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
32988         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
32989         strnlen.o in the library, and that makes some versions of ranlib
32990         object.
32991
32992 2002-04-12  Jim Meyering  <meyering@lucent.com>
32993
32994         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
32995
32996 2002-04-09  Jim Meyering  <meyering@lucent.com>
32997
32998         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
32999         to be more precise.  Rather than saying we're checking whether the
33000         function `works', say what we're testing.
33001         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
33002         Reported by Bruno Haible.
33003
33004 2002-03-10  Jim Meyering  <meyering@lucent.com>
33005
33006         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
33007         Suggestion from Santiago Vila.
33008
33009 2002-03-08  Jim Meyering  <meyering@lucent.com>
33010
33011         * lib/rename.c: Mention that this wrapper is needed also on
33012         mips-dec-ultrix4.4 systems.
33013
33014 2002-03-02  Jim Meyering  <meyering@lucent.com>
33015
33016         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
33017         not HAVE_CLOCK_SETTIME.
33018
33019 2002-02-27  Paul Eggert  <eggert@twinsun.com>
33020
33021         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
33022         Check for clock_settime.
33023
33024 2002-02-27  Paul Eggert  <eggert@twinsun.com>
33025
33026         * lib/nanosleep.h: Rename to....
33027         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
33028
33029         * lib/gettime.c: New file.
33030         * lib/settime.c: New file.
33031         * lib/stime.c: Remove.
33032
33033         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
33034         timespec.h.  Remove nanosleep.h.
33035
33036 2002-02-25  Paul Eggert  <eggert@twinsun.com>
33037
33038         * m4/acl.m4: New file.
33039         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
33040         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
33041
33042 2002-02-25  Paul Eggert  <eggert@twinsun.com>
33043
33044         * lib/acl.c, lib/acl.h: New files.
33045         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
33046
33047 2002-02-24  Jim Meyering  <meyering@lucent.com>
33048
33049         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
33050         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
33051         cause trouble.  Reported by Nelson Beebe.
33052
33053 2002-02-23  Paul Eggert  <eggert@twinsun.com>
33054
33055         * lib/path-concat.c (xpath_concat): Reorder code to pacify
33056         compilers that don't know that xalloc_die never returns.
33057
33058 2002-02-20  Jim Meyering  <meyering@lucent.com>
33059
33060         * lib/getdate.c: Regenerate using bison-1.33.
33061
33062 2002-02-17  Jim Meyering  <meyering@lucent.com>
33063
33064         * config/config.guess (main): Don't use `head -1'; it's no longer
33065         portable. Use `sed 1q' instead.
33066
33067 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
33068
33069         * m4/codeset.m4: Upgrade to gettext-0.11.
33070         * m4/gettext.m4: Upgrade to gettext-0.11.
33071         * m4/glibc21.m4: Upgrade to gettext-0.11.
33072         * m4/iconv.m4: Upgrade to gettext-0.11.
33073         * m4/isc-posix.m4: Upgrade to gettext-0.11.
33074         * m4/lcmessage.m4: Upgrade to gettext-0.11.
33075         * m4/lib-ld.m4: New file, from gettext-0.11.
33076         * m4/lib-link.m4: New file, from gettext-0.11.
33077         * m4/lib-prefix.m4: New file, from gettext-0.11.
33078         * m4/progtest.m4: Upgrade to gettext-0.11.
33079
33080 2002-02-15  Paul Eggert  <eggert@twinsun.com>
33081
33082         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
33083         (jm_PREREQ): Use it.
33084
33085 2002-02-15  Paul Eggert  <eggert@twinsun.com>
33086
33087         * lib/posixver.c, lib/posixver.h: New files.
33088         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
33089
33090 2002-02-02  Paul Eggert  <eggert@twinsun.com>
33091             Bruno Haible  <bruno@clisp.org>
33092
33093         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
33094         (fwrite_success_callback): New declaration.
33095         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
33096         print_unicode_char. Call failure callback instead of error.
33097         (fwrite_success_callback): New function.
33098         (exit_failure_callback): New function.
33099         (fallback_failure_callback): New function.
33100         (print_unicode_char): Call unicode_to_mb.
33101
33102 2002-01-26  Jim Meyering  <meyering@lucent.com>
33103
33104         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
33105         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
33106
33107 2002-01-26  Jim Meyering  <meyering@lucent.com>
33108
33109         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
33110
33111 2002-01-22  Paul Eggert  <eggert@twinsun.com>
33112
33113         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
33114
33115 2002-01-22  Jim Meyering  <meyering@lucent.com>
33116
33117         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
33118         Otherwise, some versions of automake would omit the rule that makes
33119         Makefile from Makefile.in.
33120
33121 2002-01-21  Paul Eggert  <eggert@twinsun.com>
33122
33123         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
33124         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
33125         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
33126         (memcoll): Set errno to zero if there is no error.
33127
33128         * lib/quotearg.c (quotearg_buffer_restyled):
33129         Fix bug with quoting buffers containing NUL when backslashing escapes.
33130         This bug was exposed by the other changes in this patch.
33131         (quotearg_n_options): New arg ARGSIZE.
33132         All callers changed.
33133         (quoting_options_from_style): New function.
33134         (quotearg_n_style): Use it.
33135         (quotearg_n_style_mem): New function.
33136
33137         * lib/quotearg.h (quotearg_n_style_mem): New function.
33138
33139 2002-01-19  Jim Meyering  <meyering@lucent.com>
33140
33141         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
33142         Remove useless quotes: DF_PROG="df".
33143         * m4/strnlen.m4: New file.
33144
33145 2002-01-16  Paul Eggert  <eggert@twinsun.com>
33146
33147         * lib/backupfile.c (ISDIGIT): Comment fix.
33148         * lib/getdate.y (ISDIGIT): Likewise.
33149         * lib/posixtm.c (ISDIGIT, year): Likewise.
33150         * lib/strverscmp.c (ISDIGIT): Likewise.
33151         * lib/userspec.c (ISDIGIT): Likewise.
33152
33153 2002-01-16  Jim Meyering  <meyering@lucent.com>
33154
33155         * lib/getdate.y: Add three semicolons, each just before a closing
33156         brace. Bison (as of version 1.31) no longer papers over that mistake.
33157
33158 2002-01-05  Jim Meyering  <meyering@lucent.com>
33159
33160         * lib/version-etc.c (version_etc_copyright): Update copyright year.
33161
33162 2001-12-19  Paul Eggert  <eggert@twinsun.com>
33163
33164         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
33165         not silently exit merely because the output buffer happens to
33166         have nothing pending.
33167
33168 2001-12-18  Paul Eggert  <eggert@twinsun.com>
33169
33170         See the big note in ../ChangeLog.
33171         * lib/human.c (suffixes): Prefer K to k for 1024.
33172         (generate_suffix_backwards): New function.
33173         (human_readable_inexact): Use it.
33174         * lib/xstrtol.c (__xstrtol): If there is no number but there
33175         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
33176         Accept 'K' as well as 'k'.
33177
33178 2001-12-15  Jim Meyering  <meyering@lucent.com>
33179
33180         * lib/regex.h (__restrict_arr): Update from libc.
33181
33182         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
33183         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
33184         (STREQ): Define.
33185
33186 2001-12-14  Jim Meyering  <meyering@lucent.com>
33187
33188         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
33189         Suggestion from Bruno Haible.
33190
33191 2001-12-10  Jim Meyering  <meyering@lucent.com>
33192
33193         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
33194         xrealloc, Instead, include "xalloc.h".
33195         (initbuffer): Don't cast xmalloc return value to char*.
33196         (readline): Reword comment.
33197         Don't cast xrealloc return value to char*
33198         Return NULL, not 0.
33199
33200 2001-12-09  Jim Meyering  <meyering@lucent.com>
33201
33202         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
33203         about `signed and unsigned type in conditional expression'.
33204         * lib/posixtm.c (posix_time_parse): Likewise.
33205
33206         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
33207
33208         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
33209         to avoid a pedantic warning.
33210
33211         * lib/getstr.c: Don't include assert.h.
33212         (getstr): Remove warning-evoking assertions.
33213         Return -1 if offset parameter is out of bounds.
33214         Change the type of a local from int to size_t.
33215
33216         * lib/strftime.c (my_strftime_localtime_r): Include this function
33217         definition in the `#if ! HAVE_TM_GMTOFF' block.
33218
33219         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
33220         Include xalloc.h instead.
33221
33222 2001-12-02  Jim Meyering  <meyering@lucent.com>
33223
33224         * lib/tempname.c: Don't declare getenv, thus reverting the change of
33225         2001-11-18.  It's no longer necessary, now that stdlib.h is always
33226         included.
33227
33228         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
33229         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
33230
33231 2001-11-30  Akim Demaille  <akim@epita.fr>
33232
33233         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
33234         before being defined.
33235
33236 2001-11-27  Paul Eggert  <eggert@twinsun.com>
33237
33238         * lib/quotearg.h (quotearg_n, quotearg_n_style):
33239         First arg is int, not unsigned.
33240         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
33241         (SIZE_MAX, UINT_MAX): New macros.
33242         (quotearg_n_options): Abort if N is negative.
33243         Avoid overflow check on hosts where size_t is 64 bits and int
33244         is 32 bits, as overflow is impossible there.
33245         Fix off-by-one typo that caused unnecessary reallocation.
33246
33247 2001-11-27  Jim Meyering  <meyering@lucent.com>
33248
33249         * lib/tempname.c: Merge with version from libc.
33250         * lib/regex.c: Likewise.
33251
33252         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
33253         systems for which STDC_HEADERS is 0, it was not included, resulting in
33254         a warning about an integer-to-pointer conversion problem with getenv.
33255         Reported by Volker Borchert.
33256
33257 2001-11-26  Jim Meyering  <meyering@lucent.com>
33258
33259         * lib/gtod.h: Remove file.
33260         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
33261         * lib/gettimeofday.c: Don't include gtod.h.
33262         (GTOD_init): Remove function.
33263         (rpl_gettimeofday): Do its job here instead, rather than aborting.
33264         Suggestion from Volker Borchert.
33265
33266 2001-11-23  Jim Meyering  <meyering@lucent.com>
33267
33268         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
33269         it.
33270         * lib/hash.c (struct hash_table): Define it here instead.
33271
33272 2001-11-22  Jim Meyering  <meyering@lucent.com>
33273
33274         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
33275
33276 2001-11-20  Jim Meyering  <meyering@lucent.com>
33277
33278         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
33279         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
33280
33281 2001-11-19  Jim Meyering  <meyering@lucent.com>
33282
33283         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
33284         directory.  Use "conftestXXXXXX" as the template.
33285         Suggestion from Paul Eggert.
33286
33287         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
33288         immediately, so the test doesn't mistakenly hit the max-open-files
33289         limit.
33290
33291 2001-11-18  Paul Eggert  <eggert@twinsun.com>
33292
33293         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
33294         (TEMPORARIES): New macro.
33295         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
33296         removes an artificial limitation (e.g. HP-UX 10.20, where
33297         TMP_MAX is 17576).
33298
33299 2001-11-18  Jim Meyering  <meyering@lucent.com>
33300
33301         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
33302
33303 2001-11-18  Jim Meyering  <meyering@lucent.com>
33304
33305         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
33306         on SunOS 4.
33307
33308         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
33309         files will be created before anything else.
33310
33311 2001-11-17  Paul Eggert  <eggert@twinsun.com>
33312
33313         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
33314         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
33315
33316 2001-11-17  Jim Meyering  <meyering@lucent.com>
33317
33318         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
33319         Prompted by a report from Bob Proulx.
33320
33321         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
33322         Instead, require UTILS_FUNC_MKSTEMP.
33323
33324 2001-11-17  Jim Meyering  <meyering@lucent.com>
33325
33326         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
33327         Now, that's done as part of AC_FUNC_STRTOD.
33328
33329 2001-11-17  Jim Meyering  <meyering@lucent.com>
33330
33331         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
33332         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
33333         rather than group writable.  Patch by Juan F. Codagnone.
33334
33335         * lib/readtokens.c: Remove explicit declarations of xmalloc and
33336         xrealloc, Instead, include "xalloc.h".
33337
33338         * lib/mountlist.c: Include unlocked-io.h after all system headers.
33339         Remove explicit declarations of xmalloc, xrealloc,
33340         and xstrdup.  Instead, include "xalloc.h".
33341
33342         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
33343         unlocked-io.h.
33344         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
33345         Likewise.
33346         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
33347
33348         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
33349         Reported by Padraig Brady.
33350
33351         * lib/mkstemp.c: #undef mkstemp.
33352         Include config.h.
33353         (rpl_mkstemp): Rename from mkstemp.
33354         Protoize.
33355
33356 2001-11-16  Jim Meyering  <meyering@lucent.com>
33357
33358         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
33359         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
33360         determine the amount of total physical memory, use pstat_getstatic.
33361         HPUX-11 doesn't define _SC_PHYS_PAGES.
33362         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
33363         If sysconf couldn't be used to determine the amount of available
33364         physical memory, use both pstat_getstatic and pstat_getdynamic.
33365         Based on a patch from Bob Proulx.
33366
33367 2001-11-10  Jim Meyering  <meyering@lucent.com>
33368
33369         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
33370         (jm_PREREQ): Use it.
33371
33372 2001-11-09  Jim Meyering  <meyering@lucent.com>
33373
33374         * m4/jm-macros.m4: Require autoconf-2.52f.
33375         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
33376         Use these AC_-prefixed names, not the AM_-prefixed ones.
33377
33378         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
33379
33380 2001-11-05  Jim Meyering  <meyering@lucent.com>
33381
33382         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
33383
33384 2001-11-04  Jim Meyering  <meyering@lucent.com>
33385
33386         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
33387         $DEFS.
33388
33389 2001-11-03  Jim Meyering  <meyering@lucent.com>
33390
33391         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
33392         of AC_DEFUN.
33393
33394         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
33395         know the name of the variable in the macro definition.
33396
33397 2001-11-03  Jim Meyering  <meyering@lucent.com>
33398
33399         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
33400         in argmatch_to_argument call.
33401
33402         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
33403         argument.
33404
33405         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
33406         e.g., a fault due to an attempt to free a NULL pointer.
33407
33408 2001-11-01  Jim Meyering  <meyering@lucent.com>
33409
33410         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
33411         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
33412
33413 2001-11-01  Jim Meyering  <meyering@lucent.com>
33414
33415         * lib/dirfd.c, lib/dirfd.h: New files.
33416         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
33417
33418         * lib/hash.c (hash_print) [TESTING]: Clean up.
33419
33420 2001-10-22  Paul Eggert  <eggert@twinsun.com>
33421
33422         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
33423         to avoid a warning if -Wall.
33424
33425 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
33426
33427         * README: New file
33428         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
33429         (per RMS's instructions, this is now the canonical source)
33430         * lgpl/, gpl/: New directories.
33431
33432 2001-10-21  Paul Eggert  <eggert@twinsun.com>
33433
33434         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
33435
33436 2001-10-21  Jim Meyering  <meyering@lucent.com>
33437
33438         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
33439         this code would end up calling gettext even in packages built
33440         with --disable-nls.
33441         * lib/getopt.c (_): Likewise.
33442         * lib/regex.c (_): Likewise.
33443
33444 2001-10-20  Paul Eggert  <eggert@twinsun.com>
33445
33446         * m4/error.m4 (jm_PREREQ_ERROR):
33447         Do not invoke AC_CHECK_FUNCS with strerror_r, as
33448         AC_FUNC_STRERROR_R does that.
33449         Check for strerror declaration.
33450
33451         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
33452         are supposed to have them these days.
33453         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
33454         Merge changes from latest Autoconf CVS.
33455         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
33456         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
33457         POSIX decided to standardize on the int flavor of strerror_r.
33458
33459 2001-10-20  Paul Eggert  <eggert@twinsun.com>
33460
33461         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
33462         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
33463         Use strerror_r that is only a macro, even if it is not a function.
33464         (strerror): Check for HAVE_DECL_STRERROR before declaring.
33465         (private_strerror): Use prototypes, not old-style function definition.
33466         (print_errno_message): New function.
33467         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
33468         char*-flavored one.
33469         (error_tail, error, error_at_line): Use it.
33470
33471 2001-10-11  Jim Meyering  <meyering@lucent.com>
33472
33473         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
33474         and quote_n (1, ... to avoid clobbering a buffer.
33475
33476 2001-10-05  Jim Meyering  <meyering@lucent.com>
33477
33478         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
33479         hash-pjw.h.
33480         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
33481         * lib/hash-pjw.h: New file.
33482
33483 2001-09-30  Jim Meyering  <meyering@lucent.com>
33484
33485         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
33486         `struct fsstat' has the `f_fstypename' member.
33487         Use that to define FS_TYPE, which is now used to make
33488         the getfsstat link test tighter.
33489
33490 2001-09-30  Jim Meyering  <meyering@lucent.com>
33491
33492         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
33493         Include <sys/ucred.h>, for Apple Darwin.
33494         Include sys/mount.h and sys/fs_types.h only if available.
33495         (FS_TYPE): Define.
33496         (read_filesystem_list): Use FS_TYPE.
33497
33498 2001-09-29  Paul Eggert  <eggert@twinsun.com>
33499
33500         * lib/exclude.c (excluded_filename): 0 -> false, since it's
33501         a boolean context.
33502
33503 2001-09-29  Jim Meyering  <meyering@lucent.com>
33504
33505         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
33506         [one-argument getmntent function]): Include stdio.h before mntent.h.
33507         SunOS 4.1.x needs it for the declaration of `FILE'.
33508         Patch by Volker Borchert.
33509
33510         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
33511         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
33512         sys/fs_types.h, and make the link-test for getfsstat guard #include
33513         directives with appropriate #if HAVE_*_H tests so that we can
33514         detect getfsstat on Apple Darwin1.3.7 systems.
33515         Reported by Nelson Beebe.
33516         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
33517
33518 2001-09-28  Paul Eggert  <eggert@twinsun.com>
33519
33520         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
33521         #defines strtoimax.  Also treat the other strto* functions
33522         like strtoimax.
33523
33524         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
33525         Check for strtoul and strtoumax,
33526         as those declarations are made even in the signed case.
33527         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
33528         Likewise, for strtol and strtoimax.
33529
33530 2001-09-28  Paul Eggert  <eggert@twinsun.com>
33531
33532         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
33533         #defines strtoimax.  Also treat the other strto* functions
33534         like strtoimax.
33535
33536         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
33537         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
33538         (strtoimax, strtoumax): Do not declare if already defined as a macro.
33539
33540 2001-09-26  Jim Meyering  <meyering@lucent.com>
33541
33542         Most macros in unlocked-io.h had the wrong number of arguments.
33543         * lib/gen-uio: New script.
33544         (USE_UNLOCKED_IO): Define to 1 if not already defined.
33545         * lib/unlocked-io.hin: Remove file.
33546         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
33547         rather than trying to embed it here.
33548         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
33549         Reported by Padraig Brady.
33550
33551 2001-09-25  Volker Borchert  <bt@teknon.de>
33552
33553         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
33554         `result'.
33555
33556 2001-09-24  Jim Meyering  <meyering@lucent.com>
33557
33558         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
33559
33560 2001-09-23  Jim Meyering  <meyering@lucent.com>
33561
33562         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
33563         instead of the mere test for existence of mntent.h.  The latter
33564         would get a false-positive on AIX 3.4 systems.
33565         In the outer getmntent if-block, don't die if neither of the getmntent
33566         tests succeeds.  Instead, just fall through and continue with the
33567         remaining tests.
33568
33569 2001-09-23  Jim Meyering  <meyering@lucent.com>
33570
33571         * lib/mountlist.c: Remove useless parentheses in #if directives.
33572         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
33573         the deprecated MOUNTED symbol is no longer defined in mntent.h.
33574
33575 2001-09-22  Jim Meyering  <meyering@lucent.com>
33576
33577         * m4/gettext.m4: New file.  From gettext.
33578         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
33579         * m4/progtest.m4: Likewise
33580         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
33581         * m4/glibc21.m4: Likewise.
33582
33583         * m4/libintl.m4: Remove.  No longer used.
33584
33585 2001-09-22  Jim Meyering  <meyering@lucent.com>
33586
33587         * lib/localcharset.c: Update from latest gettext.
33588         * lib/config.charset: Likewise.
33589
33590 2001-09-20  Jim Meyering  <meyering@lucent.com>
33591
33592         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
33593         strtoimax.
33594         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
33595         strtoumax.
33596
33597 2001-09-20  Jim Meyering  <meyering@lucent.com>
33598
33599         * lib/xstrtol.c (strtoimax): Guard declaration with
33600         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
33601         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
33602         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
33603         (strtoumax): Likewise, for completeness (it wasn't necessary).
33604
33605 2001-09-17  Paul Eggert  <eggert@twinsun.com>
33606
33607         * lib/strtoimax.c (HAVE_LONG_LONG):
33608         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
33609         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
33610         to work around bug in IBM C compiler.
33611
33612 2001-09-17  Jim Meyering  <meyering@lucent.com>
33613
33614         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
33615         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
33616         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
33617         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
33618         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
33619         whenever the right hand side need not be expanded by the shell.
33620
33621 2001-09-16  Paul Eggert  <eggert@twinsun.com>
33622
33623         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
33624         library.  It's not correct, as some older glibcs are buggy.
33625         fnmatch wasn't fixed until glibc 2.2.
33626
33627         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
33628         special shell magic here.
33629
33630 2001-09-16  Jim Meyering  <meyering@lucent.com>
33631
33632         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
33633         * m4/jm-macros.m4: Require it.
33634
33635 2001-09-16  Jim Meyering  <meyering@lucent.com>
33636
33637         * lib/mkdir.c: New file.
33638
33639 2001-09-15  Jim Meyering  <meyering@lucent.com>
33640
33641         * m4/jm-macros.m4: Check for help2man.
33642
33643 2001-09-11  Jim Meyering  <meyering@lucent.com>
33644
33645         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
33646         The body, by Paul Eggert, was moved here from configure.in.
33647         * m4/jm-macros.m4: Require UTILS_HOST_OS.
33648
33649 2001-09-04  Paul Eggert  <eggert@twinsun.com>
33650
33651         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
33652         (jm_PREREQ): Use it.
33653
33654 2001-09-04  Paul Eggert  <eggert@twinsun.com>
33655
33656         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
33657         Use ssize_t, not int, to store result of readlink.
33658         Check for ssize_t overflow as well as size_t overflow,
33659         as POSIX says the result of readlink is implementation-defined
33660         when ssize_t overflows.
33661         Remove unnecessary cast to char*.
33662         Use free+malloc instead of realloc, as the storage doesn't need
33663         to be preserved and it's clearer and can be more efficient that way.
33664         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
33665         * lib/xreadlink.h (xreadlink): Update prototype.
33666
33667 2001-09-04  Paul Eggert  <eggert@twinsun.com>
33668
33669         * lib/xgetcwd.c: Revert some of the previous change; intead,
33670         fix the HAVE_GETCWD_NULL code to behave more like the
33671         !HAVE_GETCWD_NULL code used to.
33672
33673         Include "xalloc.h".
33674         (xgetcwd): Do not return NULL when memory is exhausted; instead,
33675         invoke xalloc_die.
33676
33677 2001-09-03  Paul Eggert  <eggert@twinsun.com>
33678
33679         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
33680         sys/param.h, as pathmax.h includes them.
33681
33682 2001-09-03  Paul Eggert  <eggert@twinsun.com>
33683
33684         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
33685         (jm_PREREQ_XGETCWD): New macro.
33686
33687         * m4/getcwd.m4: New file.
33688
33689 2001-09-03  Paul Eggert  <eggert@twinsun.com>
33690
33691         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
33692         like the HAVE_GETCWD_NULL code.
33693         Include pathmax.h if not HAVE_GETCWD.
33694         Do not include xalloc.h.
33695         (INITIAL_BUFFER_SIZE): New symbol.
33696         Do not use xmalloc / xrealloc, since the caller is responsible for
33697         handling errors.  Preserve errno around `free' during failure.
33698         Do not overrun buffer when using getwd.
33699
33700 2001-09-03  Paul Eggert  <eggert@twinsun.com>
33701
33702         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
33703         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
33704         getcwd (NULL, 0).
33705
33706 2001-09-03  Paul Eggert  <eggert@twinsun.com>
33707
33708         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
33709         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
33710         spotted by Jim Meyering.
33711
33712 2001-09-03  Jim Meyering  <meyering@lucent.com>
33713
33714         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
33715         failure.
33716
33717 2001-09-02  Jim Meyering  <meyering@lucent.com>
33718
33719         * lib/error.c: Update from GNU libc.
33720
33721 2001-09-01  Jim Meyering  <meyering@lucent.com>
33722
33723         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
33724         Used by df.
33725
33726 2001-09-01  Jim Meyering  <meyering@lucent.com>
33727
33728         * lib/xreadlink.c: New file.
33729         * lib/xreadlink.h: New file.
33730         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
33731         xreadlink.h.
33732
33733         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
33734         doesn't conflict with sparc Solaris 7's definition in
33735         /usr/include/sys/int_types.h.
33736
33737         * lib/exclude.c: Use `""', not `<>' to #include non-system header
33738         files.
33739         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
33740         and strncasecmp as r-values.  Unixware didn't have declarations.
33741
33742 2001-08-31  Paul Eggert  <eggert@twinsun.com>
33743
33744         * lib/xstrtol.h: Add copyright notice.
33745         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
33746         LONGINT_INVALID_SUFFIX_CHAR.
33747
33748 2001-08-31  Paul Eggert  <eggert@twinsun.com>
33749
33750         * lib/xstrtol.c (strtoimax): New decl.
33751
33752 2001-08-31  Paul Eggert  <eggert@twinsun.com>
33753
33754         * lib/xgetcwd.c: Don't include pathmax.h.
33755         Include stdlib.h and unistd.h if available.
33756         Include xalloc.h.
33757         (xmalloc, xstrdup, free): Remove decls.
33758         (xgetcwd): Don't assume sizes fit in unsigned.
33759         Check for overflow when computing sizes.
33760         Simplify reallocation code.
33761
33762 2001-08-31  Paul Eggert  <eggert@twinsun.com>
33763
33764         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
33765         a directory's st_size can have an arbitrary value, so the old
33766         usage could waste an arbitrary amount of memory.  All uses
33767         changed.
33768         * lib/savedir.h: Update prototype.
33769
33770 2001-08-31  Paul Eggert  <eggert@twinsun.com>
33771
33772         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
33773
33774         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
33775         old strtoimax.c.
33776
33777         Also, make the following further changes to make this file's
33778         configuration more similar to that of strtol.c:
33779         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
33780         (strtoumax, uintmax_t, strtoull, strtol): Remove.
33781         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
33782         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
33783         changed to signed values.
33784
33785         And make the following changes as well:
33786         Fix copyright notice, as 1999 was missing.
33787         (verify): New macro.
33788         (strtoimax): Check sizes at compile-time, not run-time.
33789         Prefer strtol to strtoll if both work.
33790         (main): Remove; it was not that useful and was a pain to maintain.
33791
33792         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
33793
33794 2001-08-31  Jim Meyering  <meyering@lucent.com>
33795
33796         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
33797         Use an initial, malloc'd, buffer of length 128 rather than
33798         a statically allocated one of length 1024.
33799
33800 2001-08-30  Paul Eggert  <eggert@twinsun.com>
33801
33802         Simplify code, partly by assuming autoconf 2.52 semantics.
33803
33804         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
33805
33806         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
33807         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
33808         All uses removed.
33809         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
33810         Move AC_REQUIRE to next-to-top level, to avoid confusion.
33811         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
33812         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
33813         jm_AC_HEADER_INTTYPES_H.
33814         * m4/jm-macros.m4 (jm_MACROS): Likewise.
33815
33816         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
33817
33818         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
33819         Quote first arg of AC_DEFUN.
33820         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
33821         since they are needed to parse the include file even if we need
33822         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
33823         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
33824         but with opposite signedness.
33825
33826 2001-08-30  Paul Eggert  <eggert@twinsun.com>
33827
33828         Merge 'exclude' changes from tar 1.13.22.
33829         This fixes one or two unlikely storage allocation overflow bugs,
33830         but doesn't change user-visible behavior otherwise.
33831
33832 2001-08-30  Paul Eggert  <eggert@twinsun.com>
33833
33834         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
33835         (jm_PREREQ_EXCLUDE): New macro.
33836
33837 2001-08-30  Paul Eggert  <eggert@twinsun.com>
33838
33839         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
33840         tm to be declared.
33841
33842 2001-08-30  Paul Eggert  <eggert@twinsun.com>
33843
33844         * lib/hash.c: Remove '2001' from copyright notice.
33845
33846 2001-08-30  Paul Eggert  <eggert@twinsun.com>
33847
33848         * lib/full-write.h: New file.
33849         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
33850         * lib/full-write.c: Correct credits, as cccp.c no longer
33851         exists and anyway it was so heavily changed from the old cccp
33852         code as to be unrecognizable.  Include full-write.h.
33853         (full_write) Return size_t, with short writes meaning failure.
33854         All callers changed.  This fixes a bug with large buffers
33855         on 64-bit hosts.
33856         * lib/utime.c: Include full-write.h.
33857
33858 2001-08-30  Paul Eggert  <eggert@twinsun.com>
33859
33860         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
33861         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
33862         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
33863         Include if available.
33864         (<xalloc.h>): Include
33865         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
33866         (verify): New macro.  Use it to verify that EXCLUDE macros do not
33867         collide with FNM macros.
33868         (struct patopts): New struct.
33869         (struct exclude): Use it, as exclude patterns now come with options.
33870         (new_exclude): Support above changes.
33871         (new_exclude, add_exclude_file):
33872         Initial size must now be a power of two to simplify overflow checking.
33873         (free_exclude, fnmatch_no_wildcards): New function.
33874         (excluded_filename): No longer requires options arg, as the options
33875         are determined by add_exclude.  Now returns bool, not int.
33876         (excluded_filename, add_exclude):
33877         Add support for the fancy new exclusion options.
33878         (add_exclude, add_exclude_file): Now takes int options arg.
33879         Check for arithmetic overflow when computing sizes.
33880         (add_exclude_file): xrealloc might modify errno, so don't
33881         realloc until after errno might be used.
33882
33883         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
33884         New macros.
33885         (free_exclude): New decl.
33886         (add_exclude, add_exclude_file): Now takes int options arg.
33887         (excluded_filename): No longer requires options arg, as the options
33888         are determined by add_exclude.  Now returns bool, not int.
33889
33890 2001-08-30  Paul Eggert  <eggert@twinsun.com>
33891
33892         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
33893
33894 2001-08-27  Jim Meyering  <meyering@lucent.com>
33895
33896         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
33897
33898         * lib/version-etc.c (N_): Remove definition.
33899         Revert most of last change.
33900         Instead, simply don't mark the `Copyright...' string for translation.
33901         Based on advice from Paul Eggert.
33902
33903         * lib/strtoxmax.c: Tweak comment.
33904
33905 2001-08-26  Jim Meyering  <meyering@lucent.com>
33906
33907         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
33908
33909         * m4/xstrtoimax.m4: New file.
33910         * m4/xstrtoumax.m4: Add comments explaining why we
33911         AC_REPLACE_FUNCS(strtol).
33912
33913 2001-08-26  Jim Meyering  <meyering@lucent.com>
33914
33915         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
33916         of copyright with `%s' so translators don't get an untranslated
33917         message in 2002.
33918         (COPYRIGHT_YEAR): Define.
33919         (version_etc): Use fprintf rather than fputs.
33920         Suggestion from Ulrich Drepper.
33921
33922         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
33923
33924         * lib/strtoll.c: New file, from GNU libc.
33925         * lib/xstrtoimax.c: New file.
33926
33927         * lib/xstrtol.h: Add xstrtoimax.
33928         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
33929         * lib/strtoimax.c: New file.  Likewise, but first define
33930         STRTOUXMAX_SIGNED.
33931
33932         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
33933         ...
33934         * lib/strtoxmax.c: ... then renamed to this.
33935
33936 2001-08-18  Paul Eggert  <eggert@twinsun.com>
33937
33938         * m4/inttypes.m4: Add AC_PREREQ(2.13).
33939         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
33940         (jm_AC_TYPE_INTMAX_T): New macro.
33941         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
33942
33943         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
33944
33945         * m4/longlong.m4: Renamed from ulonglong.m4.
33946         * m4/inttypes.m4: Renamed from inttypes_h.m4.
33947         * m4/uintmax_t.m4: Removed.
33948
33949 2001-08-13  Paul Eggert  <eggert@twinsun.com>
33950
33951         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
33952         Port to Solaris 8, where 'sed' requires a space after the 'r'
33953         command, and where sh dislikes "$/".  Clean up the spacing a bit.
33954         Redirect output to $tmp just once.
33955
33956 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
33957
33958         * lib/addext.c (<errno.h>): Include.
33959         (errno): Declare if not defined.
33960         (addext): Work correctly when pathconf returns -1 and leaves
33961         errno alone because there is no limit.  Also, work even if
33962         pathconf returns a value greater than SIZE_MAX.
33963
33964 2001-08-12  Jim Meyering  <meyering@lucent.com>
33965
33966         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
33967         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
33968         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
33969         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
33970         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
33971         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
33972         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
33973         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
33974         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
33975         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
33976         utime.m4, utimes.m4, xstrtoumax.m4:
33977         Quote the first argument in each use of AC_DEFUN.
33978
33979 2001-08-12  Jim Meyering  <meyering@lucent.com>
33980
33981         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
33982         Simply `return getcwd (NULL, 0);'.
33983         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
33984         Use 1300 as initial value for length, not PATH_MAX.
33985
33986         * lib/pathmax.h: Clean up cpp syntax.
33987
33988 2001-08-12  Jim Meyering  <meyering@lucent.com>
33989
33990         * lib/gettimeofday.c: New file.
33991         * lib/gtod.h: New file.
33992         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
33993
33994 2001-08-05  Jim Meyering  <meyering@lucent.com>
33995
33996         * m4/jm-macros.m4: Require autoconf-2.52.
33997
33998 2001-08-04  Jim Meyering  <meyering@lucent.com>
33999
34000         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
34001         stmt, to get in sync with glibc.
34002
34003 2001-08-03  Paul Eggert  <eggert@twinsun.com>
34004
34005         The following changes are from gettext 0.10.39 as maintained by
34006         Bruno Haible.
34007
34008         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
34009         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
34010         with inverted sense.  All uses changed.
34011
34012         * lib/mbswidth.c: Don't include <limits.h>.
34013         Include <stdlib.h> and <string.h> unconditionally.
34014         (iswcntrl, mbsinit, ISCNTRL): New macros.
34015         (mbsnwidth): Use K&R style function declarations.
34016         Don't bother checking for MB_LEN_MAX == 1, since the compiler
34017         can optimize it when MB_CUR_MAX == 1.
34018         The width of control characters is zero, not 1.
34019
34020 2001-08-03  Paul Eggert  <eggert@twinsun.com>
34021
34022         The following changes are from gettext 0.10.39 as maintained by
34023         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
34024
34025         * m4/codeset.m4: Upgrade to serial AM1.
34026         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
34027         all uses changed.  Quote first arg of AC_DEFUN.
34028         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
34029
34030         * m4/iconv.m4: Upgrade to serial AM2.
34031         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
34032         Add --with-libconv-prefix.
34033         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
34034         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
34035         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
34036         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
34037         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
34038
34039         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
34040         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
34041         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
34042         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
34043         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
34044         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
34045         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
34046         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
34047         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
34048
34049         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
34050         string.h any more.
34051
34052         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
34053         not the default value.
34054
34055         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
34056         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
34057         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
34058         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
34059         Also check for iswcntrl, used for wcwidth fallback.
34060         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
34061         to Autoconf 2.13.
34062
34063 2001-08-03  Jim Meyering  <meyering@lucent.com>
34064
34065         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
34066         as it was in the original.  Reported by Paul Eggert.
34067
34068 2001-07-16  Jim Meyering  <meyering@lucent.com>
34069
34070         * m4/gettimeofday.m4: New file.
34071         Prompted by a report from Bernhard Baehr.
34072
34073 2001-07-15  Jim Meyering  <meyering@lucent.com>
34074
34075         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
34076         stuff. Now it's in ../Makefile.cfg.
34077
34078 2001-07-15  Jim Meyering  <meyering@lucent.com>
34079
34080         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
34081         (BUILT_SOURCES): Add unlocked-io.h.
34082         (io_functions): Define.
34083         (unlocked-io.h): New rule.
34084         (DISTCLEANFILES): Add unlocked-io.h.
34085         (all-local): Depend on unlocked-io.h, to ensure it is created.
34086
34087         * lib/unlocked-io.hin: New file
34088
34089         * lib/regex.c: Update from glibc.
34090
34091 2001-07-05  Jim Meyering  <meyering@lucent.com>
34092
34093         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
34094         recommendation.
34095         (libfetish_a_SOURCES): Put all .h files here instead.
34096         Remove a thus-exposed (better checks in automake) duplicate and
34097         two unnecessary .h files.
34098
34099 2001-07-04  Jim Meyering  <meyering@lucent.com>
34100
34101         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
34102         that generates jm-glibc-io.m4 so that it doesn't trigger any make
34103         distcheck failure.
34104
34105 2001-07-02  Jim Meyering  <meyering@lucent.com>
34106
34107         The following changes were prompted by suggestions from Bruno Haible.
34108
34109         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
34110         is now generated.
34111         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
34112         definition of EXTRA_DIST.
34113         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
34114         ensure that the generated file is created/updated whenever the list
34115         of $(unlocked_functions) is changed.
34116         (jm-glibc-io.m4): New rule.
34117         (unlocked-io.h): New rule -- currently unused.
34118
34119 2001-06-24  Jim Meyering  <meyering@lucent.com>
34120
34121         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
34122         unmatched right bracket, rather than kludging it with an extra,
34123         falsely-matching quote in a comment.  Patch by Akim Demaille.
34124
34125 2001-06-11  Jim Meyering  <meyering@lucent.com>
34126
34127         * lib/regex.c: Update from GNU libc.
34128
34129 2001-05-27  Jim Meyering  <meyering@lucent.com>
34130
34131         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
34132         Check for ut_type in struct utmp.
34133
34134 2001-05-27  Jim Meyering  <meyering@lucent.com>
34135
34136         * lib/readutmp.h (UT_TYPE): Define.
34137
34138 2001-05-24  Jim Meyering  <meyering@lucent.com>
34139
34140         * lib/argmatch.c: Include "quote.h".
34141         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
34142         quote function.  Reported by Göran Uddeborg.
34143
34144 2001-05-22  Jim Meyering  <meyering@lucent.com>
34145
34146         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
34147         now that we use the package-supplied version unconditionally.
34148         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
34149
34150 2001-05-21  Jim Meyering  <meyering@lucent.com>
34151
34152         * m4/regex.m4: Change a couple backticks to single quotes to avoid
34153         shell syntax errors.
34154
34155 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
34156
34157         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
34158
34159 2001-05-20  Paul Eggert  <eggert@twinsun.com>
34160
34161         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
34162         Don't bother to check library strftime, since
34163         we'll be using our own my_strftime function anyway.
34164         Define my_strftime instead of strftime.
34165
34166 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
34167
34168         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
34169         which is not yet declared.
34170
34171 2001-05-15  Jim Meyering  <meyering@lucent.com>
34172
34173         * m4/regex.m4: Use proper quoting so brackets appear in the test
34174         program.
34175         Reported by, and with help from, Bruno Haible.
34176
34177 2001-05-13  Jim Meyering  <meyering@lucent.com>
34178
34179         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
34180         undefined.
34181
34182 2001-05-11  Paul Eggert  <eggert@twinsun.com>
34183
34184         dirname code cleanup.  base_name now behaves more compatibly
34185         with POSIX basename when given file names that have trailing
34186         slashes, and similarly for dir_name.  Add new primitives
34187         base_len and dir_len.  Put the directory-name-related decls
34188         into dirname.h.
34189
34190         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
34191         * lib/backupfile.c (base_name): Likewise.
34192         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
34193         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
34194         * lib/makepath.c (strip_trailing_slashes): Likewise.
34195         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
34196         ISSLASH): Likewise.
34197         * lib/rename.c (strip_trailing_slashes): Likewise.
34198         * lib/same.c (base_name): Likewise.
34199         * lib/stripslash.c (ISSLASH): Likewise.
34200
34201         * lib/addext.c: Include <dirname.h> after size_t is defined.
34202         * lib/backupfile.c: Likewise.
34203
34204         * lib/addext.c (addext): Use base_len to trim redundant
34205         trailing slashes instead of doing it ourselves.
34206         But do not trim the last slash if it is not redundant.
34207
34208         * lib/backupfile.c (find_backup_file_name,
34209         max_backup_version): Use base_len instead of rolling it ourselves.
34210         Handle the case of "" and (on DOS) "C:" correctly.
34211
34212         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
34213         needed. Include <string.h>, <dirname.h>.
34214         (base_name): Allow file names ending in slashes, other than names
34215         that are all slashes.  In this case, return the basename followed
34216         by the slashes.  This is more general, and can be used in places
34217         where the original base_name purposely had an assertion failure.
34218         (base_len): New function.
34219
34220         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
34221         Do not include <assert.h>; no longer needed.
34222         Include xalloc.h.
34223         (memrchr): Remove decl.
34224         (dir_name_r): Remove.
34225         (dir_len): Renamed from dirlen.  All callers changed.
34226         Rewrite in terms of base_name, for simplicity and consistency.
34227         (dir_name): Never return NULL.  All callers changed.
34228         Do not include <stdlib.h> in test program; no longer needed.
34229         return 0; is fine for test program.
34230
34231         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
34232         New macros.
34233         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
34234
34235         * lib/path-concat.c (path_concat): Use base_len to compute
34236         base length, not strlen; this means we cannot rely on memcpy
34237         to null-terminate.
34238
34239         * lib/same.c (STREQ): Remove.
34240         (same_name): Handle the case where the basename ends in trailing '/'.
34241
34242         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
34243         a slash was stripped.  Do not strip the last slash after a
34244         file system prefix.
34245
34246 2001-05-11  Paul Eggert  <eggert@twinsun.com>
34247
34248         * lib/Makefile.am (libfetish_a_SOURCES):
34249         Add strftime.c, since we now compile it on all hosts.
34250
34251         * lib/strftime.c (my_strftime):
34252         Define to nstrftime if emacs, but only if my_strftime is not defined.
34253         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
34254         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
34255         Add one more extra argument: a nanoseconds value.
34256         All uses changed.
34257         (ns): New macro.
34258         (my_strftime function): Add %N format.
34259         (emacs_strftimeu): Renamed from emacs_strftime,
34260         with extra ut argument.
34261
34262 2001-05-09  Paul Eggert  <eggert@twinsun.com>
34263
34264         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
34265
34266 2001-04-21  Jim Meyering  <meyering@lucent.com>
34267
34268         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
34269         doesn't interfere.
34270
34271 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
34272
34273         * m4/ftruncate.m4: Check for chsize.
34274         Link with ftruncate.o unconditionally if ftruncate is missing.
34275         This was required when cross-compiling to i586-mingw32msvc.
34276
34277 2001-04-08  Jim Meyering  <meyering@lucent.com>
34278
34279         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
34280         recomputed; that's necessary when the offset spans a DST transition.
34281         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
34282
34283 2001-04-02  Jim Meyering  <meyering@lucent.com>
34284
34285         * lib/regex.h, regex.c: Update from GNU libc.
34286
34287 2001-03-24  Jim Meyering  <meyering@lucent.com>
34288
34289         * m4/jm-macros.m4: Require autoconf-2.49d.
34290
34291 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
34292
34293         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
34294
34295 2001-03-19  Paul Eggert  <eggert@twinsun.com>
34296
34297         * lib/version-etc.c (version_etc_copyright): Update to 2001.
34298
34299 2001-03-17  Jim Meyering  <meyering@lucent.com>
34300
34301         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
34302         now that the version in autoconf is equivalent.
34303         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
34304
34305         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
34306         Suggestion from Akim Demaille.
34307
34308         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
34309         (jm_PREREQ_TEMPNAME): New function.
34310
34311 2001-03-16  Paul Eggert  <eggert@twinsun.com>
34312
34313         * lib/tempname.c (uint64_t): Define to uintmax_t if
34314         not defined, and if UINT64_MAX is not defined.
34315         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
34316         Reported by John David Anglin.
34317
34318 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
34319
34320         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
34321         resolve alias if codeset is empty.
34322         * lib/config.charset (BeOS): Use wildcard syntax.
34323
34324 2001-03-13  Jim Meyering  <meyering@lucent.com>
34325
34326         * lib/path-concat.c (path_concat)
34327         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
34328         concatenating e.g., `C:' and `foo'.
34329         From Bruno Haible.
34330
34331 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
34332
34333         * lib/localcharset.c (locale_charset): Don't use
34334         setlocale(LC_CTYPE,NULL). Don't return NULL.
34335         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
34336
34337 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
34338
34339         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
34340         support for DOS/DJGPP.
34341
34342 2001-03-01  Paul Eggert  <eggert@twinsun.com>
34343
34344         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
34345         lacks mkstemp.  Compile our own tempname.c if we compile our own
34346         mkstemp.c, as mkstemp relies on tempname.
34347
34348 2001-03-01  Jim Meyering  <meyering@lucent.com>
34349
34350         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
34351         AH_VERBATIM really does output its argument verbatim.
34352
34353 2001-02-28  Paul Eggert  <eggert@twinsun.com>
34354
34355         * lib/Makefile.am (libfetish_a_SOURCES):
34356         Add dup-safer.c, fopen-safer.c.
34357         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
34358
34359         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
34360         * lib/unistd-safer.h: New files.
34361
34362 2001-02-25  Paul Eggert  <eggert@twinsun.com>
34363
34364         The mkstemp replacement is taken from glibc 2.2.2, with some
34365         portability fixes for use outside glibc, as follows:
34366
34367         * lib/tempname.c (struct_stat64): New macro.
34368         (direxists, __gen_tempname): Use it.
34369         This avoids a portability problem with Solaris 8.
34370
34371         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
34372         (<stddef.h>, <stdint.h>, <string.h>):
34373         Include only if STDC_HEADERS || _LIBC.
34374         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
34375         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
34376         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
34377         (__set_errno): Define this macro if <errno.h> doesn't.
34378         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
34379         Define these macros if <stdio.h> doesn't.
34380         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
34381         Define these macros if <sys/stat.h>
34382         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
34383         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
34384         __xstat64): Define if not _LIBC.
34385         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
34386         (__gen_tempname): Invoke gettimeofday only if
34387         HAVE_GETTIMEOFDAY || _LIBC;
34388         otherwise, fall back on plain "time".
34389         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
34390
34391         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
34392
34393         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
34394
34395 2001-02-18  Paul Eggert  <eggert@twinsun.com>
34396
34397         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
34398
34399 2001-02-17  Paul Eggert  <eggert@twinsun.com>
34400
34401         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
34402         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
34403         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
34404         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
34405
34406 2001-02-17  Paul Eggert  <eggert@twinsun.com>
34407
34408         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
34409         Remove workaround macros for hosts that have mbrtowc but not
34410         mbstate_t, as we now insist on proper declarations for both
34411         before using mbrtowc.
34412
34413 2001-02-17  Jim Meyering  <meyering@lucent.com>
34414
34415         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
34416         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
34417         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
34418         UnixWare 7.1.1.
34419
34420         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
34421         rather than AC_CACHE_VAL.
34422
34423 2001-02-17  Jim Meyering  <meyering@lucent.com>
34424
34425         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
34426         around included file name.
34427
34428         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
34429
34430         * lib/strftime.c: Update from GNU libc (the only changes were to
34431         comments).
34432
34433 2001-02-17  Jim Meyering  <meyering@lucent.com>
34434
34435         * lib/regex.c: Update from libc.
34436
34437 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
34438
34439         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
34440         clash.
34441
34442 2001-02-16  Paul Eggert  <eggert@twinsun.com>
34443
34444         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
34445         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
34446         Reported by Mark Hounschell via Paul Eggert.
34447
34448 2001-02-07  Jim Meyering  <meyering@lucent.com>
34449
34450         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
34451
34452 2001-02-05  Jim Meyering  <meyering@lucent.com>
34453
34454         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
34455         it includes the patch required for `large file' support with at least
34456         HP-UX's 10.20 /bin/cc.
34457
34458 2001-02-03  Jim Meyering  <meyering@lucent.com>
34459
34460         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
34461         AS_IF, now that it works once again (mysteriously).
34462         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
34463
34464 2001-01-30  Jim Meyering  <meyering@lucent.com>
34465
34466         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
34467         * m4/chown.m4: Rename conftestchown to conftest.chown.
34468         * m4/rename.m4: s/conftestdir/conftest.d1/ and
34469         s/conftestdir2/conftest.d2/.
34470         * m4/utimes.m4: s/conftestdata/conftest.data/
34471         Inspired by Pavel Roskin's change in autoconf.
34472
34473 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
34474
34475         * lib/config.charset: Update for FreeBSD 4.2.
34476
34477 2001-01-27  Jim Meyering  <meyering@lucent.com>
34478
34479         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
34480         a use of AS_IF.
34481         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
34482
34483 2001-01-26  Jim Meyering  <meyering@lucent.com>
34484
34485         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
34486         quotearg.c includes it.
34487
34488 2001-01-26  Jim Meyering  <meyering@lucent.com>
34489
34490         * lib/quotearg.c: Include stddef.h.
34491         * lib/quote.c: Include stddef.h.
34492         Reported by Axel Kittenberger.
34493
34494         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
34495         line in double quotes so that it evokes a better diagnostic.
34496         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
34497         Reported by Axel Kittenberger.
34498
34499 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
34500
34501         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
34502         as if it was a `charset'.
34503
34504 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
34505
34506         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
34507         has const.
34508
34509 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
34510
34511         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
34512         to avoid a warning.  Add back 'const' to inptr.
34513
34514 2001-01-20  Jim Meyering  <meyering@lucent.com>
34515
34516         Be sure that headers are checked before used in code compiled
34517         for the type checks.
34518         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
34519         In place of that, invoke jm_CHECK_ALL_TYPES.
34520         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
34521         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
34522         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
34523         The check for ssize_t was mistakenly run before the test for unistd.h.
34524
34525         The configure-time check for stdbool.h was missing.
34526         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
34527         (jm_PREREQ_HASH): New function.
34528
34529 2001-01-17  Jim Meyering  <meyering@lucent.com>
34530
34531         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
34532         for autoconf-2.49c.
34533         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
34534
34535 2001-01-16  Jim Meyering  <meyering@lucent.com>
34536
34537         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
34538         From Bruno Haible.
34539
34540 2001-01-14  Jim Meyering  <meyering@lucent.com>
34541
34542         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
34543         foo and bar.  Create conftestdir/ in the script, not in the C code.
34544         Remove directories in the script, not in the C code.
34545         Remove conftestdir{,2} before trying to create the directory.
34546         Make the entire configure script fail if the mkdir fails.
34547
34548 2001-01-14  Jim Meyering  <meyering@lucent.com>
34549
34550         * lib/rename.c: New file.  From Volker Borchert.
34551         Include stdlib.h, string.h or strings.h, and xalloc.h.
34552         Use strip_trailing_slashes rather than open-coding it.
34553
34554 2001-01-03  Paul Eggert  <eggert@twinsun.com>
34555
34556         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
34557
34558 2001-01-03  Jim Meyering  <meyering@lucent.com>
34559
34560         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
34561         of local `inptr' to avoid warning with some system declarations of
34562         iconv.
34563
34564 2001-01-02  Volker Borchert  <bt@teknon.de>
34565
34566         * m4/rename.m4: New file.
34567         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
34568
34569 2001-01-01  Jim Meyering  <meyering@lucent.com>
34570
34571         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
34572         even on systems with utmpx.h.  It's necessary for the declaration of
34573         utmp's ut_user member.  Reported by Andreas Jaeger.
34574
34575         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
34576         available. They are required for the declarations of getgrgid and
34577         getpwuid resp.
34578         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
34579         Reported by Andreas Jaeger.
34580
34581 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
34582
34583         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
34584         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
34585         so `make install' also works in VPATH builds.
34586
34587 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
34588
34589         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
34590         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
34591         can be used in subdirectories.
34592
34593 2000-12-29  Paul Eggert  <eggert@twinsun.com>
34594
34595         * lib/modechange.c: Do not assume that mode_t uses the
34596         traditional octal encoding.  E.g. "chmod 1 FOO" should set
34597         the other-execute bit of FOO even if S_IXOTH != 1.
34598
34599         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
34600         WOTH, XOTH, ALLM): New macros.
34601         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
34602          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
34603         Use them.
34604         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
34605         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
34606         (mode_compile):
34607         No need to use uintmax_t; unsigned long is long enough.
34608         Don't bother to get suffix since we don't use it.
34609
34610 2000-12-26  Jim Meyering  <meyering@lucent.com>
34611
34612         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
34613         better with autoheader.
34614
34615 2000-12-24  Jim Meyering  <meyering@lucent.com>
34616
34617         * lib/hash.c (is_prime): Return explicit boolean values.
34618         (hash_get_first): Return NULL to appease Irix5.6's 89.
34619         Reported by Nelson Beebe.
34620
34621 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
34622
34623         * lib/localcharset.c (locale_charset): Add support for Win32.
34624
34625 2000-12-18  Paul Eggert  <eggert@twinsun.com>
34626
34627         * lib/physmem.h, lib/physmem.c: New files.
34628
34629         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
34630         (noinst_HEADERS): Add physmem.h.
34631
34632         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
34633         't' for compatibility with Solaris 8 sort.
34634
34635 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
34636
34637         * lib/config.charset: Add support for BeOS.
34638
34639 2000-12-17  Jim Meyering  <meyering@lucent.com>
34640
34641         * m4/dos.m4 (jm_AC_DOS): New file and macro.
34642         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
34643
34644 2000-12-16  Jim Meyering  <meyering@lucent.com>
34645
34646         This bug had a serious impact on chown: `chown N:M FILE' (for integer
34647         N and M) would have treated it like `chown N:N FILE'.
34648
34649         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
34650
34651 2000-12-16  Jim Meyering  <meyering@lucent.com>
34652
34653         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
34654         SHELLS_FILE to a file name that's useful on djgpp systems.
34655         Include stdlib.h.
34656         (ADDITIONAL_DEFAULT_SHELLS): Define.
34657         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
34658         Based mostly on a patch from Prashant TR.
34659
34660 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
34661
34662         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
34663         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
34664         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
34665
34666 2000-12-08  Andreas Schwab  <schwab@suse.de>
34667
34668         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
34669         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
34670
34671 2000-12-07  Jim Meyering  <meyering@lucent.com>
34672
34673         * lib/stripslash.c (ISSLASH): Define.
34674         (strip_trailing_slashes): Use ISSLASH rather than comparing against
34675         `/'.
34676         From Prashant TR.
34677
34678         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
34679         (dir_name_r): Declare this function as static.
34680         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
34681         manifest itself on a name containing a mix of slashes and
34682         backslashes.
34683         Make this function work with names starting with a DOS-style
34684         drive letter and colon prefix.
34685         (dir_name): Append `.' if necessary.
34686         Based mostly on patches from Prashant TR and Eli Zaretskii.
34687
34688         * lib/dirname.h (dir_name_r): Remove prototype.
34689
34690 2000-12-06  Paul Eggert  <eggert@twinsun.com>
34691
34692         * m4/off_t-format.m4: Remove this file.
34693         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
34694
34695 2000-12-06  Jim Meyering  <meyering@lucent.com>
34696
34697         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
34698         replacement strtoull, we may well need the replacement strtoul, too.
34699         Check for declarations of strtoul and strtoull.
34700         Check for strtol.  Mainly as a cue to cause automake to include
34701         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
34702         Check for limits.h -- strtol.c needs it.
34703
34704 2000-12-05  Jim Meyering  <meyering@lucent.com>
34705
34706         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
34707
34708 2000-12-04  Jim Meyering  <meyering@lucent.com>
34709
34710         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
34711         Also include memory.h, stdlib.h, unistd.h if appropriate.
34712         Reported by Andreas Jaeger (conflicting declaration of malloc).
34713
34714 2000-12-02  Jim Meyering  <meyering@lucent.com>
34715
34716         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
34717         * m4/jm-macros.m4 (jm_MACROS): require it.
34718
34719 2000-12-02  Jim Meyering  <meyering@lucent.com>
34720
34721         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
34722
34723 2000-12-01  Paul Eggert  <eggert@twinsun.com>
34724
34725         * lib/memrchr.c: Include <config.h> before any system include file.
34726
34727 2000-11-30  Jim Meyering  <meyering@lucent.com>
34728
34729         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
34730
34731 2000-11-30  Jim Meyering  <meyering@lucent.com>
34732
34733         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
34734
34735 2000-11-29  Paul Eggert  <eggert@twinsun.com>
34736
34737         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
34738
34739 2000-11-26  Jim Meyering  <meyering@lucent.com>
34740
34741         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
34742
34743 2000-11-22  Paul Eggert  <eggert@twinsun.com>
34744
34745         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
34746         size of (size_t) -1; it's not portable.
34747
34748 2000-11-17  Jim Meyering  <meyering@lucent.com>
34749
34750         * lib/strstr.c: Update from GNU libc.
34751
34752 2000-11-17  Akim Demaille  <akim@epita.fr>
34753
34754         * lib/obstack.h: Formatting changes.
34755         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
34756         prevent type checking.
34757         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
34758         cast the value to (void *): assigning a `foo *' to a `void *'
34759         variable is valid.
34760         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
34761
34762 2000-11-16  Jim Meyering  <meyering@lucent.com>
34763
34764         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
34765
34766 2000-11-11  Jim Meyering  <meyering@lucent.com>
34767
34768         * lib/error.c: Add a couple #includes, merging from GNU libc version.
34769
34770 2000-11-10  Jim Meyering  <meyering@lucent.com>
34771
34772         * lib/obstack.h: Update from GNU libc.
34773         * lib/obstack.c: Likewise.
34774
34775 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
34776
34777         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
34778
34779 2000-11-06  Paul Eggert  <eggert@twinsun.com>
34780
34781         * lib/getusershell.c (setusershell): Use rewind rather than
34782         fseek/fseeko, to avoid configuration hassles with fseeko.
34783         Don't bother opening SHELLS_FILE if shellstream is NULL;
34784         it's not necessary.
34785
34786 2000-11-05  Jim Meyering  <meyering@lucent.com>
34787
34788         * lib/makepath.h (make_dir): Declare.
34789         * lib/makepath.c (make_dir): Remove `static' attribute.
34790         Tweak a comment.
34791
34792 2000-11-04  Jim Meyering  <meyering@lucent.com>
34793
34794         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
34795
34796 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
34797
34798         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
34799         last one in a bucket, advance to the next bucket.
34800
34801 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
34802
34803         * lib/fnmatch.c: Do not comment out all the code if we are using
34804         the GNU C library, because in some cases we are replacing buggy
34805         code in the GNU C library itself.
34806
34807 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
34808
34809         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
34810         (regex_compile): Catch bogus \(\1\).
34811
34812 2000-10-30  Paul Eggert  <eggert@twinsun.com>
34813
34814         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
34815         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
34816         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
34817
34818 2000-10-30  Paul Eggert  <eggert@twinsun.com>
34819
34820         * lib/error.h, getline.h, modechange.h:
34821         Remove "2000" from Copyright line, as the file hasn't been
34822         changed this year other than in the copyright notice.
34823
34824         * lib/xalloc.h: Add "2000" to Copyright line, as this file
34825         was changed this year.
34826
34827 2000-10-29  Jim Meyering  <meyering@lucent.com>
34828
34829         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
34830         renaming.
34831         * m4/ls-mntd-fs.m4: Likewise
34832
34833 2000-10-29  Jim Meyering  <meyering@lucent.com>
34834
34835         * lib/xstat.in: Fix grammar in comment.
34836
34837 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
34838
34839         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
34840         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
34841         doesn't define __restrict_arr.
34842
34843 2000-10-28  Jim Meyering  <meyering@lucent.com>
34844
34845         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
34846         (jm_PREREQ_MEMCHR): New function.
34847
34848 2000-10-28  Jim Meyering  <meyering@lucent.com>
34849
34850         * lib/memchr.c: Update from libc.
34851         Adjust for portability:
34852         [HAVE_STDLIB_H]: Include stdlib.h.
34853         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
34854         Undef __memchr, too.
34855         [!weak_alias]: Define __memchr to memchr.
34856
34857         * lib/regex.c: Update from libc.
34858         * lib/regex.h: Likewise.
34859         * lib/getopt1.c: Likewise.
34860         * lib/memcmp.c: Likewise.
34861
34862         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
34863         Avoid using fseek, when possible -- it's broken by design.
34864         Patch by Ulrich Drepper.
34865
34866 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
34867
34868         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
34869         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
34870         Giving in to popular pressure to shut up the compiler with casts.
34871
34872 2000-10-26  Jim Meyering  <meyering@lucent.com>
34873
34874         * lib/strftime.c: Update from libc.
34875
34876 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
34877
34878         * regex.c: More `unsigned char' -> `re_char' changes.
34879         Also change several `int' into `re_wchar_t'.
34880         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
34881         (PUSH_FAILURE_POINTER): Don't cast any more.
34882         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
34883         We want GCC to complain, since this piece of code makes
34884         re_match non-reentrant, which *should* be fixed.
34885         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
34886         (EXTEND_BUFFER): Use RETALLOC.
34887         (SET_LIST_BIT): Don't cast.
34888         (re_wchar_t): New type.
34889         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
34890         that those two functions will always properly return.
34891         (IMMEDIATE_QUIT_CHECK): Cast to void.
34892         (analyse_first): Use recursion rather than an explicit stack.
34893         (re_compile_fastmap): Can't fail anymore.
34894         (re_search_2): Don't check re_compile_fastmap for failure.
34895         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
34896         Now also sets the new value (passed in a new argument).
34897         (re_match_2_internal): Use it.
34898         Also, use a new var `reg' of type size_t when looping through regs
34899         rather than reuse the inappropriate `mcnt'.
34900
34901 2000-10-25  Jim Meyering  <meyering@lucent.com>
34902
34903         * lib/obstack.c: Update from libc.
34904
34905 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
34906
34907         * regex.c (regex_compile): Change the way of handling a range from
34908         a char less than 256 to a char not less than 256.
34909
34910 2000-10-24  Andrew Innes  <andrewi@gnu.org>
34911
34912         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
34913         NT-Emacs only.
34914         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
34915         so that re_search functions only quit when callers expect them to.
34916
34917 2000-10-23  Jim Meyering  <meyering@lucent.com>
34918
34919         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
34920         wrong.  That set_locale call must not have any side effects.
34921         From Paul Eggert.
34922
34923 2000-10-22  Jim Meyering  <meyering@lucent.com>
34924
34925         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
34926         [CYCLIC]: Remove now-unused definition.
34927
34928         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
34929         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
34930         Suggestion from Ulrich Drepper.
34931
34932 2000-10-21  Jim Meyering  <meyering@lucent.com>
34933
34934         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
34935         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
34936         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
34937
34938 2000-10-21  Jim Meyering  <meyering@lucent.com>
34939
34940         * lib/dirname.c (memrchr): Declare if necessary.
34941         (dir_name): Remove the restriction that there be no
34942         trailing slashes.  Now, this code skips past them, effectively
34943         ignoring them.
34944         [TEST_DIRNAME] (main): New unit tests.
34945
34946         * lib/memrchr.c: New file from GNU libc.
34947         Undef __memrchr, too.
34948         [!weak_alias]: Define __memrchr to memrchr.
34949         Guard weak_alias use with `#ifdef weak_alias'.
34950
34951 2000-10-21  Jim Meyering  <meyering@lucent.com>
34952
34953         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
34954         (dir_name): Use dir_name_r.
34955         * lib/dirname.h (dir_name_r): Declare it.
34956
34957 2000-10-17  Jim Meyering  <meyering@lucent.com>
34958
34959         * lib/quote.h (PARAMS): Define and use.
34960         Reported by Akim Demaille.
34961
34962         * lib/getopt.c: Update from libc.
34963
34964 2000-10-16  Jim Meyering  <meyering@lucent.com>
34965
34966         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
34967         setlocale.
34968         From Jan Fedak.
34969
34970 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
34971
34972         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
34973
34974 2000-09-25  Jim Meyering  <meyering@lucent.com>
34975
34976         * lib/md5.h (rol): Define (from GnuPG).
34977
34978         * lib/sha.c: Give credit (GnuPG) where due.
34979         (M): Use rol rather than open-coding it.
34980         Add a FIXME comment.
34981
34982 2000-09-21  Jim Meyering  <meyering@lucent.com>
34983
34984         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
34985         Reported by Michael Stone.
34986
34987 2000-09-20  Jim Meyering  <meyering@lucent.com>
34988
34989         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
34990         (noinst_HEADERS): Add sha.h.
34991         Based on code from Scott G. Miller and from GnuPG.
34992
34993 2000-09-18  Jim Meyering  <meyering@lucent.com>
34994
34995         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
34996         LIBS. Otherwise, everyone ends up linking with -lelf for some
34997         configurations.
34998         Reported by Mike Stone.
34999
35000 2000-09-15  Jim Meyering  <meyering@lucent.com>
35001
35002         * lib/regex.c: Update from libc.
35003
35004 2000-09-10  Jim Meyering  <meyering@lucent.com>
35005
35006         * lib/getopt.c (_getopt_internal): Update from glibc.
35007
35008 2000-09-09  Jim Meyering  <meyering@lucent.com>
35009
35010         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
35011         think it should be used as a general replacement for isascii.
35012         * lib/fnmatch.c: Likewise.
35013         * lib/mbswidth.c: Likewise
35014         * lib/regex.c: Likewise.
35015
35016         Don't use atoi.
35017         * lib/userspec.c: Include sys/param.h and limits.h.
35018         Include xstrtol.h.
35019         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
35020         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
35021         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
35022         UID, GID.  Check range.
35023
35024 2000-09-06  Jim Meyering  <meyering@lucent.com>
35025
35026         * lib/getopt.c (_getopt_internal): Update from glibc.
35027
35028 2000-08-30  Jim Meyering  <meyering@lucent.com>
35029
35030         * lib/strftime.c: Merge in changes from GNU libc.
35031
35032 2000-08-26  Jim Meyering  <meyering@lucent.com>
35033
35034         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
35035         * m4/fpending.m4: New file.
35036
35037 2000-08-26  Jim Meyering  <meyering@lucent.com>
35038
35039         * lib/closeout.c: Include "__fpending.h".
35040         (close_stdout_status): Return right away if there's nothing to flush.
35041
35042         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
35043         * lib/__fpending.c: New file.
35044         * lib/__fpending.h: New file.
35045
35046 2000-08-20  Jim Meyering  <meyering@lucent.com>
35047
35048         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
35049         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
35050         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
35051
35052 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
35053
35054         Improve fileutils installation on systems where running
35055         programs (like install) can't be unlinked.
35056         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
35057         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
35058
35059 2000-08-07  Paul Eggert  <eggert@twinsun.com>
35060
35061         Standardize on "memory exhausted" instead of "Memory exhausted"
35062         or "virtual memory exhausted".
35063         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
35064         "virtual memory exhausted".
35065         * lib/same.c (same_name): Invoke xalloc_die instead of printing
35066         our own message.
35067         * lib/userspec.c (parse_user_spec): Likewise.
35068         * lib/bumpalloc.h: comment fix
35069         * lib/same.c, userspec.c: Include xalloc.h.
35070
35071         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
35072         not char *const and pointing to a constant array.
35073         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
35074         (xrealloc): Comment fix.
35075
35076         * lib/userspec.c (parse_user_spec):
35077         Don't translate a message until just before returning,
35078         to avoid unnecessary translation.
35079
35080 2000-08-07  Jim Meyering  <meyering@lucent.com>
35081
35082         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
35083         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
35084         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
35085         getgroups.c, gethostname.c, getopt.h, group-member.c,
35086         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
35087         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
35088         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
35089         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
35090         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
35091         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
35092         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
35093         yesno.c: Back out Copyright date changes for each file with no change
35094         this year.  This eases coordination with other programs using the same
35095         source code modules.  From Paul Eggert.
35096
35097 2000-08-06  Paul Eggert  <eggert@twinsun.com>
35098
35099         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
35100         not char, for compatibility with glibc 2.1.3 strftime.c.
35101
35102 2000-08-03  Greg McGary  <greg@mcgary.org>
35103
35104         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
35105         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
35106         (EXTEND_BUFFER): Use them.
35107
35108 2000-08-01  Jim Meyering  <meyering@lucent.com>
35109
35110         * lib/dirname.c (ISSLASH): Define.
35111         (BACKSLASH_IS_PATH_SEPARATOR): Define.
35112         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
35113         both `\' and `/' may be use as path separators.
35114         Based on a patch from Prashant TR.
35115
35116 2000-07-31  Paul Eggert  <eggert@twinsun.com>
35117
35118         * lib/quotearg.c (quotearg_n_options): Don't make the initial
35119         slot vector a constant, since it might get modified.
35120
35121 2000-07-31  Jim Meyering  <meyering@lucent.com>
35122
35123         * lib/xmalloc.c: Use `virtual memory exhausted', not
35124         `Memory exhausted'.
35125         * lib/obstack.c (print_and_abort): Likewise.
35126
35127 2000-07-30  Paul Eggert  <eggert@twinsun.com>
35128
35129         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
35130         buffer, so that the caller can always quote one small
35131         component of a "memory exhausted" message in slot 0.
35132         From a suggestion by Jim Meyering.
35133
35134 2000-07-30  Jim Meyering  <meyering@lucent.com>
35135
35136         * lib/makepath.c (make_path): Quote the other instance, too.
35137
35138         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
35139         (STATIC_BUF_SIZE): Define.
35140         (quotearg_n_options): Use only statically allocated storage when
35141         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
35142         than STATIC_BUF_SIZE.
35143
35144 2000-07-29  Jim Meyering  <meyering@lucent.com>
35145
35146         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
35147         * lib/dirname.c (dir_name): Likewise.
35148
35149         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
35150         `/'.
35151
35152         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
35153         (dir_name): Assert that there are no trailing slashes.
35154
35155 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
35156
35157         * lib/mbswidth.h (mbswidth): Add a flags argument.
35158         (mbswidth): New declaration.
35159         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
35160         * lib/mbswidth.c (mbswidth): Add a flags argument.
35161         (mbsnwidth): New function.
35162
35163 2000-07-24  Jim Meyering  <meyering@lucent.com>
35164
35165         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
35166
35167 2000-07-23  Paul Eggert  <eggert@twinsun.com>
35168
35169         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
35170
35171 2000-07-23  Paul Eggert  <eggert@twinsun.com>
35172
35173         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
35174         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
35175         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
35176         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
35177         invoke multibyte primitives.
35178
35179 2000-07-23  Paul Eggert  <eggert@twinsun.com>
35180
35181         * lib/quotearg.c:
35182         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
35183         so that mbstate_t is always defined.
35184
35185         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
35186         be 1 in at least one GCC installation, and this configuration
35187         error is likely to be common.  Ignoring MB_LEN_MAX hurts
35188         performance on hosts that have mbrtowc but have only unibyte
35189         locales, but I assume these hosts are rare.
35190
35191 2000-07-23  Paul Eggert  <eggert@twinsun.com>
35192
35193         * lib/mbswidth.c (_XOPEN_SOURCE):
35194         Don't define; this causes problems on Solaris 7.
35195         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
35196
35197 2000-07-23  Jim Meyering  <meyering@lucent.com>
35198
35199         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
35200         too: getgrgid, getpwuid, getuid.
35201
35202 2000-07-23  Jim Meyering  <meyering@lucent.com>
35203
35204         * lib/basename.c (base_name): Add an assertion.
35205
35206 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
35207
35208         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
35209         shadow its mbsinit function.
35210
35211 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
35212
35213         * lib/mbswidth.h: New file.
35214         * lib/mbswidth.c: New file.
35215         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
35216         (noinst_HEADERS): Add mbswidth.h.
35217
35218 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
35219
35220         * lib/config.charset: Add support for FreeBSD. Improve support for
35221         HP-UX and IRIX 6.
35222
35223 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
35224
35225         * m4/mbswidth.m4: New file.
35226         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
35227
35228 2000-07-15  Jim Meyering  <meyering@lucent.com>
35229
35230         * lib/makepath.c: Include quote.h.
35231         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
35232         corresponding argument in a `quote (...)' call.
35233         Give better diagnostics.
35234
35235         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
35236         (noinst_HEADERS): Add quote.h.
35237
35238         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
35239         from tar's src/misc.c.
35240         * lib/quote.h: New file.  Prototypes for same.
35241
35242 2000-07-14  Paul Eggert  <eggert@twinsun.com>
35243
35244         From a suggestion by Bruno Haible.
35245         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
35246         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
35247         to decide whether to define the BeOS workaround macro;
35248         this adjusts to the change to AC_MBSTATE_T.
35249
35250 2000-07-14  Jim Meyering  <meyering@lucent.com>
35251
35252         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
35253         jm_AC_TYPE_UINTMAX_T.
35254
35255 2000-07-13  Paul Eggert  <eggert@twinsun.com>
35256
35257         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
35258
35259         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
35260         quotearg_buffer_restyled): Add support for
35261         clocale_quoting_style.  Undo previous change to
35262         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
35263         and "{RIGHT QUOTATION MARK}" msgids.
35264
35265 2000-07-10  Paul Eggert  <eggert@twinsun.com>
35266
35267         From a suggestion by Bruno Haible.
35268         * m4/mbstate_t.m4 (AC_MBSTATE_T):
35269         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
35270         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
35271         and mbstate_t, to a single-part test that simply defines mbstate_t.
35272         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
35273         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
35274
35275 2000-07-10  Jim Meyering  <meyering@lucent.com>
35276
35277         * m4/strerror_r.m4: Mirror the correction made in autoconf.
35278
35279         * m4/gnu-source.m4: Output to confdefs.h directly.
35280         Suggestion from Akim Demaille.
35281
35282 2000-07-09  Paul Eggert  <eggert@twinsun.com>
35283
35284         The old behavior of quoting `like this' doesn't look good with
35285         newer, ISO-style fonts.  See:
35286         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
35287
35288         Instead, quote "like this" by default.  Let the translator
35289         tailor the locale-specific quoting behavior by providing
35290         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
35291
35292         * lib/quotearg.c (N_): New macro.
35293         (gettext_default): New function.
35294         (quotearg_buffer_restyled): Use
35295         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
35296         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
35297
35298 2000-07-09  Jim Meyering  <meyering@lucent.com>
35299
35300         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
35301         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
35302
35303         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
35304         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
35305
35306 2000-07-09  Jim Meyering  <meyering@lucent.com>
35307
35308         * lib/Most files: Update copyright dates to include 2000.
35309
35310 2000-07-08  Jim Meyering  <meyering@lucent.com>
35311
35312         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
35313         if not defined.
35314         (xgethostname): Remove now-unnecessary #ifdef.
35315         Move declaration of `err' into loop where it's used.
35316
35317 2000-07-05  Paul Eggert  <eggert@twinsun.com>
35318         and Bruno Haible  <haible@clisp.cons.org>
35319
35320         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
35321         only if the test for an object-type mbstate_t fails.  This
35322         prevents us from mistakenly reporting that mbstate_t is a
35323         system object type after we "#define mbstate_t int" to work
35324         around its lack.
35325
35326 2000-07-05  Paul Eggert  <eggert@twinsun.com>
35327         and Bruno Haible  <haible@clisp.cons.org>
35328
35329         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
35330
35331 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
35332
35333         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
35334         to strerror_r.
35335         Include <ctype.h> for use of isalpha.
35336
35337 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
35338
35339         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
35340         by allocating a larger buffer. Test the gethostname return value for
35341         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
35342         returns an error and ENAMETOOLONG isn't defined.
35343
35344 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
35345
35346         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
35347         dimension.
35348
35349 2000-07-04  Jim Meyering  <meyering@lucent.com>
35350
35351         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
35352         of the deprecated AC_CHECKING.
35353
35354 2000-07-04  Jim Meyering  <meyering@lucent.com>
35355
35356         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
35357         Reported by Bruno Haible.
35358
35359 2000-07-04  Jim Meyering  <meyering@lucent.com>
35360
35361         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
35362         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
35363         lacks mbrtowc.
35364
35365 2000-07-03  Paul Eggert  <eggert@twinsun.com>
35366
35367         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
35368         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
35369
35370 2000-07-03  Paul Eggert  <eggert@twinsun.com>
35371         and Bruno Haible  <haible@clisp.cons.org>
35372
35373         * lib/quotearg.c (mbrtowc):
35374         Assign to *pwc, and return 1 only if result is nonzero.
35375         (iswprint): Use ISPRINT when substituting our own mbrtowc.
35376
35377 2000-07-03  Jim Meyering  <meyering@lucent.com>
35378
35379         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
35380
35381 2000-07-03  Jim Meyering  <meyering@lucent.com>
35382
35383         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
35384         This is necessary to get a definition of e.g., UTMP_FILE on
35385         HP-UX 10.20.
35386         From Bob Proulx.
35387
35388 2000-07-02  Jim Meyering  <meyering@lucent.com>
35389
35390         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
35391
35392         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
35393         AC_LIBOBJ(function_name).
35394         * m4/chown.m4: Likewise.
35395         * m4/fnmatch.m4: Likewise.
35396         * m4/ftruncate.m4: Likewise.
35397         * m4/getgroups.m4: Likewise.
35398         * m4/getline.m4: Likewise.
35399         * m4/group-member.m4: Likewise.
35400         * m4/jm-macros.m4: Likewise.
35401         * m4/lstat.m4: Likewise.
35402         * m4/malloc.m4: Likewise.
35403         * m4/memcmp.m4: Likewise.
35404         * m4/nanosleep.m4: Likewise.
35405         * m4/putenv.m4: Likewise.
35406         * m4/realloc.m4: Likewise.
35407         * m4/regex.m4: Likewise.
35408         * m4/stat.m4: Likewise.
35409         * m4/strftime.m4: Likewise.
35410
35411 2000-07-02  Jim Meyering  <meyering@lucent.com>
35412
35413         * lib/quotearg.c (mbstate_t): Don't define here.
35414
35415 2000-07-02  Jim Meyering  <meyering@lucent.com>
35416
35417         * lib/nanosleep.c (SIGCONT): Define if not already defined.
35418
35419 2000-07-01  Jim Meyering  <meyering@lucent.com>
35420
35421         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
35422
35423 2000-07-01  Jim Meyering  <meyering@lucent.com>
35424
35425         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
35426         problem.
35427
35428 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
35429
35430         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
35431         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
35432
35433 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
35434
35435         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
35436         per change in ../m4/ls-mntd-fs.m4.
35437         (read_filesystem_list): Ignore symbolic links.
35438
35439 2000-06-29  Jim Meyering  <meyering@lucent.com>
35440
35441         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
35442         for declaration of strcmp.
35443
35444         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
35445
35446         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
35447         Avoid warning by casting result to `char *' to remove `const'.
35448
35449 2000-06-28  Jim Meyering  <meyering@lucent.com>
35450
35451         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
35452         included by quotearg.c, for which we perform this test.  From
35453         Bruno Haible.
35454
35455 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
35456
35457         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
35458         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
35459         <utmpx.h> exists, put readutmp.o into LIBOBJS.
35460
35461 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
35462
35463         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
35464
35465 2000-06-26  Paul Eggert  <eggert@twinsun.com>
35466
35467         savedir now sets errno on failure and invokes xmalloc to get memory.
35468         Fix a couple of other minor bugs while we're at it.
35469
35470         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
35471         (NAMLEN): Remove macro.
35472         (malloc, realloc): Remove decls.
35473         (stpcpy): Likewise.
35474         ("xalloc.h"): Include.
35475         (NAME_SIZE_DEFAULT): New macro.
35476         (savedir): Use xmalloc / xrealloc to allocate memory.
35477         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
35478         Skip "" directory entries.
35479         Use strlen to calculate directory entry length, since the old method
35480         is rarely used these days and isn't worth supporting.
35481         Don't use a pointer after freeing it.
35482         Check for integer overflow when calculating allocation size.
35483         Use memcpy to copy entries, instead of stpcpy.
35484         Set errno properly when returning NULL.
35485         Check for readdir error.
35486
35487 2000-06-26  Jim Meyering  <meyering@lucent.com>
35488
35489         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
35490
35491 2000-06-25  Jim Meyering  <meyering@lucent.com>
35492
35493         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
35494         Linux header bug when _XOPEN_SOURCE is defined to 500.
35495
35496 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
35497
35498         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
35499         deficiency.
35500
35501 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
35502
35503         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
35504         Include xalloc.h.
35505         Don't include <stdlib.h>.  Don't declare malloc, realloc.
35506
35507 2000-06-24  Jim Meyering  <meyering@lucent.com>
35508
35509         * m4/strerror_r.m4: Revive this file -- to try out an experimental
35510         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
35511         for which strerror does return char*, but which lacks a conveniently
35512         accessible declaration of the function.  If the compile-test says
35513         strerror_r doesn't work, then resort to a `run'-test that works on
35514         BeOS and segfaults on DEC Unix.
35515
35516 2000-06-24  Jim Meyering  <meyering@lucent.com>
35517
35518         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
35519
35520 2000-06-23  Paul Eggert  <eggert@twinsun.com>
35521
35522         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
35523         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
35524
35525 2000-06-23  Paul Eggert  <eggert@twinsun.com>
35526
35527         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
35528         (mbrtowc, mbstate_t): Define substitutes if
35529         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
35530         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
35531         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
35532
35533 2000-06-23  Jim Meyering  <meyering@lucent.com>
35534
35535         * m4/afs.m4: Add missing AC_MSG_RESULT.
35536         Reported by Bruno Haible.
35537
35538         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
35539         Suggestion from Bruno Haible.
35540
35541 2000-06-23  Jim Meyering  <meyering@lucent.com>
35542
35543         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
35544
35545 2000-06-21  Jim Meyering  <meyering@lucent.com>
35546
35547         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
35548
35549 2000-06-21  Jim Meyering  <meyering@lucent.com>
35550
35551         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
35552         (noinst_HEADERS): Add getstr.h.
35553
35554         * lib/getline.c (getstr): Move into a separate file.
35555         * lib/getstr.c (getstr): New file, extracted from getline.c, with
35556         the following changes: new parameter, delim2; both delim[12]
35557         parameters have type `int', not `char'.  The latter would lose
35558         with 8-bit delimiters.
35559         * lib/getstr.h: New file.
35560
35561 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
35562
35563         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
35564         than 1024, return a memory chunk of least possible size, instead
35565         of size PATH_MAX + 2. In the loop, increment the size proportionally.
35566         Use free/xmalloc instead of xrealloc to avoid copying for very long
35567         paths.
35568
35569 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
35570
35571         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
35572         the empty string.
35573
35574 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
35575
35576         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
35577         address, not strdup.  Include <stdlib.h> and don't declare free().
35578
35579 2000-06-19  Jim Meyering  <meyering@lucent.com>
35580
35581         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
35582
35583 2000-06-18  Jim Meyering  <meyering@lucent.com>
35584
35585         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
35586
35587         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
35588         `checking whether...' message to be consistent with that of the
35589         lstat test.
35590
35591 2000-06-18  Jim Meyering  <meyering@lucent.com>
35592
35593         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
35594         Besides, these days every porting target provides a mkdir function.
35595
35596         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
35597         needed. (this snippet comes from src/system.h).
35598
35599 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
35600
35601         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
35602
35603 2000-06-15  Paul Eggert  <eggert@twinsun.com>
35604
35605         * lib/human.c (adjust_value): New function.
35606         (human_readable_inexact): Apply rounding style even when
35607         printing approximate values.
35608
35609 2000-06-14  Paul Eggert  <eggert@twinsun.com>
35610
35611         * lib/human.c (human_readable_inexact): Allow an input block
35612         size that is not a multiple of the output block size, and vice versa.
35613         Reported by Piergiorgio Sartor.
35614
35615 2000-06-14  Paul Eggert  <eggert@twinsun.com>
35616
35617         * lib/getdate.y (get_date): Apply relative times after time
35618         zone indicator, not before.  Reported by Todd A. Jacobs.
35619
35620 2000-06-13  Jim Meyering  <meyering@lucent.com>
35621
35622         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
35623
35624         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
35625
35626 2000-06-12  Paul Eggert  <eggert@twinsun.com>
35627
35628         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
35629
35630 2000-06-12  Jim Meyering  <meyering@lucent.com>
35631
35632         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
35633         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
35634         optional argument.
35635         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
35636         the optional argument, `lib'.
35637
35638 2000-06-08  Jim Meyering  <meyering@lucent.com>
35639
35640         * m4/largefile.m4: Remove file (now that it's part of autoconf).
35641
35642 2000-06-04  Paul Eggert  <eggert@twinsun.com>
35643
35644         Rewrite largefile configuration so that we don't need to run
35645         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
35646         AC_CANONICAL_HOST in configure.in -- jmm]
35647
35648         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
35649         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
35650         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
35651         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
35652         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
35653         All uses changed.
35654         Instead of inspecting the output of getconf, try to compile the
35655         test program without and with the macro definition.
35656         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
35657         for getconf.  Instead, check for the needed flags by compiling
35658         test programs.
35659
35660 2000-06-04  Paul Eggert  <eggert@twinsun.com>
35661
35662         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
35663
35664 2000-06-04  Jim Meyering  <meyering@lucent.com>
35665
35666         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
35667         SunOS 4.1.4 for which gid_t is an unsigned type.
35668
35669 2000-06-03  Jim Meyering  <meyering@lucent.com>
35670
35671         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
35672         now that autoconf requires that.
35673
35674         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
35675         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
35676         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
35677
35678 2000-06-03  Jim Meyering  <meyering@lucent.com>
35679
35680         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
35681
35682 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
35683
35684         * m4/glibc21.m4: New file.
35685         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
35686
35687 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
35688
35689         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
35690         newer, don't install charset.alias.
35691         * lib/config.charset: Change the Linux/glibc rules so they become empty
35692         on glibc-2.1 or newer.
35693
35694 2000-06-02  Jim Meyering  <meyering@lucent.com>
35695
35696         * lib/mountlist.c: Back out last change.  Instead, do this...
35697         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
35698         me_dummy member using the same `ignore'-testing code.
35699         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
35700         fs_type strings.
35701         From Mark D. Roth.
35702
35703 2000-05-29  Jim Meyering  <meyering@lucent.com>
35704
35705         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
35706         mounts with the `ignore' attribute.  Based on a patch from
35707         Mark D. Roth.
35708
35709 2000-05-28  Jim Meyering  <meyering@lucent.com>
35710
35711         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
35712         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
35713         * m4/stat.m4: Likewise.
35714         * m4/lstat.m4: Likewise.
35715         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
35716
35717         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
35718         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
35719
35720 2000-05-26  Jim Meyering  <meyering@lucent.com>
35721
35722         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
35723
35724 2000-05-24  Jim Meyering  <meyering@lucent.com>
35725
35726         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
35727         autoconf requires that.
35728         * m4/lib-check.m4: Likewise.
35729         * m4/jm-macros.m4: Likewise.
35730         * m4/strftime.m4: Likewise.
35731
35732         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
35733         AC_CHECK_DECLS, now that autoconf requires that.
35734
35735 2000-05-22  Jim Meyering  <meyering@lucent.com>
35736
35737         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
35738         * m4/lstat.m4: Likewise.
35739
35740 2000-05-22  Jim Meyering  <meyering@lucent.com>
35741
35742         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
35743
35744 2000-05-20  Jim Meyering  <meyering@lucent.com>
35745
35746         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
35747         (jm_PREREQ): Use it.
35748
35749 2000-05-18  Jim Meyering  <meyering@lucent.com>
35750
35751         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
35752         back, too, since it may have been modified by allocate_entry.
35753         (hash_delete): Rewrite to use neither the assignment operator
35754         nor the comma operator in an if-expression.
35755
35756 2000-05-15  Paul Eggert  <eggert@twinsun.com>
35757
35758         * lib/closeout.c:
35759         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
35760         Remove; no longer needed.
35761         "quotearg.h": Add include.
35762         (file_name): Do not bother to explicitly initialize to NULL; it's less
35763         efficient on some hosts.
35764         (close_stdout_status): Remove test as to whether stdout was already
35765         closed; it breaks for the case "echo x | sort >&-".
35766         Quote file name colons.
35767         Do not assume that _("write error") lacks format strings.
35768
35769 2000-05-15  Jim Meyering  <meyering@lucent.com>
35770
35771         * lib/version-etc.c (version_etc_copyright): Update the copyright
35772         string used in all --version output.
35773
35774 2000-05-14  Jim Meyering  <meyering@lucent.com>
35775
35776         * lib/closeout.c (close_stdout_set_file_name): New function.
35777         (close_stdout_status): Use new file-scoped global.
35778         Return right away if fstat says the stdout file descriptor is invalid.
35779         * lib/closeout.h (close_stdout_set_file_name): Declare.
35780
35781 2000-05-10  Jim Meyering  <meyering@lucent.com>
35782
35783         * lib/closeout.c [default_exit_status]: New file-scoped variable.
35784         (close_stdout_set_status): New function.
35785         * lib/closeout.h (close_stdout_set_status): Declare.
35786
35787 2000-05-09  Jim Meyering  <meyering@lucent.com>
35788
35789         * m4/gettext.m4: Rename this...
35790         * m4/libintl.m4: ...to this.
35791
35792 2000-05-08  Jim Meyering  <meyering@lucent.com>
35793
35794         * lib/long-options.c: Don't include closeout.h.
35795         (parse_long_options): Don't call close_stdout for --version.
35796
35797 2000-05-06  Paul Eggert  <eggert@twinsun.com>
35798
35799         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
35800         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
35801         2.1.3 bug.  This avoids a clash when files like regex.c define
35802         _GNU_SOURCE.
35803
35804 2000-05-06  Jim Meyering  <meyering@lucent.com>
35805
35806         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
35807         (AC_REPLACE_FUNCS): Add strnlen.
35808
35809         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
35810         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
35811
35812         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
35813         AC_SEARCH_LIBS call for nanosleep.
35814         (LIB_NANOSLEEP): Set and AC_SUBST.
35815
35816 2000-05-06  Jim Meyering  <meyering@lucent.com>
35817
35818         * lib/strnlen.c: Undefine __strnlen and strnlen.
35819         [!weak_alias]: Define __strnlen to strnlen.
35820
35821         * lib/atexit.c: New file, from libiberty.
35822
35823 2000-05-06  Jim Meyering  <meyering@lucent.com>
35824
35825         * lib/closeout.c (close_stdout_status): Also check for errors on the
35826         stderr stream.
35827
35828 2000-05-05  Jim Meyering  <meyering@lucent.com>
35829
35830         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
35831         AC_SEARCH_LIBS call for clock_gettime.
35832         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
35833
35834         * m4/search-libs.m4: Update from autoconf.
35835
35836         su doesn't work on Solaris 2.6.
35837         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
35838         <shadow.h>.  Reported by Dragos Harabor.
35839
35840 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
35841
35842         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
35843         memcpy instead of xmalloc, xrealloc, path_concat.
35844         (locale_charset): Treat empty environment variables as absent.
35845         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
35846
35847 2000-05-04  Jim Meyering  <meyering@lucent.com>
35848
35849         * lib/getopt.c: Update from glibc.
35850         * lib/obstack.c: Likewise.
35851         * lib/obstack.h: Likewise.
35852         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
35853         file
35854
35855         * lib/regex.h: Likewise.
35856         * lib/strndup.c: Likewise.
35857         * lib/strnlen.c: New file, from glibc.
35858
35859 2000-05-03  Jim Meyering  <meyering@lucent.com>
35860
35861         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
35862
35863 2000-05-02  Paul Eggert  <eggert@twinsun.com>
35864
35865         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
35866         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
35867         compile-time test, rather than inspecting host and OS, to
35868         decide whether to define _LARGEFILE_SOURCE.
35869
35870 2000-05-01  Jim Meyering  <meyering@lucent.com>
35871
35872         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
35873
35874         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
35875         Based on a patch from Bruno Haible.
35876
35877 2000-05-01  Jim Meyering  <meyering@lucent.com>
35878
35879         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
35880
35881 2000-04-29  Jim Meyering  <meyering@lucent.com>
35882
35883         * lib/path-concat.c: Declare strdup only if it's not defined.
35884         * lib/canon-host.c: Likewise.
35885
35886 2000-04-28  Jim Meyering  <meyering@lucent.com>
35887
35888         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
35889         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
35890         is included first, then limits.h is included by locale.h by libintl.h.
35891         From John David Anglin.
35892
35893 2000-04-25  Jim Meyering  <meyering@lucent.com>
35894
35895         * lib/makepath.c (S_IRWXUGO): Define.
35896         (make_path): Always perform explicit chmod if MODE specifies any
35897         of the `special' permission bits.  Prompted by a bug report against
35898         install from Mate Wierdl and Joost van Baal.
35899
35900 2000-04-18  Jim Meyering  <meyering@lucent.com>
35901
35902         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
35903         (jm_PREREQ): Use it.
35904
35905 2000-04-18  Jim Meyering  <meyering@lucent.com>
35906
35907         * lib/README: New file.
35908
35909         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
35910         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
35911
35912 2000-04-17  Jim Meyering  <meyering@lucent.com>
35913
35914         Get it right :-)
35915         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
35916         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
35917         Suggestion from Akim Demaille.
35918
35919 2000-04-17  Jim Meyering  <meyering@lucent.com>
35920
35921         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
35922         the definition of it to rpl_strftime also defined-away the system's
35923         declaration.
35924
35925 2000-04-15  Jim Meyering  <meyering@lucent.com>
35926
35927         Use `C' to denote so-called `contiguous' files, the same way
35928         that tar does.
35929         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
35930         (ftypelet): Use S_ISCTG.
35931         From Michael Deutschmann.
35932
35933 2000-04-14  Jim Meyering  <meyering@lucent.com>
35934
35935         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
35936         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
35937         clobbered.
35938
35939 2000-04-14  Jim Meyering  <meyering@lucent.com>
35940
35941         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
35942
35943 2000-04-13  Jim Meyering  <meyering@lucent.com>
35944
35945         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
35946         AH_VERBATIM to insert required #ifndef into config.h.in.
35947         Suggestion from Akim Demaille.
35948
35949 2000-04-12  Jim Meyering  <meyering@lucent.com>
35950
35951         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
35952         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
35953         Christian Krackowizer.
35954
35955         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
35956         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
35957         (AC_SYS_LARGEFILE): Require.
35958         (AM_C_PROTOTYPES): Require.
35959
35960 2000-04-08  Jim Meyering  <meyering@lucent.com>
35961
35962         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
35963         names don't conflict.  Reported by Eli Zaretskii.
35964
35965 2000-04-07  Jim Meyering  <meyering@lucent.com>
35966
35967         * lib/putenv.c: Move inclusion of errno.h so it follows that of
35968         sys/types.h, to work around system header problems on AIX 3.2.5.
35969         From Bruno Haible.
35970
35971 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
35972
35973         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
35974         bug.  Deal with the different error behavior of Irix iconv.
35975
35976 2000-04-05  Paul Eggert  <eggert@twinsun.com>
35977
35978         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
35979         IRIX if the installer said otherwise.
35980
35981 2000-04-05  Jim Meyering  <meyering@lucent.com>
35982
35983         Portability tweaks required for ultrix4.3.
35984         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
35985         (jm_CHECK_DECLS): Add getutent to the list of functions.
35986         (_jm_DECL_HEADERS): Add utmpx.h.
35987         From John David Anglin.
35988
35989         * m4/strftime.m4: Back out the 2000-04-02 change.
35990         Instead of that change, simply undefine putenv in the test program.
35991
35992 2000-04-05  Jim Meyering  <meyering@lucent.com>
35993
35994         Portability tweaks required for ultrix4.3.
35995         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
35996         getutent.
35997         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
35998         * lib/canon-host.c: Declare strdup.
35999         * lib/path-concat.c: Likewise.
36000         From John David Anglin.
36001
36002 2000-04-04  Jim Meyering  <meyering@lucent.com>
36003
36004         Be more DOS 8.3-friendly.
36005         * lib/ref-add.sin: Renamed from ref-add.sed.in.
36006         * lib/ref-del.sin: Renamed from ref-del.sed.in.
36007         * lib/Makefile.am: Reflect renaming.
36008         Reported by Eli Zaretskii.
36009
36010         Use a temporary file name that won't clash with `charset.alias'
36011         in the DOS 8.3 name space.
36012         * lib/Makefile.am (charset_tmp): Define.
36013         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
36014         (uninstall-local): Likewise.
36015         Reported by Eli Zaretskii.
36016
36017 2000-04-03  Jim Meyering  <meyering@lucent.com>
36018
36019         * m4/gettext.m4: Fix typo in comment.
36020
36021         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
36022         textutils/configure.in).  Suggestion from Paul Eggert.
36023         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
36024
36025 2000-04-02  Paul Eggert  <eggert@twinsun.com>
36026
36027         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
36028         variable in the shell rather than using putenv, which isn't
36029         portable.  This avoids the configure-time inter-test dependency
36030         on the potentially-renamed putenv function.
36031
36032 2000-03-30  Paul Eggert  <eggert@twinsun.com>
36033
36034         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
36035         before checking struct stat.st_blksize, so that
36036         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
36037
36038 2000-03-29  Paul Eggert  <eggert@twinsun.com>
36039
36040         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
36041         since strftime.c uses HAVE_STRFTIME to decide whether to use
36042         the underlying strftime.
36043
36044 2000-03-29  Paul Eggert  <eggert@twinsun.com>
36045
36046         * lib/time/strftime.c (my_strftime): Make sure we call the system
36047         strftime, not ourselves, when invoking the underlying strftime.
36048
36049 2000-03-24  Jim Meyering  <meyering@lucent.com>
36050
36051         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
36052         (charset_alias): Define.
36053         (install-exec-local): Factor out common code.
36054         (uninstall-local): Split lines longer than 80.
36055         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
36056         (SUFFIXES): Define.
36057         (.sed.in.sed): New rule.  Don't redirect directly to $@.
36058         (CLEANFILES): Add ref-add.sed and ref-del.sed.
36059
36060 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
36061
36062         * lib/config.charset: Output a line containing "Packages using this
36063         file".
36064         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
36065         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
36066         ref-del.sed): New rules.
36067
36068 2000-03-17  Jim Meyering  <meyering@lucent.com>
36069
36070         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
36071         Otherwise, include <strings.h>
36072
36073 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
36074
36075         * lib/unicodeio.c (utf8_wctomb): New function.
36076         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
36077         format instead of in UCS-4 with platform dependent endianness.
36078
36079 2000-03-10  Jim Meyering  <meyering@lucent.com>
36080
36081         * m4/lib-check.m4: Look for getspnam in -lgen, too.
36082         From Marco Franzen.
36083
36084 2000-03-07  Paul Eggert  <eggert@twinsun.com>
36085
36086         * lib/savedir.c (savedir): Work even if directory size is
36087         negative; this can happen with some screwy NFS configurations.
36088
36089 2000-03-06  Jim Meyering  <meyering@lucent.com>
36090
36091         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
36092         if it's NULL (because we ran out of memory).  From Bruno Haible.
36093
36094 2000-03-05  Jim Meyering  <meyering@lucent.com>
36095
36096         * lib/localcharset.c ("path-concat.h"): Include.
36097         (get_charset_aliases): Use path_concat instead of ANSI string
36098         concatenation.
36099
36100         * lib/unicodeio.h (PARAMS): Define.
36101         Use it to guard prototype.
36102
36103 2000-03-04  Jim Meyering  <meyering@lucent.com>
36104
36105         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
36106         for lib/localcharset.c.
36107
36108 2000-03-04  Jim Meyering  <meyering@lucent.com>
36109
36110         * lib/Makefile.am (install-exec-local): Create $(libdir) before
36111         installing into it.
36112         (uninstall-local): Uncomment this rule so `make distcheck' works
36113         once again.
36114
36115         * lib/unicodeio.c (<errno.h>): Include it.
36116         (errno): Declare if not defined.
36117
36118         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
36119
36120         * lib/config.charset: New version, incorporating remarks from a linux
36121         i18n mailing list.  From Bruno Haible.
36122
36123 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
36124
36125         * m4/codeset.m4: New file.
36126         * m4/iconv.m4: New file.
36127         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
36128
36129 2000-03-03  Jim Meyering  <meyering@lucent.com>
36130
36131         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
36132
36133 2000-03-02  Jim Meyering  <meyering@lucent.com>
36134
36135         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
36136         the messages come out on separate lines.
36137
36138         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
36139         rather than jm_CHECK_DECLARATIONS.
36140         * m4/decl.m4: Remove now-unused file.
36141
36142         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
36143         geteuid.
36144
36145 2000-03-02  Jim Meyering  <meyering@lucent.com>
36146
36147         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
36148
36149 2000-03-01  Jim Meyering  <meyering@lucent.com>
36150
36151         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
36152         * lib/unicodeio.c: Likewise.
36153
36154 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
36155
36156         * lib/config.charset: New file.
36157         * lib/localcharset.c: New file.
36158         * lib/unicodeio.h, lib/unicodeio.c: New files.
36159         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
36160         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
36161         (noinst_HEADERS): Add unicodeio.h.
36162         (all-local, install-exec-local, charset.alias): New targets.
36163
36164 2000-02-28  Paul Eggert  <eggert@twinsun.com>
36165
36166         * lib/quotearg.c (ALERT_CHAR): New macro.
36167         (quotearg_buffer_restyled): Use it.
36168
36169 2000-02-27  Jim Meyering  <meyering@lucent.com>
36170
36171         * m4/check-decl.m4: Add getenv to the list.
36172
36173 2000-02-27  Jim Meyering  <meyering@lucent.com>
36174
36175         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
36176         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
36177
36178         * lib/backupfile.c: Guard inclusion of stdlib.h with
36179         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
36180         Declare malloc if needed.
36181
36182         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
36183         `#ifndef HAVE_DECL..'
36184         now that autoconf always defines the HAVE_DECL_ symbols.
36185         * lib/human.c: Likewise.
36186         * lib/same.c: Likewise.
36187         * lib/strtoumax.c: Likewise.
36188
36189         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
36190         declaration check was not run.
36191         * lib/hash.c: Likewise.
36192         * lib/human.c: Likewise.
36193         * lib/same.c: Likewise.
36194         * lib/strtoumax.c: Likewise.
36195
36196         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
36197         `.', then first look up the entire `.'-containing string as a login
36198         name.
36199
36200 2000-02-23  Jim Meyering  <meyering@lucent.com>
36201
36202         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
36203         in place of my hack.
36204
36205 2000-02-18  Paul Eggert  <eggert@twinsun.com>
36206
36207         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
36208         (textint): New typedef.
36209         (parser_control): Member year changed from int to textint.
36210         All uses changed.
36211         (YYSTYPE): Removed; replaced by %union with int and textint members.
36212         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
36213         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
36214         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
36215         (tSNUMBER, tUNUMBER): Now of type <textintval>.
36216         (date, number, to_year): Use width of number in digits, not its value,
36217         to determine whether it's a 2-digit year, or a 2-digit time.
36218         (yylex): Store number of digits of numeric tokens.
36219         Reported by John Kendall.
36220
36221         (parser_control): Changed from struct parser_control to typedef (for
36222         consistency).  All uses changed.
36223
36224         (tID): Removed; not used.
36225         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
36226
36227 2000-02-14  Paul Eggert  <eggert@twinsun.com>
36228
36229         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
36230         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
36231
36232 2000-02-12  Jim Meyering  <meyering@lucent.com>
36233
36234         * lib/userspec.c (ISDIGIT): Define it.
36235         (isdigit): Remove definition.
36236         (is_number): Use ISDIGIT, not isdigit.
36237         <libintl.h>: Include.
36238         (_ and N_): Define.
36239         (parse_user_spec): Mark translatable strings.
36240
36241 2000-02-10  Jim Meyering  <meyering@lucent.com>
36242
36243         With these changes, nanosleep.[ch] are finally enough like the other
36244         lib/* replacement files to compile on a few more losing systems.
36245
36246         * lib/nanosleep.h: Don't include config.h.
36247         Remove prototype from declaration of nanosleep.
36248         (PARAMS): Remove now-unneeded definition.
36249         * lib/nanosleep.c: #undef nanosleep.
36250         (rpl_nanosleep): Rename from nanosleep.
36251
36252 2000-02-10  Jim Meyering  <meyering@lucent.com>
36253
36254         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
36255         gnu_nanosleep to rpl_nanosleep.
36256
36257 2000-02-09  Jim Meyering  <meyering@lucent.com>
36258
36259         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
36260         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
36261
36262 2000-02-08  Akim Demaille  <akim@epita.fr>
36263
36264         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
36265         `[' and `]' and remove uses of `changequote'.
36266         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
36267         (AC_SYS_LARGEFILE): Likewise.
36268         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
36269         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
36270         of changequote.
36271         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
36272         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
36273         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
36274         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
36275
36276 2000-02-05  Jim Meyering  <meyering@lucent.com>
36277
36278         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
36279         Remove explicit use of AC_HEADER_TIME.  It is required by
36280         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
36281         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
36282         in autoconf whereby the expansion of the latter ended up preceding
36283         the expansion of its prerequisite, AC_HEADER_TIME.
36284         Reported by Volker Borchert.
36285
36286 2000-02-03  Jim Meyering  <meyering@lucent.com>
36287
36288         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
36289
36290 2000-02-03  Jim Meyering  <meyering@lucent.com>
36291
36292         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
36293         rather than with `#if HAVE_UTMPNAME'.
36294
36295 2000-02-02  Jim Meyering  <meyering@lucent.com>
36296
36297         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
36298         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
36299         Reported by Eli Zaretskii.
36300
36301 2000-02-01  Jim Meyering  <meyering@lucent.com>
36302
36303         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
36304
36305 2000-01-31  Jim Meyering  <meyering@lucent.com>
36306
36307         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
36308         functions.  Add the time.h and sys/time.h headers along with the
36309         AC_REQUIRE'ment of AC_HEADER_TIME.
36310
36311 2000-01-31  Jim Meyering  <meyering@lucent.com>
36312
36313         * lib/nanosleep.h (nanosleep): Guard declaration with
36314         `#if ! HAVE_DECL_NANOSLEEP'.
36315         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
36316         the declaration in that vendor's sys/timers.h.
36317         Reported by Christian Krackowizer.
36318
36319         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
36320         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
36321         (ISPRINT): Likewise.
36322         Reported by Tom Tromey.
36323
36324 2000-01-30  Jim Meyering  <meyering@lucent.com>
36325
36326         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
36327
36328         * m4/prereq.m4 (utmp_includes): Define.
36329         Check for ut_user and ut_name members in both struct utmpx
36330         and struct utmp.
36331
36332 2000-01-30  Jim Meyering  <meyering@lucent.com>
36333
36334         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
36335         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
36336         header files where only utmpx.ut_user is declared.
36337
36338         * lib/readutmp.h (UT_USER): Define.
36339
36340 2000-01-29  Jim Meyering  <meyering@lucent.com>
36341
36342         * m4/lib-check.m4: New file containing library-related checks from
36343         fileutils and sh-utils (textutils had none).
36344
36345 2000-01-28  Jim Meyering  <meyering@lucent.com>
36346
36347         * m4/perl.m4: Change format of warning message to look more like that
36348         from the missing script.  Suggestion from François Pinard.
36349
36350 2000-01-25  Jim Meyering  <meyering@lucent.com>
36351
36352         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
36353         well as time.h in the compile check.
36354         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
36355         Fix typo in cross-compiling case: s/yes/no/.
36356
36357 2000-01-23  Jim Meyering  <meyering@lucent.com>
36358
36359         * m4/jm-macros.m4: Move df-related tests here from
36360         fileutils/configure.in
36361
36362         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
36363         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
36364
36365         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
36366         s/space/ac_fsusage_space/.
36367         (jm_FILE_SYSTEM_USAGE): Take two parameters.
36368
36369         * m4/ftruncate.m4: New file (derived from part of
36370         fileutils/configure.in).
36371         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
36372         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
36373
36374         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
36375         AC_SUBST these here, rather than just in sh-util/configure.in, so
36376         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
36377         all the same.
36378         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
36379         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
36380         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
36381         (AC_SUBST(POW_LIBM)): Likewise.
36382         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
36383
36384 2000-01-23  Jim Meyering  <meyering@lucent.com>
36385
36386         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
36387         obstack.c.
36388
36389 2000-01-22  Jim Meyering  <meyering@lucent.com>
36390
36391         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
36392
36393         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
36394
36395         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
36396         configure.in
36397         (AC_CHECK_HEADERS): Likewise for sh-utils.
36398         (AC_CHECK_HEADERS): Likewise for textutils.
36399         Merge the three lists of headers.
36400
36401         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
36402         from fileutils' configure.in.
36403
36404         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
36405         code. Moved tests into their own function (_jm_DECL_HEADERS) in
36406         check-decl.m4.
36407
36408         * m4/check-decl.m4: Use #if rather than #ifdef.
36409         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
36410         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
36411         (_jm_DECL_HEADERS): Define new function.
36412         (jm_CHECK_DECLARATIONS): Require it.
36413
36414 2000-01-22  Jim Meyering  <meyering@lucent.com>
36415
36416         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
36417         [! HAVE_DECL_STRTOULL]: Declare strtoull.
36418         Required for some AIX systems.  Reported by Christian Krackowizer.
36419         [TESTING] (main): New function.
36420
36421         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
36422         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
36423         letters.
36424
36425         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
36426         iswprint.
36427
36428         * lib/strverscmp.c (ISDIGIT): Define.
36429         (strverscmp): Use ISDIGIT, not isdigit.
36430
36431 2000-01-19  Jim Meyering  <meyering@lucent.com>
36432
36433         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
36434         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
36435         defines `struct timespec' in <sys/time.h>
36436
36437         * m4/c-bs-a.m4: Remove uses of changequote altogether.
36438         Thanks to Akim for explaining.
36439
36440 2000-01-17  Paul Eggert  <eggert@twinsun.com>
36441
36442         * lib/nanosleep.c (nanosleep):
36443         Don't use SA_INTERRUPT to decide whether to call sigaction, as
36444         POSIX.1 doesn't require SA_INTERRUPT and some systems
36445         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
36446         it's been part of POSIX.1 since day 1 (in 1988).
36447
36448 2000-01-17  Jim Meyering  <meyering@lucent.com>
36449
36450         * lib/interlock: Remove unused file.  Reported by François Pinard.
36451
36452 2000-01-16  Paul Eggert  <eggert@twinsun.com>
36453
36454         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
36455         alert, backslash, formfeed, and vertical tab unnecessarily in
36456         shell quoting style.
36457
36458 2000-01-16  Jim Meyering  <meyering@lucent.com>
36459
36460         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
36461         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
36462         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
36463         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
36464
36465 2000-01-16  Jim Meyering  <meyering@lucent.com>
36466
36467         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
36468         because the latter didn't work.
36469
36470 2000-01-15  Jim Meyering  <meyering@lucent.com>
36471
36472         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
36473         (AC_REPLACE_FUNCS): Add memcpy and memset.
36474         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
36475         Add strpbrk.
36476         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
36477
36478 2000-01-12  Jim Meyering  <meyering@lucent.com>
36479
36480         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
36481         (jm_PREREQ): Use it.
36482         (jm_PREREQ_READUTMP): New macro.
36483         (jm_PREREQ): Use it.
36484
36485 2000-01-11  Paul Eggert  <eggert@twinsun.com>
36486
36487         Quote multibyte characters correctly.
36488         * m4/c-bs-a.m4: New file.
36489         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
36490         (jm_PREREQ): Use it.
36491
36492 2000-01-11  Paul Eggert  <eggert@twinsun.com>
36493
36494         * m4/uintmax_t.m4: Port to autoconf 2.13.
36495
36496 2000-01-08  Jim Meyering  <meyering@ascend.com>
36497
36498         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
36499         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
36500
36501 2000-01-04  Jim Meyering  <meyering@ascend.com>
36502
36503         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
36504         jm_STRUCT_DIRENT_D_TYPE.
36505         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
36506         jm_STRUCT_DIRENT_D_INO.
36507         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
36508         jm_STRUCT_UTIMBUF.
36509         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
36510         renamings.
36511         * m4/utime.m4: Likewise.
36512
36513         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
36514         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
36515
36516 2000-01-03  Paul Eggert  <eggert@twinsun.com>
36517
36518         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
36519         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
36520
36521 2000-01-02  Jim Meyering  <meyering@ascend.com>
36522
36523         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
36524         remember if this is necessary.
36525
36526 1999-12-26  Jim Meyering  <meyering@ascend.com>
36527
36528         * m4/jm-macros.m4: Use it here.
36529         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
36530
36531 1999-12-23  Jim Meyering  <meyering@ascend.com>
36532
36533         * m4/jm-macros.m4: Check for clock_gettime (moved from
36534         fileutils/configure.in)
36535         Check for gettimeofday.
36536
36537 1999-12-20  Jim Meyering  <meyering@ascend.com>
36538
36539         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
36540         autoconf-2.14a-1999-12-20.
36541
36542 1999-12-19  Jim Meyering  <meyering@ascend.com>
36543
36544         * m4/lstat-slash.m4: New file.
36545         * m4/jm-macros.m4: Use the new macro:
36546         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
36547
36548 1999-12-07  Jim Meyering  <meyering@ascend.com>
36549
36550         * m4/perl.m4: Require that File::Compare be available, too.
36551         Too many systems seem to lack it.
36552
36553         * m4/strftime.m4: Add checks for most of the cpp macros tested in
36554         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
36555
36556 1999-11-18  Paul Eggert  <eggert@twinsun.com>
36557
36558         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
36559         problem with the QNX 4.25 shell, which doesn't propagate exit
36560         status of failed commands inside shell assignments.
36561
36562 1999-11-17  Jim Meyering  <meyering@ascend.com>
36563
36564         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
36565
36566 1999-11-07  Jim Meyering  <meyering@ascend.com>
36567
36568         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
36569
36570 1999-11-06  Jim Meyering  <meyering@ascend.com>
36571
36572         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
36573         * m4/jm-macros.m4 (jm_MACROS): Use it here.
36574
36575 1999-11-05  Jim Meyering  <meyering@ascend.com>
36576
36577         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
36578         configure.in of textutils, fileutils, and sh-utils into this one
36579         (shared between those packages) file.
36580         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
36581         AC_STRUCT_ST_BLKSIZE.
36582
36583 1999-11-03  Jim Meyering  <meyering@ascend.com>
36584
36585         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
36586         of AC_CHECK_TYPE checks includes unistd.h.
36587         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
36588         Suggestion from Akim Demaille.
36589
36590 1999-10-30  Jim Meyering  <meyering@ascend.com>
36591
36592         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
36593         m4-quoted string.
36594         * m4/ls-mntd-fs.m4: Likewise.
36595         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
36596         * m4/jm-winsz1.m4: Likewise.
36597
36598         * m4/const.m4: Remove file, since the fix made it into the experimental
36599         version of autoconf.
36600         * m4/mktime.m4: Likewise.
36601
36602         * m4/check-type.m4: Remove file, now that the latest version of
36603         AC_CHECK_TYPE takes a third arg to specify additional #includes.
36604
36605         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
36606         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
36607         AC_CHECK_TYPE.
36608
36609 1999-10-04  Jim Meyering  <meyering@ascend.com>
36610
36611         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
36612
36613 1999-09-22  Paul Eggert  <eggert@twinsun.com>
36614
36615         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
36616         2.95.1 bug with HP-UX 10.20.
36617
36618 1999-09-17  Jim Meyering  <meyering@ascend.com>
36619
36620         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
36621         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
36622         due to missing strdup (against sh-utils-2.0).
36623
36624 1999-08-29  Jim Meyering  <meyering@ascend.com>
36625
36626         * m4/jm-macros.m4: Require jm_BISON.
36627         * m4/bison.m4: New file.
36628
36629 1999-08-17  Paul Eggert  <eggert@twinsun.com>
36630
36631         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
36632         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
36633
36634 1999-08-05  Jim Meyering  <meyering@ascend.com>
36635
36636         * m4/getline.m4: Rename test file from conftestdata to conftest.data
36637         to avoid conflicts with `conftest' on 8+3 filesystems.
36638         Suggestion from Eli Zaretskii.
36639
36640 1999-08-04  Jim Meyering  <meyering@ascend.com>
36641
36642         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
36643         fileutils and sh-utils (textutils's getline test was inadequate).
36644         (AM_FUNC_GETLINE): Run this test.
36645         (AC_CHECK_FUNCS): Check for getdelim.
36646         Reported by Bob Proulx.
36647
36648 1999-08-02  Jim Meyering  <meyering@ascend.com>
36649
36650         * m4/jm-macros.m4: Add a comment.
36651
36652 1999-08-01  Paul Eggert  <eggert@twinsun.com>
36653
36654         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
36655         <inttypes.h> defines strtoumax as a macro (and not as a
36656         function).
36657
36658 1999-08-01  Paul Eggert  <eggert@twinsun.com>
36659
36660         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
36661         that we can shift, multiply and divide unsigned long long
36662         values; Ultrix cc can't do it.
36663
36664 1999-08-01  Paul Eggert  <eggert@twinsun.com>
36665
36666         * m4/mktime.m4: New file, which is a preview of what should appear
36667         in the next public autoconf release.
36668
36669 1999-08-01  Paul Eggert  <eggert@twinsun.com>
36670
36671         * m4/lfs.m4: Remove this file.
36672         * m4/largefile.m4: New file.  It contains the old contents of
36673         lfs.m4, except that all names with prefix AC_LFS have been
36674         changed to use the prefix AC_SYS_LARGEFILE instead, to be
36675         compatible with future autoconf versions.  Also, some minor m4
36676         quoting problems have been fixed.
36677
36678 1999-08-01  Paul Eggert  <eggert@twinsun.com>
36679
36680         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
36681         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
36682         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
36683         and simplify the shell code.
36684
36685 1999-08-01  Jim Meyering  <meyering@ascend.com>
36686
36687         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
36688         m4.
36689
36690 1999-07-20  Jim Meyering  <meyering@ascend.com>
36691
36692         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
36693
36694 1999-07-15  Jim Meyering  <meyering@ascend.com>
36695
36696         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
36697
36698 1999-05-22  Jim Meyering  <meyering@ascend.com>
36699
36700         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
36701
36702 1999-05-20  Jim Meyering  <meyering@ascend.com>
36703
36704         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
36705         Add a colon after each `then' in case $4 is empty.
36706
36707 1999-05-16  Jim Meyering  <meyering@ascend.com>
36708
36709         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
36710
36711 1999-05-10  Jim Meyering  <meyering@ascend.com>
36712
36713         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
36714
36715         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
36716         AC_FUNC_MKTIME.
36717
36718 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
36719
36720         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
36721
36722 1999-05-04  Paul Eggert  <eggert@twinsun.com>
36723
36724         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
36725         not CPPFLAGS, so that linking works correctly in IRIX.
36726
36727 1999-04-30  Paul Eggert  <eggert@twinsun.com>
36728
36729         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
36730
36731 1999-04-20  Paul Eggert  <eggert@twinsun.com>
36732
36733         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
36734         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
36735         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
36736         jm_AC_TYPE_UNSIGNED_LONG_LONG.
36737         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
36738
36739         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
36740
36741 1999-04-20  Jim Meyering  <meyering@ascend.com>
36742
36743         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
36744         AC_REPLACE xstroull if necessary.  From Paul Eggert.
36745         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
36746
36747 1999-04-18  Jim Meyering  <meyering@ascend.com>
36748
36749         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
36750         * m4/jm-macros.m4: Use it.
36751
36752 1999-04-06  Jim Meyering  <meyering@ascend.com>
36753
36754         * m4/strftime.m4: Remove test for %f.
36755
36756 1999-03-29  Jim Meyering  <meyering@ascend.com>
36757
36758         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
36759         superset of the AC_TYPE_* checks in the textutils, fileutils,
36760         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
36761         AC_TYPE_PID_T.
36762
36763 1999-03-28  Jim Meyering  <meyering@ascend.com>
36764
36765         * m4/jm-macros.m4: Define GNU_PACKAGE here.
36766         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
36767         replaced e.g., in the *.sh files of the sh-utils.
36768
36769 1999-03-20  Jim Meyering  <meyering@ascend.com>
36770
36771         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
36772         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
36773         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
36774
36775 1999-03-19  Jim Meyering  <meyering@ascend.com>
36776
36777         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
36778
36779 1999-03-12  Jim Meyering  <meyering@ascend.com>
36780
36781         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
36782
36783 1999-03-07  Jim Meyering  <meyering@ascend.com>
36784
36785         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
36786         declared.
36787
36788 1999-02-17  Jim Meyering  <meyering@ascend.com>
36789
36790         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
36791         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
36792
36793 1999-02-07  Jim Meyering  <meyering@ascend.com>
36794
36795         * m4/group-member.m4: New file -- extracted from sh-utils'
36796         configure.in.
36797
36798         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
36799         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
36800
36801 1999-02-06  Jim Meyering  <meyering@ascend.com>
36802
36803         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
36804         * m4/fnmatch.m4: Likewise.
36805         * m4/getgroups.m4: Likewise.
36806         * m4/lstat.m4: Likewise.
36807         * m4/malloc.m4: Likewise.
36808         * m4/putenv.m4: Likewise.
36809         * m4/realloc.m4: Likewise.
36810         * m4/regex.m4: Likewise.
36811         * m4/stat.m4: Likewise.
36812         * m4/strftime.m4: Likewise.
36813         Suggestion from Alain Magloire.
36814
36815         * m4/chown.m4: Use `.$ac_objext', not `.o'.
36816         * m4/fnmatch.m4: Likewise.
36817         * m4/getgroups.m4: Likewise.
36818         * m4/getline.m4: Likewise.
36819         * m4/lstat.m4: Likewise.
36820         * m4/malloc.m4: Likewise.
36821         * m4/memcmp.m4: Likewise.
36822         * m4/putenv.m4: Likewise.
36823         * m4/realloc.m4: Likewise.
36824         * m4/regex.m4: Likewise.
36825         * m4/stat.m4: Likewise.
36826         * m4/strftime.m4: Likewise.
36827         Suggestion from Alain Magloire.
36828
36829         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
36830         an argument.
36831
36832         * m4/regex.m4: Add a run-time Test for proper operation of
36833         re_compile_pattern.
36834
36835 1999-01-31  Jim Meyering  <meyering@ascend.com>
36836
36837         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
36838
36839 1999-01-30  Jim Meyering  <meyering@ascend.com>
36840
36841         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
36842
36843         * m4/jm-mktime.m4: Make this a wrapper around the official
36844         AM_FUNC_MKTIME rather than my private copy, now that the official one
36845         is up to date.
36846         * m4/mktime.m4: Remove file.
36847
36848         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
36849         * m4/uptime.m4: Likewise.
36850         * m4/uintmax_t.m4: Likewise.
36851
36852 1999-01-28  Jim Meyering  <meyering@ascend.com>
36853
36854         * m4/jm-macros.m4: Use jm_AFS.
36855         * m4/afs.m4: New file (from fileutils' configure.in).
36856
36857         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
36858         * m4/chown.m4: Likewise.
36859         * m4/d-ino.m4: Likewise.
36860         * m4/d-type.m4: Likewise.
36861         * m4/fnmatch.m4: Likewise.
36862         * m4/getgroups.m4: Likewise.
36863         * m4/gettext.m4: Likewise.
36864         * m4/jm-mktime.m4: Likewise.
36865         * m4/jm-winsz2.m4: Likewise.
36866         * m4/lcmessage.m4: Likewise.
36867         * m4/ls-mntd-fs.m4: Likewise.
36868         * m4/malloc.m4: Likewise.
36869         * m4/memcmp.m4: Likewise.
36870         * m4/putenv.m4: Likewise.
36871         * m4/realloc.m4: Likewise.
36872         * m4/st_mtim.m4: Likewise.
36873         * m4/strftime.m4: Likewise.
36874
36875 1999-01-16  Jim Meyering  <meyering@ascend.com>
36876
36877         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
36878         (ARGMATCH_DIE_DECL): Define.
36879
36880 1999-01-12  Jim Meyering  <meyering@ascend.com>
36881
36882         * m4/Makefile.am.in: Rewrite to avoid using fmt.
36883         Reported by Lars Hecking.
36884
36885 1999-01-10  Jim Meyering  <meyering@ascend.com>
36886
36887         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
36888         gross kludge.
36889         * m4/inttypes_h.m4: Likewise.
36890         * m4/lstat.m4: Likewise.
36891         * m4/malloc.m4: Likewise.
36892         * m4/readdir.m4: Likewise.
36893         * m4/realloc.m4: Likewise.
36894         * m4/st_dm_mode.m4: Likewise.
36895         * m4/stat.m4: Likewise.
36896         * m4/utimbuf.m4: Likewise.
36897         * m4/utimes.m4: Likewise.
36898
36899         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
36900         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
36901         comments in config.h.in are meaningful.
36902
36903         * m4/jm-macros.m4: Require autoconf-2.13 here.
36904
36905         * m4/regex.m4: By default, don't use the included regex.c on systems
36906         with glibc 2.  Suggestion from Uli Drepper.
36907
36908 1999-01-02  Jim Meyering  <meyering@ascend.com>
36909
36910         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
36911
36912 1998-12-18  Jim Meyering  <meyering@ascend.com>
36913
36914         * m4/Makefile.am.in (Makefile.am): Simplify rule.
36915         Based on a suggestion from Lars Hecking.
36916
36917 1998-11-16  Paul Eggert  <eggert@twinsun.com>
36918
36919         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
36920
36921 1998-11-16  Jim Meyering  <meyering@ascend.com>
36922
36923         * m4/lfs.m4: Double-quote the `uname...` expression.
36924
36925 1998-11-14  Jim Meyering  <meyering@ascend.com>
36926
36927         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
36928         * m4/stat.m4: Likewise.
36929
36930 1998-11-03  Jim Meyering  <meyering@ascend.com>
36931
36932         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
36933         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
36934
36935 1998-10-18  Jim Meyering  <meyering@ascend.com>
36936
36937         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
36938
36939 1998-10-17  Jim Meyering  <meyering@ascend.com>
36940
36941         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
36942         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
36943         calls for those previously hard-coded headers.  Instead, take a new
36944         parameter.
36945         (jm_CHECK_DECLARATIONS): Reflect interface change.
36946         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
36947         (jm_CHECK_DECL_LOCALTIME_R): New macro.
36948
36949         * m4/mktime.m4: Test for spring-forward gap before long-running test.
36950
36951 1998-10-14  Jim Meyering  <meyering@ascend.com>
36952
36953         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
36954         instead of "TZ=America/Vancouver".  From Paul Eggert.
36955
36956 1998-10-11  Jim Meyering  <meyering@ascend.com>
36957
36958         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
36959         This adds a test for a recently added compatibility fix for mktime.c.
36960         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
36961
36962 1998-09-27  Jim Meyering  <meyering@ascend.com>
36963
36964         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
36965
36966         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
36967         ../configure.in, including a change from Gordon Matzigkeit to allow
36968         cross-compiling for the Hurd.
36969
36970         * m4/glibc.m4: New file/macro to test for the GNU C Library
36971         versions 1 and 2.  From Gordon Matzigkeit.
36972         Indent.
36973
36974 1998-09-21  Jim Meyering  <meyering@ascend.com>
36975
36976         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
36977
36978 1998-08-18  Paul Eggert  <eggert@twinsun.com>
36979
36980         Port nanosecond-resolution times to UnixWare 2.1.2 and
36981         pedantic Solaris 2.6.
36982
36983         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
36984         AC_STRUCT_ST_MTIM.
36985         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
36986         Generate name of ns member, instead of just 1 or undef.
36987         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
36988
36989 1998-08-15  Jim Meyering  <meyering@ascend.com>
36990
36991         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
36992         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
36993         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
36994         instead of jm_TYPE_SSIZE_T.
36995
36996 1998-08-12  Jim Meyering  <meyering@ascend.com>
36997
36998         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
36999
37000 1998-08-02  Jim Meyering  <meyering@ascend.com>
37001
37002         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
37003         in acconfig.h manually.
37004
37005 1998-07-31  Paul Eggert  <eggert@twinsun.com>
37006
37007         * m4/st_mtim.m4: New file.
37008
37009 1998-07-28  Jim Meyering  <meyering@ascend.com>
37010
37011         * m4/utimes.m4: Undef stat.
37012
37013 1998-07-25  Jim Meyering  <meyering@ascend.com>
37014
37015         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
37016         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
37017
37018 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
37019
37020         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
37021         uid and gid actually remain unchanged.
37022
37023 1998-07-07  Jim Meyering  <meyering@ascend.com>
37024
37025         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
37026
37027 1998-07-04  Jim Meyering  <meyering@ascend.com>
37028
37029         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
37030         to prove that this macro can be used in packages without regex.c.
37031
37032 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
37033
37034         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
37035         is to be used.
37036
37037 1998-07-03  Jim Meyering  <meyering@ascend.com>
37038
37039         * m4/gettext.m4: Add -lintl if it's found to be necessary.
37040
37041         * m4/gettext.m4: New file -- from gettext-0.10.35.
37042         * m4/lcmessage.m4: Likewise.
37043         * m4/progtest.m4: Likewise.
37044
37045         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
37046         * m4/jm-macros.m4: Require the new macro.
37047
37048 1998-06-29  Jim Meyering  <meyering@ascend.com>
37049
37050         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
37051         for the definition of NGROUPS (used in a system header included
37052         by sys/mount.h).
37053
37054 1998-06-28  Jim Meyering  <meyering@ascend.com>
37055
37056         * m4/ls-mntd-fs.m4: New file.
37057         * m4/fstypename.m4: New file.
37058
37059         * m4/jm-macros.m4: Require the new macro.
37060         * m4/jm-glibc-io.m4: New file.
37061
37062 1998-05-19  Jim Meyering  <meyering@ascend.com>
37063
37064         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
37065         * m4/lchown.m4: New file.
37066
37067         * m4/Makefile.am.in: New file.
37068         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
37069
37070 1998-05-14  Jim Meyering  <meyering@ascend.com>
37071
37072         * m4/Makefile.am (EXTRA_DIST): Add them.
37073         * m4/jm-macros.m4: New file.
37074         * m4/utimbuf.m4: New file.
37075
37076 1998-05-12  Jim Meyering  <meyering@ascend.com>
37077
37078         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
37079
37080 1998-05-11  Jim Meyering  <meyering@ascend.com>
37081
37082         * m4/isc-posix.m4: New file.
37083
37084 1998-05-10  Jim Meyering  <meyering@ascend.com>
37085
37086         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
37087
37088 1998-05-09  Jim Meyering  <meyering@ascend.com>
37089
37090         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
37091         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
37092         with automake.
37093
37094         * m4/ssize_t.m4: New file.
37095         * m4/mktime.m4: Remove file -- the new automake has this now.
37096
37097 1998-04-26  Jim Meyering  <meyering@ascend.com>
37098
37099         * m4/assert.m4: New file.
37100         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
37101
37102 1998-04-05  Jim Meyering  <meyering@ascend.com>
37103
37104         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
37105         (jm_PREREQ): Use it here.
37106
37107 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
37108
37109         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
37110         in acconfig.h.
37111
37112 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
37113
37114         * m4/prereq.m4: New file.
37115         * m4/error.m4: New file.
37116         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
37117
37118 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
37119
37120         * m4/getline.m4: Don't set am_cv_func_working_getline before the
37121         cache-check for the same variable -- that defeated the purpose of
37122         the test; the test program was never run.  This was a problem only
37123         on systems with losing getline functions -- HP-UX 10.20 is one.
37124         Reported by Bjorn Helgaas.
37125
37126 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
37127
37128         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
37129
37130 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
37131
37132         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
37133
37134         * m4/const.m4: New file.  Use an initializer in this declaration
37135         typedef int charset[2]; const charset x;
37136         Reported by Bob Glickstein.
37137
37138 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
37139
37140         * m4/chown.m4: Fix reversed types on -1 args to chown.
37141         From Kaveh Ghazi.
37142
37143 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
37144
37145         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
37146         Add lseek and memchr.
37147
37148         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
37149         T.E.Dickey <dickey@clark.net> said that some older preprocessors
37150         have a 20-character limit on names.
37151
37152 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
37153
37154         * m4/inttypes_h.m4: New file.
37155         * m4/uintmax_t.m4: New file.
37156         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
37157
37158 Copyright (C) 1997-2007 Free Software Foundation, Inc.
37159 Copying and distribution of this file, with or without modification,
37160 are permitted provided the copyright notice and this notice are preserved.